Antcas API

Das Antcas API ermöglicht es Daten zwischen mehreren Anwendungen auszutauschen.

WARNUNG: Achten Sie auf die Sicherheit bei der Verwendung dieser API. Verwenden Sie nur TLS und benutzen Sie das Port niemals auf einer öffentlich zugänglicher Adresse.

Hinweis: Da das API bei jedem Aufruf das Token überprüfen muss, kann dies eine höhere Systemlast zur Folge haben.

Einrichten eines API-Ports

Unter der Projektverwaltung kann ein neues API-Port hinzugefügt werden. Die Beschreibung finden Sie im Kapitel Port dem Projekt zuordnen.

Damit eine Anfrage erstellt werden kann, muss diese mittels Token authentifiziert werden. Das Erstellen eines Tokens wird im Kapitel Token verwalten genauer erläutert.

Formate und Werte

Das API unterstützt mehrere Eingabeformate: HTTP-Queries, JSON und XML. Die Ausgabe kann dabei aus HTML, Text, JSON oder XML erfolgen. Die Zeichenkodierung ist immer UTF-8.

Hinweis: Ein Aufruf durch ein Element im Browser hat den Fehler 428 (Precondition Required) zur Folge. Dies ist der XSS-Attack-Schutz, dieser kann nicht ausgehebelt werden. Dieser verhindert ein Hackangriff auf Antcas Control.

Bei einer POST- oder PUT-Anfrage können die Daten über den Content im entsprechenden Format geschrieben werden. Jede Variable ist dabei Case Sensitive, dies bedeutet, dass zwischen Gross- und Kleinschreibung unterschieden wird. Die Rückgabe erfolgt jedoch immer im deklarierten Format. Das Ausgabeformat kann via Header oder über die Variable Format beschrieben werden. Das Eingabeformat wird immer automatisch erkannt.

GET /visu/var/eid?format=json&token=tokenid HTTP/1.1
Host: serveraddr.com
Content-Type: application/json

Folgende Formate werden im Header und als Variable format unterstützt:

Content-Type Variable Format
application/json json JSON
application/xml xml XML
text/plain text Text
text/csv csv CSV*
(andere) html HTML

*Wird nur als Ausgabeformat unterstützt.

Hinweis: Die Formate Text und CSV enthalten den UTF-8 BOM. Dieser kann mittels Variable bom=FALSE deaktiviert werden.

Wird ein Wert über mehrere Formate beschrieben, hat das letztere Format Priorität:

  • HTTP-Header (nur Ausgabeformat via Content-Type)
  • GET
  • POST
  • JSON/XML (als POST- oder PUT-Content)

Eingabe-Variablen

Folgende Variablen werden global definiert.

Variable Beschreibung
format Format der Ausgabe.
bom BOM im UTF-8 Format. Standard ist TRUE.
key Liest nur eine Variable, die deklariert wurde. Diese Methode ist ineffizient, da alle Daten aufbereitet und erst danach gefiltert werden. Sie sollte nur bei kleinen Datenmengen verwendet werden.
header Header ausgeben. Standard ist TRUE.
compact Führt alle Unterelemente in sich zusammen. Wird kein boolescher Wert deklariert, so wird dieser Wert genommen, um die Variablen zusammenzuführen. Ansonsten wird der Wert . verwendet.
values Gibt nur die Werte und keine Variablennamen zurück. Diese Option ist nur bei HTML, CSV und Text verfügbar.
minimal Alias für header=FALSE, compact=minimal und values=TRUE.
csvdel CSV-Delimiter. Standard ist ;
csvenc CSV-Enclosure-Klammern. Standard ist "
csvesc CSV-Escape-Zeichen. Standard ist \

Folgende Variablen können global, sowohl auch für einzelne Variablen verwendet werden. Um eine einzelne Variable anzusprechen, wird diese wie folgt definiert:

time*:hr=true

Das obige Beispiel spricht alle Variablen beginnend mit time und time selbst an. Geprüft werden alle Regeln der Reihe nach. So hat die letzte passende Regel Vorrang. Gesucht wird mittels regulären Ausdruck.

Variable Beschreibung
hr Human Readable. Variablen werden, falls möglich, in für Menschen lesbare Daten umgewandelt. Standard ist TRUE für das Format HTML, CSV und Text.
numdec Anzahl Stellen nach dem Komma.
numths Tausender-Trennzeichen.
numdot Dezimaltrennzeichen.
prefix Text vor Variable hinzufügen.
suffix Text nach Variable hinzufügen.

Pfade

In den unteren Kapitel sind alle Anwendungen der API definiert.

Untergeordnete Seiten