Skip to main content

ComputeSphere API · Error catalog

Error codes

Every error from the API ships with a stable code and a docs_url pointing here. Look up your error below, or jump straight to the page by appending the code to /errors/.

Response shape​

ComputeSphere uses RFC 7807 Problem Details for every error. The Content-Type is application/problem+json. The type field always resolves to a page on this site.

{
"type": "https://docs.computesphere.com/errors/rate_limited",
"title": "Rate limited",
"status": 429,
"code": "rate_limited",
"detail": "Too many requests. Try again after the retry window.",
"instance": "/v2/projects",
"request_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"trace_id": "00-4bf92f3577b34da6a3ce929d0e0e4736-00f067aa0ba902b7-01",
"retry_after_seconds": 60
}
FieldWhat it carries
typeURL of the docs page for this error code. Resolves to a page on this site.
titleShort human-readable label (2–4 words).
statusThe HTTP status. Mirrors the response line.
codeStable identifier. Switch on this in your client — title and detail may change wording, code will not.
detailLonger human-readable summary. Safe to surface to end users.
instanceThe request path that produced the error.
request_idUUID v4 generated server-side, or the value of your X-Request-ID request header if you sent one. Always present. Also returned as the X-Request-ID response header. Include in any support ticket.
trace_idFull W3C traceparent string if your client (or an upstream proxy) sent one. null otherwise — distributed tracing is optional.
retry_after_secondsPresent on 429 and 503 responses when retry is meaningful. Mirrors the Retry-After header.

Field-level validation errors​

Validation responses additionally carry an errors[] array — one entry per offending field. Each entry has its own docs_url pointing to the catalog page anchored at that field.

{
"type": "https://docs.computesphere.com/errors/validation_failed",
"code": "validation_failed",
"title": "Validation failed",
"status": 400,
"detail": "One or more fields failed validation",
"instance": "/v2/projects",
"errors": [
{
"field": "name",
"code": "too_short",
"message": "Service name must be at least 3 characters",
"docs_url": "https://docs.computesphere.com/errors/validation_failed#too_short"
}
]
}

All error codes​

Sign-up & auth​

Sign-up throttles, token validity, email verification.

CodeHTTPTitle
SIGNUP_THROTTLE_IP429Too many sign-up attempts
SIGNUP_THROTTLE_DEVICE429Too many sign-up attempts
EMAIL_ALREADY_REGISTERED409Email already registered
INVALID_API_TOKEN401API token rejected
API_TOKEN_EXPIRED401API token expired
EMAIL_VERIFICATION_REQUIRED409Verify your email to continue

Plan, quota & billing​

Plan caps, trial state, payment failures.

CodeHTTPTitle
PROJECT_QUOTA_EXCEEDED402Project limit reached
SPHERELET_QUOTA_EXCEEDED402Compute quota reached
TRIAL_EXPIRED402Trial period ended
PAYMENT_REQUIRED402Payment failed
PLAN_UPGRADE_REQUIRED402Upgrade required

Deployment​

Build failures, health checks, image pulls.

CodeHTTPTitle
DEPLOYMENT_FAILED500Deployment didn't complete

General​

Errors any request can return: validation, sign-in, permissions, conflicts, limits and server errors. The code in type is lower case.

CodeHTTPTitle
invalid_request400Invalid request
validation_failed400Validation failed
method_not_allowed405Method not allowed
payload_too_large413Payload too large
unsupported_media_type415Unsupported media type
unprocessable_entity422Unprocessable entity
precondition_failed412Precondition failed
unauthenticated401Unauthenticated
forbidden403Forbidden
agent_permission_denied403Agent permissions don't allow this
approval_self_forbidden403Approval needs another admin
not_found404Resource not found
gone410Resource gone
conflict409Conflict
stale_action409Proposal is out of date
conversation_in_another_account409Conversation is in another account
rate_limited429Rate limited
quota_exceeded429Quota exceeded
trial_limit_reached409Trial limit reached
credit_limit_reached409Credit grant limit reached
storage_limit_reached409Storage limit reached
credit_cap_reached409Credit limit reached
domain_limit_reached409Custom domain limit reached
volume_in_use409Volume in use
volume_requires_legacy_mounts422Volume managed on its service
volume_grow_only422Volume can only grow
volume_size_unknown422Volume size not offered
restore_point_not_found404Restore point not found
size_below_restore_point422Size below restore point
restore_points_unavailable409No restore points
environment_gone409Environment deleted
volume_not_ready409Volume not ready
volume_busy409Volume being changed
restore_point_too_soon429Restore point taken recently
restore_point_limit409Restore point limit reached
volume_size_over_plan422Volume size above your plan
domain_in_use409Domain already in use
wildcard_invalid400Wildcard domain not valid
account_locked409Account locked
repository_not_found404Repository not found
connection_no_access403No repository access
connection_revoked409Connection revoked
credential_limit_reached409Credential limit reached
credential_in_use409Credential in use
credential_has_sessions409Credential has open sessions
credential_is_default409Credential is the default
credential_retired409Credential retired
credentials_not_enabled404Credentials not available
variable_kind_conflict409Variable kind conflict
subscription_exists409Subscription exists
stale_quantities409Subscription changed
below_running409Below what is running
preview_expired409Preview expired
ref_not_found422Branch or commit not found
path_not_found422Folder not found
provider_rate_limited429Git provider rate limited
provider_timeout504Git provider timed out
invalid_reference422Invalid image reference
registry_auth_required422Registry credentials required
auth_failed403Registry refused the credentials
image_not_found404Image not found
reauthentication_required403Sign in again
two_step_required403Two-step sign-in required
tag_not_found404Image tag not found
registry_not_permitted422Registry not permitted
unsupported_provider422Registry provider not supported
registry_rate_limited429Registry rate limited
registry_unreachable504Registry unreachable
internal_error500Internal error
not_implemented501Not implemented
bad_gateway502Bad gateway
service_unavailable503Service unavailable
tunnel_unavailable503Tunnel unavailable
gateway_timeout504Gateway timeout