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/api/rest. Je kunt hierop inloggen met je CD-key en bijbehorende serienummer.


Let op: We zijn bezig met een nieuwe API. De informatie hierover kun je hier vinden: https://srv5.automaat.online/swagger/


Naast de REST API is er ook een aparte API om artikelen op te halen en eventueel bestellingen op te halen.


Note: Supportvragen over de API kun je stellen via email via apisupport@csw.nl


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.

PRINT

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

https://srv3.automaat.online/articles/ga.php?output=table

output: plain, json, xml, table, waarbij plain het snelste is.
count: aantal artikelen op te halen
pictures: 1 als je de afbeeldingen ook op wilt halen
from: het laatst opgehaalde ID
fromdate: haalt de artikelen op die geupdate zijn na die datum

Foto's kun je ophalen met:
https://srv3.automaat.online/articles/ga.php?output=picture&articleId=31&index=1


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