Skip to content
scrapeatlas.Dashboard

Ad details

Try in Playground

Retrieve a public ad by exact ID or canonical URL. Includes creative media, payer, advertiser, disclosed targeting, dates and impressions. Image, video, carousel, messages, InMail, article and event creatives have dedicated extraction; native documents expose their previews, and other formats are reported with partial coverage.

GET/v1/linkedin/adx-api-key
x-api-keystringrequiredheader

Your ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.

Query parameters
2
urlstringquery

Public HTTPS linkedin.com/ad-library/detail/ID URL.

max 4096 chars

adIdstringquery

Exact numeric ad ID as a string. Supply adId or url.

Example1234567890123456789
Response fields
87
idstring

Always included.

urlstring

Public HTTPS linkedin.com/ad-library/detail/ID URL.

absolute HTTPS URL

descriptionstringnullable

Always included.

headlinestringnullable

Always included.

posterstringnullable

Always included.

posterTitlestringnullable

Always included.

promotedBystringnullable

Always included.

paidForBystringnullable

Published payer, distinct from promoted-by attribution.

targetingobject

Source targeting text, preserving whitespace and hidden-control text for compatibility.

targetingDetailsobject

Cleaned language/location disclosure and all published inclusion/exclusion flags.

imagestringnullable

Always included.

videostringnullable

Always included.

Every published organic MP4 rendition in source order, with bitrate when present. video and organicVideo use the first rendition for reference compatibility.

up to 30 items

videoSources.urlstring

Always included.

videoSources.bitratenumbernullable

Always included.

carouselImagesstring[]

Always included.

creativeTypestringnullable

Always included.

thumbnailstringnullable

Always included.

preRollVideostringnullable

Published pre-roll MP4 when source metadata exposes it. Pre-roll attribution remains incomplete and this format reports partial coverage.

organicVideostringnullable

Always included.

preRollAdvertiserstringnullable

Always included.

sponsoredMessageSenderstringnullable

Always included.

sponsoredMessageSenderAvatarstringnullable

Always included.

sponsoredMessageTextstringnullable

Complete message text including list items; description retains the reference paragraph projection.

Native document cover images, title, manifest URL, preview page count and full count when published. Limited previews report partial coverage.

document.titlestringnullable

Always included.

document.previewPageCountinteger

Always included.

≥ 0

document.totalPageCountintegernullable

Always included.

document.coverImageUrlsstring[]

Always included.

up to 100 items

document.manifestUrlstringnullable

Always included.

Published message button text and type; destination URL stays null when the public source does not expose it.

sponsoredMessageButtons.textstring

Always included.

sponsoredMessageButtons.typestringnullable

Always included.

sponsoredMessageButtons.urlstringnullable

Always included.

landingPagestringnullable

Always included.

adTypestringnullable

Always included.

advertiserstringnullable

Always included.

advertiserLinkedinPagestringnullable

Always included.

advertiserLogostringnullable

Always included.

ctastringnullable

Always included.

destinationUrlstringnullable

Always included.

adDurationstringnullable

Published duration label; empty string when absent. Parsed dates remain null when unavailable.

startDatestringnullable

Real YYYY-MM-DD calendar date; requires endDate.

endDatestringnullable

Real YYYY-MM-DD date on or after startDate. LinkedIn applies its retained-ad date window.

totalImpressionsstringnullable

Original range label, never converted to a fabricated exact count.

All published countries, including those hidden by Show more.

impressionsByCountry.countrystring

Always included.

impressionsByCountry.impressionsstring

Always included.

requestIdstring

Random request correlation ID.

Attempts, decoded successful HTML bytes and elapsed time. Browser limits also count discarded responses.

accounting.upstreamRequestsinteger

Always included.

≥ 0

accounting.responseBytesinteger

Always included.

≥ 0

accounting.durationMsnumber

Always included.

≥ 0

successboolean

Whether usable public data was retrieved.

statusenum

success, partial, failed or challenged.

one of: success, partial

sourceUrlstring

Fixed-origin public source URL.

absolute HTTPS URL

fetchedAtstring

UTC retrieval timestamp.

Complete refers to this bounded page and supported creative fields, not all search results.

coverage.sourcestring

Always included.

coverage.completeboolean

Always included.

coverage.warningsstring[]

Always included.

Canonical Post at data.post for /ad; raw enriched items with next_cursor for /ads/search; normalized ad/ads and page metadata for /ad-library/ routes.

Always included.

data.post.idstring

Always included.

data.post.urlstring

Always included.

Always included.

data.post.content.textstringnullable

Always included.

data.post.content.media_urlsstring | string[]

Always included.

data.post.content.thumbnail_urlstringnullable

Always included.

data.post.content.duration_secondsnullnullable

Always included.

Always included.

data.post.author.usernamestringnullable

Always included.

data.post.author.display_namestringnullable

Always included.

data.post.author.avatar_urlstringnullable

Always included.

data.post.author.verifiednullnullable

Always included.

Always included.

data.post.engagement.viewsnumbernullable

Always included.

data.post.engagement.likesnullnullable

Always included.

data.post.engagement.commentsnullnullable

Always included.

data.post.engagement.sharesnullnullable

Always included.

data.post.engagement.savesnullnullable

Always included.

Always included.

data.post.flags.nsfwnullnullable

Always included.

data.post.flags.spoilernullnullable

Always included.

data.post.flags.pinnednullnullable

Always included.

data.post.flags.deletedboolean

Always included.

data.post.published_atstringnullable

Always included.

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.

Error codes
10
HTTPfailure.codeMeaning
400invalid_requestInvalid, duplicate, unknown or conflicting inputs.
401unauthorizedMissing or incorrect service key.
403restricted_pageThe source restricts this ad.
404not_foundMissing ad or route.
429upstream_rate_limitedSource throttling.
502upstream_challenged unsupported_pageChallenge, unsupported markup or identity mismatch.
502upstream_error unsafe_redirect response_too_large payload_too_complex request_limitBounded source failure.
503busyWorker capacity reached.
504timeoutRequest deadline elapsed.
200partialUnavailable details, other creative formats or additional variants.