Skip to content

API-integratie

Krijg programmatisch toegang tot je MyCompanyDesk-gegevens via de REST API.

INFO

API-toegang vereist het Business-abonnement.

Overzicht

De MyCompanyDesk API stelt je in staat om:

  • Facturen, uitgaven en klanten aan te maken en op te halen
  • Facturatieworkflows te automatiseren
  • Te integreren met andere bedrijfstools
  • Aangepaste rapportages te bouwen
  • Gegevens te synchroniseren met externe systemen

Authenticatie

Alle API-verzoeken vereisen een API-sleutel in de request-header:

Authorization: Bearer YOUR_API_KEY

Een API-sleutel aanmaken

  1. Ga naar Instellingen > API-sleutels
  2. Klik op Nieuwe sleutel genereren
  3. Geef de sleutel een beschrijvende naam
  4. Kopieer de sleutel — deze wordt slechts eenmaal getoond

WARNING

Bewaar je API-sleutel veilig. Commit deze nooit naar versiebeheer en deel hem niet publiekelijk.

Basis-URL

Alle API-endpoints zijn beschikbaar op:

https://api.mycompanydesk.com/api

Belangrijke endpoints

Klanten

MethodeEndpointBeschrijving
GET/customersAlle klanten ophalen
POST/customersEen klant aanmaken
GET/customers/:idEen klant ophalen
PUT/customers/:idEen klant bijwerken
DELETE/customers/:idEen klant verwijderen

Facturen

MethodeEndpointBeschrijving
GET/invoicesAlle facturen ophalen
POST/invoicesEen factuur aanmaken
GET/invoices/:idEen factuur ophalen
PUT/invoices/:idEen factuur bijwerken
DELETE/invoices/:idEen factuur verwijderen
POST/invoices/:id/sendEen factuur versturen
POST/invoices/:id/mark-paidAls betaald markeren

Uitgaven

MethodeEndpointBeschrijving
GET/expensesAlle uitgaven ophalen
POST/expensesEen uitgave aanmaken
GET/expenses/:idEen uitgave ophalen
PUT/expenses/:idEen uitgave bijwerken
DELETE/expenses/:idEen uitgave verwijderen

Projecten

MethodeEndpointBeschrijving
GET/projectsAlle projecten ophalen
POST/projectsEen project aanmaken
GET/projects/:idEen project ophalen
PUT/projects/:idEen project bijwerken

Zoeken

MethodeEndpointBeschrijving
GET/search?q=term&type=entityZoeken over entiteiten

Filteren

Lijstendpoints ondersteunen queryparameters voor filteren:

GET /api/invoices?status=sent&customer_id=123&limit=50

Veelgebruikte filters:

  • status — Filter op status
  • customer_id — Filter op klant
  • project_id — Filter op project
  • limit — Aantal resultaten (standaard: 50)
  • offset — Paginatie-offset

Snelheidslimiet

API-verzoeken zijn beperkt in snelheid om eerlijk gebruik te garanderen:

  • Standaard snelheidslimiet geldt per API-sleutel
  • Overschrijding van de limiet geeft een 429 Too Many Requests-respons
  • Neem een retrystrategie op in je integratie

Foutafhandeling

De API retourneert standaard HTTP-statuscodes:

CodeBeschrijving
200Geslaagd
201Aangemaakt
400Ongeldig verzoek (controleer je parameters)
401Niet geautoriseerd (ongeldige API-sleutel)
403Verboden (onvoldoende rechten)
404Niet gevonden
429Snelheidslimiet bereikt
500Serverfout

Foutresponsen bevatten een JSON-body:

json
{
  "error": "Beschrijving van wat er mis ging"
}

Webhooks

Configureer webhooks om realtime meldingen te ontvangen wanneer gebeurtenissen plaatsvinden:

  • Factuur verstuurd
  • Factuur betaald
  • Klant aangemaakt
  • Uitgave toegevoegd

Stel webhooks in via Instellingen > API-sleutels > Webhooks.

Tips

  • Gebruik paginatie voor grote datasets
  • Cache responses waar mogelijk om het aantal API-aanroepen te verminderen
  • Implementeer retrylogica met exponential backoff voor snelheidslimieten
  • Gebruik webhooks in plaats van polling voor realtime updates

MyCompanyDesk — Accounting made simple.