Documentation Index
Fetch the complete documentation index at: https://docs.adclear.ai/llms.txt
Use this file to discover all available pages before exploring further.
401 Unauthorized
Symptom: Every request returns401 with error code UNAUTHORIZED.
Checklist:
- Verify the
Authorizationheader format isBearer <your-api-key>(note the space afterBearer) - Confirm you are using the correct key for the environment — staging and production keys are not interchangeable (see Environments)
- Check the key has not been revoked or expired
403 Forbidden
Symptom: Requests authenticate but return403 with error code FORBIDDEN.
Cause: The API key exists but is not fully configured for your organisation.
Action: Contact Adclear support. Include the correlationId from the error response.
409 Conflict When Creating a Promotion
Symptom:POST /v1/promotions returns 409 with error code CONFLICT and a detail of type upload_not_ready.
Cause: One or more files referenced in uploadIds have not finished uploading.
Resolution:
- For each upload ID, poll
GET /v1/uploads/{uploadId}untilstatusiscompleted - Retry the promotion creation once all uploads are complete
Evaluation Stuck in Processing
Symptom:GET .../evaluation continues to return status: "processing" for longer than expected.
Context: Typical evaluation time is 30–90 seconds depending on content size and complexity.
Resolution:
- Continue polling every 5–10 seconds for up to 5 minutes
- If still processing after 5 minutes, re-trigger the evaluation with
POST .../evaluate - If the issue persists, contact Adclear support with the
correlationIdandevaluationId
Webhook Not Being Received
Symptom: Evaluation completes (confirmed via polling) but your webhook endpoint is never called. Checklist:- Confirm your endpoint URL is HTTPS — HTTP endpoints are not supported
- Verify your endpoint responds with
2xxwithin 30 seconds - Check your signature verification logic — if verification fails silently, you may be discarding valid payloads (see Webhook Signature Verification)
- Confirm webhooks are configured for your organisation — contact Adclear if unsure
429 Rate Limited
Symptom: Requests return429 with error code RATE_LIMITED.
Resolution: Honour the Retry-After header in the response, which indicates how many seconds to wait before retrying. See Rate Limits for specific limits per service.
502 Error From the Integration API
Symptom: Occasional502 responses with error code UPSTREAM_ERROR or INTERNAL_ERROR.
Cause: A transient issue with an upstream service.
Resolution:
- Retry the request after a short delay (2–5 seconds)
- If the error persists, contact Adclear support with the
correlationId
General Tips
- Use the
X-Correlation-IDrequest header to pass your own trace ID — it will be echoed back in every response and threaded through the system - Test your integration against the staging environment before going to production
- Cache reference data (products, channels, jurisdictions, target markets) and refresh periodically — these change infrequently