Base URL
OAuth endpoints
These endpoints handle authentication and token management for your app.Exchange tokens
| Parameter | Type | Description |
|---|---|---|
grant_type | string | authorization_code, refresh_token, or client_credentials |
client_id | string | Your app’s client ID |
client_secret | string | Your app’s client secret |
code | string | Authorization code (for authorization_code grant) |
redirect_uri | string | Must match the URI used during authorization |
code_verifier | string | PKCE verifier (if code challenge was used) |
refresh_token | string | Refresh token (for refresh_token grant) |
store_id | string | Target store (for client_credentials grant) |
scopes | string[] | Scope filter (for client_credentials grant) |
Revoke a token
| Parameter | Type | Required | Description |
|---|---|---|---|
token | string | Yes | The token to revoke |
client_id | string | Yes | Your app’s client ID |
client_secret | string | Yes | Your app’s client secret |
token_type_hint | string | No | access_token or refresh_token |
200 OK on success.
Verify session token
| Parameter | Type | Required | Description |
|---|---|---|---|
session_token | string | Yes | The JWT session token from the iframe URL |
This endpoint is rate-limited to 30 requests per minute per IP address.
Using access tokens
Once you have an access token, include it in theAuthorization header of every API request:
Available APIs
With a valid access token, you can access these OrderProtection APIs:Orders
Read and manage orders. Requires
read_orders or write_orders scope.Claims
Read and manage claims. Requires
read_claims, write_claims, or manage_claims scope.Products
Read and manage products. Requires
read_products or write_products scope.Fulfillments
Read and manage fulfillments. Requires
read_orders scope.Error responses
When a request fails, the API returns a JSON error response:Common error codes
| Code | Description |
|---|---|
400 | Bad request — check your request body or parameters |
401 | Unauthorized — your token is invalid, expired, or revoked |
403 | Forbidden — your token does not have the required scope |
404 | Not found — the resource does not exist or is not accessible |
429 | Too many requests — you have exceeded the rate limit |

