Lead source agents
Update a source agent
Update a source agent by id. Only the fields sent are changed. signals replaces the whole signal list: to add or edit one signal, send the full list returned by GET /api/v1/agents/{id} with your change applied. Signal values follow the same per-type formats as POST /api/v1/agents. Needs the campaigns:write scope.
- Any targeting field saves a new ICP version for the agent; targeting fields you do not send keep their values.
paused: truestops lead finding,paused: falseresumes it. Outreach is managed under Campaigns.list_idsends new leads to another list; the old list and its contacts stay.
https://app.replysparrow.com/api/v1/agents/{id}Authorizations
Path Parameters
Agent id
Body
application/jsonAgent name
Import new leads into this list from now on
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
The agent's signals. Replaces the whole list: send every signal to keep, not only new or changed ones, with the same per-type values formats as Create a source agent.
true pauses lead finding, false resumes it
Response
application/jsonAgent updated
Agent id
Agent name
Where the agent looks for leads
True when the agent is not finding leads
Minimum lead score (0-100) a lead needs to be kept
Creation time
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 the agent imports its leads into
When the agent last looked for leads
The last error the agent hit, if any
curl --request PATCH \ --url https://app.replysparrow.com/api/v1/agents/string \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "target_locations": [ "United States", "Canada" ], "min_lead_score": 80, "paused": false}'{ "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"}