Naar de inhoud springen

Aan de slag: API-sleutel en eerste aanroep.

Wat de KENJTEC API kan, hoe je een API-sleutel aanmaakt en de eerste aanroep doet — plus alle endpoints, lijsten, fouten en de limieten per sleutel.

VideoEen sleutel aanmaken
Op deze pagina

Wat de API kan

De KENJTEC API geeft je eigen programma's toegang tot je account: formulieren en hun antwoorden, winkels en bestellingen lezen — en schrijven: websites bouwen en publiceren, DNS-records beheren, facturen opstellen, media uploaden. Daarnaast zijn er webhooks — wij nemen contact op met je server zodra er iets gebeurt. En je eigen AI kan via MCP met dezelfde sleutel werken.

Het adres is https://api.kenjtec.com/v1. De API zit in elk betaald pakket, zonder meerprijs.

Het dashboard van Café Lumen in het onderdeel „Ontwikkelaar”: bovenaan het adres van de API met de knop „Kopiëren”, daaronder de zin „120 verzoeken per minuut en per sleutel.”
De opname toont de Engelse interface.

Een sleutel aanmaken

Elk programma meldt zich aan met een eigen API-sleutel. Een sleutel heeft rechten: forms:read leest formulieren en antwoorden, orders:read leest winkels en bestellingen, webhooks:manage maakt webhooks aan en verwijdert ze. Voor de schrijvende endpoints zijn er eigen rechten per onderdeel. Geef elk programma een eigen sleutel — dan trek je er één in zonder de andere te storen.

Ana maakt in het onderdeel „Ontwikkelaar” een sleutel aan met de naam „Voorraadsynchronisatie”, kiest „Winkels en bestellingen lezen” en klikt op „Sleutel aanmaken” — de sleutel verschijnt met de zin „Kopieer hem nu — de sleutel wordt nooit meer getoond.”De opname toont de Engelse interface.
  1. Open het dashboard en kies onder „Instellingen” het onderdeel Ontwikkelaar.
  2. Geef de sleutel onder „API-sleutels” een naam, bijvoorbeeld „Voorraadsynchronisatie”.
  3. Kies onder „Wat mag deze sleutel?” alleen de rechten die het programma nodig heeft.
  4. Klik op „Sleutel aanmaken” en kopieer de sleutel meteen.

De sleutel wordt precies één keer getoond. We slaan alleen een controlesom op — raak je hem kwijt, dan trek je hem in met „Intrekken” en maak je een nieuwe aan.

De eerste aanroep

Stuur de sleutel bij elk verzoek mee in de header Authorization. /v1/me vertelt je bij welk account de sleutel hoort en welke rechten hij heeft.

Verzoek
curl https://api.kenjtec.com/v1/me \
  -H "Authorization: Bearer kt_api_…"
Antwoord
{
  "id": 1042,
  "object": "account",
  "email": "ana@deine-firma.com",
  "handle": "cafe-lumen",
  "address": "https://cafe-lumen.kenjtec.ai",
  "key": { "name": "Lager-Abgleich", "scopes": ["orders:read"] }
}

De endpoints

Deze endpoints zijn er. De volledige, machineleesbare beschrijving staat op https://api.kenjtec.com/openapi.json — daarmee kun je programmabibliotheken voor elke programmeertaal genereren.

GET    /v1/me
GET    /v1/forms
GET    /v1/forms/{id}
GET    /v1/forms/{id}/responses
GET    /v1/forms/{id}/responses/{id}
GET    /v1/shops
GET    /v1/orders          ?shop_id=  &status=  &payment_status=
GET    /v1/orders/{id}
GET    /v1/webhooks
POST   /v1/webhooks
DELETE /v1/webhooks/{id}

GET    /v1/sites
GET    /v1/sites/{id}
POST   /v1/sites
POST   /v1/sites/{id}/edit
POST   /v1/sites/{id}/publish
POST   /v1/sites/{id}/unpublish
GET    /v1/domains
GET    /v1/domains/{id}/dns_records
POST   /v1/domains/{id}/dns_records
PATCH  /v1/domains/{id}/dns_records/{id}
DELETE /v1/domains/{id}/dns_records/{id}
GET    /v1/customers
POST   /v1/customers
GET    /v1/invoices        ?kind=invoice|quote
GET    /v1/invoices/{id}
POST   /v1/invoices
POST   /v1/invoices/{id}/issue
POST   /v1/invoices/{id}/cancel
GET    /v1/media
POST   /v1/media/uploads
POST   /v1/media/{id}/confirm
GET    /v1/brands
GET    /v1/brands/{id}

Bestanden uit formulierantwoorden verschijnen met hun naam, niet met een adres. Je kunt ze downloaden in FormBuilder.

Lijsten, bedragen, tijden

Lijsten tonen het nieuwste eerst, met hoogstens 100 items per aanroep (limit, standaard 25). Voor de volgende pagina stuur je de ID van het laatste item mee als starting_after; has_more geeft aan of er nog meer komt.

Bedragen zijn gehele getallen in de kleinste eenheid van de valuta — centen bij de euro, hele yen bij de yen. Tijden staan in UTC volgens ISO 8601.

Betaalde bestellingen, 50 per pagina
curl "https://api.kenjtec.com/v1/orders?payment_status=paid&limit=50" \
  -H "Authorization: Bearer kt_api_…"

Fouten en limieten

Elke fout heeft dezelfde vorm: een object error met type en message. 401 betekent: de sleutel ontbreekt, is onjuist of is ingetrokken. 403 betekent: de sleutel mist een recht — of het account heeft geen betaald pakket meer (type plan_required). 404 betekent: dit bestaat niet, of het hoort niet bij je account.

Per sleutel zijn 120 verzoeken per minuut toegestaan. Daarboven antwoordt de API met 429 en geeft in Retry-After het aantal seconden tot de volgende poging.

{
  "error": {
    "type": "permission_error",
    "message": "This API key lacks the scope 'orders:read'."
  }
}

De API accepteert uitsluitend sleutels, nooit je aanmelding in de browser. Een sleutel hoort op je server — nooit in een website of een app die anderen downloaden.

Gerelateerde handleidingen en volgende stappen

Help ons KENJTEC te verbeteren

Google Analytics helpt ons de website te verbeteren. Google ontvangt gebruiks- en apparaatgegevens; verwerking in de VS is mogelijk.

Vrijwillig. Je keuze geldt 180 dagen en je kunt die op elk moment wijzigen in de cookie-instellingen.

Privacyverklaring