Reference
Error code catalog
Every error code Tidy can emit, with HTTP status, retry semantics, and canonical docs URL. SDKs generate typed error classes from this catalog; agents use it to decide whether to retry.
Derived from the live catalog at https://qa.tidy.engineering/api/v1/errors.
auth
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
account_deleted | 401 | Account Deleted | no | docs |
audience_mismatch | 401 | Audience Mismatch | no | docs |
audience_mismatch_env | 401 | Environment Audience Mismatch | no | docs |
challenge_expired | 401 | Verification Expired | no | docs |
conversation_not_yours | 403 | Not Your Conversation | no | docs |
delegation_grant_required | 403 | Delegation Grant Required | no | docs |
forbidden | 403 | Forbidden | no | docs |
github_agent_not_opted_in | 403 | Employee Has No GitHub Access | no | docs |
github_agent_removed | 403 | Employee Has Been Removed | no | docs |
github_connection_unbound | 403 | GitHub Connection Not Bound To A Member | no | docs |
github_connector_not_member | 403 | GitHub Connector Is No Longer A Member | no | docs |
github_entitlement_stale | 403 | GitHub Entitlement Not Recently Proved | no | docs |
github_repository_owner_mismatch | 403 | Repository Outside This GitHub Installation | no | docs |
gitlab_credential_missing | 403 | GitLab Credential Missing | no | docs |
gitlab_oauth_expired | 403 | GitLab Authorization Expired | no | docs |
insufficient_capability | 403 | Insufficient Capability | no | docs |
insufficient_scope | 403 | Insufficient Scope | yes | docs |
invalid_credential | 401 | Credential Did Not Match | no | docs |
invalid_token | 401 | Invalid Token | no | docs |
missing_bearer | 401 | Missing Bearer | no | docs |
not_author | 403 | Not The Author | no | docs |
otp_attempts_exhausted | 401 | Verification Attempts Exhausted | no | docs |
otp_expired | 401 | Verification Code Expired | no | docs |
outside_delegation | 403 | Outside Delegation | no | docs |
pack_bypass_forbidden | 403 | Pack Cache Bypass Forbidden | no | docs |
provider_identity_mismatch | 401 | Linked Identity Did Not Match | no | docs |
provider_reauth_required | 401 | Provider Reconnect Required | no | docs |
source_control_connection_unusable | 403 | Source Control Connection Unusable | no | docs |
source_control_not_connected | 403 | Source Control Not Connected | no | docs |
step_up_required | 401 | Recent Authentication Required | no | docs |
token_expired | 401 | Token Expired | no | docs |
token_revoked | 401 | Token Revoked | no | docs |
conflict
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
active_bundle_changed | 409 | Active Bundle Changed | no | docs |
ai_fill_off | 409 | AI Fill Turned Off For This Facet | no | docs |
bundle_empty | 409 | Bundle Empty | no | docs |
bundle_over_cap | 409 | Bundle Over Cap | no | docs |
bundle_rebind_confirmation_required | 409 | Bundle Rebind Confirmation Required | no | docs |
capability_missing | 409 | Workshop Capability Missing | no | docs |
changed_since | 409 | Changed Since This Entry | no | docs |
collab_liveness_unprovable | 409 | Collaboration Liveness Unprovable | yes | docs |
conflict | 409 | Conflict | no | docs |
harness_not_signed_in | 409 | Harness Installed But Not Signed In | no | docs |
idempotency_key_in_flight | 409 | Idempotency Key In Flight | yes | docs |
idempotency_key_mismatch | 409 | Idempotency Key Mismatch | no | docs |
idempotency_key_reused | 409 | Idempotency Key Reused | no | docs |
instruction_not_reviewed | 409 | Instruction Not Reviewed | no | docs |
mailbox_changed_during_password_check | 409 | Mailbox Changed During Password Check | no | docs |
mailbox_connected_by_another_member | 409 | Mailbox Connected By Another Member | no | docs |
mailbox_connected_elsewhere | 409 | Mailbox Connected In Another Workspace | no | docs |
mailbox_connected_here | 409 | Mailbox Connected In This Workspace | no | docs |
managed_block_missing | 409 | Managed Block Missing | no | docs |
matrix_identity_unavailable | 409 | Chat identity unavailable | no | docs |
member_identity_missing | 409 | Member Identity Missing | no | docs |
mention_reply_required | 409 | Mention Reply Required | no | docs |
message_audit_unconfirmed | 409 | Message Change Published, Audit Unconfirmed | no | docs |
message_cleanup_unconfirmed | 409 | Message Redaction Published, Search Cleanup Unconfirmed | no | docs |
message_delivery_unconfirmed | 409 | Message Change Publication Unconfirmed | no | docs |
not_archived | 409 | Not Archived | no | docs |
not_resolved | 409 | Not Resolved | no | docs |
pack_unavailable | 409 | Knowledge Pack Unavailable | no | docs |
sources_processing | 409 | Sources Still Processing | yes | docs |
ve_huddle_conversation_unavailable | 409 | This call can't continue the conversation you have open. | no | docs |
ve_huddle_employee_unavailable | 409 | This employee can't take a call right now. | no | docs |
ve_huddle_unsupported | 409 | Voice calls with more than one virtual employee aren't supported yet. | no | docs |
entitlement
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
entitlement_exceeded | 403 | Entitlement Exceeded | no | docs |
entitlement_no_tier | 403 | No Plan Tier | no | docs |
entitlement_resolver_unavailable | 503 | Entitlement Resolver Unavailable | yes | docs |
feature_not_in_tier | 403 | Feature Not In Tier | no | docs |
subscription_inactive | 403 | Subscription Inactive | no | docs |
internal
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
internal_error | 500 | Internal Error | no | docs |
not_found
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
not_found | 404 | Not Found | no | docs |
not_visible | 404 | Not Visible To You | no | docs |
pack_not_found | 404 | Knowledge Pack Not Found | no | docs |
pack_target_not_found | 404 | Pack Target Not Found | no | docs |
resource_gone | 410 | Resource Gone | no | docs |
session_closed | 410 | Session Closed | no | docs |
session_not_shared_with_employee | 404 | Conversation Not Shared With Employee | no | docs |
policy
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
account_deleting | 403 | Account Deleting | no | docs |
calendar_approval_declined | 409 | Member Declined This Change | no | docs |
calendar_approval_required | 409 | Member Approval Required | no | docs |
code_already_redeemed | 409 | Invite Code Already Redeemed | no | docs |
code_deactivated | 403 | Invite Code Deactivated | no | docs |
code_expired | 403 | Invite Code Expired | no | docs |
code_invalid | 403 | Invalid Invite Code | no | docs |
conversation_required | 409 | This Call Is Not Part Of A Conversation | no | docs |
email_bounced | 410 | Email Address Undeliverable | no | docs |
external_fetch_disabled | 403 | External Fetch Disabled | no | docs |
invite_required | 403 | Invite Required | yes | docs |
owner_approval_declined | 409 | Owner Declined This Change | no | docs |
owner_approval_required | 409 | Owner Approval Required | no | docs |
owner_approval_unavailable | 409 | No Conversation To Ask The Owner In | no | docs |
policy_blocked | 451 | Policy Blocked | no | docs |
prompt_backend_upgrade_required | 503 | Compatible Prompt Backend Required | no | docs |
prompt_verification_unavailable | 503 | Approval Verification Unavailable | no | docs |
question_recipient_unavailable | 409 | That Person Cannot Be Asked | no | docs |
question_withdrawn | 409 | The Question Was Withdrawn | no | docs |
tier_not_enabled | 403 | Producer Tier Not Enabled | no | docs |
rate_limit
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
drive_save_budget_exceeded | 429 | Drive Save Budget Exceeded | yes | docs |
pack_budget_exceeded | 429 | Pack Budget Exceeded | yes | docs |
rate_limit_exceeded | 429 | Rate Limit Exceeded | yes | docs |
spend_cap_reached | 402 | Spend Cap Reached | no | docs |
trial_expired | 402 | Trial Expired | no | docs |
upstream
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
collab_unavailable | 503 | Collab Unavailable | yes | docs |
drive_save_ledger_unavailable | 503 | Drive Save Ledger Unavailable | yes | docs |
external_fetch_dispatch_failed | 503 | External Fetch Dispatch Failed | yes | docs |
link_write_failed | 503 | Link Write Failed | yes | docs |
links_unavailable | 503 | Links Unavailable | yes | docs |
mail_server_inbox_unavailable | 422 | Mail Server Would Not Open The Inbox | no | docs |
mail_server_rejected_password | 400 | Mail Server Rejected The Password | no | docs |
mail_server_timeout | 422 | Mail Server Timed Out | no | docs |
mail_server_tls_failed | 422 | Mail Server Secure Connection Failed | no | docs |
mail_server_unreachable | 422 | Mail Server Unreachable | no | docs |
prompt_delivery_unconfirmed | 503 | Prompt Delivery Or Tracking Unconfirmed | no | docs |
provider_delete_refused | 409 | Provider Refused The Delete | no | docs |
provider_reconnect_required | 409 | Provider Account Needs Reconnecting | no | docs |
upstream_timeout | 504 | Upstream Timeout | yes | docs |
upstream_unavailable | 503 | Upstream Unavailable | yes | docs |
validation
| Code | HTTP | Title | Retryable | Docs |
|---|---|---|---|---|
assignee_not_in_tenant | 422 | Assignee Is Not In Workspace | no | docs |
content_edit_invalid | 422 | Content Edit Invalid | no | docs |
invocation_option_unavailable | 422 | Invocation Option Unavailable | no | docs |
modality_unavailable | 422 | Modality Unavailable | no | docs |
not_a_generated_type | 422 | Not A Generated Type | no | docs |
not_revertible | 422 | Not Revertible | no | docs |
pack_input_invalid | 422 | Pack Input Invalid | no | docs |
pack_principal_required | 422 | Pack Principal Required | no | docs |
payload_too_large | 413 | Payload Too Large | no | docs |
project_not_in_tenant | 422 | Project Is Not In Workspace | no | docs |
unknown_primitive_type | 422 | Unknown Primitive Type | no | docs |
validation_failed | 400 | Validation Failed | no | docs |