API Error Codes
Canonical error reference for GraphQL and REST responses.
This section is the canonical reference for API error documentation links generated by api.rad.live.
When the API includes documentation in an error payload, it points to:
https://developers.rad.live/docs/errors/<error_code_slug>Where <error_code_slug> is the lowercase enum code from the API (for example, GRAPHQL_VALIDATION_FAILED -> graphql_validation_failed).
Error response shape
GraphQL responses include machine-readable metadata in errors[].extensions:
{
"errors": [
{
"message": "Field 'channel' requires subfield selection",
"extensions": {
"code": "GRAPHQL_VALIDATION_FAILED",
"errorType": "ValidationError",
"field": "channel",
"suggestedFix": "Add subfields like: channel { id }",
"documentation": "https://developers.rad.live/docs/errors/graphql_validation_failed"
}
}
]
}REST responses use:
{
"errors": [
{
"message": "Invalid token",
"code": "UNAUTHENTICATED",
"documentation": "https://developers.rad.live/docs/errors/unauthenticated"
}
]
}Available codes
HTTP and GraphQL errors
FIELD_REQUIRED
A required field was not supplied.
Source: HTTP and GraphQL
HTTP status: 400
GRAPHQL_VALIDATION_FAILED
The GraphQL document does not match the published schema.
Source: HTTP and GraphQL
HTTP status: 400
INTERNAL_SERVER_ERROR
The server encountered an unexpected error.
Source: HTTP and GraphQL
HTTP status: 500
INVALID_INPUT
One or more supplied values are invalid.
Source: HTTP and GraphQL
HTTP status: 400
RATE_LIMIT_EXCEEDED
The caller exceeded the allowed request rate.
Source: HTTP and GraphQL
HTTP status: 429
RESOURCE_ALREADY_EXISTS
The requested resource conflicts with an existing resource.
Source: HTTP and GraphQL
HTTP status: 409
RESOURCE_NOT_FOUND
The requested resource does not exist or is not visible to the caller.
Source: HTTP and GraphQL
HTTP status: 404
SERVICE_UNAVAILABLE
A required service is temporarily unavailable.
Source: HTTP and GraphQL
HTTP status: 503
TOKEN_EXPIRED
The authentication token has expired and must be refreshed.
Source: HTTP and GraphQL
HTTP status: 401
TRANSCODE_FAILED
The media transcoding operation failed.
Source: HTTP and GraphQL
HTTP status: 422
UNAUTHENTICATED
Authentication credentials are missing or invalid.
Source: HTTP and GraphQL
HTTP status: 401
UNAUTHORIZED
The authenticated identity cannot perform this operation.
Source: HTTP and GraphQL
HTTP status: 403
UPLOAD_FAILED
The media upload operation failed.
Source: HTTP and GraphQL
HTTP status: 422
Workflow errors
ALL_ITEMS_FAILED
Every item in a batch workflow failed.
Source: Workflow
ASSET_NOT_FOUND
The workflow could not find the required uploaded media asset.
Source: Workflow
AUTO_FINALIZE_PENDING
The uploaded media is still being finalized by the server.
Source: Workflow
CHANNEL_NOT_FOUND
The authenticated user does not have the required channel.
Source: Workflow
CONTENT_NOT_FOUND
The requested content item could not be found.
Source: Workflow
IDEMPOTENCY_CLAIM_LOST
Another worker changed the durable workflow operation first.
Source: Workflow
IDEMPOTENCY_KEY_REUSED
The idempotency key was previously used with different input.
Source: Workflow
IDEMPOTENT_OPERATION_IN_PROGRESS
The matching durable workflow operation is still running.
Source: Workflow
INGESTION_TIMEOUT
The uploaded source did not become available before polling timed out.
Source: Workflow
INVALID_IDEMPOTENCY_KEY
The idempotency key is missing or does not match the supported format.
Source: Workflow
INVALID_OPERATION_ID
The durable workflow operation ID is malformed.
Source: Workflow
MISSING_INPUT
A workflow is missing an input required to choose its next step.
Source: Workflow
MULTIPLE_VIDEO_SOURCES
The workflow found multiple video sources and could not choose one safely.
Source: Workflow
NO_TRANSCODE_JOB
The content item does not have a transcoding job.
Source: Workflow
OPERATION_NOT_FOUND
No durable workflow operation is visible to the authenticated creator.
Source: Workflow
PUBLISH_FAILED
Processing completed but the content could not be published.
Source: Workflow
PUBLISH_NOT_PERSISTED
The publication request completed but public state was not confirmed on read-back.
Source: Workflow
PUBLISH_WORKFLOW_FAILED
The publishing workflow stopped after creating its content item.
Source: Workflow
YOUTUBE_IMPORT_FAILED
The YouTube workflow stopped after creating its content reference.
Source: Workflow
YOUTUBE_SYNC_DISCONNECTED
The creator must reconnect YouTube before synchronization can continue.
Source: Workflow
YOUTUBE_SYNC_INPUT_MISMATCH
A resumed YouTube catalog synchronization changed an immutable option.
Source: Workflow
YOUTUBE_SYNC_NOT_FOUND
The requested YouTube catalog synchronization does not exist for this creator.
Source: Workflow
YOUTUBE_SYNC_UPSTREAM
YouTube listing failed and the synchronization can resume from its saved page.
Source: Workflow