LinkedIn Ad Copy
linkedin_ad_copyReads the actual AD COPY of specific LinkedIn ads — built for "which messaging performs best" analysis.
Give it a shortlist (comma-separated, max 60): creative_ids (urn:li:sponsoredCreative:N
or bare N — e.g. the top pivotValues from linkedin_campaign_analytics pivot=CREATIVE)
and/or post_urns (urn:li:share:N / urn:li:ugcPost:N).
Per creative you get: ad_copy (the ACTUAL ad text of post-based ads), author_type /
is_thought_leader_ad, format, name, headline, description, landing_page, post_urn,
post_permalink, ad_library_url and — where LinkedIn supports it — official
preview_url / preview_url_mobile.
HOW THE COPY IS OBTAINED (so you can be precise with the user): LinkedIn's Posts API is
NOT open to this connector (needs r_organization_social / Community Management API), so
the copy is read from two PUBLIC sources, in order — LinkedIn's Ad Library
(ad_copy_source: "linkedin_public_ad_library") and, when that is rate-limited or has no
text, the post's own public page (ad_copy_source: "linkedin_public_post_page"). Both are
verified live for Document Ads and Sponsored Content.
RATE LIMIT — READ THIS BEFORE BATCHING: the Ad Library throttles hard. Measured live:
10 lookups fine, 60 in one go → most return HTTP 429 and the penalty window lasts minutes.
So ask for the TOP rows (10–20 creative_ids), not the whole account. A throttled row comes
back with ad_copy_status: "ad_library_rate_limited" — that means TEMPORARY, retry smaller
in a few minutes; it does NOT mean the ad has no copy.
is_thought_leader_ad / author_name describe the POST'S AUTHOR (a person = Thought
Leader Ad, vs the company page); advertiser_name is the paying advertiser and is almost
always the company. When the author cannot be read the field is null (never false) and
thought_leader_ad_status explains why — do not report "not a Thought Leader Ad" on a null.
When a row has no ad_copy, say so plainly and give post_permalink / ad_library_url.
NEVER fabricate ad copy and never pass the internal creative name off as the ad text.
Text-based formats (textAd, spotlight, follow/jobs ads) carry their copy inline, so for those the headline/description here IS the real ad copy.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| post_urns | No | ||
| account_id | Yes | ||
| creative_ids | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||