ArgorantDocs

Read the personal lines

gethttps://app.argorant.com/api/v1/campaigns/{campaign_id}/personalization
GET
/api/v1/campaigns/{campaign_id}/personalization

The campaign's personal-line variables, how many people have their own line, and the people who still use the fallback, the ones sent first first, with facts about their company to write from. Page through all of them with cursor. A person whose company has no description yet carries description_status: "pending": Argorant is reading the company website, so write that line after the next call, not from keywords alone (descriptions_pending counts them). "unavailable" means the website gave nothing usable. limits lists every limit of personal lines: variables per campaign, instruction and line length, people per call and per page, file size, and calls per hour.

CostWhat it doesKey scopes
FreeReads onlyargorant:read_counts

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

campaign_id*string

The campaign id from create or list.

Formatuuid

Query Parameters

pending_limit?integer

People still on the fallback to return, 0 to 5,000 (default 25). With company facts, 100 to 200 at a time is easier to work with.

Range0 <= value <= 5000
Default25
cursor?string

The next_cursor of the answer before: continues after its last person, in the same order.

pending_offset?integer

Skip this many of them (the cursor is better for long lists).

Default0
include_facts?boolean

Add company facts (default true).

Defaulttrue

Header Parameters

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}$

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

Shell
curl -X GET "https://app.argorant.com/api/v1/campaigns/7f3a2c1e-9b4d-4e8a-a1c2-5d6e7f8a9b0c/personalization"
JSON
{  "campaign_id": "7f3a2c1e-9b4d-4e8a-a1c2-5d6e7f8a9b0c",  "configured": true,  "personalization": {    "variables": [      {        "name": "custom_opener",        "instruction": "One sentence about something recent at their company.",        "fallback": "Hope the quarter is going well.",        "max_length": 150,        "case": "auto",        "case_in_use": "as_is"      }    ]  },  "progress": {    "total": 1188,    "written": 412,    "fallback": 776  },  "pending_leads": [    {      "lead_id": "0c9d8e7f-6a5b-4c3d-8e2f-1a0b9c8d7e6f",      "email": "jane.doe@example-acme.com",      "company": "Acme",      "facts": {        "industry": "Manufacturing",        "city": "Munich"      }    }  ],  "next_cursor": "WyIiLCIyMDI2LTEwLTIxVDA5OjAwOjAwKzAwOjAwIiwiMGM5ZDhlN2YiXQ",  "summary": "412 of 1,188 contacts have their own line; the rest send with the fallback.",  "limits": {    "variables_per_campaign": 5,    "instruction_characters": 4000,    "line_characters": {      "min": 20,      "max": 300,      "default": 150    },    "template_characters": 10000,    "basis_characters": 200,    "contacts_per_call": 5000,    "contacts_per_status_page": 5000,    "file_rows": 200000,    "file_megabytes": 50,    "file_rows_written_at_once": 5000,    "calls_per_hour": {      "setup": 30,      "write": 300,      "status": 300,      "file": 30    }  }}