Το Antcas API επιτρέπει την ανταλλαγή δεδομένων μεταξύ πολλών εφαρμογών.
| ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Προσοχή στην ασφάλεια κατά τη χρήση αυτής της API. Χρησιμοποιήστε μόνο TLS και μην χρησιμοποιείτε ποτέ την θύρα σε μια δημόσια διαθέσιμη διεύθυνση. |
Σημείωση: Επειδή το API πρέπει να ελέγχει το token κάθε φορά που καλείται, αυτό μπορεί να οδηγήσει σε αυξημένο φορτίο συστήματος.
Μέσω της Διαχείρισης Έργου μπορεί να προστεθεί μια νέα
θύρα API. Η περιγραφή βρίσκεται στο κεφάλαιο Ανάθεση θύρας στο έργο.
Για να δημιουργηθεί μια αίτηση, πρέπει να αυθεντικοποιηθεί με token. Η δημιουργία ενός token εξηγείται λεπτομερέστερα στο κεφάλαιο Διαχείριση token.
Το API υποστηρίζει πολλές μορφές εισόδου: HTTP-Queries, JSON και XML. Η έξοδος μπορεί να είναι HTML, κείμενο, JSON ή XML. Η κωδικοποίηση χαρακτήρων είναι πάντα UTF-8.
Σημείωση: Μια κλήση από ένα στοιχείο στον περιηγητή έχει ως αποτέλεσμα το σφάλμα 428 (Precondition Required). Αυτό είναι η προστασία από επιθέσεις XSS, δεν μπορεί να απενεργοποιηθεί. Αποτρέπει μια επίθεση hacking στο Antcas Control.
Σε μια αίτηση POST ή PUT, τα δεδομένα μπορούν να γραφούν μέσω του περιεχομένου στην αντίστοιχη μορφή. Κάθε μεταβλητή είναι case sensitive, δηλαδή διακρίνει μεταξύ κεφαλαίων και πεζών γραμμάτων. Η επιστροφή γίνεται πάντα στη δηλωμένη μορφή. Το μορφότυπο εξόδου μπορεί να οριστεί μέσω του κεφαλίδας ή μέσω της μεταβλητής format. Το μορφότυπο εισόδου αναγνωρίζεται πάντα αυτόματα.
GET /visu/var/eid?format=json&token=tokenid HTTP/1.1
Host: serveraddr.com
Content-Type: application/json
Τα παρακάτω μορφοτύπα υποστηρίζονται στο κεφαλίδα και ως μεταβλητή format:
| Content-Type | Μεταβλητή | Μορφή |
|---|---|---|
| application/json | json | JSON |
| application/xml | xml | XML |
| text/plain | text | Κείμενο |
| text/csv | csv | CSV* |
| (άλλα) | html | HTML |
*Υποστηρίζεται μόνο ως μορφότυπο εξόδου.
Σημείωση: Τα μορφοτύπα Κείμενο και CSV περιέχουν το UTF-8 BOM. Αυτό μπορεί να απενεργοποιηθεί με τη μεταβλητή bom=FALSE.
Αν μια τιμή ορίζεται μέσω πολλών μορφοτύπων, το τελευταίο μορφότυπο έχει προτεραιότητα:
Οι παρακάτω μεταβλητές ορίζονται παγκοσμίως.
| Μεταβλητή | Περιγραφή |
|---|---|
| format | Μορφή της εξόδου. |
| bom | BOM στο μορφότυπο UTF-8. Η προεπιλογή είναι TRUE. |
| key | Διαβάζει μόνο μια μεταβλητή που έχει οριστεί. Αυτή η μέθοδος είναι ανεπαρκής, επειδή όλα τα δεδομένα πρέπει να επεξεργαστούν και στη συνέχεια να φιλτράρονται. Πρέπει να χρησιμοποιείται μόνο για μικρές ποσότητες δεδομένων. |
| header | Εμφάνιση κεφαλίδας. Η προεπιλογή είναι TRUE. |
| compact | Συμπιέζει όλα τα υποστοιχεία σε ένα. Αν δεν οριστεί μια boolean τιμή, τότε χρησιμοποιείται αυτή η τιμή για να συνδυαστούν οι μεταβλητές. Διαφορετικά, χρησιμοποιείται η τιμή .. |
| values | Επιστρέφει μόνο τις τιμές και όχι τα ονόματα των μεταβλητών. Αυτή η επιλογή είναι διαθέσιμη μόνο για HTML, CSV και Κείμενο. |
| minimal | Όνομα συντομογραφίας για header=FALSE, compact=minimal και values=TRUE. |
| csvdel | CSV-Delimiter. Η προεπιλογή είναι ; |
| csvenc | CSV-Enclosure-παρακλάδισμα. Η προεπιλογή είναι " |
| csvesc | CSV-Escape-συμβόλο. Η προεπιλογή είναι \ |
Οι παρακάτω μεταβλητές μπορούν να χρησιμοποιηθούν παγκοσμίως, καθώς και για μεμονωμένες μεταβλητές. Για να αναφερθεί μια μεμονωμένη μεταβλητή, ορίζεται ως εξής:
time*:hr=true
Το παραπάνω παράδειγμα αναφέρεται σε όλες τις μεταβλητές που ξεκινούν με time και το ίδιο το time. Ελέγχονται όλα τα κανόνες στη σειρά. Έτσι, ο τελευταίος κατάλληλος κανόνας έχει προτεραιότητα. Αναζητάται μέσω κανονικής έκφρασης.
| Μεταβλητή | Περιγραφή |
|---|---|
| hr | Human Readable. Οι μεταβλητές, αν είναι δυνατόν, μετατρέπονται σε δεδομένα αναγνωστικά από ανθρώπους. Η προεπιλογή είναι TRUE για το μορφότυπο HTML, CSV και Κείμενο. |
| numdec | Αριθμός θέσεων μετά τη δεκαδική υποδιαστολή. |
| numths | Χαρακτήρας διαχωρισμού χιλιάδων. |
| numdot | Δεκαδικό σημείο. |
| prefix | Πρόθεμα πριν από τη μεταβλητή. |
| suffix | Επίθημα μετά τη μεταβλητή. |
Στα επόμενα κεφάλαια ορίζονται όλες οι εφαρμογές της API.