Skip to content

API Response

Most API endpoints return responses in a standardized JSON format, no matter what Accept header is passed in the API request. This ensures consistency across the entire API and makes it easier to handle responses in your application.

codeintegerRequired

Response code

messagestringRequired

Response message

dataobject | array

Response data

paginationobject

Pagination information

page_sizeintegerRequired

Page size

pageintegerRequired

Current page

total_itemsinteger

Total items

When an API request is successful:

  • HTTP Status Code: Usually 200 OK; some entity creation endpoints use 201 Created
  • code: Always 0 for successful standard responses
  • message: Always OK for successful standard responses
  • data: Contains the actual response data, structure varies by endpoint

When an API request fails:

  • HTTP Status Code: Varies based on error type (4xx or 5xx)
  • code: Non-zero error code (see response codes table below)
  • message: Human-readable error description

| Code | Description | | ---- | -------------------------------------------------------- | | 0 | Success | | 1 | Internal error | | 2 | Route not found | | 3 | Invalid request origin | | 4 | Authentication method not allowed | | 5 | Resource not found | | 6 | Service unavailable | | 11 | Too many requests | | 1000 | Invalid search parameters | | 1001 | Invalid JSON body payload or JSON validation failed | | 1002 | Invalid upload payload | | 2000 | Unauthenticated | | 2001 | Invalid auth header | | 2002 | Invalid token format | | 2100 | Invalid OAuth code | | 2101 | Invalid OAuth state | | 2200 | Unauthorized | | 2201 | Unauthorized, missing required token scope | | 2202 | Unauthorized, missing required organization member scope | | 3000 | User not found | | 3001 | User already exists | | 3002 | Username update cooldown is active | | 3200 | Notification not found | | 3201 | Notification already read | | 3500 | Organization not found | | 3501 | Organization slug already used | | 3502 | Organization exceeds limit | | 3503 | Organization slug update cooldown is active | | 3600 | Organization member not found | | 3601 | Organization member already exists | | 3700 | Organization invitation not found or invalid | | 4000 | Token not found | | 5000 | Project not found | | 5001 | Project slug already used | | 5002 | Unacceptable project slug | | 5003 | Project locked | | 5004 | Project slug update cooldown is active | | 5100 | Project keyword not found | | 5101 | Project keyword already exists | | 5102 | Project keyword exceeds limit | | 5200 | Project channel not found | | 5201 | Project channel already exists | | 5202 | Project channel exceeds limit | | 5203 | Cannot delete default channel | | 5204 | Project channel slug update cooldown is active | | 5300 | Project version not found | | 5301 | Project version already exists | | 5400 | Invalid project dependency |