Developer docs menu

API reference / Leads

Leads API

39 endpoints. Scopes: Scalar360.leads.READ, .CREATE, .UPDATE, .DELETE or .ALL. All calls need Authorization: Scalar360-oauthtoken <access_token> — see Authentication.

GET

Get all leads

/api/leads

Scope: Scalar360.leads.READ

ParameterInTypeRequired
pagequeryintegerNo
pageSizequeryintegerNo
sizequeryintegerNo
qquerystring (default )No
searchquerystring (default )No
stagequerystring (default )No
startDatequerystring (date)No
endDatequerystring (date)No
sortByquerystringNo
sortDirquerystring (default desc)No
assigneequerystring (default )No
leadTypequerystring (default )No
priorityquerystring (default )No
dueDateStatusquerystring (default )No
dueStartDatequerystring (date)No
dueEndDatequerystring (date)No
minDealValuequerynumberNo
maxDealValuequerynumberNo
Example request
curl -X GET "https://api.scalar360.com/api/leads" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
POST

Create lead

/api/leads

Scope: Scalar360.leads.CREATE

Body fieldTypeRequiredNotes
namestringYesrequired
companyNamestring
phonestringYes
secondaryPhonestring
emailstring
gstinstring
billingAddressstring
shippingAddressstring
statestring
pinstring
sourcestring
leadTypestring
pipelineIdstring (uuid)
stagestring
dealValuenumber
followUpDatestring (date)
followUpTimestring
prioritystring
dueDatestring (date)
assignedTostring
notesstring
customFieldsmap of string
versioninteger
Example request
curl -X POST "https://api.scalar360.com/api/leads" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","phone":"string"}'
GET

Get lead by gid

/api/leads/{gid}

Scope: Scalar360.leads.READ

ParameterInTypeRequired
gidpathstring (uuid)Yes
Example request
curl -X GET "https://api.scalar360.com/api/leads/{gid}" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
PUT

Update lead

/api/leads/{gid}

Scope: Scalar360.leads.UPDATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
namestringYesrequired
companyNamestring
phonestring
secondaryPhonestring
emailstring
gstinstring
billingAddressstring
shippingAddressstring
statestring
pinstring
sourcestring
leadTypestring
pipelineIdstring (uuid)
stagestring
dealValuenumber
followUpDatestring (date)
followUpTimestring
prioritystring
dueDatestring (date)
assignedTostring
notesstring
customFieldsmap of string
versioninteger
Example request
curl -X PUT "https://api.scalar360.com/api/leads/{gid}" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","companyName":"string","phone":"string","secondaryPhone":"string","email":"string","gstin":"string"}'
DELETE

Delete lead

/api/leads/{gid}

Scope: Scalar360.leads.DELETE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Example request
curl -X DELETE "https://api.scalar360.com/api/leads/{gid}" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

List activities

/api/leads/{gid}/activities

Scope: Scalar360.leads.READ

ParameterInTypeRequired
gidpathstring (uuid)Yes
Example request
curl -X GET "https://api.scalar360.com/api/leads/{gid}/activities" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
POST

Add activity

/api/leads/{gid}/activities

Scope: Scalar360.leads.CREATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
typestringYesrequired, not blank
notestring
activityTimestring (date-time)
mentionsarray of string (uuid)
Example request
curl -X POST "https://api.scalar360.com/api/leads/{gid}/activities" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"type":"string"}'
DELETE

Delete activity

/api/leads/{gid}/activities/{activityGid}

Scope: Scalar360.leads.DELETE

ParameterInTypeRequired
gidpathstring (uuid)Yes
activityGidpathstring (uuid)Yes
Example request
curl -X DELETE "https://api.scalar360.com/api/leads/{gid}/activities/{activityGid}" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
PATCH

Assign lead

/api/leads/{gid}/assign

Scope: Scalar360.leads.UPDATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
assignedTostring
Example request
curl -X PATCH "https://api.scalar360.com/api/leads/{gid}/assign" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"assignedTo":"string"}'
POST

Convert to customer

/api/leads/{gid}/convert

Scope: Scalar360.leads.CREATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
modestring
customerIdstring (uuid)
Example request
curl -X POST "https://api.scalar360.com/api/leads/{gid}/convert" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode":"string","customerId":"3f1c2b9e-7a1d-4c3e-9b2a-1e5f6a7b8c9d"}'
GET

Preview conversion

/api/leads/{gid}/convert/preview

Scope: Scalar360.leads.READ

ParameterInTypeRequired
gidpathstring (uuid)Yes
Example request
curl -X GET "https://api.scalar360.com/api/leads/{gid}/convert/preview" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

List documents

/api/leads/{gid}/documents

Scope: Scalar360.leads.READ

ParameterInTypeRequired
gidpathstring (uuid)Yes
Example request
curl -X GET "https://api.scalar360.com/api/leads/{gid}/documents" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
POST

