Developer quickstart

Van API-key naar een correct resolve-request in enkele stappen.

Roep de API aan vanuit je serveromgeving, stuur adresvelden genest mee en verwerk candidates als lijst. Een resolve-call is geen 202-job; duurzame enrichment is dat wel.

EVIDENCE-FIRSTVan invoer naar een uitlegbaar besluit.
Bron per voorstel Review bij twijfel Origineel blijft bewaard
Waar dit bij helpt

Maak een databesluit controleerbaar vóór je het toepast.

01

Server-side authenticatie

Lees BEDRIJFSDATA_API_KEY uit je serveromgeving en stuur hem als X-API-Key-header.

02

Correcte requestvorm

Plaats external_id en identiteitssignalen onder record; adresvelden horen onder record.address.

03

Bewuste statusafhandeling

Bouw aparte paden voor verified, probable, ambiguous en unmatched voordat je enrichment toevoegt.

Werkbare route

Van eerste signaal tot veilig resultaat.

  1. 01

    Vraag pilottoegang aan

    De repairmodule staat achter featuretoegang. Gebruik een key die voor de juiste workspace en scope is uitgegeven.

  2. 02

    Zet de key server-side

    Gebruik BEDRIJFSDATA_API_KEY zonder NEXT_PUBLIC_-prefix en voorkom keylogging.

  3. 03

    Doe een resolve-call

    Start met één herkenbaar testrecord en controleer de HTTP-status plus responsevorm.

  4. 04

    Voeg enrichment toe

    Gebruik /enrich met Idempotency-Key, bewaar het job-id en volg de job voordat je final_data leest.

Synthetisch voorbeeld · geen klantdata

Kopieerbaar cURL-voorbeeld met het huidige contract.

Vervang de fictieve bedrijfsnaam en postcode door een toegestaan testrecord en voer dit uit in een server- of terminalomgeving.

De invoer is fictief. Bewaar de API-key server-side en controleer response.ok voordat je JSON als succesresultaat verwerkt.

cURL · resolve
curl -X POST https://api.bedrijfsbron.nl/v1/companies/resolve \
  -H "X-API-Key: $BEDRIJFSDATA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "record": {
      "external_id": "quickstart-001",
      "name": "Voorbeeldbedrijf B.V.",
      "address": {
        "postal_code": "1234 AB",
        "country_code": "NL"
      }
    }
  }'
Statusafhandeling · TypeScript
const result = await response.json();

switch (result.status) {
  case "verified":
    return confirmCandidate(result.candidates[0]);
  case "probable":
  case "ambiguous":
    return askUserToChoose(result.candidates);
  case "unmatched":
    return continueWithManualInput();
}

Resolve is synchroon

POST /v1/companies/resolve retourneert de matchstatus en maximaal vijf kandidaten in dezelfde response.

  • Geen Idempotency-Key nodig
  • Response bevat candidates
  • Geschikt voor kandidaatselectie

Enrich is asynchroon

POST /v1/companies/enrich start een duurzame reparatiejob en antwoordt met 202 Accepted.

  • Idempotency-Key verplicht
  • Poll /repair-jobs/{id}
  • Lees records en final_data na verwerking
Veelgestelde vragen

Eerst weten wat er precies gebeurt.

Waarom krijg ik 404 op de repairroute?

De data-repairmodule is featuregestuurd. Zonder geactiveerde pilotworkspace kan de route bewust als niet beschikbaar antwoorden.

Mag postal_code direct onder record?

Nee. Adresvelden zoals street, house_number, postal_code, city en country_code horen onder record.address.

Is resolve 202 Accepted?

Nee. Resolve retourneert direct een ResolveResponse. De enrich- en CSV-jobroutes gebruiken 202 Accepted voor asynchrone verwerking.

Begin met echte input

Toets Bedrijfsbron eerst op een afgebakende dataset.

Beschrijf je bronbestand, gewenste velden en beslisregels. Dan kan de pilot worden ingericht zonder directe writeback naar je ERP of CRM.

Bespreek je dataset