Inleiding
Er is een REST API beschikbaar van GO. Via de API kan de database uitgelezen worden. Dit kun je bijvoorbeeld gebruiken om andere systemen aan GO te koppelen. Meer informatie hierover vind je op: https://srv5.automaat.online/swagger/
Naast de REST API zijn er ook een aparte API's om voor de planning en om artikelen op te halen en eventueel bestellingen door te sturen.
Note: Supportvragen over de API kun je stellen via email via [email protected]
Let op: De API heeft een rate-limit. Je kunt max. 1800 requests per minuut sturen. Hierna krijg je een HTTP statuscode 429 terug. Wanneer er meer dan 2000 requests gedaan worden, wordt het IP-adres geblokkeerd.
REST API
Verbinding maken
De verbinding loopt via HTTPS op poort 443. De volgende request methods zijn mogelijk:
GET
Haalt de gegevens op.
PUT
Maakt een nieuw record of update een bestaand record.
Haalt een PDF op van het meegegeven document.
DELETE
Verwijderd het geselecteerde record.
Authenticatie
Authenticatie wordt gedaan via een API-key. Deze kun je in GO aanmaken als je links-onderin naar het tandwieltje gaat. Instellingen > Beveiligingen > tabblad 'API-keys'. Hier vind je ook met welke server je moet verbinden.
PHP Voorbeeld
$apiKey = '00000-0000000-000000-0000'; $serverUrl = 'https://srv?.automaat.online/api/v2/'; $headers = array(); $headers[] = 'Content-Type: application/json'; $headers[] = 'Authorization: apikey ' . $apiKey; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $serverUrl . "customer/1"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HTTPHEADER, $headers); $data = json_decode(curl_exec($ch)); curl_close($ch);
Artikelen
Artikelen ophalen
Actuele voorraad ophalen - bestelling inschieten
Via een XML-aanroep kun je eenvoudig de huidige voorraad van 1 of meerdere artikelen ophalen en deze vervolgens ook bestellen. In dit XML-bericht kun je dan <Type>Query</Type> eenvoudig aanpassen naar Order.
Je kunt via hier het bericht bekijken en een test-aanvraag sturen: http://srv3.automaat.online/articles/test.php?apikey=
Hier vind je ook hoe de XML eruit hoort te zien.
Planning
In plaats van de standaard online planningsmodule, kun je ook zelf een planningsmodule maken. Je kunt hiervoor de plan-informatie (beschikbaarheid en plansoorten) ophalen en na afloop de planningsaanvraag inschieten.
Let op: voor de planning gebruik je geen API-key!
Planinformatie ophalen
De planinformatie kun je (als json-bericht) ophalen via: https://srv0.automaat.online/planning/planning.php?cdkey=CSW-1707908&aid=0&action=settings
Planningsaanvraag inschieten
De planaanvraag kun je inschieten met een POST naar:
https://srv0.automaat.online/planning/planning.php?cdkey=CSW-1707908&aid=0&action=save
Met de volgende velden:
license: kenteken
mileage: km. stand
vv: soort vervangend vervoer
date: datum (yyyy-mm-dd hh:MM)
todo: wat te doen
plantype: plansoort (vanuit planinformatie)
apk: true of false
name: naam
phone: telefoonnummer
email: emailadres
remarks: eventueel commentaar
Indien het een huidige klant is kun je ook de volgende velden meegeven:
oid: offerte-id
kid: klanten-id
aid: auto-id