Naar de inhoud

Tooltagger API

Multi-tenant REST API voor toolbeheer en inspecties. Authenticatie via API-keys (Bearer). Elke key is gescope't en gebonden aan één tenant. Server-to-server only. Elke response is JSON met een { data, meta }-envelope; lijsten zijn cursor-gepagineerd (limit max 200, meta.page.next_cursor). Rate limit: 120 requests per minuut per key; daarboven volgt HTTP 429 met een Retry-After-header.

Snelstartbash
curl https://api.tooltagger.com/v1/tools \
  -H "Authorization: Bearer $TOOLTAGGER_API_KEY"

Authenticatie

Elk request heeft een API-sleutel nodig. Die maak je aan in de applicatie onder Developers — zie API-sleutel aanmaken. De sleutel hoort bij één tenant en krijgt de scopes die je bij het aanmaken kiest, per resource los voor lezen en schrijven. De API is bedoeld voor server-naar-serververkeer; zet een sleutel nooit in een browser of app die je uitlevert.

Headerhttp
Authorization: Bearer <jouw-sleutel>
Bewaar de sleutel als een wachtwoord. Hij geeft toegang tot alle gegevens van je tenant binnen de gekozen scopes. Zet hem in een omgevingsvariabele of secret store, nooit in frontend-code of een repository. Vermoed je dat hij is uitgelekt? Trek hem in de applicatie in en maak een nieuwe aan — dat kan zonder de koppeling opnieuw op te zetten.

Antwoordformaat

Elk antwoord is JSON in een { data, meta }-envelop. Lijsten zijn cursor-gepagineerd: geef limit mee (standaard 50, maximaal 200) en volg meta.page.next_cursor tot die leeg is. Filter incrementeel met updated_since, dan hoef je niet elke keer alles op te halen.

Endpoints

Alles staat onder https://api.tooltagger.com/v1. De API draait in de EU (regio eu‑central‑1), net als de applicatie zelf.

EndpointWat het doetScopes
GET /bulk_inspectionsLijst bulk-inspecties
GET /customersLijst
POST /customersMaak
DELETE /customers/{id}Verwijder
GET /customers/{id}Haal op
PATCH /customers/{id}Werk bij
GET /inspectionsLijst inspecties
POST /inspectionsMaak/werk inspectie bij
GET /inspections/{id}Haal inspectie op
POST /stock/transactionsVoorraadmutatie
GET /toolsLijst tools
POST /toolsMaak tool
DELETE /tools/{id}Deactiveer tool
GET /tools/{id}Haal tool op
PATCH /tools/{id}Werk tool bij
POST /tools/{id}/statusWijzig toolstatus

Foutafhandeling

Fouten komen altijd terug in dezelfde envelop. Het request_id is uniek per aanroep — stuur dat mee als je support inschakelt, dan zoeken we het request op.

401 Unauthorizedjson
{
  "error": {
    "code": "invalid_api_key",
    "message": "Missing API key.",
    "request_id": "01fb3657-5ad6-474b-90eb-990af9296d0f"
  }
}
StatusCodeBetekenis
401invalid_api_keyGeen sleutel meegestuurd (Missing API key), of de sleutel is onbekend, ingetrokken of verlopen (Invalid or expired API key).

Limieten en beschikbaarheid

De API is een losse module die je per tenant aan- en uitzet in de applicatie onder Account › Abonnement, voor €39 per maand. Staat de module uit, dan geeft elk request een 403 met module_disabled. Zie Tarieven.

Per sleutel geldt een limiet van 120 requests per minuut. Ga je daaroverheen, dan krijg je een 429 met een Retry-After-header — wacht dat aantal seconden af in plaats van meteen opnieuw te proberen. Daarnaast geldt per tenant een fair‑use limiet per maand; je verbruik zie je in de applicatie bij je sleutels. Loop je daar structureel tegenaan, neem dan contact op — dan zetten we de limiet hoger in plaats van je koppeling af te knijpen. Standaard staat dat quotum op 50.000 requests per maand voor alle sleutels van je tenant samen.

Hoe deze pagina bijgewerkt wordt

Deze referentie wordt gegenereerd uit de OpenAPI-spec van de API zelf, niet met de hand bijgehouden. Deze build gebruikte de spec die in dit repo staat. Verandert er iets aan de API, dan verandert deze pagina mee bij de eerstvolgende build.