Walk compact company ads
Retrieve a page of advertiser archive records as a normalized ads array with compact records and continuation.
/v1/facebook/ad-library/companies/adsx-api-keyHeaders
Get your API keyYour ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.
Must be application/json.
Exact numeric advertiser page ID. Use pageId or companyName.
99887766Unique case-insensitive advertiser name. Prefer pageId.
min 1 chars · max 4096 chars
Two uppercase letters or ALL. Defaults to ALL.
default: "ALL"
Query filter: ACTIVE (default), INACTIVE or ALL. Response: success, partial, failed or challenged.
one of: ALL, ACTIVE, INACTIVE · default: "ACTIVE"
ALL (default), IMAGE, VIDEO, MEME, IMAGE_AND_MEME or NONE.
one of: ALL, IMAGE, VIDEO, MEME, IMAGE_AND_MEME, NONE · default: "ALL"
total_impressions (default) or relevancy_monthly_grouped.
one of: total_impressions, relevancy_monthly_grouped · default: "total_impressions"
Optional two-letter content language.
Optional real calendar date YYYY-MM-DD.
Optional real calendar date YYYY-MM-DD, on or after start_date.
Use the smaller field projection before normalization.
one of: true, false
Opaque continuation token from data.page.nextCursor. POST supports long values.
min 1 chars · max 65536 chars
Whether usable public data was retrieved.
Query filter: ACTIVE (default), INACTIVE or ALL. Response: success, partial, failed or challenged.
one of: success, partial
Request correlation ID.
Canonical public library URL.
absolute HTTPS URL
UTC retrieval time.
Completeness of the bounded source result, with explicit warnings.
Always included.
Always included.
Always included.
Upstream requests, decoded response bytes and elapsed milliseconds.
Always included.
0 – 100
Always included.
≥ 0
Always included.
≥ 0
Compact archive result with one ads array and page state.
Always included.
Optional.
Optional.
Optional.
Always included.
up to 100 items
Always included.
Always included.
Always included.
absolute HTTPS URL
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
Always included.
No fields match.
HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.
| HTTP | failure.code | Meaning |
|---|---|---|
| 400 | invalid_request | Invalid, conflicting or unsupported parameters/cursor. |
| 401 | unauthorized | Missing or invalid x-api-key. |
| 403 | restricted_page | Source marks the ad restricted. |
| 404 | not_found | Explicitly absent ad or no exact company match. |
| 429 | upstream_rate_limited | Meta rate limit after at most two fresh proxy-session retries; direct egress is never retried on the same IP. |
| 502 | upstream_error upstream_challenged unsupported_page | Source failed, challenged, or returned unsupported data. |
| 502 | response_too_large request_limit payload_too_complex | An operation bound was exceeded. |
| 503 | busy | Both retrieval slots are occupied. |
| 504 | timeout | The operation deadline expired. |
| 503 | transcription_unavailable | Local speech runtime is not configured. |
| 502 | transcription_failed | Media decoding or speech recognition failed. |
| 422 | transcription_too_long | Video exceeds the 180-second speech limit. |