Skip to main content
All DeepXL API endpoints require authentication. You can authenticate using either an API key or a Bearer token (Clerk JWT).

API Key Authentication

Pass your API key in the x-api-key header:
curl https://api.deepxl.ai/v1/detection \
  -H "x-api-key: YOUR_API_KEY"

Managing API Keys

Use the API Keys endpoints to manage your keys programmatically:
ActionMethodEndpoint
List keysGET/v1/api-keys
Create keyPOST/v1/api-keys
Update keyPUT/v1/api-keys/{id}
Delete keyDELETE/v1/api-keys/{id}
API key management endpoints require Bearer token authentication (Clerk JWT). You cannot manage API keys using another API key.

Bearer Token Authentication

Pass a Clerk JWT in the Authorization header:
curl https://api.deepxl.ai/v1/detection \
  -H "Authorization: Bearer YOUR_CLERK_JWT"
Bearer tokens are issued by Clerk and contain your organization context. They are typically used by the DeepXL Dashboard and frontend integrations.

Dual Authentication

All analysis endpoints (/v1/detection, /v1/parse, /v1/verification, /v1/files) accept either an API key or a Bearer token. If both are provided, the Bearer token takes priority.

Error Responses

StatusDescription
401 UnauthorizedMissing or invalid API key / Bearer token
403 ForbiddenValid credentials but insufficient permissions
{
  "statusCode": 401,
  "error": "Unauthorized",
  "message": "Unauthorized"
}