Demand API
v1De koppeling waarmee afnemers geleverde leads ophalen, accepteren en afkeuren binnen jouw OXIAE-platform.
https://api.oxiae.com/api Introductie
De Demand API is bedoeld voor afnemers die geleverde leads ontvangen en verwerken — de tegenhanger van de Supply API die ze aanlevert. Je haalt je geleverde leads op, bekijkt de details, en accepteert of betwist ze. Wil je realtime geïnformeerd worden bij elke levering? Zet dan een ondertekende webhook aan. Je ziet uitsluitend leads die via matching & routing aan jouw organisatie zijn geleverd. Alle aanroepen verlopen over HTTPS en geven JSON terug.
Authenticatie
De Demand API gebruikt API-sleutels. Stuur je sleutel mee als Bearer-token in de Authorization-header (of via X-Api-Key). Sleutels beheer je onder Instellingen → API-sleutels. Elke sleutel is gekoppeld aan één organisatie en geeft alleen toegang tot de leads die aan díe organisatie zijn geleverd.
/api/demand/leads Leads ophalen
Geeft een gepagineerde lijst van de leads die aan jou zijn geleverd, met prijs, status en de leadgegevens.
Queryparameters
statusenum- Filter: delivered, accepted of rejected. Standaard alle.
per_pageinteger- Aantal per pagina (standaard 25, max 100).
pageinteger- Paginanummer.
curl "https://api.oxiae.com/api/demand/leads?status=delivered&per_page=25" \
-H "Authorization: Bearer oxa_3f9a2b7c8d1e4f60a1b2c3d4" {
"data": [
{
"id": 5031,
"lead_id": 21503,
"status": "accepted",
"price": 82.50,
"assigned_at": "2026-06-10T16:18:03+00:00",
"lead": {
"first_name": "Yara",
"last_name": "de Groot",
"email": "yara@voorbeeld.nl",
"phone": "+31612345678",
"postcode": "4503BH",
"category": "Arbeidsrecht"
}
}
],
"meta": { "current_page": 1, "per_page": 25, "last_page": 17, "total": 408 }
} /api/demand/leads/{id} Lead-detail
Geeft het volledige detail van één geleverde lead terug. Buiten je eigen leveringen krijg je 404.
curl https://api.oxiae.com/api/demand/leads/5031 \
-H "Authorization: Bearer oxa_3f9a2b7c8d1e4f60a1b2c3d4" Accepteren & afkeuren
/api/demand/leads/{id}/accept Bevestigt de lead. Idempotent: een al geaccepteerde lead blijft geaccepteerd.
curl https://api.oxiae.com/api/demand/leads/5031/accept \
-X POST \
-H "Authorization: Bearer oxa_3f9a2b7c8d1e4f60a1b2c3d4" { "data": { "id": 5031, "status": "accepted" } } /api/demand/leads/{id}/reject Keurt de lead af en opent een dispuut voor beoordeling en eventuele verrekening. Vereist een reason; een al afgekeurde lead geeft 409.
curl https://api.oxiae.com/api/demand/leads/5031/reject \
-X POST \
-H "Authorization: Bearer oxa_3f9a2b7c8d1e4f60a1b2c3d4" \
-H "Content-Type: application/json" \
-d '{ "reason": "Telefoonnummer onbereikbaar", "reason_code": "unreachable" }' { "data": { "id": 5031, "status": "rejected" } } Webhooks
In plaats van pollen kun je een webhook-endpoint instellen. Bij elke levering stuurt het platform een lead.delivered-event naar jouw URL. Elk bericht is ondertekend met HMAC-SHA256 in de X-Signature-header; verifieer die met je webhook-secret voordat je het bericht verwerkt. Zie API & webhooks voor hoe realtime koppelingen samenhangen. Endpoints beheer je onder Instellingen → Webhooks.
POST https://jouw-domein.nl/webhooks/oxiae
X-Signature: sha256=9f86d081884c7d659a2feaa0c55ad015...
{
"event": "lead.delivered",
"data": {
"id": 5044,
"lead_id": 21567,
"price": 82.50,
"assigned_at": "2026-07-07T09:12:44+00:00",
"lead": { "first_name": "Sanne", "last_name": "de Vries", "category": "Arbeidsrecht" }
}
} Foutafhandeling
De API gebruikt standaard HTTP-statuscodes.
401- Ontbrekende of ongeldige API-sleutel.
404- Lead niet gevonden, of niet aan jouw organisatie geleverd.
409- Lead is al afgekeurd, of er loopt al een dispuut.
422- Validatiefout, bijvoorbeeld een ontbrekende reason bij afkeuren.
429- Rate limit bereikt (standaard 120 per minuut).