Daten lesen
Einzelne oder Listen
Daten aus Datasets werden über die API-Endpunkte data_get und data_getList gelesen.
Parameter
Grundsätzliche Parameter sind wie folgt.
Parameter | Description | Example |
---|---|---|
dataset | Label des Dataset auf das zugegriffen werden soll | "product" |
fields | Felder, die zurückgegeben werden sollen | |
filter | Filter, um nach beliebigen Feldern und Werten das Ergebnis zu filtern | |
sql | (optional) Um LIMITs oder ORDERs (Sortierung) der Abfrage hinzuzufügen |
dataset
Über dieses dataset wird grundsätzlich festgelegt auf welche Daten zugegriffen werden soll.
fields
Definiert welche Felder vom Dataset zurückgeliefert werden sollen. Dies ist ein Pflichtangabe.
Welche Felder zur Verfügung stehen, hängt vom jeweiligen Dataset ab.
Um die Performance zu erhöhen, sollten immer nur die Felder requested werden, die auch wirklich benötigt werden.
Beispiel Parameter
{
...
"fields": [ // An array of field-labels to be returned
"firstname",
"lastname",
"gender"
],
...
}
filter
Bis auf einige Ausnahmen, kann nach beliebigen Feldern gefiltert werden. Mehrere Filter können kombiniert werden. Diese sind dann UND-verknüpft.
Es stehen verschiedene Filter-Operatoren, je nach Feld-Typ, zur Verfügung. Es existieren sehr umfangreiche und komfortable Filtermöglichkeiten zur Verfügung.
Beispiel Parameter
{
...
"filter": {
"lastname": "skywalker" // Finds all records with field lastname matches "skywalker"
},
...
}
Sortierung
Es kann optional nach einem oder mehreren Feldern sortiert werden.
Beispiel Parameter
{
...
"sql": {
"order": "<field 1> ASC, <field 2> DESC" // sorts for <field 1> ascending and wihtin that for <field 2> descending.
},
...
}
Limit / Paging
Die Anzahl der zurück zu liefernden Datensätze kann mit dem Limit-Parameter eingeschränkt werden.
Beispiel Parameter
{
...
"sql": {
"limit": {
"max": 50 // Returns only the first 50 records
}
},
...
}
Um ein Paging zu erzielen muss zusätzlich der start-Parameter mit angegeben werden.
Beispiel Parameter
{
...
"sql": {
"limit": {
"start": 100 // Start a result position 100 ...
"max": 50 // and return the next 50 records!
} // Which results to: record number #100 until #149
},
...
}
Endpunkte
data_get
Bei get-calls wird immer nur der erste gefundene Datensatz zurückgeben. get-calls werden typischerweise genutzt, um per primary-key einen Datensatz direkt zu lesen.
Url: https://{your hublify url}/api/eos_10/data_get
Parameters
{
"dataset": "person",
"fields": [ "personid", "firstname", "lastname" ],
"filter": {
"personid": "K00000001"
}
}
Response
Bei get-Calls wird der eigentliche Datensatz direkt unter [data] zurückgegeben.
{
"data": {
"personid": "K00000001",
"firstname": "Luke",
"lastname": "Skywalker"
},
"status": true
}
data_getList
Bei getList-calls werden die Daten als Array zurückgegeben.
Url: https://{your hublify url}/api/eos_10/data_getList
Parameters
{
"dataset": "person",
"fields": [ "personid", "firstname", "lastname" ],
"filter": {
"lastname": "Skywalker"
}
}
Response
Bei getList-Calls werden die Datensätze als numerisches Array unter [data] zurückgegeben.
{
"data": [
{
"personid": "K00000001",
"firstname": "Luke",
"lastname": "Skywalker"
},
{
"personid": "K00000003",
"firstname": "Anakin",
"lastname": "Skywalker"
}
],
"status": true
}