Error code
The list of error codes the CLI prints in the error [code] … format. In your program, branch on code, and use message only for display.
Reading error responses
All failed API responses use the same structure.
{ "error": { "code": "database_required", "message": "Create a database first" } }The CLI prints this response in the error [database_required] … format and exits with code 1. In automation scripts, branch on code. message is a description for users and can change at any time.
The same code can be returned with different HTTP status codes depending on the situation. When that applies, all of them are listed in the status code column.
Error code list (200)
| Code | HTTP status | Description |
|---|---|---|
access_denied | 401 | The bypass secret for this deployment's access control is incorrect. |
access_exchange_failed | 502 | The access check did not finish. Try again shortly. |
access_mode_app_rules | 409 | access[…] (…) requires an org role or email domain, which mode app cannot provide — |
access_required | 401 | This deployment has access control turned on, so you have to sign in first. |
access_rule_denied | 403 | this path is restricted by the deployment's access rules |
access_unavailable | 503 | The request was not served because access could not be checked. Try again shortly. |
account_exists | 409 | an account already exists — use password reset to add or change its password |
active_subscription | 409 | you still have an active paid subscription — cancel it on the billing screen first |
admin_required | 403 | this account cannot open the operations console |
ads_bad_decision | 400 | this decision is not valid any more |
ads_origin_mismatch | 403 | this decision was issued for another origin |
ads_origin_not_allowed | 403 | this origin is not listed for ads |
ai_not_granted | 403 · 409 | AI is turned off for …/… — runlot ai grant, or set "ai": true in runlot.json and deploy once |
already_member | 409 | The user is already a member of the organization. Change the role with a separate command. |
already_pro | 409 | already on the Pro plan |
app_error | — | The app could not answer this request. The cause is shown to members of the app's organization; look up the request ID in the dashboard. |
app_restoring | — | The app's data is being restored. Try again in a few minutes. |
app_starting | — | The app is starting. Try again in a few seconds. |
app_unavailable | — | The app is not available on this server right now. Try again shortly. |
approval_revoked | 409 · 410 | The isolated preview publication is no longer approved. |
artifact_lock_unavailable | 503 | deployments are temporarily unavailable — try again shortly |
audit_unavailable | 503 | the download could not be recorded; try again |
backend | — | The service behind this binding did not answer. Try again shortly. |
bad_event_id | 400 | query parameters must be valid URL-encoded values |
bad_query | 400 | invalid release issue query |
bad_request | 400 | The request format is invalid. |
bad_signature | 403 | the webhook signature does not match |
billing_off | 501 | credit top-up is not available |
billing_unavailable | 502 | the payment service is not responding |
blob_mismatch | 400 | blob … is … bytes, the list says … |
blob_not_listed | 400 | blob … is not in this upload's file list |
blobs_missing | 409 | … listed file(s) are not uploaded — upload them and commit again |
browser_route_disabled | 403 | Browser capture is disabled for this route. |
budget_exhausted | 429 | this organisation's usage budget is used up (…); serving resumes at … |
build_not_queued | 409 | this build is … and cannot be cancelled |
bundle_too_large | — | The bundle size exceeds the upload limit. |
client_closed | — | — |
cold | 503 | The project is asleep and is being restored from its latest backup. Try again shortly. |
compatibility_date_unsupported | 400 | compatibilityDate … exceeds this runtime's maximum of … — lower the value in runlot.json to … or earlier |
confirm_mismatch | 400 | The confirmation string does not match the project name. |
consent_required | 400 | client … is not first party and this deployment has no consent screen yet |
console_timeout | 504 | the database did not answer within … |
console_unreachable | 502 | could not reach this project's database: … |
console_write_needs_session | 403 | write mode on the SQL console is only available to a dashboard session — |
credit_unavailable | — | — |
cron_limit | 400 | the … plan allows up to … scheduled runs per org (currently …, this deployment adds …) |
deploy_hook_off | 409 | push-to-deploy is not on for this repository — turn it on first |
durable_objects_unavailable | 409 | Durable Objects are not available for this project yet — contact support to have them enabled |
durable_objects_unverified | 503 | Durable Objects availability could not be checked — nothing was changed; try again shortly |
email_unverified | 403 | verify your email before signing in |
export_failed | 502 · 503 | The database export could not be created. Try again shortly. |
forbidden | 403 | You are authenticated, but you do not have permission to perform this action. |
front_not_ready | 503 | The server for this project is still loading its routing table. Try again shortly. |
git_unavailable | 503 | the repository service is not reachable — pass commitSha |
git_unreachable | 503 | failed to read the repository |
github_token | 502 | The GitHub sign-in could not be completed. Start the sign-in again. |
github_user | 502 | Your GitHub account details could not be read. Start the sign-in again. |
google_token | 502 | failed to build Google token request: … |
google_user | 502 | failed to build Google user request: … |
heap_snapshot_failed | 502 · 409 | … |
hijack_failed | 500 | The connection could not be upgraded to a WebSocket. Try again. |
hostname_taken | 409 | This hostname is already in use by another project. |
image_in_use | 409 | this picture is used by … — point those creatives elsewhere first |
image_too_large | — | an ad illustration must be … KiB or less |
input_too_large | — | input[…] is longer than … accepts (about … tokens) |
insights_selection_unavailable | 503 | This occurrence's code insights are unavailable from the current control plane. |
inspector_unavailable | 409 | … |
insufficient_credit | 402 | the credit available now covers … with maxTokens up to … |
insufficient_scope | 403 | this token does not carry the … scope |
internal | 500 | An internal server error occurred. Try again shortly. |
invalid_branding | 400 | … … |
invalid_client | 400 | client_id … is not registered |
invalid_code | 401 | that code did not match — check the clock on your phone and try the next one |
invalid_company | 400 | enter your company (up to 200 characters) |
invalid_credentials | 401 | email or password is incorrect |
invalid_email | 400 | enter a valid work email address |
invalid_message | 400 | tell us what you need (up to 5000 characters) |
invalid_name | 400 | enter your name (up to 200 characters) |
invalid_request | 400 | redirect_uri is not registered for client … |
invalid_scope | 400 | … is not a scope |
invalid_team_size | 400 | team size is too long |
invalid_token | 400 | verification link is invalid or expired |
invite_expired | 409 | the invite has expired — ask an admin to resend it |
invite_revoked | 409 | the invite has been canceled — ask an admin for a new one |
invite_used | 409 | the invite has already been accepted |
isolated_preview_locked | 403 | An isolated HTTP preview cannot be changed through ordinary project operations. |
isolated_preview_not_promotable | 409 | Review and merge the fix branch, then deploy normally; an isolated execution cannot be promoted into its parent. |
isolated_preview_private | 403 | This isolated HTTP preview accepts approved verification requests only. |
isolated_preview_unavailable | 503 | Isolated HTTP preview execution is not configured on this installation. |
last_admin | 409 | This member is the organization’s last admin. Changing their role would leave the organization without an admin. |
license_project_limit | 409 | the licence allows … project(s) across the installation and … exist |
license_user_limit | 409 | the licence allows … user(s) and … exist |
login_domain_tls | 503 | the certificate for … has not been issued yet |
login_relay_failed | 502 | the sign-in service did not answer |
login_relay_refused | 403 | this request carries a login-domain relay signature that does not verify |
login_relay_unavailable | 503 | sign-in on this domain is unavailable right now |
managed_removed | 400 | "Use Runlot's app" is now its own provider — turn on the runlot provider instead (runlot auth provider runlot on) |
managed_unavailable | 503 | managed … login is not configured |
map_refresh_failed | 503 | could not confirm the deployment target before releasing traffic: … |
method_not_allowed | 405 | use GET |
mfa_expired | 401 | this sign-in step expired — start the sign-in again |
no_core | 503 | This service is temporarily unavailable. Try again shortly. |
no_credit | 402 | this organization has no AI credit — top up in the dashboard |
no_enrollment | 409 | there is no enrollment to confirm — start by generating a secret |
no_host | 400 | The request is missing the Host header. |
no_oauth_issuer | 503 | connected-app sign-in is not configured on this deployment |
no_oauth_key | 503 | connected-app sign-in is temporarily unavailable — try again shortly |
no_payment_method | 409 | no saved payment method — top up once manually, and you can then turn on auto top-up with that card |
no_placement | 503 | This project has not been deployed to a server yet. Run runlot deploy first. |
no_profiler | 501 | this node has no profiler |
no_retire | 501 | this node cannot prove runtime retirement |
no_ses_hook | 501 | the SES webhook is disabled |
no_totp_key | 503 | two-factor authentication is temporarily unavailable — try again shortly |
node_unreachable | 502 · 409 | The server running this project could not be reached. Try again shortly. |
not_a_member | 403 · 422 | This login code was issued for a different deployment. Start the login again. |
not_failed | 409 | only a failed month can be retried (it is …) |
not_found | 404 | The requested organization, project, or deployment could not be found. |
not_granted | 409 · 404 | This project has no auth service connected. |
not_hijackable | 500 | The connection could not be upgraded to a WebSocket. Try again. |
not_owed | 409 | only an open or failed month can be waived (it is …) |
not_pro | 409 | not on the Pro plan |
not_ready | 503 · 409 | This server has not finished loading its configuration. Try again shortly. |
not_routable | 503 | this address cannot be served right now |
not_running | 404 · 409 | … |
objects_unreachable | 502 | could not reach the object store: … |
observability_forbidden | 403 | this needs the … permission on … — an org admin can grant it on the project's observability roles |
oidc_discovery | 502 | could not read the identity provider's configuration: … |
oidc_id_token | 502 | … |
oidc_token | 502 | failed to build the token request: … |
op_in_flight | 409 · 503 | The same operation is already in progress. |
org_not_empty | 409 | this org still has … — remove them first, then delete the org |
org_pays | 409 | this org is on a paid Pro subscription — cancel it before granting |
org_slug_taken | 409 | This organization slug is already in use. |
over_project_limit | 409 | this organization has … active projects and its plan allows … — deploys are paused until you disable or delete … of them, or upgrade the plan. Nothing has been deleted |
passkey_failed | 401 · 400 | the passkey was not accepted |
personal_org | 409 | you can't delete a personal org — this is the org created at your first login |
plan_required | 403 | This plan allows |
preview_db_mode_fixed | 409 | preview … already exists with db=… — delete it to change the database mode |
preview_db_shared_unavailable | 409 | A project's database can only be attached to the project that owns it, so a preview cannot share it. Use db=branch for a copy, or db=none for a preview with no database. |
preview_exists | 409 | This execution's child already exists; an uncertain execution is not replayed. |
preview_limit | 409 | the … plan allows up to … previews per project (currently …) |
preview_name_taken | 409 | the address … is already in use |
preview_not_deployed | 409 | preview … has no deployment to promote yet |
profiler_busy | 409 | … |
project_deleting | 409 | the project is tearing down and can't accept new changes |
project_disabled | 409 | this project is disabled — enable it before deploying |
project_limit | 409 | the … plan allows up to … projects (currently …) |
project_name_taken | 409 | This project name is already in use. |
queue_limit | 400 | the … plan allows up to … queues per org (currently …, this deployment adds …) |
rate_limited | 429 | You exceeded the request limit. Try again shortly. |
relay_disabled | 503 | WebSocket connections are not being served from this server right now. Try again shortly. |
replacing | 503 | the project's process is being replaced — retry shortly |
repo_exists | 409 | repository … already exists |
reserved_name | 400 | This name is reserved and cannot be used. |
restore_stalled | 503 | The database restore operation was interrupted. Contact support. |
restoring | 503 | The database is being restored. Try again after it finishes. |
retire_failed | 503 | failed to retire runtime: … |
retire_unchecked | 503 | runtime retirement was not confirmed |
revoked | 403 | This project is no longer served from this server. Try again shortly. |
self_lockout | 409 | you cannot take observability:admin away from yourself; ask another admin |
short_body | — | — |
sign_in_expired | 400 | this sign-in link has expired or was already used — start again from the app |
sign_in_required | 401 | sign in to this app first |
signup_closed | 403 | this installation creates accounts by invitation only — ask an administrator |
slug_reserved | 409 | … is reserved: … |
sql_error | 400 | The database refused the statement. The message is the database's own, and the response details carry its SQLSTATE. |
ssh_key_exists | 409 | this public key is already registered |
stale_release | 409 | the held deployment is no longer the control plane target |
storage_not_granted | 409 | this project has no file storage — set "storage": true in runlot.json and deploy |
stream_too_large | — | — |
suspended | 403 · 409 | The project is suspended. |
tail_consumer_limit | 400 | the … plan allows up to … tail consumers per project (this deployment names …) |
telemetry_queue_full | 429 | the browser telemetry queue is full |
too_large | — | the body is larger than … KiB |
too_many_attempts | 429 | too many wrong passwords — try again later |
too_many_invites | 409 | too many pending invites (…) — cancel an old invite and try again |
tool_args_too_large | — | — |
tool_protocol | — | — |
tool_round_limit | — | — |
tool_session_gone | 410 | that BYOS run is no longer active |
totp_disabled | 409 | two-factor authentication is not on for this account |
totp_enabled | 409 | two-factor authentication is already on — turn it off first to enroll another device |
totp_required | 403 | … requires two-factor authentication — turn it on for your account before making changes |
totp_unreadable | 503 | this account's authenticator could not be read — use a recovery code |
unauthorized | 401 | The token is missing or has expired. Run runlot login again. |
unknown | — | The response could not be identified as a runlot API response. It may have come from an intermediary proxy. |
unknown_hostname | 404 | No project connected to that hostname could be found on this server. |
unknown_node | 503 · 403 | The server for this project could not be located. Try again shortly. |
unknown_state | 503 | The deployment is in a state this server does not recognize. Try again shortly. |
unsupported | — | This file storage backend does not support that operation. |
unsupported_media_type | — | send application/json |
unsupported_response_type | 400 | response_type … is not supported — only code |
upload_committing | 503 | this upload is still being committed — try again shortly |
upload_not_found | 404 | the upload session does not exist or has expired — start a new one |
upstream_error | 502 | the call to … failed |
upstream_rate_limited | 429 | The provider is rate-limiting requests right now. Try again shortly. |
user_not_found | 404 | There is no login record for this account. Log in once first. |
wake_superseded | 503 | … |
weak_password | 400 | password must be between … and … bytes |
websocket_capacity | 503 | This server has no WebSocket capacity left right now. Try again shortly. |
Errors from runlot's own operations (149)
These codes come back when work runlot runs on your behalf — placing a project on a server, restoring a database, registering a domain — does not finish. Most of them clear if you try again shortly. If the same one keeps coming back, contact support.
| Code | HTTP status | Description |
|---|---|---|
access_mode_app | 409 | this deployment admits only people signed in to the app — choose another access mode before turning login off |
ai_unavailable | 409 · 503 | AI is not available for this project — contact support to have it enabled |
alerts_unavailable | 503 | External alert secrets cannot be sealed on this installation. |
already_done | 409 | The requested operation has already finished. |
bad_cursor | 400 | invalid release issue cursor |
bad_effort | 400 | … has no reasoning effort control — leave reasoning out |
bad_format | 400 | responseFormat.type must be "json_schema" |
bad_version | 400 | version must be a positive deployment version |
byos_failed | 502 | … |
byos_run_exists | 409 | that BYOS request is already running |
byos_timeout | 504 | … |
cas_conflict | 409 | The resource changed while the request was in flight, so it was not applied. Check the current state and try again. |
chain_broken | 409 | generation (epoch=…, seq=…) cannot be restored — part of its backup is missing. Choose another restore point |
claim_lost | 409 | That verification is no longer claimed. |
claimed | 409 | Another instance is using this database. Try again shortly. |
cname_conflict | 409 | A CNAME record cannot coexist with a record of another type on the same DNS name. |
dashboard_builtin | 409 | Built-in dashboards are read-only; export one and create a dashboard from it. |
dashboard_key_taken | 409 | Another dashboard of this project already has the key …. |
dashboard_managed_by_repo | 409 | This dashboard comes from .runlot/dashboards/ in the repository; change it there, or the next deploy undoes the edit. |
database_required | 409 | This project's database was deleted. runlot pg on creates a new one. |
db_rewound | 409 | Changes to this project's database are on hold while a restore is confirmed. Try again shortly, and contact support if it does not clear. |
diagnosis_in_progress | 409 | a diagnosis with this idempotencyKey is still running |
dns_not_configured | 503 | DNS management is not available on this service. |
dnssec_off | 409 | DNSSEC is disabled for the domain zone. Enable it first. |
domain_taken | 409 | This domain is already registered. |
domain_unavailable | 409 | This domain cannot be registered. |
downtime_id_taken | 409 | That downtime ID belongs to another project. |
duplicate_request | 409 | idempotency_key … has already been charged on the … lane |
email_address_taken | 409 | address … is in use by another project |
email_domain_provider | 409 | the mail provider refused …: … |
email_domain_taken | 409 | … is already a sending domain of another project |
email_domains_unavailable | 409 | custom sending domains are not available on this service — mail from the default address still works |
email_unavailable | 409 | email is not available on this service |
erasure_storage_unavailable | 503 | Replay storage cannot erase blobs; retry when storage is available. |
event_store_unavailable | 503 | the event store refused the profile; resend |
export_limit | 409 | — |
filter_limit | 409 | a project has at most … trace retention filters |
filters_unsupported | 501 | this control plane cannot filter the live tail |
format_unsupported | 400 | … does not support responseFormat — env.ai.models() says which models do |
heap_snapshot_not_ready | 409 | the heap snapshot is still being taken |
heap_snapshot_running | 409 | a heap snapshot of this project is already being taken |
history_erasure_pending | 503 | the events were erased; the history store did not confirm — repeat the erasure |
history_unavailable | 503 | the error history store did not answer; try again shortly |
host_not_attached | 403 | … is not an address of project … |
hostname_limit | 409 | The project has reached its plan's limit on custom domains (1 on Free, 50 on Pro). The response details carry the limit, the current count, and the plan. |
hostname_role_conflict | 409 | hostname … is already attached to this project as a… domain — detach it first to change that |
idempotency_conflict | 409 | That key belongs to another or erased approval. |
idempotency_key_reused | 409 | idempotencyKey … was already used for another issue |
invalid_grant | 400 | the sign-in code is invalid, expired or already used |
invalid_provider | 400 | That authentication provider is not supported. |
issue_merged | 409 | issue … is merged into another issue; act on that one, or unmerge it first |
last_method | 409 | that would leave no sign-in method — turn login off instead, or turn another method on first |
license_node_limit | 409 | the licence allows … node(s) and … are registered — mark a node dead or renew with a larger licence |
lifecycle_disabled | 503 | This operation is temporarily unavailable. Try again shortly. |
limit_reached | 403 | a project has at most … log metrics |
login_domain_exists | 409 | this project already has a login domain (…) — detach it first |
login_required | 409 | mode app admits only people signed in to this app — turn app login on first |
managed_rrset | 409 | This is a DNS record managed by runlot, so you cannot edit it directly. |
master_key_version | 503 | This operation is temporarily unavailable. Try again shortly. |
model_unavailable | 503 | … cannot be called from this control plane |
monitor_id_taken | 409 | That monitor ID belongs to another project. |
monitor_key_taken | 409 | Another monitor of this project has the key …. |
monitor_limit | 403 | This plan allows |
monitor_managed_by_repo | 409 | This monitor is defined in the repository (.runlot/monitors); change it there and deploy. |
no_access_key | 503 | Deployment access control is temporarily unavailable. Try again shortly. |
no_database | 409 | This project has no database connected. |
no_deployment | 404 | This project has not been deployed yet. Deploy it with runlot deploy first. |
no_event_store | 503 | this control plane has no event store; observability metrics need one |
no_home_node | 503 · 409 | This project is not running right now, so the request could not be served. Deploy it, or try again shortly. |
no_master_key | 503 | This operation is temporarily unavailable. Try again shortly. |
no_node | 503 | No capacity is available to place the project. Try again shortly. |
no_node_admin | 503 | This operation is temporarily unavailable. Try again shortly. |
no_slot | 503 | No capacity is available. Try again shortly. |
not_a_preview_of | 409 | project … is not a preview of … |
not_abortable | 409 | The operation has reached an irreversible stage and cannot be aborted. |
not_active | 409 | This operation cannot be performed in the current state. |
not_available | 501 | … widgets are not available on this installation yet. |
not_brokered | 409 | … is not signed in through Runlot — only the runlot provider is |
not_deletable | 409 | preview … cannot be deleted right now — another operation is in progress; try again shortly |
not_merged | 409 | … is not merged into another issue |
not_shared | 403 | Event rows and issues are not shown through a public link; only aggregates are. |
not_terminal | 409 | The operation is not in a terminal state yet. |
object_restore_time_unknown | 409 | This project uses Durable Objects, and the chosen restore point does not resolve to an exact time. Restore by time, or pick the end of a generation. |
object_restore_uncovered | 409 | Some of this project's Durable Objects have no stored copy at the chosen restore point, so the restore was refused rather than leave them holding data from another time. Pick a later restore point. |
oidc_discovery_failed | 400 | OpenID discovery for … failed: … |
op_stalled | 409 | The operation has stopped after an error. Resolve the cause, then resume the same operation. |
origin_mismatch | 409 | … is a … issue and … a … one; issues of different origins are never merged |
ownership_pin_conflict | 409 | A snapshot pin is immutable and cannot be restored or retargeted. Use a new deployment or an explicit user: rule. |
ownership_pin_ineligible | 409 | The current member or linked GitHub identity no longer matches. |
ownership_pin_limit | 409 | The technical limit of 500 snapshot pins per project, including revoked or removed pins, has been reached. |
payment_failed | 402 | Payment was not authorized. Check your payment method. |
pii_required | 403 | … needs access to personal data |
plan_limit | 403 | this plan keeps at most |
preview_daily_fuse | 429 | The isolated-preview technical limit is 20 approvals per project per UTC day; no extra execution was queued. |
preview_not_available | 409 | The exact isolated child deployment is not available. |
preview_not_empty | 409 | The isolated target must be a new database-free preview, not an existing project. |
preview_not_ready | 409 | The isolated preview is not ready for verification. |
preview_target_mismatch | 409 | The result is not this job's isolated child deployment. |
privacy_erased | 409 | The stored error data or this request key was erased; refresh the issue before starting a new diagnosis. |
proposal_expired | 409 | this proposal is older than 7 days; propose again |
proposal_in_progress | 409 | a fix proposal with this idempotencyKey is still being generated |
proposal_mismatch | 409 | proposalSha does not match this proposal |
proposal_not_ready | 409 | this proposal is … and cannot be applied |
provider_not_configured | 404 | the runlot provider is not turned on for project … |
query_too_large | 422 | the query needed too much memory; narrow the timeframe, group by fewer keys or add filters |
query_too_slow | 422 | the query ran past 10 seconds; narrow the timeframe or add filters |
registrar_error | 502 | The domain registrar returned an error. |
registrar_not_configured | 503 | Domain registration is not available on this service. |
registrar_rejected | 422 | an earlier purchase of this name was declined: … |
rehydration_busy | 409 | a project runs at most … rehydrations at once |
release_batch_changed | 409 | a release report cannot change during retry |
replay_cap | 429 | this project's replays for the month are used up |
replay_pending_limit | 429 | too many of this project's replays are waiting to be completed |
replay_unavailable | 404 | replay … cannot be shown |
request_death_binding_changed | 409 | a registered process binding is immutable |
request_death_bindings_full | 429 | request-death binding admission is full |
request_death_changed | 409 | an observation cannot change during retry |
request_death_evidence_full | 429 | request-death evidence admission is full; retry the complete batch |
request_death_exit_changed | 409 | a process may have only one immutable exit seal |
request_death_fact_changed | 409 | a request terminal or native tail is immutable |
request_death_not_assigned | 403 | an unknown process binding requires current assignment authority |
request_death_tail_after_seal | 409 | a new native tail cannot follow its process seal |
route_limit | 409 | this project already has … route templates |
runlot_unavailable | 409 | Runlot sign-in is not configured on this deployment (no broker) |
saga_incomplete | 502 | The domain purchase did not finish. Send the same request again to continue it. |
secrets_unavailable | 503 | The check's stored secrets cannot be opened; enter them again. |
slo_id_taken | 409 | That SLO ID belongs to another project. |
slo_in_use | 409 | … burn-rate monitors read this SLO; delete them first. |
slo_limit | 403 | This plan allows |
snapshot_storage_unavailable | 503 | this control plane has no blob store |
source_not_placed | 409 | project … has not been deployed, so there is no database to branch from — deploy it first |
stale_backup_audit | 409 | project …'s audit attempt was superseded |
stale_backup_delete_claim | 409 | the backup delete claim is no longer current |
stale_backup_head | 409 | project …'s audit target identity changed |
still_stored | 409 | the whole range is inside the …-day retention and is still in the store |
storage_unavailable | 409 | this CP has no env.storage backend to write the archive into |
store_unavailable | 503 | The observability store is not configured on this installation. |
time_history_unavailable | 409 | this chain starts at a backup without a known snapshot time; restore by transaction instead |
too_many_public_prefixes | 409 | a project may publish at most … prefixes (this one has …) |
unmerge_required | 409 | Unmerge this issue and its merged sources before deleting it; no merged issue was deleted. |
upstream_timeout | 504 | … did not answer within … |
uptime_check_id_taken | 409 | That check ID belongs to another project. |
uptime_check_limit | 402 | This plan allows … uptime checks per project. |
user_rrset | 409 | This is a user-created DNS record, so it cannot be overwritten by a managed record. |
verification_fuse | 429 | This isolated preview reached its 20-request technical limit. |
verification_not_available | 409 | The request was submitted already, or the isolated preview/approval is unavailable; it was not replayed. |
verification_running | 409 | A verification is already pending; a retry cannot authorize another request. |
witness_unavailable | 503 | The state of this project's database could not be confirmed, so the operation was held. Try again shortly. |
zone_taken | 409 | This DNS zone already exists. |