curl --request POST \
--url 'https://api.plyne.ai/v1/signals/leads' \
--header 'Authorization: Bearer plyne_...' \
--header 'Content-Type: application/json' \
--data '{
"signals": ["topic_engagement_signal"],
"sheet_ids": ["sheet_123"],
"lead_country_codes": ["US"],
"company_country_codes": ["US"],
"cursor": { "limit": 100 }
}'
{
"data": [
{
"id": "lead_123",
"full_name": "Sarah Carter",
"title": "Head of Engineering",
"country_code": "US",
"profile": {
"platform": "linkedin",
"url": "https://linkedin.com/in/sarah-carter"
},
"company": {
"id": "company_123",
"name": "Acme",
"domain": "acme.com",
"linkedin_url": "https://linkedin.com/company/acme",
"country_code": "US"
},
"sheet": {
"id": "sheet_123",
"name": "AI infrastructure buyers"
},
"signal": {
"id": "topic_engagement_signal",
"name": "Post Engagers",
"summary": "Engaged with relevant topic content recently",
"reason": "Sarah engaged with content related to cloud infrastructure modernization.",
"observed_at": "2026-06-15T08:00:00Z"
}
}
],
"cursor": {
"next": "",
"has_more": false
}
}
POST /v1/signals/leads
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your API key.
Body
Filter by the signal that explains why the lead is relevant. See Accepted Filter Values.
Example: [“topic_engagement_signal”]
Filter leads to one or more sheets configured in the dashboard.
Example: [“sheet_123”]
Return specific leads by ID.
Example: [“lead_123”]
Filter leads to one or more companies.
Example: [“company_123”]
Filter by lead country code using two-letter country codes. See Accepted Filter Values.
Example: [“US”, “GB”]
Filter by company country code using two-letter country codes. See Accepted Filter Values.
Example: [“US”, “CA”]
Restrict results to when the signal was observed.
Number of leads to return per page.
Example: 100
Opaque cursor returned as cursor.next from the previous response.