Authenticatie
Kies een persoonlijke API-sleutel of OAuth 2.1 met PKCE.
Gebruik een persoonlijke API-sleutel voor je eigen scripts. Gebruik OAuth voor een toepassing die namens andere NinjaBuy-klanten handelt, waaronder MCP-clients.
OAuth 2.1
Gebruik de autorisatiecodestroom met PKCE S256. REST en MCP accepteren hetzelfde NinjaBuy OAuth-toegangstoken. Elk token handelt namens het account dat zich heeft aangemeld en toegang heeft goedgekeurd; je kunt geen ander account in de aanvraagbody kiezen.
Alle OAuth-eindpunten gebruiken de oorsprong https://www.ninjabuy.com. Paden voor ontdekking en autorisatie:
OAuth-detectie · MCP-resourcedetectie
POST /api/auth/mcp/register
GET /api/auth/mcp/authorize
POST /api/auth/mcp/token- Registreer je client via
POST /api/auth/mcp/register. Een openbare client verstuurt JSON metclient_name,redirect_urisentoken_endpoint_auth_method: "none". Bewaar de geretourneerdeclient_id. - Genereer een nieuwe willekeurige
stateen PKCE-code_verifier. Bereken daarvan de base64url-gecodeerde SHA-256-code_challenge. - Open
/api/auth/mcp/authorizein de browser van de gebruiker metresponse_type=code,client_id,redirect_uri,state,code_challenge,code_challenge_method=S256enscope=openid offline_access. - De gebruiker meldt zich aan met het NinjaBuy-telefoonnummer en keurt je toepassing goed. Controleer bij je callback
statevoordat je de geretourneerdecodegebruikt. - Stuur een formuliergecodeerde POST naar
/api/auth/mcp/tokenmetgrant_type=authorization_code,code,client_id, dezelfderedirect_uriencode_verifier.
Stuur het verkregen toegangstoken mee met REST-aanvragen:
Authorization: Bearer YOUR_ACCESS_TOKENToegangstokens zijn 1 uur geldig. Met offline_access maken vernieuwingstokens verlenging tot 7 dagen mogelijk. Vernieuw via hetzelfde tokenendpoint met een formuliergecodeerde POST met grant_type=refresh_token, client_id en refresh_token. Bewaar tokens veilig en meld je opnieuw aan zodra vernieuwing niet meer geldig is.
Een ontbrekend, verlopen of ongeldig toegangstoken geeft 401 met een WWW-Authenticate-verwijzing naar de metadata. Zie Fouten.