ArgorantDocs

Add people to a list

posthttps://app.argorant.com/api/v1/lists/{list_id}/items
POST
/api/v1/lists/{list_id}/items

People to add.

filters

Or add every match of this search.

Plain text across name, title, company and description. A request like "software companies selling to restaurants" is understood as the vendors, not the restaurants.

Job title. Knows abbreviations (CFO matches Chief Financial Officer). Comma means or.

Leave out people with these titles. Comma means or.

Comma-separated seniority levels.

Comma-separated departments.

Pipe-separated industries from GET /api/v1/lookups/industries.

One industry in plain words; industries is more exact.

Comma-separated words that describe what the company does, such as fintech or freight forwarding. They match the company's name, tags, industry and description. They do not match a person's own skills unless keyword_scope is people or any. The widest filter for niches without their own industry.

Pipe-separated technologies the company uses, from GET /api/v1/lookups/technologies.

Comma-separated company sizes.

Company name, matched as written (Deutsche Bank finds Deutsche Bank AG). Several companies: join the names with |, for example Stripe|Notion.

Company website domains. Comma means or.

Comma-separated countries or regions (Europe, DACH, Nordics, APAC, LATAM). Names from GET /api/v1/lookups/countries.

States or provinces, by name or code. Comma means or.

Cities. Comma means or.

Who the company sells to, for example restaurants or dentists.

What the company itself is, used with sells_to.

Only people with a phone number on record.

Only people with a profile URL.

Leave out people that keywords would find for these words. Same matching and the same keyword_scope as keywords. Comma means or.

company (default): only what the company does, that is its name, tags, industry and description. people: only the person's own skills and profile; use it when the user wants people who have a skill themselves, such as people who know Python. any: both, plus job titles.

words (default): every word must appear as a whole word, so Data does not match Database. exact: the whole job title must be one of the values, ignoring case, so CEO does not match Founder & CEO. contains: the text may appear anywhere, also inside a word; slower, for special cases.

Like title_match, for exclude_title only. When it is not set, title_match is used.

Leave out these seniority levels. Comma means or.

Leave out these departments. Comma means or.

Leave out these industries (pipe-separated, like industries).

Leave out industries in plain words, like industry. Comma means or.

Leave out people at these company website domains. Comma means or.

Leave out these countries or regions (Europe, DACH, Nordics, APAC, LATAM). Comma means or.

Leave out these states or provinces, by name or code. Comma means or.

Leave out these cities. Comma means or.

Smallest number of employees, such as 50 and 500. A company counts when its size range overlaps yours. Accepts 100 or 1k.

Largest number of employees (same overlap rule).

Yearly company revenue in US dollars, as bands. A comma means any of them.

Smallest yearly revenue in US dollars; a company counts when its revenue range overlaps yours. Accepts 250k, 1.5M or 2B.

Largest yearly revenue in US dollars (same overlap rule).

People within a distance of a place. Give the place (near_place) as a city or postal code, such as Denver, Colorado, or as a latitude and longitude, plus a distance (radius) and a unit. radius_target says whether the person's own location or their company's location counts. Answers 422 with the header X-Argorant-Filter-Not-Ready while this filter is still being added to every record (GET /api/v1/people/filters says which filters are ready).

Latitude of the center, with near_lon and radius, instead of near_place.

Longitude of the center.

Distance around the place, 0.5 to 500.

mi (default) or km.

person: where the person is based (default). company: where their company is based.

female or male, based on first name and country. Names used for both women and men are left out, so a gender filter finds fewer people than the same search without it. Not available for lending audiences. Answers 422 with the header X-Argorant-Filter-Not-Ready while this filter is still being added to every record (GET /api/v1/people/filters says which filters are ready).

Typical yearly pay in US dollars for the person's job, seniority and country, from public salary statistics. It is the usual pay for that role, not the person's own salary. People whose job title does not tell the role are left out. Not available for lending audiences. Comma means or. Answers 422 with the header X-Argorant-Filter-Not-Ready while this filter is still being added to every record (GET /api/v1/people/filters says which filters are ready).

Adds people to an existing list; people already in it are skipped. Send record_ids, or filters to add every match of a search, so "add the rest" is the same search again and only new people join. A large add, or an add to a list that is still filling, runs in the background after the fill before it (see GET /api/v1/lists/{list_id}/fill).

CostWhat it doesKey scopes
FreeWritesargorant:manage_lists

Authorization

BearerAuth
AuthorizationBearer <token>

Your API key from app.argorant.com/profile, sent as Authorization: Bearer <key>. A connector sign-in token (ag_mcp_...) works the same way.

In: header

Path Parameters

list_id*integer

The list id from create or list.

Header Parameters

Idempotency-Key?string

Any unique text up to 128 characters. A retry with the same key and the same body within 24 hours returns the first answer (with the header Idempotent-Replayed: true) instead of doing the work twice. The same key with another body answers 409 idempotency_conflict.

Lengthlength <= 128
X-Request-Id?string

Your own id for this request, 8 to 64 letters, digits, dot, dash or underscore. Returned as X-Request-Id; one is made for you when you send none.

Match^[A-Za-z0-9._-]{8,64}$

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

Shell
curl -X POST "https://app.argorant.com/api/v1/lists/312/items" \  -H "Idempotency-Key: 6f1c2e7a-run-42" \  -H "Content-Type: application/json" \  -d '{    "filters": {      "title": "CFO",      "country": "Switzerland"    }  }'
JSON
{  "list_id": 312,  "name": "DACH CFOs",  "added": 1204,  "duplicates": 18,  "item_count": 9616,  "summary": "1,222 people for \"DACH CFOs\" (list 312): 1,204 added, 18 already in it. The list now holds 9,616."}