PUThttps://api.veriko.mx/v1/users/me/retry-policy

Set default retry policy

Audience
public
Auth
API key
Permission
users:update_self
How-to guide →

Sets the authenticated user's default retry policy. From the moment it is saved, it applies to every future validation that does not carry its own in the body.

The check is strict: a value beyond a cap is rejected, not silently trimmed. Any deviation responds with an HTTP 422 status (carrying retry_policy_invalid in the body).

With enabled=false the other fields are ignored and the policy is stored as disabled.

It accepts an optional Idempotency-Key, which prevents storing the same thing twice when the network forces a retry.

Parameters
ParameterInTypeRequiredDescription
Idempotency-Keyheaderstringoptional

Optional client-generated key (Stripe-style) that guarantees the request is processed exactly once within a 24-hour TTL. The scope is (user_id, endpoint, key). Retries with the same key and the same body return the byte-for-byte cached response with the Idempotent-Replayed: true header, without consuming rate-limit quota, without re-firing webhooks, and without creating a new validations row. Same key with a different body → 422 idempotency_key_reused. Same key with an in-flight request → 409 idempotency_key_in_progress. 5xx responses are not cached (retries with the same key are processed for real). Format: 1–255 characters, alphanumeric + _ + -.

e.g. 11111111-2222-3333-4444-555555555555
Parameters
ParameterTypeRequiredDescription
retry_policyobjectrequired

Validation retry policy: activation, limit, interval, and eligible outcomes.

enabledbooleanoptional

true when the retry cycle is active. With false, the other fields are ignored.

e.g. true
max_retriesinteger (≥ 1)optional

Maximum number of automatic retries. Once reached, the cycle enters the exhausted terminal state. The allowed limit depends on the plan.

e.g. 3
interval_secondsinteger (≥ 300, ≤ 86400)optional

Seconds to wait between each retry (300–86400, i.e., 5 minutes to 24 hours).

e.g. 600
outcomesarray<string> (items: 1–?, unique items)optional

Outcomes that trigger a retry. By default, they are not_found, cep_unavailable, and error; the combination ["not_found", "cep_unavailable"] excludes error.

e.g. ["not_found","cep_unavailable","error"]
Request
curl -X PUT 'https://api.veriko.mx/v1/users/me/retry-policy' \
  -H 'Authorization: Bearer veriko_••••' \
  -H 'Content-Type: application/json' \
  -d '{
    "retry_policy": {
      "enabled": false
    }
  }'

Python example — coming soon.

JavaScript example — coming soon.

PHP example — coming soon.

Response 200RetryPolicy — Retry policy updated (echo of the normalized body).
FieldTypeDescription
enabledboolean

true when the retry cycle is active. With false, the other fields are ignored.

e.g. true
max_retriesinteger

Maximum number of automatic retries. Once reached, the cycle enters the exhausted terminal state. The allowed limit depends on the plan.

e.g. 3
interval_secondsinteger

Seconds to wait between each retry (300–86400, i.e., 5 minutes to 24 hours).

e.g. 600
outcomesarray (items: 1–?, unique items)

Outcomes that trigger a retry. By default, they are not_found, cep_unavailable, and error; the combination ["not_found", "cep_unavailable"] excludes error.

e.g. ["not_found","cep_unavailable","error"]
Response status codesPUT /v1/users/me/retry-policy
StatusClassDescriptionBody
2002xxRetry policy updated (echo of the normalized body).RetryPolicy
4004xxThe request body is empty or is not valid JSON.ErrorResponse
4014xxAuthentication is required or the provided credentials are invalid.ErrorResponse
4134xxThe request body exceeds the maximum accepted size (body_too_large).ErrorResponse
4224xxRetry policy is invalid (retry_policy_invalid). Causes: enabled missing or not boolean; max_retries outside [1, max_retries_cap]; interval_seconds outside [min_interval_seconds, max_interval_seconds]; outcomes empty when enabled=true; outcome outside the allowlist (eligible_outcomes from the global retry configuration).ErrorResponse
Response headers200
HeaderTypeDescription
Idempotent-ReplayedstringOnly present when the client sent Idempotency-Key. true when the response is a replay from the idempotency cache (24h TTL per user+endpoint+key).
Errors from PUT /v1/users/me/retry-policy
StatusCodeExample
400body_empty

The request body is empty.

Envelope
meta.request_id
b0c1d2e3f4a5b0c1d2e3f4a5
400invalid_json

The body is not valid JSON.

Envelope
meta.request_id
c1d2e3f4a5b6c1d2e3f4a5b6
401unauthorized

Invalid or missing authentication credentials.

Envelope
meta.request_id
c4d5e6f7a8b99b8a7f6e5d4c
413body_too_large

The request body is too large.

Envelope
meta.request_id
1a2b3c4d5e6ff6e5d4c3b2a1

Retry policy

PUT /v1/users/me/retry-policy

Validation retry policy: activation, limit, interval, and eligible outcomes.

Attempts
—
Interval
5 min – 1 h × 24
Eligible outcomes
not_found, cep_unavailable, error

This operation accepts an optional retry policy.