Antcas API permite schimbul de date între mai multe aplicații.
| ATENȚIE: Acordați atenție securității la utilizarea acestei API. Utilizați doar TLS și nu utilizați niciodată portul pe o adresă accesibilă public. |
Notă: Deoarece API-ul trebuie să verifice token-ul la fiecare apel, acest lucru poate duce la o încărcare mai mare a sistemului.
În Gestionarea proiectelor poate fi adăugat un nou
port API. Descrierea o găsiți în capitolul Asocierea portului cu proiectul.
Pentru a putea crea o cerere, aceasta trebuie autentificată prin intermediul unui token. Crearea unui token este explicată în detaliu în capitolul Gestionarea token-urilor.
API-ul suportă mai multe formate de intrare: HTTP-Queries, JSON și XML. Ieșirea poate fi HTML, Text, JSON sau XML. Codificarea caracterelor este întotdeauna UTF-8.
Notă: Un apel efectuat de un element în browser duce la eroarea 428 (Precondition Required). Aceasta este protecția împotriva atacurilor XSS, care nu poate fi ocolită. Aceasta previne un atac hacker asupra Antcas Control.
În cazul unei cereri POST sau PUT, datele pot fi scrise în formatul corespunzător prin intermediul conținutului. Fiecare variabilă este case-sensitive, ceea ce înseamnă că se face distincție între majuscule și minuscule. Însă răspunsul se face întotdeauna în formatul declarat. Formatul de ieșire poate fi descris prin intermediul header-ului sau al variabilei format. Formatul de intrare este întotdeauna recunoscut automat.
GET /visu/var/eid?format=json&token=tokenid HTTP/1.1
Host: serveraddr.com
Content-Type: application/json
Următoarele formate sunt suportate în header și ca variabilă format:
| Content-Type | Variabilă | Format |
|---|---|---|
| application/json | json | JSON |
| application/xml | xml | XML |
| text/plain | text | Text |
| text/csv | csv | CSV* |
| (alte) | html | HTML |
*Suportat doar ca format de ieșire.
Notă: Formatele Text și CSV conțin UTF-8 BOM. Acesta poate fi dezactivat prin intermediul variabilei bom=FALSE.
Dacă o valoare este descrisă prin mai multe formate, ultimul format are prioritate:
Următoarele variabile sunt definite global.
| Variabilă | Descriere |
|---|---|
| format | Formatul ieșirii. |
| bom | BOM în format UTF-8. Valoarea implicită este ADEVĂRAT. |
| key | Citește doar o variabilă declarată. Această metodă este ineficientă, deoarece toate datele sunt pregătite și apoi filtrate. Ar trebui utilizată doar pentru cantități mici de date. |
| header | Afisează header-ul. Valoarea implicită este ADEVĂRAT. |
| compact | Consolidă toate subelementele. Dacă nu este declarată o valoare booleană, se utilizează această valoare pentru a combina variabilele. Altfel, se utilizează valoarea .. |
| values | Returnează doar valorile și nu numele variabilelor. Această opțiune este disponibilă doar pentru HTML, CSV și Text. |
| minimal | Alias pentru header=FALS, compact=minimal și values=ADEVĂRAT. |
| csvdel | Delimitator CSV. Valoarea implicită este ; |
| csvenc | Paranteze de închidere CSV. Valoarea implicită este " |
| csvesc | Caracter de scăpare CSV. Valoarea implicită este \ |
Următoarele variabile pot fi utilizate atât global, cât și pentru variabile individuale. Pentru a adresa o singură variabilă, aceasta este definită după cum urmează:
time*:hr=true
Exemplul de mai sus se referă la toate variabilele care încep cu time și la time însăși. Se verifică toate regulile în ordine. Astfel, ultima regulă potrivită are prioritate. Cautarea se face prin intermediul expresiilor regulate.
| Variabilă | Descriere |
|---|---|
| hr | Citibil de om. Variabilele sunt transformate, dacă este posibil, în date citibile de oameni. Valoarea implicită este ADEVĂRAT pentru formatele HTML, CSV și Text. |
| numdec | Număr de zecimale după virgulă. |
| numths | Separator de mii. |
| numdot | Separator zecimal. |
| prefix | Adaugă text înainte de variabilă. |
| suffix | Adaugă text după variabilă. |
În capitolele de mai jos sunt definite toate aplicațiile API-ului.