ReplySparrow Docs

Lead source agents

Create a source agent

Create a new source agent (the lead finder) in your workspace. It finds people matching your targeting through its signals, scores them (0-100) and imports the ones scoring at least min_lead_score into a list. Needs the campaigns:write scope. Free: lead finding is included in your plan.

A list is optional: send list_id to import into an existing list (create one first with POST /api/v1/lists); without it the agent gets a new list named Agent · <name>. The targeting is saved as a new version of your ICP. Your company profile (name, offer, value propositions) is copied from your workspace's latest ICP; the targeting fields come only from this request.

A source agent only finds leads. It is the same record as the outreach campaign of the same id under Campaigns, and it starts with outreach off. To source and reach out to leads automatically, give that campaign a sequence and a sender, then turn outreach on with PATCH /api/v1/campaigns/{id}/status.

Signals (signals): the agent finds leads through its signals. signals is optional; an agent without signals is accepted but has nothing to run. Each signal is a { "type", "values" } object and the values format depends on the type:

Signal typevalues
competitor_engagementLinkedIn company pages of competitors (people engaging with their posts)
influencer_engagementLinkedIn profiles of creators your buyers follow
own_content_engagementYour LinkedIn profile or company page
company_followersYour company page (followers; page admins only)
linkedin_importA Sales Navigator list or search URL
keyword_engagementTopics your buyers post about
tech_stackTechnologies to detect on matching companies' websites
lookalikeOptional: a keyword query for the lookalike search
hiringOptional: role keywords of the job openings to watch
fundingOptional: RSS feeds announcing funding rounds
existing_listIds of your lists whose contacts the agent adopts
job_change, top_active, new_decision_maker, hiring_surge, profile_visitorsnone
posthttps://app.replysparrow.com/api/v1/agents

Authorizations

Authorizationstringheaderrequired

Your API key from Settings → API, sent as Bearer <token>.

Body

application/json
namestringrequired

Agent name

list_idstring

Import leads into this existing list instead of a new one

Job titles of the people to find (up to 20). A single string is accepted as a one-item list.

Example: ["VP Sales","Head of Sales"]

Industries of their companies, as in List suggested industries. A single string is accepted as a one-item list.

Headcount brackets: 1-10, 11-50, 51-200, 201-500, 501-1000, 1001-5000, 5001-10000, 10001+. A single string is accepted as a one-item list.

Locations of the people, as in List suggested locations. A single string is accepted as a one-item list.

Company types: Private Company, Public Company, Startup, Non-profit, Government, Educational Institution. A single string is accepted as a one-item list.

Company names (or short title words) the agent never sources from. A single string is accepted as a one-item list.

A lead must mention at least one of these. A single string is accepted as a one-item list.

Drop agencies, consultancies, freelancers and B2B service companies (default false)

Skip the ICP (Ideal Customer Profile) filter: keep every lead the signals find, without scoring it (default false)

Minimum lead score, 0-100 (default 60). 75 means a lead needs a score of at least 75 out of 100.

Default: 60

signalsobject[]

Signals to watch

pausedboolean

Create the agent paused (default false: it starts finding leads)

Response

application/json

Agent created

idstringrequired

Agent id

namestringrequired

Agent name

signalsobject[]required

Where the agent looks for leads

pausedbooleanrequired

True when the agent is not finding leads

statusenum<string>required

draft, active or paused

Available options: draftactivepaused

min_lead_scorenumberrequired

Minimum lead score (0-100) a lead needs to be kept

created_atstring<date-time>required

Creation time

updated_atstring<date-time>required

Last change

Job titles of the people to find

Industries of their companies (see List suggested industries)

Company headcount brackets, e.g. 51-200

Where the people are (see List suggested locations)

Company types, e.g. Private Company, Startup

Companies (and title words) never to source from

A lead must mention one of these in headline, title, About or company

Drop agencies, consultancies, freelancers and other B2B service companies

Keep every lead the signals find, without scoring it against the ICP

list_idstring

List the agent imports its leads into

last_runstring<date-time>

When the agent last looked for leads

The last error the agent hit, if any

Create a source agent
curl --request POST \  --url https://app.replysparrow.com/api/v1/agents \  --header 'Authorization: Bearer <token>' \  --header 'Content-Type: application/json' \  --data '{  "name": "VP Sales in US SaaS",  "target_job_titles": [    "VP Sales",    "Head of Sales"  ],  "target_industries": [    "Software Development"  ],  "target_company_sizes": [    "51-200",    "201-500"  ],  "target_locations": [    "United States"  ],  "ignored_companies": [    "Globex"  ],  "exclude_service_providers": true,  "min_lead_score": 70,  "signals": [    {      "type": "competitor_engagement",      "values": [        "https://www.linkedin.com/company/globex/"      ]    },    {      "type": "job_change"    }  ]}'
{  "id": "5b0f3c2e-8a8e-4bd1-9a51-6f1f3c0f2a10",  "name": "VP Sales in US SaaS",  "target_job_titles": [    "VP Sales",    "Head of Sales"  ],  "target_industries": [    "Software Development"  ],  "target_company_sizes": [    "51-200",    "201-500"  ],  "target_locations": [    "United States"  ],  "target_company_types": [],  "ignored_companies": [    "Globex"  ],  "mandatory_keywords": [],  "exclude_service_providers": true,  "skip_icp_filter": false,  "signals": [    {      "id": "8e2d…",      "type": "competitor_engagement",      "values": [        "https://www.linkedin.com/company/globex/"      ],      "enabled": true    }  ],  "paused": false,  "status": "active",  "min_lead_score": 70,  "list_id": "c1a4…",  "last_run": null,  "last_error": null,  "created_at": "2026-10-24T09:12:44.000Z",  "updated_at": "2026-10-24T09:12:44.000Z"}