{"id":12606,"date":"2022-06-20T07:57:11","date_gmt":"2022-06-20T04:57:11","guid":{"rendered":"https:\/\/www.fmsdocumentation.com\/apis\/"},"modified":"2022-06-20T07:57:11","modified_gmt":"2022-06-20T04:57:11","slug":"apis","status":"publish","type":"page","link":"https:\/\/www.fmsdocumentation.com\/nl\/apis\/","title":{"rendered":"APIs"},"content":{"rendered":"<p>API (toepassingsprogramma-interface) laat klanten FMS integreren in hun systemen, en gegevens over verschillende entiteiten ophalen en doorsturen.<\/p>\n<p>De client doet HTTP-verzoeken aan het systeem, waarbij informatie wordt verstrekt over de voorgenomen actie. HTTP-commando&#8217;s die gewoonlijk in een API worden gebruikt:<\/p>\n<ul>\n<li><strong>KRIJGEN<\/strong> \u2013 Lees bron;<\/li>\n<li><strong>POST<\/strong>\u2013 Wijzig bronstatus;<\/li>\n<\/ul>\n<p>De opgevraagde inhoud wordt geleverd in <strong>JSON<\/strong>-formaat met UTF-8-codering. Als een ander formaat wordt gebruikt, wordt dat in de beschrijving van de methode vermeld.<\/p>\n<p>HTTP-statuscode geeft de status van het verzoek aan &#8211; voor succesvolle verzoeken wordt statuscode <strong>200<\/strong>geretourneerd. Samen met dit antwoord wordt de gevraagde informatie van de server ontvangen. De antwoorden zullen verschillen afhankelijk van het type API dat wordt gebruikt. De API-antwoorden voor de verschillende API-types worden in de volgende hoofdstukken beschreven.<\/p>\n<p>Indien er een fout is opgetreden in het verzonden verzoek, zal het systeem een antwoordbericht terugsturen met een statuscode. Veel voorkomende foutcodes:<\/p>\n<ul>\n<li><strong>Code 400<\/strong> \u2013 Slecht verzoek &#8211; API verzoek werd niet herkend.<\/li>\n<li><strong>Code 401<\/strong> \u2013 Niet geautoriseerd &#8211; Dit betekent dat de authenticatiegegevens ontbreken of onjuist zijn;<\/li>\n<li><strong>Code 403<\/strong> \u2013 Forbidden &#8211; Dit betekent dat de client geen recht heeft op toegang tot de gevraagde bron of het uitvoeren van de gevraagde actie;<\/li>\n<li><strong>Code 404<\/strong>\u2013 Niet gevonden &#8211; Dit betekent dat de gevraagde bron niet is gevonden.<\/li>\n<li><strong>Code 500<\/strong> \u2013 Interne serverfout &#8211; neem contact op met de technische ondersteuning van uw provider.<\/li>\n<\/ul>\n<p>Foutcodes geven enige algemene informatie over het soort fout, zodat de gebruiker de oorzaak van het probleem kan achterhalen.<\/p>\n<p>Sommige API&#8217;s hebben optionele elementen (parameters) in hun respons, optionele parameters kunnen om verschillende redenen door het systeem worden overgeslagen (geen gegevens, slechte gegevens, respons time out, enz.) Een gebruiker mag er niet van uitgaan dat bepaalde facultatieve gegevens altijd in een antwoord zullen worden opgenomen.<\/p>\n<hr>\n<h3>API Beperkingen<\/h3>\n<p>Alle API&#8217;s hebben \u00e9\u00e9n enkele beperking:<\/p>\n<ul>\n<li>Niet meer dan 1000 verzoeken per minuut.<\/li>\n<\/ul>\n<p>Deze beperking geldt voor alle bestaande FMS API&#8217;s.<\/p>\n<hr>\n<h3>API-authenticatie<\/h3>\n<p>API-authenticatie en -autorisatie zijn nodig om het API-gebruik voor verschillende cli\u00ebnten en hun integratie met verschillende systemen te controleren. Om een geautoriseerd verzoek te doen aan systeem-API&#8217;s, moet de verzoekende toepassing van de cli\u00ebnt eerst een <strong>API-sleutel<\/strong>verkrijgen namens de webgebruiker van het systeem.<\/p>\n<p>Cli\u00ebnten kunnen alleen een API-sleutel verkrijgen door rechtstreeks contact op te nemen met de technische ondersteuning van hun dienstverleners. API sleutel bestaat uit willekeurig gegenereerde letters, cijfers en symbolen.<\/p>\n<p>Voorbeeld van een verzoek waarbij een API_key wordt gebruikt:<\/p>\n<p><a href=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-589 size-full\" src=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/1.png\" alt=\"\" width=\"672\" height=\"92\" srcset=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/1.png 672w, https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/1-300x41.png 300w\" sizes=\"auto, (max-width: 672px) 100vw, 672px\" \/><\/a><\/p>\n<p>Indien de API_key is verlopen, verwijderd of eenvoudigweg uitgeschakeld, zal het systeem de volgende reactie terugsturen:<\/p>\n<p><a href=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/2-1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-590 size-full\" src=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/2-1.png\" alt=\"\" width=\"416\" height=\"72\" srcset=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/2-1.png 416w, https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/2-1-300x52.png 300w\" sizes=\"auto, (max-width: 416px) 100vw, 416px\" \/><\/a><\/p>\n<p>API endpoints, verzoekparameters en antwoorden kunnen via deze link in &#8220;Swagger&#8221; worden bekeken: <a href=\"https:\/\/api.fm-track.com\/swagger-ui.html\">https:\/\/api.fm-track.com<\/a><\/p>\n<p style=\"background-color: #2e67b1; color: #ffffff; padding-left: 10px; padding-right: 10px;\"><p class=\"note\">Notitie!<br \/>\nBij alle soorten API&#8217;s moet altijd een API-versie worden opgegeven.<\/p><\/p>\n<p style=\"background-color: #2e67b1; color: #ffffff; padding-left: 10px; padding-right: 10px;\"><p class=\"note\">Belangrijk!<br \/>\nVanwege de voortdurende ontwikkeling van zowel de API als het systeem van waaruit de informatie wordt opgevraagd, kunnen gebruikers soms parameters ontvangen die niet in de beschrijvingen zijn opgenomen. Het wordt aanbevolen om onbekende parameters die niet gedocumenteerd zijn in de beschrijving van elke API, gewoon te negeren.<\/p><\/p>\n<hr>\n<h3>Versiebeheer en compatibiliteit<\/h3>\n<p>De API-oplossing wordt voortdurend bijgewerkt, verbeterd en anderszins gewijzigd, en daarom is het noodzakelijk te begrijpen wat &#8220;compatibiliteit&#8221; betekent en hoe dit de gebruiker be\u00efnvloedt bij het gebruik van de API-oplossing.<\/p>\n<p>Wanneer een API wordt bijgewerkt, gebeurt een van de volgende twee mogelijkheden:<\/p>\n<ul>\n<li>De API is achterwaarts compatibel &#8211; dit betekent dat de aangebrachte wijzigingen de workflow van de API op geen enkele manier zullen be\u00efnvloeden, er wordt dus geen nieuwe versie gecre\u00eberd.<\/li>\n<li>De API is niet achterwaarts compatibel &#8211; dit betekent dat sommige onderdelen van de API zodanig zijn gewijzigd dat zij niet meer op dezelfde manier werken als voorheen. In dat geval wordt een nieuwe versie van de API vrijgegeven.<\/li>\n<\/ul>\n<p>Wat wordt beschouwd als een achterwaarts compatibele API-versie:<\/p>\n<ul>\n<li>Nieuwe API-bron werd toegevoegd;<\/li>\n<li>Nieuwe optionele verzoekparameters werden toegevoegd aan de bestaande API<\/li>\n<li>Er werden nieuwe eigenschappen toegevoegd aan de bestaande API-reacties.<\/li>\n<li>De volgorde van de eigenschappen werd gewijzigd in bestaande API antwoorden.<\/li>\n<li>De lengte of opmaak van object ID&#8217;s of andere ondoorzichtige tekenreeksen wijzigen.<br \/>\nDe gebruiker kan er veilig van uitgaan dat de object ID&#8217;s die het systeem genereert nooit langer zullen zijn dan 255 tekens, maar de gebruiker moet in staat zijn ID&#8217;s met een mogelijke lengte van 255 tekens te hanteren. Bijvoorbeeld, de gebruiker gebruikt MySQL, ID&#8217;s moeten worden opgeslagen in een VARCHAR(255) COLLATE utf8_bin kolom (de COLLATE configuratie zorgt voor hoofdlettergevoeligheid bij lookups).<\/li>\n<li>Het toevoegen van nieuwe ENUM-typen. &#8211; Elk systeem moet op een nette manier omgaan met onbekende ENUM-types. Als bijvoorbeeld het type verandert van [Priv\u00e9, Zakelijk] in [Priv\u00e9, Werk, Zakelijk] zou dit geen enkel effect mogen hebben voor het systeem.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<hr>\n<p><div class=\"alignleft\"><a href=\"https:\/\/www.fmsdocumentation.com\/nl\/tachograaf-menu\/\" title=\"Tachograaf menu\"><span class=\"arrow\">\u2039 &nbsp <\/span> Tachograaf menu <\/a><\/div> <div class=\"alignright\"><a href=\"https:\/\/www.fmsdocumentation.com\/nl\/rijtijden-menu\/\" title=\"Rijtijden menu\">Rijtijden menu <span class=\"arrow\"> &nbsp\u203a <\/span> <\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>API (toepassingsprogramma-interface) laat klanten FMS integreren in hun systemen, en gegevens over verschillende entiteiten ophalen en doorsturen. De client doet HTTP-verzoeken aan het systeem, waarbij informatie wordt verstrekt over de voorgenomen actie. HTTP-commando&#8217;s die gewoonlijk in een API worden gebruikt: KRIJGEN \u2013 Lees bron; POST\u2013 Wijzig bronstatus; De opgevraagde inhoud wordt geleverd in JSON-formaat met &hellip; <a href=\"https:\/\/www.fmsdocumentation.com\/nl\/apis\/\" class=\"more-link\">Lees verder <span class=\"screen-reader-text\">APIs<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":116,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-12606","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.fmsdocumentation.com\/nl\/wp-json\/wp\/v2\/pages\/12606","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fmsdocumentation.com\/nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.fmsdocumentation.com\/nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.fmsdocumentation.com\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fmsdocumentation.com\/nl\/wp-json\/wp\/v2\/comments?post=12606"}],"version-history":[{"count":0,"href":"https:\/\/www.fmsdocumentation.com\/nl\/wp-json\/wp\/v2\/pages\/12606\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.fmsdocumentation.com\/nl\/wp-json\/wp\/v2\/media?parent=12606"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}