Search LinkedIn Engagement Sources
search_linkedin_engagement_sourcesFind which LinkedIn campaigns or pages to retarget, for a chosen engagement source type. STEP 2 of the LinkedIn Engagement Retargeting flow.
Each result's `id` is the LinkedIn URN to pass as `engagement_source_urns` to
create_linkedin_engagement_retargeting_audience. The audience will contain people who
engaged with the sources you select, so this choice determines who is in it.
REQUIRED FIRST: call get_linkedin_engagement_source_types and pick an
`engagementSourceType` plus an `engagementTrigger`.
**ALWAYS PASS engagement_trigger AND lookback_window_days TOGETHER.** With both, every
candidate carries `engagementCount`, the volume of engagement behind it, sorted
highest-first — which is the only way to tell which sources are worth retargeting.
Without the pair the platform returns no counts and the order is not meaningful.
Use the same trigger and lookback you intend to create the audience with, or the
numbers describe a different audience than the one you are about to build.
DO NOT CALL THIS FOR THE WEBSITE SOURCE TYPE. Website retargeting is defined by URL
match rules, not by picking sources, and this tool refuses it. Go straight to the
create tool with `page_set_name` and `url_match_groups`.
READING THE RESULTS:
- `id` — the LinkedIn URN (e.g. `urn:li:sponsoredCampaign:743409464`). Pass it
verbatim. It is NOT the numeric campaign id and must never be reconstructed.
- `name` — the campaign or page name, for telling the user what you picked.
- `engagementCount` — how many engagements that source drew under the trigger and
lookback you passed. Absent when you did not pass both.
- `engagementMetricLabel` / `engagementMetric` — WHAT was counted, which follows the
trigger: "Total Engagement" for an any-interaction trigger, "Opens" for a
conversation open, clicks for a chargeable-click one. Quote this label when you
report numbers, so "1,200 opens" is not reported as impressions.
- `status` — the campaign's state. `PENDING_DELETION` campaigns still appear and are
still valid engagement history, but prefer live ones when both have volume.
ORGANIZATION_PAGES candidates carry no status; that is normal, not missing data.
HOW TO CHOOSE:
- Prefer sources with real `engagementCount`. A source with 0 builds an audience
that will stay empty however long LinkedIn is given.
- Selecting several sources is normal and usually right: the audience is the UNION of
everyone who engaged with any of them, so more sources means more reach.
- IF EVERY CANDIDATE SHOWS 0, do not silently build from all of them. That means the
account has no engagement of this kind in the window. Say so, and offer the real
options: a longer lookback, a shallower trigger, a different source type, or
waiting until campaigns have run. Building anyway produces an empty audience the
user will believe is populated.
- Only the top `limit` results come back, not the whole account. Narrow with `search`
rather than assuming the list is complete.
WHEN TO USE:
- After picking a source type, to find what can be retargeted
- "Which of my video campaigns got the most engagement?"
- "Find my lead gen form campaigns"
- To resolve a campaign the user named to its URN, via `search`
PARAMETERS:
- engagement_source_type: an `engagementSourceType` from step 1 (required).
WEBSITE is not valid here.
- engagement_trigger: a trigger valid for that source type. Pass it WITH
lookback_window_days to get engagement counts and a meaningful order.
- lookback_window_days: 30, 60, 90, 180 or 365. Pairs with engagement_trigger.
- search: narrow by name, case-insensitive substring. Use it when the user named a
campaign, or when the account has many campaigns.
- limit: how many to return (default 12, max 100).
RETURNS:
- sources[]: the candidates, as described above
- engagementMetricLabel: what the counts measure
- count: how many came back
- next_step: which tool to call next
IMPORTANT NOTES:
- ORGANIZATION_PAGES returns exactly one candidate, the account's own company page.
That is the whole result set, not a truncated one.
- An empty `sources` list means the account has nothing of that type. Report that and
suggest a different source type rather than retrying the same call.Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many candidates to return. Default 12, max 100. Results are the TOP N by engagement, not the whole account. | |
| search | No | Narrow candidates by name (case-insensitive substring). Use when the user named a specific campaign, or when the account has more campaigns than `limit`. | |
| engagement_trigger | No | An `engagementTrigger` valid for this source type. Pass together with lookback_window_days to get `engagementCount` per candidate, sorted highest-first. Use the same trigger you will create the audience with. | |
| lookback_window_days | No | Window the engagement counts are measured over. Pass together with engagement_trigger, and use the same value you will create the audience with. | |
| engagement_source_type | Yes | An `engagementSourceType` from get_linkedin_engagement_source_types (e.g. VIDEO_ADS, SINGLE_IMAGE_ADS, DOCUMENT_ADS, CONVERSATION_ADS, LEAD_GEN_FORMS, ORGANIZATION_PAGES). WEBSITE is not valid here — it has no sources to pick. |