Versie 1

Nulstop API

Met de open API koppel je Nulstop aan andere software: je ERP, Power BI, Exact, AFAS, een sensor die zelf storingen meldt, of een eigen script. De API zit gratis in elk pakket.

1. Een sleutel aanmaken

Een beheerder maakt in Nulstop een sleutel aan via Beheer > Koppelingen (API). Kies of de sleutel alleen mag lezen, of ook bonnen mag aanmaken en bijwerken. De sleutel begint met ns_ en is maar één keer te zien: bewaar hem veilig, net als een wachtwoord. Een sleutel die niet meer nodig is, trek je daar ook weer in.

2. De sleutel meesturen

Stuur bij elk verzoek de kop Authorization: Bearer <sleutel> mee. Alles gaat via https; antwoorden zijn JSON.

curl https://www.nulstop.nl/api/v1/installaties \
  -H "Authorization: Bearer ns_jouwsleutel"

3. Wat kan er

MethodeAdresSleutelWat
GET/api/v1lezenControle: werkt de sleutel, van welk bedrijf, welke rechten.
GET/api/v1/installatieslezenAlle installaties met code, naam, pad en bovenliggende installatie.
GET/api/v1/bonnenlezenBonnen (storingen, klussen, preventief, keuringen). Filters hieronder.
GET/api/v1/bonnen/{nummer}lezenEén bon met zijn volledige geschiedenis.
POST/api/v1/bonnenschrijvenEen storing of klus aanmaken.
PATCH/api/v1/bonnen/{nummer}schrijvenStatus, gewerkte uren of een notitie bijwerken.
GET/api/v1/onderhoudstakenlezenPreventief onderhoud en keuringen, met de volgende datum.
GET/api/v1/onderdelenlezenMagazijn: voorraad, minimum en of er besteld moet worden (pakket Professional en hoger).

4. Bonnen ophalen

Filters (allemaal optioneel):

curl "https://www.nulstop.nl/api/v1/bonnen?status=open,gepland&limiet=50" \
  -H "Authorization: Bearer ns_jouwsleutel"

Antwoord (ingekort):

{
  "data": [{
    "nummer": 1042, "titel": "Vulmachine lekt", "soort": "storing",
    "prioriteit": "P2", "status": "gepland",
    "installatie": { "code": "L2-VUL", "pad": "Lijn 2 > Vulmachine" },
    "monteur": { "naam": "Sem Bakker", "email": "sem@bedrijf.nl" },
    "gemeldOp": "2026-09-28T07:12:00.000Z", "geplandOp": "2026-09-29T06:00:00.000Z",
    "gereedOp": null, "urenGepland": 2, "urenWerkelijk": null,
    "bijgewerkt": "2026-09-28T09:30:00.000Z"
  }],
  "volgende": null
}

5. Een storing aanmaken

Velden: titel (verplicht), omschrijving, prioriteit (P1 t/m P4, standaard P3), installatieCode, soort (storing of klus) en melder. Het antwoord is de nieuwe bon, met status 201.

curl -X POST https://www.nulstop.nl/api/v1/bonnen \
  -H "Authorization: Bearer ns_jouwsleutel" \
  -H "Content-Type: application/json" \
  -d '{"titel": "Trilling pomp P-201 te hoog", "prioriteit": "P2", "installatieCode": "L1-POM", "melder": "Trillingsmeter"}'

6. Een bon bijwerken

Velden: status (open, gepland, bezig, wacht, gereed), urenWerkelijk en notitie. Wordt een preventieve bon gereed gemeld, dan schuift de taak vanzelf door naar de volgende keer, net als in de app.

curl -X PATCH https://www.nulstop.nl/api/v1/bonnen/1042 \
  -H "Authorization: Bearer ns_jouwsleutel" \
  -H "Content-Type: application/json" \
  -d '{"status": "gereed", "urenWerkelijk": 1.5, "notitie": "Afgemeld vanuit het ERP"}'

7. Power BI en Excel

  1. Kies in Power BI (of Excel: Gegevens > Gegevens ophalen) voor Web en dan Geavanceerd.
  2. Vul als URL in: https://www.nulstop.nl/api/v1/bonnen?limiet=500
  3. Voeg onder “HTTP-aanvraagheaderparameters” toe: Authorization met waarde Bearer ns_jouwsleutel.
  4. Kies bij de verificatie voor Anoniem (de sleutel zit al in de kop) en klik op OK.
  5. Klik in Power Query op data > Naar tabel en vouw de kolommen uit.

Gebruik voor Power BI een sleutel die alleen mag lezen.

8. Foutmeldingen

CodeBetekenis
400Er klopt iets niet aan het verzoek; de melding zegt wat.
401Geen sleutel meegestuurd, of de sleutel is ingetrokken.
402Het abonnement van dit bedrijf is niet actief.
403De sleutel mag dit niet (bijv. alleen lezen), of het onderdeel zit niet in het pakket.
404Niet gevonden.
409Kan niet meer, bijv. een bon die al is afgesloten.

Elke fout heeft de vorm { "fout": "uitleg in gewone taal" }.

Hulp nodig?

Mail naar info@nulstop.nl. Heb je een koppeling nodig die er nog niet is, laat het weten; de API groeit mee. Nog geen account? Probeer Nulstop 30 dagen gratis.