REST API

Uwierzytelnianie

Wybierz osobisty klucz API lub OAuth 2.1 z PKCE.

Używaj osobistego klucza API we własnych skryptach. Używaj OAuth dla aplikacji działającej w imieniu innych klientów NinjaBuy, w tym klientów MCP.

OAuth 2.1

Użyj przepływu kodu autoryzacyjnego z PKCE S256. REST i MCP przyjmują ten sam token dostępu OAuth NinjaBuy. Każdy token działa w imieniu konta, które się zalogowało i zatwierdziło dostęp; nie możesz wybrać innego konta w treści żądania.

Wszystkie punkty końcowe OAuth korzystają z adresu bazowego https://www.ninjabuy.com. Ścieżki wykrywania i autoryzacji:

Metadane OAuth · Metadane zasobu MCP

POST /api/auth/mcp/register
GET  /api/auth/mcp/authorize
POST /api/auth/mcp/token
  1. Zarejestruj klienta przez POST /api/auth/mcp/register. Klient publiczny wysyła JSON z client_name, redirect_uris i token_endpoint_auth_method: "none". Zachowaj zwrócony client_id.
  2. Wygeneruj nowy losowy state i code_verifier PKCE. Oblicz na tej podstawie code_challenge jako SHA-256 zakodowane w base64url.
  3. Otwórz /api/auth/mcp/authorize w przeglądarce użytkownika z response_type=code, client_id, redirect_uri, state, code_challenge, code_challenge_method=S256 i scope=openid offline_access.
  4. Użytkownik loguje się numerem telefonu NinjaBuy i zatwierdza twoją aplikację. W punkcie callback sprawdź state, zanim użyjesz zwróconego code.
  5. Wyślij POST zakodowany jako formularz do /api/auth/mcp/token z grant_type=authorization_code, code, client_id, tym samym redirect_uri i code_verifier.

Dołącz otrzymany token dostępu do żądań REST:

Authorization: Bearer YOUR_ACCESS_TOKEN

Tokeny dostępu są ważne przez 1 godzinę. Przy offline_access tokeny odświeżania umożliwiają odnawianie dostępu przez maksymalnie 7 dni. Odświeżaj przez ten sam punkt końcowy tokenów, wysyłając POST zakodowany jako formularz z grant_type=refresh_token, client_id i refresh_token. Przechowuj tokeny bezpiecznie i zaloguj się ponownie, gdy odnowienie przestanie być możliwe.

Brakujący, wygasły lub nieprawidłowy token dostępu zwraca 401 z nagłówkiem WWW-Authenticate wskazującym metadane. Zobacz Błędy.

Na tej stronie