Douklar 4.0.0, 23 October 2026.A new CLI, douklar, and retry of unfinished objects from a finished S3 Batch job.Read the release notes

Douklar

Error codes

The error codes the console's API returns, with the HTTP status, whether a retry can help, and what to do.

View as Markdown

When the console or an API call fails, the response carries a code. Find it below. Retry says whether trying again unchanged can succeed; when it says No, change what the last column names first.

For problems that show up before you get a code (the stack does not start, sign-in loops), see Troubleshooting.

Authentication

CodeStatusRetryWhat to do
account_signed_out409NoSign the account in on Accounts (SSO) or fix its access keys, then list again.
authentication_required401NoAuthenticate via the provider login flow.
aws_auth_failure401NoSee provider_error.code for the specific AWS-side error.
aws_authentication_failed401NoRefresh credentials/session and retry.
aws_expired_token401YesRe-run SSO device flow for the affected profile.
aws_invalid_client_token401NoRe-run SSO device flow or rotate static credentials.
aws_signature_mismatch401NoRefresh the affected account's credentials.
session_expired_or_invalid401NoRe-authenticate to obtain a new session.

Authorization

CodeStatusRetryWhat to do
audit_manage_forbidden403NoOnly admin users can manage log lifecycle settings.
aws_access_denied403NoVerify the role trust policy and AWS account ID.
aws_kms_access403NoNames the KMS key and action; allow it in both the key policy and the principal's IAM policy, or with a grant. See docs/aws/kms-customer-managed-keys.md.
csrf_token_invalid403NoProvide a valid X-CSRF-Token header for state-changing requests.
insufficient_permissions403NoRequest a role/permission grant for the required operation.
log_delivery_status_forbidden403NoSign in as an admin to read log delivery status.

Configuration

CodeStatusRetryWhat to do
calculator_snapshot_unavailable503NoReinstall Douklar, or rebuild src/core/s3_cost/prices.json with scripts/s3_price_snapshot.py.
cli_import_policy_unavailable503NoFix the imports section of the app configuration (a mapping; trusted_signing_keys a mapping), then retry. Imports fail closed while the signature policy cannot be read.
log_delivery_config_invalid500NoRepair the saved log delivery destination; pending rows remain protected.

Conflict

CodeStatusRetryWhat to do
config_signature_conflict409NoLoad the latest checker policy, reconcile edits, and retry with its config_signature.
idempotency_in_flight409YesRetry with the same key once the in-flight request completes.
idempotency_replay_unavailable409NoThe request already ran; read the resource's current state instead of retrying the key.
s3_batch_job_already_running409NoResolve the stated conflict, then retry.
s3_batch_retry_refused409NoFix the stated cause, or use New job to list both buckets again.
s3_batch_start_refused409NoRefresh the job; start only a job AWS reports as waiting, with an empty destination.
s3_batch_submission_unavailable409NoReload Jobs and reconcile the recorded AWS submission. Do not submit again.

External service

CodeStatusRetryWhat to do
aws_s3_batch_error502YesRetry the request. If the issue persists, inspect AWS service health and permissions.
aws_sts_error502YesRetry; if persistent, check STS endpoint reachability.
s3_batch_provider_error502YesRetry. If it persists, check AWS service health and the job's IAM role.

Infrastructure

CodeStatusRetryWhat to do
addon_config_unwritable503YesMake the app configuration directory writable by the backend user, or set CONFIG_PATH to a writable location, then retry.
checker_scope_unavailable503YesCheck the server log for the scope read failure (config files unreadable or the checker core failed to load), then retry.
credential_store_unavailable503YesVerify /app/.cache is writable; check AUTH_PROVIDER_KEY_FILE path.

Internal

CodeStatusRetryWhat to do
credential_store_error500NoCheck backend logs for the underlying error.
credential_validation_internal_error500NoCheck backend logs.
s3_batch_internal_error500NoUnclassified failure on Douklar's side; quote the request id when reporting it.

Not found

CodeStatusRetryWhat to do
account_profile_not_found404NoVerify the profile name matches config/simple-config.ini.
credentials_not_found404NoRun configure_credentials before validating.

Rate limit

CodeStatusRetryWhat to do
aws_rate_limited429YesBack off and retry; see AWS throttling guidance.
rate_limited429YesWait and retry the request.

Resource

CodeStatusRetryWhat to do
aws_resource_not_found404NoVerify the referenced AWS resources and retry.
plugin_not_in_catalog404NoRefresh the catalog, or check PLUGIN_CATALOG_URL.
s3_batch_job_not_found404NoCheck the identifier. Jobs are deleted 90 days after reaching a terminal state.
s3_batch_resource_not_found404NoCheck the identifier. Jobs are deleted 90 days after reaching a terminal state.
s3_batch_run_not_found404NoCheck the identifier. Jobs are deleted 90 days after reaching a terminal state.

Validation

CodeStatusRetryWhat to do
aws_invalid_request400NoCorrect the request parameters and retry.
aws_region_required400NoPass an explicit region in the request payload.
calculator_payload_too_large413NoSend only the Calculator input fields; the body is limited to 16 KiB.
cli_import_bundle_fields_required422NoAttach both 'manifest' and 'bundle' multipart file fields.
expected_account_id_invalid400NoConfirm the 12-digit AWS account ID format.
idempotency_key_invalid422NoSend a UUID-grade Idempotency-Key (16-255 characters) and reuse it only for retries of the same request.
idempotency_param_mismatch422NoReuse an Idempotency-Key only for retries of the same request; generate a new key for a different one.
install_roles_invalid422NoFix the role-preset assignment payload per the error detail.
invalid_account_check_interval422NoChoose 0 (Off), 5, 15, 30, 60 or 240 minutes.
invalid_mapping_scope422NoSupply each mapping mode/profile scope only once per service.
invalid_region400NoUse a region such as us-east-1 or eu-west-1.
missing_config_precondition422NoLoad the current checker policy and submit its config_signature with the write.
plugin_not_implemented409NoUpgrade Douklar to a build that ships this plugin.
plugin_requires_newer_app409NoUpgrade Douklar, then install the plugin.
s3_batch_invalid_request422NoReview request fields and manifest content, then retry.
s3_batch_request_invalid422NoCorrect the reported field or prerequisite, then retry.
service_not_installed409NoInstall the plugin from System › Installation › Plugins, then retry.

Keyboard shortcuts

g h
Home
g c
The console
g m
Use cases
g d
Docs
g r
Releases
/ or Ctrl K
Search the docs (on docs pages)
t
Switch light and dark
?
Show this list