Extern de gegevens in WeFact benaderen (API)
Door gebruik te maken van de API kunt u gegevens ophalen, bewerken, toevoegen en zelfs acties uitvoeren vanuit een externe applicatie. Alle informatie, documentatie en voorbeeld PHP bestanden vindt u op de speciale API pagina: www.wefact.nl/api/.
Let op: om van de API gebruik te maken is programmeerkennis vereist.
Belangrijke kenmerken van de WeFact API
- JSON of PHP: De voorbeeld bestanden zijn in PHP, maar u kunt ook direct in JSON communiceren.
- POST-commando’s: De API is niet RESTful. Alle API-verzoeken dienen via POST-commando’s te worden uitgevoerd.
- Endpoint: De API is bereikbaar via https://api.mijnwefact.nl/v2/.
Dit is een vast endpoint, en veranderd niet afhankelijk van de acties die u wil uitvoeren. Een andere URL gebruiken is onjuist en leidt tot een foutmelding (404). - IPv4: De API ondersteunt momenteel uitsluitend verbindingen vanaf IPv4-adressen. Verzoeken vanaf IPv6-adressen worden (nog) niet ondersteund.
Authenticatie & toegang
Om gebruik te maken van de API heeft u het volgende nodig:
- API key: Deze vindt u in WeFact via het menu 'Instellingen', submenu 'API'.
- IP-whitelist: Alleen IP-adressen die u toevoegt aan de whitelist, hebben toegang. Het is ook mogelijk om als IP adres een range op te geven, voorbeeld: 12.34.56.0/24
- Toegangsniveau: De API key geeft toegang tot één specifieke administratie en heeft alle rechten. De gebruikerslogin van WeFact speelt geen rol.
Zonder een geldige combinatie van API key én IP-adres is toegang niet mogelijk.
Structuur van een API-call
Elke API-call bevat minimaal deze drie velden:
- api_key – De toegangssleutel tot uw administratie.
- controller – Het domein (bijvoorbeeld: invoice, debtor, product).
- action – De actie die u wilt uitvoeren (bijvoorbeeld: add, edit, show, list).
Daarnaast geeft u in de call aanvullende parameters mee, afhankelijk van de gewenste actie.
Voorbeeld
Hieronder een API call in JSON wat een POST commando is naarhttps://api.mijnwefact.nl/v2/om klantinformatie op te halen:
===========
{
"controller": "debtor",
"action": "show",
"api_key": "{UW_API_SLEUTEL_UIT_WEFACT}",
"DebtorCode": "DB00001"
}
===========