Skip to main content

Errors

One page for every error code. Each error response links to its page from its type member.

Error codes
CodeStatusRetryableMeaning
invalid_request400NoMalformed body, unknown field, bad type
version_required400NoNo `Melro-Version` header
unsupported_version400NoUnknown or sunset API version; lists supported versions
invalid_cursor400NoCursor malformed, expired or not valid for this caller or query
invalid_api_key401NoKey missing, malformed, unknown
key_expired401NoAs named
key_revoked401NoAs named
key_suspended403NoSuspended by Melro staff
scope_not_granted403NoNames the scope required
version_not_allowed403NoPublished version not in the workspace allowlist or key narrowing
release_not_selectable403NoA live key named a Melro release, or a test key asked for Preview on a handle not validated on it
access_restricted403NoOrganization restricted; no cause given
not_found404NoNon-enumerating
idempotency_conflict409NoSame key, different request (replaces `request_conflict`, `key_conflict` on public surfaces)
request_in_progress409YesThe first request with this key has not finished
stale_revision409No`If-Match` or expected revision is not current
version_retired409NoA published version the customer retired, named by a new request, in every API
release_retired409NoMelro release axis only: the Melro release the pair runs on is retired
package_unsupported409NoMelro release axis only: the actor version's package schema major is retired
gone410NoErased; tombstone kept
too_large413NoBody or transcript over the published limit
wrong_home421YesUse the host named in the `host` member
invalid_parameters422NoStart parameters unknown or out of range
notice_required422NoVoice Start without the customer's notice attestation
unsupported_input422NoInput the owner refuses by product rule (language, speaker roles); `errors[].rule` says which
rate_limited429YesRequest or command rate over the limit (Voice steering 5 per second [VP-47])
concurrency_limit_reached429YesConcurrent sessions or in-flight runs at the caller's limit
test_cap_reached429NoTest usage cap reached; `resets_at` when known
spend_limit_reached429NoWorkspace hard spend limit (Launch); `resets_at` when known
internal_error500YesUnexpected
capacity_unavailable503YesMelro at capacity; admission order applied (PAS-10.3)
tier_unavailable503YesThe pinned tier's provider is unavailable
dependency_unavailable503YesA Melro dependency is unavailable
authority_unavailable503YesAccess cannot decide; never treated as allow (replaces `unavailable` in WP-AX-04 §3.6; Insights' `authority_unavailable` unchanged)
recovery_in_progress503YesOwner recovering; covers `key_reverification_pending` and Insights `recovery_gap`
report_expired410NoThe authorized Insights report snapshot is past its life.
incomplete_data422NoThe requested report cannot be answered at the required completeness.
query_too_large422NoThe report exceeds the published query envelope.
version_not_installed409YesThe actor handle installation is pending or was refused. Retry only after the install outcome permits a new attempt.
launch_grant_invalid401NoTraining launch grant expired, replayed, wrong audience or unknown/revoked signing key.
payment_required403NoA local commercial restriction for payment failure, dispute or chargeback.
balance_exhausted403NoLocal funded balance is below the admission threshold; never ends an active session.
commercial_restriction403NoA locally applied staff commercial restriction or an unrecognized commercial reason blocks admission.
engine_release_retired409NoThe selected Scoring engine release has retired.
purchased_quantity_reached403NoTraining purchased quantity is exhausted at new practice admission; never ends a running call.
unauthenticated401NoThe session/person-delegated authentication is invalid, expired or for the wrong owner.
context_not_established409NoThe staff session has not established its staff organization context.
permission_not_granted403NoThe authenticated person, or the person bound to an authoring key, lacks the required current role or owner-local permission. Do not disclose an invisible resource or relabel a common restriction as a known role failure.
agent_not_permitted403NoA person-only operation has an agent label or its declared vendor lacks the required approved entry.
fresh_sign_in_required401NoThe operation requires a sufficiently recent sign-in under its owner contract.
confirmation_required422NoA consequential agent-labelled request lacks its required matching confirmation.
prerequisite_missing422NoA visible prerequisite record or evidence is absent or not in the required state.
invalid_state409NoA visible resource state does not permit this command.
hold_active409NoThe existing approval hold has not ended; time alone does not grant authority.
mapping_conflict409NoAn already-visible Plain thread mapping conflicts with the requested organization.
confirmation_expired409NoPrepared Workbench confirmation expired; prepare and confirm again.
creator_confirmation_required403NoThe action needs a tap by a person who holds the right to commit it at commit time; never a model or an authoring key. The person need not be the preparer.
knowledge_conflict409NoPinned knowledge has an unresolved conflict that blocks this new attestation.
knowledge_unconfirmed409NoPinned knowledge needs confirmation before this new attestation.
knowledge_withdrawn409NoPinned knowledge was withdrawn; no new attestation may use it.
limit_exceeded422NoA persistent owner inventory/storage ceiling is reached; identify limit_name; not a transient rate limit.
workspace_required422NoAn explicit organization/workspace selection is required before this action.
unsupported_comparison409NoRequested meaning/version populations cannot be compared; preserve distinct releases/populations.
report_invalidated409NoAuthorized immutable report cut is no longer eligible for disclosure; a permitted new query is a new explicit intent.
already_complete409NoExport cancellation lost to the ready commit; inspect the existing job, never report cancellation.
artifact_not_ready409YesAuthorized export has no committed ready artifact; poll status with bounded backoff while nonterminal. This code never retries job creation or implies delivery authorization.
artifact_expired410NoAuthorized export artifact expired; its job identity and recorded completion do not become new work.
approval_required409NoA Scoring specification publication lacks a valid effective approval (errors[].rule approval_missing or approval_incomplete).
revision_exists409NoThe same revision content hash already belongs to another specification in the same original source scope (errors[].rule revision_exists_in_other_specification); errors[].detail carries the visible spec_id and revision_id. A specific code, not a generic conflict.