Daten schreiben

Anlegen und Ändern von Datensätzen

Daten in Datasets werden über die API-Endpunkte  data_create angelegt und über data_update aktualisiert.
 

Parameter

Grundsätzliche Parameter sind wie folgt.

Parameter Description Example
dataset Label des Dataset auf das zugegriffen werden soll "product"
fields Werte für die Felder, die beschrieben werden sollen  
filter Filter, um nach beliebigen Feldern und Werten die Menge der zu ändernden Daten zu filtern bzw. einzugrenzen  
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

In dem fields array werden die neuen Werte übergeben, wie sie angelegt bzw. überschrieben werden solle.
Welche Felder zur Verfügung stehen, hängt vom jeweiligen Dataset ab.
 

filter

Dieser Parameter steht nur update- und delete-api-calls zur Verfügung. Bis auf einige Ausnahmen, kann nach beliebigen Feldern gefiltert werden. 
Es stehen verschiedene Filter-Operatoren, je nach Feld-Typ, zur Verfügung.
 
 

Endpunkte

data_create

Um einen neuen Datensatz in einem dataset anzulegen.

Url: https://{your hublify url}/api/eos_10/data_create

Parameters

{
    "dataset": "person",
    "fields": [
        "firstname": "Obi Wan",
        "lastname": "Kenobi"
    ]
}

Response

Bei Erfolg wird ein status TRUE zurückgegeben, sowie die automatisch generierte interne, meistens numerische, ID.

{ 
    "meta": {
       "insert_var": "persid",        // Field-Name ("primary key" name, specific for each dataset)
       "insert_value": "1234"         // Automatic generated unique primary key value for that field.
    },
    "status": true
}
 

data_update

Es können einzelne Fields geändert werden.

Url: https://{your hublify url}/api/eos_10/data_update

Parameters

{
    "dataset": "person",
    "fields": [
       "lastname": "KENOBI"   // List of fields and values to update
    ],
    "filter": { 
        "persid": "1234"      // Recommended to update single records filtered by its primary key value
    }
}

Response

Bei Erfolg wird eine status TRUE zurückgegeben, das signalisiert, dass der update request sauber verarbeitet werden konnte.

Unter meta/affected_rows wird zurückgegeben, wie viele Datensätze dabei tatsächlich geändert wurden.
Es kann also sein, dass hier eine 0 zurück gegeben wird, da sich der Datensatz gar nicht geändert hat, aber der update request komplett OK ist1

{ 
    "meta": {
        "affected_rows": "1"                    // Number of really changed data-records
    }
    "status": true
}