Naar de inhoud

Fouten

De vorm van een foutantwoord en alle foutcodes van de API.

Gaat een verzoek mis, dan geeft de API een HTTP-status buiten de 200-reeks en een JSON-body met één vaste vorm. Zo kun je fouten in je eigen code op één manier afhandelen.

Vorm van een fout

JSON
{
	"error": {
		"message": "Leesbare uitleg in het Nederlands",
		"code": "korte_code"
	}
}

code is een vaste, korte code in het Engels. message is een zin in het Nederlands, bedoeld voor mensen.

Tip

Laat je code beslissen op code en de HTTP-status, niet op message. De melding is Nederlandse tekst om te tonen of te loggen.

Alle foutcodes

StatusCodeWanneer
401unauthorizedGeen, een onbekende of een ingetrokken sleutel, of een sleutel die geen API-sleutel is. Melding: Geen geldige API-sleutel. Stuur 'Authorization: Bearer lf_live_...' mee.
403forbiddenDe sleutel mist het gevraagde recht. Melding: Deze sleutel heeft geen 'read'-rechten. of Deze sleutel heeft geen 'write'-rechten.
403forbiddenDe sleutel hoort niet bij één werkruimte. Melding: Deze sleutel hoort niet bij precies één werkruimte.
404not_foundDe lead of het gesprek bestaat niet in je werkruimte, of het id is geen geldig id. Meldingen: Lead niet gevonden. en Gesprek niet gevonden.
400bad_requestAlleen bij content-gaps: een since die geen datum is. Melding: Ongeldige `since`; gebruik een ISO-datum.
400emptyAlleen bij de reply: het bericht ontbreekt, is leeg of de body is geen geldige JSON. Melding: Bericht is leeg
400too_longAlleen bij de reply: het bericht is langer dan 1000 tekens. Melding: Maximaal 1000 tekens
409pausedAlleen bij de reply: het LinkedIn-account van het gesprek is gepauzeerd. De melding geeft de reden.
409duplicateAlleen bij de reply: er staat al een antwoord klaar voor dit profiel. Melding: Er staat al een antwoord klaar voor dit gesprek
429rate_limitedMeer dan 120 verzoeken per minuut met deze sleutel. Melding: Te veel verzoeken. Maximaal 120 per minuut.
405Een GET op het adres van de reply. Dit antwoord heeft geen body.

De reply kent nog twee varianten van not_found: Gesprek niet gevonden (zonder punt) als het gesprek niet bestaat, en LinkedIn-account niet gevonden als er geen LinkedIn-account aan het gesprek hangt. Zie Een antwoord versturen.

Voorbeelden

Zonder of met een ongeldige sleutel

JSON HTTP 401
{
	"error": {
		"message": "Geen geldige API-sleutel. Stuur 'Authorization: Bearer lf_live_...' mee.",
		"code": "unauthorized"
	}
}

Leessleutel op de reply

JSON HTTP 403
{
	"error": {
		"message": "Deze sleutel heeft geen 'write'-rechten.",
		"code": "forbidden"
	}
}

Lead uit een andere werkruimte

JSON HTTP 404
{
	"error": {
		"message": "Lead niet gevonden.",
		"code": "not_found"
	}
}

Te veel verzoeken

JSON HTTP 429
{
	"error": {
		"message": "Te veel verzoeken. Maximaal 120 per minuut.",
		"code": "rate_limited"
	}
}

Problemen oplossen

  • 401 terwijl de sleutel klopt. Controleer of de header precies Authorization: Bearer lf_live_... is en of je geen sleutel van de Chrome-extensie of een MCP-sleutel gebruikt.
  • 403 bij een GET. De sleutel heeft alleen write. Lezen vraagt read.
  • 404 op een id dat je net hebt gezien. Het id hoort bij een andere werkruimte dan die van je sleutel. Controleer de werkruimte met GET /api/v1/me.
  • 429. Wacht tot de minuut om is. Zie Limieten.

Verder lezen