ErrorCode
The CLOSED wire vocabulary of `error_code` values: every code any Apier surface can serialise — REST envelopes, the MCP tool-envelope taxonomy, the JSON-RPC transport, the dashboard billing routes and the operator cron / _internal surfaces. Derived from the runtime error catalog, the same table that stamps retryable / fix_hint / docs_url / category onto live envelopes, so this enum, GET /api/v1/errors and the generated /docs/errors page are the same 222-member set by construction (gated in CI). A code that reaches the envelope builder without a catalog entry is collapsed to INTERNAL_ERROR rather than serialised, so no value outside this enum can appear on the wire. Append-only: members are never renamed or removed without a /v2 bump.
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/apier-no/json-schema/apier-no-error-code-schema.json",
"title": "ErrorCode",
"description": "The CLOSED wire vocabulary of `error_code` values: every code any Apier surface can serialise — REST envelopes, the MCP tool-envelope taxonomy, the JSON-RPC transport, the dashboard billing routes and the operator cron / _internal surfaces. Derived from the runtime error catalog, the same table that stamps retryable / fix_hint / docs_url / category onto live envelopes, so this enum, GET /api/v1/errors and the generated /docs/errors page are the same 222-member set by construction (gated in CI). A code that reaches the envelope builder without a catalog entry is collapsed to INTERNAL_ERROR rather than serialised, so no value outside this enum can appear on the wire. Append-only: members are never renamed or removed without a /v2 bump.",
"x-generated": "2026-11-01",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/apier-no-openapi.json#/components/schemas/ErrorCode",
"type": "string",
"enum": [
"ACCOUNTS_MONITOR_NOT_AVAILABLE",
"ACCOUNT_DELETION_FAILED",
"AGENT_LOOP_DETECTED",
"ALREADY_SUBSCRIBED",
"ALTINN_ACK_UNPARSEABLE",
"ALTINN_DELEGATION_MISSING",
"ALTINN_DOWN",
"ALTINN_LIVE_SUBMITTER_NOT_IMPLEMENTED",
"ALTINN_NOT_CONFIGURED",
"ALTINN_NOT_IMPLEMENTED",
"ALTINN_SANDBOX_SUBMIT_NOT_IMPLEMENTED",
"ALTINN_UPSTREAM_ERROR",
"ALTINN_UPSTREAM_UNAVAILABLE",
"API_KEY_NOT_FOUND",
"API_KEY_NO_SCOPES",
"API_KEY_RESERVED_SCOPE",
"APPROVAL_TOKEN_EXPIRED",
"APPROVAL_TOKEN_INVALID",
"APPROVAL_TOKEN_MISMATCH",
"APPROVAL_TOKEN_REQUIRED",
"APPROVAL_TOKEN_USED",
"AUDIT_QUERY_FAILED",
"AUTH_CONSUMER_INACTIVE",
"AUTH_CONSUMER_INVALID_TIER",
"AUTH_EXPIRED",
"AUTH_EXPIRED_KEY",
"AUTH_EXPIRED_TOKEN",
"AUTH_INSUFFICIENT_ROLE",
"AUTH_INVALID_KEY",
"AUTH_KEY_REVOKED",
"AUTH_LOOKUP_FAILED",
"AUTH_MALFORMED",
"AUTH_MISSING",
"AUTH_MISSING_DELEGATION",
"AUTH_NO_DELEGATION",
"AUTH_PARENT_KEY_REVOKED",
"AUTH_SUBKEY_EXPIRED",
"BILLING_CHECKOUT_FAILED",
"BILLING_NOT_CONFIGURED",
"BILLING_NOT_LIVE",
"BILLING_PORTAL_FAILED",
"BRREG_DOWN",
"BRREG_PROFILE_INTERNAL",
"CAPABILITY_WITHDRAWN",
"CERTIFICATE_SIGNING_UNAVAILABLE",
"CHANGES_QUERY_FAILED",
"COMPANIES_INSERT_FAILED",
"COMPANIES_LOOKUP_FAILED",
"COMPANY_CONTEXT_FAILED",
"COMPANY_DEADLINES_FAILED",
"COMPANY_LOOKUP_FAILED",
"COMPANY_NOT_FOUND",
"COMPANY_OBLIGATIONS_FAILED",
"COMPANY_SUMMARY_FAILED",
"CONCURRENT_WRITE_IN_FLIGHT",
"CONSUMER_NOT_FOUND",
"CREDIT_BALANCE_UNAVAILABLE",
"CREDIT_CHECK_UNAVAILABLE",
"CRON_RETENTION_FAILED",
"CRON_STATUS_CHECK_FAILED",
"CRON_STATUS_CHECK_TABLES_NOT_READY",
"CRON_VISIBILITY_ROLLUP_FAILED",
"CURSOR_INVALID",
"DEADLINE_ADJUSTMENT_FAILED",
"DEADLINE_LOOKUP_FAILED",
"DEADLINE_PASSED",
"DELEGATION_MISSING",
"DELEGATION_MISSING_NAV_AAREG",
"DELEGATION_REVOKED",
"DRY_RUN_FAILED",
"ENTITY_REMOVED",
"EVENT_RECLAIM_FAILED",
"EVENT_RECORD_FAILED",
"EXECUTION_CIRCUIT_OPEN",
"EXECUTION_DEADLINE_EXCEEDED",
"EXECUTION_FAILED",
"EXECUTION_TIMEOUT",
"FILING_HISTORY_FAILED",
"FOLLOWUP_REQUIRED",
"FORBIDDEN",
"FORWARD_ORIGIN_MISMATCH",
"FORWARD_PATH_REJECTED",
"FORWARD_REDIRECT_REJECTED",
"FULLMAKT_PACKAGE_NOT_GRANTED",
"FULLMAKT_PRINCIPAL_NOT_ELIGIBLE",
"FULLMAKT_PRINCIPAL_NOT_FOUND",
"FULLMAKT_UPSTREAM_FAILED",
"GOVERNMENT_API_ERROR",
"GOVERNMENT_RATE_LIMITED",
"GOVERNMENT_UNAVAILABLE",
"GOVERNMENT_VALIDATION_REJECTED",
"GOV_COMMIT_PAYLOAD_MISMATCH",
"HITL_ALREADY_RESOLVED",
"HITL_EXPIRED",
"HITL_NOT_FOUND",
"HITL_PENDING_APPROVAL",
"HITL_RELEASE_FAILED",
"IDEMPOTENCY_IN_PROGRESS",
"IDEMPOTENCY_KEY_INVALID_FORMAT",
"IDEMPOTENCY_KEY_MISMATCH",
"IDEMPOTENCY_KEY_REQUIRED",
"INSUFFICIENT_CREDITS",
"INTERNAL_ERROR",
"INTERNAL_SERVER_ERROR",
"INVALID_CODE",
"INVALID_CURRENCY",
"INVALID_DATE",
"INVALID_SIGNATURE",
"INVALID_TRANSITION",
"ISSUANCE_TOKEN_INVALID",
"ISSUANCE_TOKEN_NOT_FOUND",
"JSONRPC_INVALID_PARAMS",
"JSONRPC_INVALID_REQUEST",
"JSONRPC_METHOD_NOT_FOUND",
"JSONRPC_PROTOCOL_ERROR",
"JSONRPC_RATE_LIMITED",
"JWKS_DERIVATION_FAILED",
"KEY_ALREADY_REVOKED",
"KEY_LIMIT_REACHED",
"KEY_NOT_FOUND",
"LINK_GENERATION_FAILED",
"LOOKUP_FAILED",
"LOVDATA_CHECK_FAILED",
"MASKINPORTEN_AUTH_FAILED",
"MASKINPORTEN_JWT_BUILD_FAILED",
"MASKINPORTEN_MALFORMED_RESPONSE",
"MASKINPORTEN_TOKEN_FAILED",
"MAX_ISSUANCE_TOKENS_REACHED",
"MAX_KEYS_REACHED",
"MAX_PENDING_TOPUP_REQUESTS",
"MAX_SUBKEYS_REACHED",
"MCP_LOOP_DETECTED",
"METHOD_NOT_ALLOWED",
"MISSING_SIGNATURE",
"NOTARY_RECEIPT_NOT_FOUND",
"NOTARY_RECORD_FAILED",
"NOTARY_RECORD_NOT_FOUND",
"NOT_FOUND",
"NO_BILLING_ACCOUNT",
"NO_RATE_AVAILABLE",
"OAUTH_AUDIENCE_MISMATCH",
"OAUTH_DISABLED",
"OAUTH_JWKS_UNAVAILABLE",
"OAUTH_SUBJECT_UNMAPPED",
"OAUTH_TOKEN_EXPIRED",
"OAUTH_TOKEN_INVALID",
"ORG_NUMBER_INVALID_CHECKSUM",
"PAYLOAD_TOO_LARGE",
"PAYMENT_METHOD_NOT_ENABLED",
"PAYMENT_REQUIRED",
"PAYMENT_STATUS_UNAVAILABLE",
"PERMISSION_STATE_FAILED",
"PERSONS_INSERT_FAILED",
"PERSONS_LOOKUP_FAILED",
"PLAN_INSUFFICIENT",
"PROFILE_LIMIT_REACHED",
"PROFILE_NAME_TAKEN",
"PROFILE_NOT_FOUND",
"PUBLIC_DEADLINES_FAILED",
"PUBLIC_OBLIGATIONS_FAILED",
"PUBLIC_SANDBOX_BODY_TOO_LARGE",
"PUBLIC_SANDBOX_ORG_NOT_PERMITTED",
"RATE_LIMITED",
"RATE_LIMIT_CHECK_UNAVAILABLE",
"RATE_LIMIT_EXCEEDED",
"REQUEST_REJECTED",
"REQUEST_TOO_LARGE",
"RESOURCE_NOT_FOUND",
"RETRY_BUDGET_EXHAUSTED",
"RISK_ELEVATED",
"ROLES_INSERT_FAILED",
"ROLES_LOOKUP_FAILED",
"SAFETY_SYSTEM_UNAVAILABLE",
"SANDBOX_LOG_SUFFIX_MISMATCH",
"SANDBOX_ORG_NOT_IN_FIXTURE_SET",
"SANDBOX_TEMPORARILY_UNAVAILABLE",
"SANDBOX_TEST_KEY_REQUIRED",
"SANDBOX_TOOL_UNAVAILABLE",
"SCOPE_INSUFFICIENT",
"SCOPE_INSUFFICIENT_FOR_ACTION",
"SCOPE_MISSING",
"SCOPE_NOT_YET_APPROVED",
"SCOPE_RESERVED",
"SERVER_ERROR",
"SERVER_MISCONFIGURED",
"SERVICE_NOT_YET_AVAILABLE",
"SESSION_REQUIRED",
"SESSION_RESOLUTION_FAILED",
"SHOWCASE_ORG_NOT_PERMITTED",
"SPEND_CAP_REACHED",
"SSE_NOT_SUPPORTED",
"STATUS_URL_MISSING",
"SUBKEY_ROUTE_FORBIDDEN",
"SUBSCRIPTIONS_RETIRED",
"SUBSCRIPTION_CREATE_FAILED",
"SUBSCRIPTION_DELETE_FAILED",
"SUBSCRIPTION_LIMIT_REACHED",
"SUBSCRIPTION_LIST_FAILED",
"SUBSCRIPTION_NOT_FOUND",
"TOPUP_BELOW_MINIMUM",
"TOPUP_CEILING_EXCEEDED",
"TOPUP_CEILING_UNAVAILABLE",
"TOPUP_KEY_REVOKED",
"TOPUP_NOT_FOUND",
"TOPUP_REQUEST_NOT_PENDING",
"TOPUP_RESOLVE_FAILED",
"UNAUTHENTICATED",
"UNKNOWN",
"UNSUPPORTED_CURRENCY_PAIR",
"UPSTREAM_BODY_READ_FAILED",
"UPSTREAM_ERROR",
"UPSTREAM_FETCH_FAILED",
"UPSTREAM_NON_JSON",
"UPSTREAM_NON_UTF8",
"UPSTREAM_RESPONSE_TOO_LARGE",
"UPSTREAM_TIMEOUT",
"UPSTREAM_UNAVAILABLE",
"UPSTREAM_UNMAPPED",
"VALIDATION_FAILED",
"VALIDATION_PRECONDITION_FAILED",
"WATCHLIST_LIMIT_REACHED",
"WEBHOOK_URL_INVALID"
]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/json-schemas/apier-no-error-code"
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.