Skip to main content
POST
Count which selected prompts a bulk action applies to
Every bulk action takes a selection and works through it in batches:
  • selection is either { mode: "ids", ids: [promptId, ...] } or { mode: "all", filters: { ... }, excludedIds: [...] } (every prompt matching the filters, minus the excluded ids). Filters: platform, competitor, country, startDate, endDate, promptBrand, tracking, intent, search.
  • Call POST /v3/ai-tracker/prompts/bulk-preview with the selection and an action first. It changes nothing and returns eligibility: { selected, eligible, skipped, byReason }, e.g. prompts skipped because they are already tracked or still running.
Each call processes one batch of eligible prompts and returns { success, succeeded, failed, nextCursor, eligibility, results }. While nextCursor is not null, call again with the same selection and afterId set to nextCursor. results has one entry per prompt with id, success and error when it failed. Refresh and set-regions results also carry enqueued, plus runUnits or skipped. For a single prompt, use Update a Prompt, Delete a Prompt or Refresh a Prompt.

Authorizations

Authorization
string
header
required

Your SnowSEO API key (sk_...).

Body

application/json
selection
object
required
action
enum<string>
required

The bulk action to count eligible rows for.

Available options:
track,
untrack,
refresh,
set-regions,
delete
teamId
string
enqueue
boolean

When false, saves the change without running the prompts now. Tracked prompts are still picked up by the scheduled refresh, which bills for them.

regions
(object | null)[]

Response

Default Response

eligibility
object