Skip to main content
A campaign normally waits for leads to arrive. But the sub-account already has a thousand contacts with the trigger tag from before the campaign existed. Backfill pushes them through the same entry the campaign uses for new leads, so they get the same call, window and cadence. This page is the GoHighLevel path, because it matches on tags. A sub-account that keeps its contacts here uses Put contacts into a campaign, which takes the contacts you name rather than a tag.

Prerequisites

  • A live campaign, on a live project, with activeTags set and a number on it. See Who gets called.
  • The contacts already carry every one of those tags in GoHighLevel. Backfill does not add tags; it finds contacts that have them.
  • A cadence on the campaign if its dialing is pd or s2l_pd. See Cadences, steps and the queue.
  • An API key with agents:write.

Step 1: Dry-run it

Call Enroll existing leads with dryRun: true:
Nothing is enrolled. The response tells you what would happen: Look at preview. If it contains people who should not be called, fix the tags in GoHighLevel first.

Step 2: Pick the moment

Enrolment respects the calling window, but it respects it immediately. On an s2l or s2l_pd campaign, enrolling a thousand contacts while the window is open starts dialling them now, one about every ten seconds, which is close to three hours for a thousand. On a pd campaign they enter the cadence at step one and are spaced out by it. If you want the calls spread over days, use a pd campaign or enrol in batches with limit.

Step 3: Enrol

Send the same request with dryRun: false. The response now reports what happened: enrolled is the count queued, statuses breaks the rest down, and skipped and preview are as before. limit caps one run. Because contacts already queued are skipped, you can run the same request again for the remainder until truncated is false.

Step 4: Watch the queue

Next steps