Upload document

/api/leads/{gid}/documents

Scope: Scalar360.leads.CREATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
activityIdquerystring (uuid)No

Request body: multipart/form-data with a file field.

Example request
curl -X POST "https://api.scalar360.com/api/leads/{gid}/documents" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -F "file=@/path/to/file"
DELETE

Delete document

/api/leads/{gid}/documents/{docGid}

Scope: Scalar360.leads.DELETE

ParameterInTypeRequired
gidpathstring (uuid)Yes
docGidpathstring (uuid)Yes
Example request
curl -X DELETE "https://api.scalar360.com/api/leads/{gid}/documents/{docGid}" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
POST

Email lead

/api/leads/{gid}/email

Scope: Scalar360.leads.CREATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
subjectquerystringYes
bodyquerystringNo

Request body: multipart/form-data with a file field.

Example request
curl -X POST "https://api.scalar360.com/api/leads/{gid}/email" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -F "file=@/path/to/file"
GET

Email tracking

/api/leads/{gid}/email-tracking

Scope: Scalar360.leads.READ

ParameterInTypeRequired
gidpathstring (uuid)Yes
Example request
curl -X GET "https://api.scalar360.com/api/leads/{gid}/email-tracking" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

Lead emails

/api/leads/{gid}/emails

Scope: Scalar360.leads.READ

ParameterInTypeRequired
gidpathstring (uuid)Yes
Example request
curl -X GET "https://api.scalar360.com/api/leads/{gid}/emails" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
POST

Complete follow up

/api/leads/{gid}/follow-up/complete

Scope: Scalar360.leads.CREATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
notestring
nextFollowUpDatestring (date)
nextFollowUpTimestring
Example request
curl -X POST "https://api.scalar360.com/api/leads/{gid}/follow-up/complete" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"note":"string","nextFollowUpDate":"2026-10-12","nextFollowUpTime":"string"}'
POST

Create meeting

/api/leads/{gid}/meetings

Scope: Scalar360.leads.CREATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
providerstring
topicstring
startTimestring (date-time)
durationMinutesinteger
agendastring
inviteLeadboolean
inviteUserIdsarray of string (uuid)
inviteEmailsarray of string
Example request
curl -X POST "https://api.scalar360.com/api/leads/{gid}/meetings" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"provider":"string","topic":"string","startTime":"2026-10-12T09:30:00Z","durationMinutes":1,"agenda":"string","inviteLead":true}'
PATCH

Update stage

/api/leads/{gid}/stage

Scope: Scalar360.leads.UPDATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
stagestringYesrequired
Example request
curl -X PATCH "https://api.scalar360.com/api/leads/{gid}/stage" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"stage":"string"}'
GET

List tasks

/api/leads/{gid}/tasks

Scope: Scalar360.leads.READ

ParameterInTypeRequired
gidpathstring (uuid)Yes
Example request
curl -X GET "https://api.scalar360.com/api/leads/{gid}/tasks" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
POST

Add task

/api/leads/{gid}/tasks

Scope: Scalar360.leads.CREATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
titlestringYesrequired, not blank
descriptionstring
dueAtstring (date-time)
assignedTostring (uuid)
statusstring
Example request
curl -X POST "https://api.scalar360.com/api/leads/{gid}/tasks" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title":"string"}'
PATCH

Update task

/api/leads/{gid}/tasks/{taskGid}

Scope: Scalar360.leads.UPDATE

ParameterInTypeRequired
gidpathstring (uuid)Yes
taskGidpathstring (uuid)Yes
Body fieldTypeRequiredNotes
titlestringYesrequired, not blank
descriptionstring
dueAtstring (date-time)
assignedTostring (uuid)
statusstring
Example request
curl -X PATCH "https://api.scalar360.com/api/leads/{gid}/tasks/{taskGid}" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title":"string","description":"string","dueAt":"2026-10-12T09:30:00Z","assignedTo":"3f1c2b9e-7a1d-4c3e-9b2a-1e5f6a7b8c9d","status":"string"}'
DELETE

Delete task

/api/leads/{gid}/tasks/{taskGid}

Scope: Scalar360.leads.DELETE

ParameterInTypeRequired
gidpathstring (uuid)Yes
taskGidpathstring (uuid)Yes
Example request
curl -X DELETE "https://api.scalar360.com/api/leads/{gid}/tasks/{taskGid}" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
PATCH

Bulk assign leads

/api/leads/bulk-assign

Scope: Scalar360.leads.UPDATE

Body fieldTypeRequiredNotes
gidsarray of string (uuid)Yesrequired, not empty
assignedTostring
Example request
curl -X PATCH "https://api.scalar360.com/api/leads/bulk-assign" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"gids":["3f1c2b9e-7a1d-4c3e-9b2a-1e5f6a7b8c9d"],"assignedTo":"string"}'
GET

