List tracked rival ads
list_tracked_rival_adsPages through the stored ads of the competitors (rivals) a brand tracks, running and stopped, up to 50 per page: caption, opening hook, format, dates and delivery evidence for each ad. The tool for a full walk of tracked competitors, and the only ad list with table (CSV) output. Ads and counts describe only this account’s tracked set, not complete advertiser or library coverage. Order recent (default) mixes all tracked competitors; rival walks one at a time and reports totals.tracked_rivals once the walk completes. Missing hook evidence and unanalyzed why are null. Each ad returned draws on the daily workspace reading allowance. A page can be short or empty while has_more is true; page_note says why.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"brand_id": "<brand_id>"
},
"name": "list_tracked_rival_ads"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Ads per page, 1 to 50 (default 20). | |
| order | No | recent (default) mixes every tracked competitor of the brand, most recently updated first; rival walks one competitor at a time. With competitor_id the order is rival. | |
| cursor | No | next_cursor from the previous page for this brand with the same filters; absent for the first page. A page can be empty while has_more is true. | |
| format | No | Media filter: static = image ads (image is an alias), video = video ads. Absent means both. | |
| status | No | Delivery filter: live = still running, stopped = no longer running, all = both. Absent means all. | |
| compact | No | Defaults to true: body_text is capped at 280 characters with an ellipsis and body_text_truncated. False includes the full caption and legacy primary_text. | |
| brand_id | Yes | Brand id from list_brands. | |
| min_run_days | No | Only ads observed running for at least this many days (0 to 36500). | |
| competitor_id | No | Optional competitor id from list_competitors: reads one competitor tracked for this brand instead of all of them. | |
| response_format | No | Output format: text (default), json for versioned research rows, or table for this page as CSV. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ads | No | Bounded sample of accessible ads with delivery evidence; not a complete library inventory. | |
| as_of | No | as of value in this response. | |
| order | No | order value in this response. | |
| scope | No | Which accessible ad examples this search covered. | |
| totals | No | Counts for your tracked set only; excludes library inventory totals. | |
| brand_id | No | Reference for the selected brand. | |
| has_more | No | Whether another bounded page is available with next_cursor. | |
| allowance | No | Free daily ad-return allowance for this workspace, resetting at midnight UTC. | |
| page_note | No | Plain-language explanation of a short page and how to continue. | |
| description | No | description value in this response. | |
| next_cursor | No | Continuation handle for the same filters; null when no further page is offered. | |
| reading_use | No | reading use value in this response. | |
| search_note | No | Limitations or suggestions for interpreting this bounded search. | |
| cost_credits | No | Credits quoted or charged by this operation. | |
| tracking_note | No | tracking note value in this response. | |
| returned_count | No | Number of ads returned in this response. | |
| page_stop_reason | No | Machine-readable reason a short page stopped before the requested limit. | |
| tracking_enabled | No | tracking enabled value in this response. | |
| page_status_counts | No | Live, stopped and unknown delivery counts within this returned page. |