Leads

People or companies that have shown interest and are not yet customers.

#List leads

GET/api/v1/leads

Operation list_leads · needs scope leads:read

ParameterInTypeNotes
limitqueryintegerPage size, at most 100.
cursorquerystringpagination.nextCursor from the previous page.
sortquery-updated_at | updated_at | -created_at | created_atSort order. A leading minus sorts descending.
updated_sincequerydatetimeOnly records updated at or after this instant.
qquerystringFree-text search over the object's main columns.
statusquerystringOnly records whose status equals this.
sourcequerystringOnly records whose source equals this.
ownerquerystringOnly records whose owner equals this.
personquerystringOnly records linked to this person (public id).
companyquerystringOnly records linked to this company (public id).
bash
curl https://synconone.com/api/v1/leads \
  -H "Authorization: Bearer sk_live_YOUR_KEY"
json
{
  "data": [
    {
      "id": "pr_1a2b3c4d5e6f7a8b",
      "object": "string",
      "person": "string",
      "company": "string",
      "title": "Annual plan renewal",
      "status": "new",
      "source": "website",
      "owner": "string",
      "score_band": "hot",
      "score_total": 1
    }
  ],
  "pagination": {
    "nextCursor": null,
    "hasMore": false
  }
}

Errors: 401: Missing, invalid, revoked or expired API key. · 403: The key lacks the scope, or its role cannot do this. · 422: Validation failed. · 429: Rate limited. Honour Retry-After.. See errors.

#Create a lead

POST/api/v1/leads

Operation create_lead · needs scope leads:write

Built-in and custom fields by key. Relations take public ids.

Body fieldTypeNotes
personstringCustomer
companystringCompany
titlestringTitle
statusnew | working | qualified | meeting | converted | disqualifiedStatus
sourcewebsite | manual | import | conversationSource
ownerstringOwner
estimated_value_centsnumberEstimated value
requirementsstringWhat they need
campaignstringCampaign
descriptionstringNotes
next_action_atstringNext action
lost_reasonstringReason
bash
curl -X POST https://synconone.com/api/v1/leads \
  -H "Authorization: Bearer sk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"person":"string","company":"string","title":"Annual plan renewal","status":"new","source":"website"}'
json
{
  "data": {
    "id": "pr_1a2b3c4d5e6f7a8b",
    "object": "string",
    "person": "string",
    "company": "string",
    "title": "Annual plan renewal",
    "status": "new",
    "source": "website",
    "owner": "string",
    "score_band": "hot",
    "score_total": 1
  }
}

Errors: 401: Missing, invalid, revoked or expired API key. · 403: The key lacks the scope, or its role cannot do this. · 409: Conflict, approval required, or idempotent request in progress. · 422: Validation failed. · 429: Rate limited. Honour Retry-After.. See errors.

#Get a lead

GET/api/v1/leads/{id}

Operation get_lead · needs scope leads:read

ParameterInTypeNotes
id requiredpathstringPublic id of the lead.
bash
curl https://synconone.com/api/v1/leads/pr_1a2b3c4d5e6f7a8b \
  -H "Authorization: Bearer sk_live_YOUR_KEY"
json
{
  "data": {
    "id": "pr_1a2b3c4d5e6f7a8b",
    "object": "string",
    "person": "string",
    "company": "string",
    "title": "Annual plan renewal",
    "status": "new",
    "source": "website",
    "owner": "string",
    "score_band": "hot",
    "score_total": 1
  }
}

Errors: 401: Missing, invalid, revoked or expired API key. · 403: The key lacks the scope, or its role cannot do this. · 404: Not found, or not visible to this key. · 422: Validation failed. · 429: Rate limited. Honour Retry-After.. See errors.

#Update a lead

PATCH/api/v1/leads/{id}

Operation update_lead · needs scope leads:write

Only the keys sent are changed. Fields are applied in order; the first refusal stops the request and details.applied lists what was already changed.

ParameterInTypeNotes
id requiredpathstringPublic id of the lead.
Body fieldTypeNotes
companystringCompany
titlestringTitle
statusnew | working | qualified | meeting | converted | disqualifiedStatus
sourcewebsite | manual | import | conversationSource
ownerstringOwner
estimated_value_centsnumberEstimated value
requirementsstringWhat they need
campaignstringCampaign
descriptionstringNotes
next_action_atstringNext action
lost_reasonstringReason
bash
curl -X PATCH https://synconone.com/api/v1/leads/pr_1a2b3c4d5e6f7a8b \
  -H "Authorization: Bearer sk_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"company":"string","title":"Annual plan renewal","status":"new","source":"website","owner":"string"}'
json
{
  "data": {
    "id": "pr_1a2b3c4d5e6f7a8b",
    "object": "string",
    "person": "string",
    "company": "string",
    "title": "Annual plan renewal",
    "status": "new",
    "source": "website",
    "owner": "string",
    "score_band": "hot",
    "score_total": 1
  }
}

Errors: 401: Missing, invalid, revoked or expired API key. · 403: The key lacks the scope, or its role cannot do this. · 404: Not found, or not visible to this key. · 409: Conflict, approval required, or idempotent request in progress. · 422: Validation failed. · 429: Rate limited. Honour Retry-After.. See errors.

#Archive a lead

DELETE/api/v1/leads/{id}

Operation archive_lead · needs scope leads:write

Archives the record (it can be restored in the app). Nothing is destroyed.

ParameterInTypeNotes
id requiredpathstringPublic id of the lead.
bash
curl -X DELETE https://synconone.com/api/v1/leads/pr_1a2b3c4d5e6f7a8b \
  -H "Authorization: Bearer sk_live_YOUR_KEY"
json
{
  "data": {
    "id": "pr_1a2b3c4d5e6f7a8b",
    "object": "string",
    "archived": true
  }
}

Errors: 401: Missing, invalid, revoked or expired API key. · 403: The key lacks the scope, or its role cannot do this. · 404: Not found, or not visible to this key. · 422: Validation failed. · 429: Rate limited. Honour Retry-After.. See errors.