Email sender

/api/leads/email-sender

Scope: Scalar360.leads.READ

Example request
curl -X GET "https://api.scalar360.com/api/leads/email-sender" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

Get overdue follow ups

/api/leads/followups/overdue

Scope: Scalar360.leads.READ

ParameterInTypeRequired
pagequeryintegerNo
pageSizequeryintegerNo
sizequeryintegerNo
qquerystring (default )No
searchquerystring (default )No
startDatequerystring (date)No
endDatequerystring (date)No
sortByquerystringNo
sortDirquerystring (default asc)No
Example request
curl -X GET "https://api.scalar360.com/api/leads/followups/overdue" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

Get today follow ups

/api/leads/followups/today

Scope: Scalar360.leads.READ

ParameterInTypeRequired
pagequeryintegerNo
pageSizequeryintegerNo
sizequeryintegerNo
qquerystring (default )No
searchquerystring (default )No
startDatequerystring (date)No
endDatequerystring (date)No
sortByquerystringNo
sortDirquerystring (default asc)No
Example request
curl -X GET "https://api.scalar360.com/api/leads/followups/today" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

Get upcoming follow ups

/api/leads/followups/upcoming

Scope: Scalar360.leads.READ

ParameterInTypeRequired
pagequeryintegerNo
pageSizequeryintegerNo
sizequeryintegerNo
qquerystring (default )No
searchquerystring (default )No
startDatequerystring (date)No
endDatequerystring (date)No
sortByquerystringNo
sortDirquerystring (default asc)No
Example request
curl -X GET "https://api.scalar360.com/api/leads/followups/upcoming" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
POST

Import leads

/api/leads/import

Scope: Scalar360.leads.CREATE

ParameterInTypeRequired
pipelinequerystring (uuid)No

Request body: multipart/form-data with a file field.

Example request
curl -X POST "https://api.scalar360.com/api/leads/import" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN" \
  -F "file=@/path/to/file"
GET

Template csv

/api/leads/import/template.csv

Scope: Scalar360.leads.READ

Example request
curl -X GET "https://api.scalar360.com/api/leads/import/template.csv" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

Template xlsx

/api/leads/import/template.xlsx

Scope: Scalar360.leads.READ

Example request
curl -X GET "https://api.scalar360.com/api/leads/import/template.xlsx" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

Meeting providers

/api/leads/integrations/meetings

Scope: Scalar360.leads.READ

Example request
curl -X GET "https://api.scalar360.com/api/leads/integrations/meetings" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

List meetings

/api/leads/meetings

Scope: Scalar360.leads.READ

ParameterInTypeRequired
tabquerystring (default today)No
qquerystring (default )No
pagequeryinteger (default 1)No
pageSizequeryinteger (default 10)No
Example request
curl -X GET "https://api.scalar360.com/api/leads/meetings" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

Get pipeline

/api/leads/pipeline

Scope: Scalar360.leads.READ

ParameterInTypeRequired
pipelinequerystring (uuid)No
Example request
curl -X GET "https://api.scalar360.com/api/leads/pipeline" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

List pipeline leads

/api/leads/pipeline/list

Scope: Scalar360.leads.READ

ParameterInTypeRequired
pipelinequerystring (uuid)No
pagequeryinteger (default 1)No
pageSizequeryinteger (default 10)No
qquerystring (default )No
startDatequerystring (date)No
endDatequerystring (date)No
sortByquerystringNo
sortDirquerystring (default desc)No
assigneequerystring (default )No
leadTypequerystring (default )No
priorityquerystring (default )No
dueDateStatusquerystring (default )No
dueStartDatequerystring (date)No
dueEndDatequerystring (date)No
minDealValuequerynumberNo
maxDealValuequerynumberNo
Example request
curl -X GET "https://api.scalar360.com/api/leads/pipeline/list" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

Get leads by stage

/api/leads/stage/{stage}

Scope: Scalar360.leads.READ

ParameterInTypeRequired
stagepathstringYes
pipelinequerystring (uuid)No
pagequeryintegerNo
pageSizequeryintegerNo
qquerystring (default )No
startDatequerystring (date)No
endDatequerystring (date)No
assigneequerystring (default )No
leadTypequerystring (default )No
priorityquerystring (default )No
dueDateStatusquerystring (default )No
dueStartDatequerystring (date)No
dueEndDatequerystring (date)No
minDealValuequerynumberNo
maxDealValuequerynumberNo
Example request
curl -X GET "https://api.scalar360.com/api/leads/stage/{stage}" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"
GET

My tasks

/api/leads/tasks/mine

Scope: Scalar360.leads.READ

Example request
curl -X GET "https://api.scalar360.com/api/leads/tasks/mine" \
  -H "Authorization: Scalar360-oauthtoken $ACCESS_TOKEN"