Einführung

Die REST-API stellt Ihnen alle Funktionen des Blowball-Systems für automatisierte Zugriffe zur Verfügung. Sie können somit Schnittstellen zu anderen Systemen erstellen, oder die Funktionen des Blowball-Systems durch eigene Anwendungen erweitern. Da REST standardisierte HTTP-Mechanismen verwendet, können Anwendungen schnell und einfach in allen gängigen Programmiersprachen entwickelt werden.

Um beispielsweise die gespeicherten Kontakte im Blowball-System aufzulisten, muss lediglich die folgende URL aufgerufen werden:

https://{api-url}/v1/contacts/

Natürlich müssen noch Authentifizierungsinformationen hinzugefügt werden, um unberechtigte Zugriffe auszuschließen (siehe Authentifizierung).

Datenaustausch

Für den Datenaustausch zwischen Blowball-Server und der Client-Anwendung wird das JSON Format verwendet. Dieses ist sehr kompakt und lässt sich einfach verarbeiten (z.B. in PHP mit json_decode). Der oben genannte Aufruf erzeugt z.B. folgende exemplarische Ausgabe:

{
    "count": 151,
    "list": [
        [
            {
                "key": "id",
                "value": "{8DDDD61E-FFE6-4B5E-94EC-794B73F9996A}",
               
            },
            {
                "key": "ID-A2A01AAA-07D1-48A3-ABF6-49F5722D78C3",
                "value": "Hans",
               
            },
            {
                "key": "ID-1BAAC099-7762-4FD8-AD63-C59B3FFA55AD",
                "value": "Bäuer",
               
            },
            {
                ...
            }
        ]
    ]
}

Zeichensatz

Blowball bietet volle Unicode-Unterstützung. Es können also auch z.B. kyrillische oder chinesische Zeichen in den Datensätzen auftreten. Als Zeichensatz ist daher bei jedem Datenaustausch UTF-8 zu verwenden.

Datenstrukturen

Blowball verwendet flexible Datenstrukturen. Bei vielen Modulen können Datenfelder mit dem Designer hinzugefügt oder gelöscht werden. Deshalb verfügt jedes Feld über eine eindeutige ID (GUID), über die es angesprochen wird. Die verfügbaren IDs finden Sie in den Einführungs-Artikeln zu den jeweiligen Modulen. Oder schauen Sie sich die Ausgabe der "list" und "get" Funktionen an, die in fast jedem Modul zur Verfügung stehen. Um die Lesbarkeit während der Entwicklung zu verbessern, können diese Funktionen mit dem Parameter "output=2" aufgerufen werden. Dadurch wird zusätzlich der Feldname mit ausgegeben:

...
{
    "key": "ID-9F2F5EE5-D8F8-4363-9663-EF097FC5DDBE",
    "name": "firstName",
    "value": "Hans"
},
{
    "key": "ID-C36BAB25-5EE6-4760-89E3-F258DA385D5F",
    "name": "lastName",
    "value": "Bäuer"
},
...
0
Bitte melden Sie sich an, um diesen Artikel zu bewerten.