Errors

Every error ACOG itself returns, with its HTTP status, type, extra fields, cause and what to do. Errors from your provider are passed through unchanged.

4 min read Updated View as Markdown Report a problem

Errors ACOG returns itself use this envelope:

{ "error": { "type": "model_not_configured", "message": "…" } }

Some types add fields, listed below. An error from your provider is passed through with its own status and body, unless ACOG maps it to one of the types below. On native routes, provider errors are always passed through unchanged. Failed responses are never cached.

Authentication and authorization

StatustypeCauseWhat to do
401unauthorizedNo gateway key found, or the key is unknown, disabled, expired, or used from outside its IP allowlistCheck the key and the header it is in (Base URLs and authentication)
403forbiddenThe key lacks the gateway access scope (proxy); or, on /bedrock, the request signature does not verifyUse a key with proxy; for Bedrock, use an issued ACOG credential and a correct clock
503service_unavailableACOG could not reach its key or configuration storeRetry

Governance

StatustypeExtra fieldsCause
402budget_exhaustedscope (org, group, user), window (day, week, month), decision_idA budget is used up. See Budgets.
429rate_limitedRetry-After headerA rate limit is reached. See Rate limits.
403model_not_allowedscope (org, team, user, service-key)A model access rule refuses the model. See Model access.
403model_unverifiablechannelA native-route request whose model cannot be determined, while a model access rule applies
403dlp_blockedcategory, reason, decision_idData loss prevention blocked the request. See Data loss prevention.
400prompt_injection_blockedcategoryPrompt injection screening blocked the request. See Prompt injection protection.

Routing and the request

StatustypeCauseWhat to do
409model_not_configuredNo connection declares the model; auto with no connections; an x-acog-channel value with no matching connection; or no model in the bodyDeclare the model on a connection under Admin → Providers
409connection_not_configuredA native route with no connection for that provider, or a connection missing a required settingCreate or complete the connection
409connection_not_usableThe connection’s address, port or region is not allowed on the hosted serviceEdit the connection (Connecting providers)
400invalid_request_errorThe body is not valid for the endpoint, a referenced image could not be fetched, or a native path contains . or .. segmentsFix the request
413request_too_largeThe body is over 64 MiBSend less, or reference large files by URL
413context_window_exceededThe prompt is larger than the model’s context window. Extra fields: model, context_window, estimated_tokens.Shorten the prompt or use a model with a larger window
422translation_unsupportedA field cannot be translated faithfully to the serving model’s APIRemove the field, or call a model that speaks the same API
422embeddings_unsupported_shapeNo connection that declares the model can serve embeddingsDeclare the model on an OpenAI, Azure OpenAI or compatible connection

Your provider

StatustypeExtra fieldsCauseWhat to do
422model_access_requiredprovider_status, provider_detailYour provider account cannot use the model (Bedrock model access, Vertex Model Garden, Azure deployment)Enable the model in your provider account; the message says how
422upstream_auth_failedprovider_status, provider_detailYour provider rejected the connection’s stored keyUpdate the key under Admin → Providers
502upstream_auth_errorACOG could not obtain a credential for the provider, for example a keyless exchange was refusedSee the provider’s troubleshooting section (Keyless connections)
500credentials_errorA stored credential could not be usedContact your administrator; re-enter the connection’s credentials
502upstream_errorA network or protocol failure reaching the providerRetry
503upstream_unavailableRetry-After: 5The provider’s platform is failing repeatedly and ACOG is pausing requests to itRetry after the delay

Batches

StatustypeCause
404batch_not_foundNo such batch job for your organization
502batch_failedThe provider’s batch job failed. Extra fields: id, status.
502batch_poll_failed, batch_connection_unavailableACOG could not check the job, or the job’s connection no longer exists

Hosted service: errors from the edge

These apply only to the console’s address, acog.tessarac.com/gateway, which goes through the edge network in front of the console. There, a request that sends nothing back for 60 seconds is closed with 504, and some 403, 404 and 5xx responses arrive as an HTML page from the edge rather than the JSON envelope above. gateway.acog.tessarac.com has no edge in front of it; use it, and see Base URLs.