API reference

Leads and deals

The sales pipeline: leads, deals and their activities.

The pipeline's stages

GET /sales/stages Leads, deals and proposals: read

Example

curl https://app.msmepulse.com/api/v1/sales/stages \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN"

Answers 200 with the same data the MSMEPulse web app shows for it.

List leads

GET /sales/leads Leads, deals and proposals: read

Example

curl https://app.msmepulse.com/api/v1/sales/leads \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN"

Answers 200 with the same data the MSMEPulse web app shows for it.

Add a lead

POST /sales/leads Leads, deals and proposals: read and write

Request body

FieldTypeRequiredNotes
namestringYes2–80 characters
companystringup to 120 characters
email"" or string
phonestringup to 30 characters
designationstringup to 60 characters
source"referral" | "website" | "social" | "event" | "outreach" | "partner" | "existing_client" | "marketplace" | "other"Yes
sourceDetailstringup to 120 characters
ownerIdstring or null
estimatedValueinteger or null0 to …
currency"INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD"
status"new" | "contacted" | "qualified" | "unqualified"default "new"
unqualifiedReasonstringup to 300 characters
needstringup to 2000 characters
nextFollowUp"" or string or null

Example

curl -X POST https://app.msmepulse.com/api/v1/sales/leads \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"Nova Retail Pvt Ltd","source":"referral"}'

Answers 200 with the same data the MSMEPulse web app shows for it.

Get a lead

GET /sales/leads/{id} Leads, deals and proposals: read

id

Example

curl https://app.msmepulse.com/api/v1/sales/leads/{id} \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN"

Answers 200 with the same data the MSMEPulse web app shows for it.

Update a lead

PATCH /sales/leads/{id} Leads, deals and proposals: read and write

id

Request body

Send only the fields to change.

FieldTypeRequiredNotes
namestring2–80 characters
companystringup to 120 characters
email"" or string
phonestringup to 30 characters
designationstringup to 60 characters
source"referral" | "website" | "social" | "event" | "outreach" | "partner" | "existing_client" | "marketplace" | "other"
sourceDetailstringup to 120 characters
ownerIdstring or null
estimatedValueinteger or null0 to …
currency"INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD"
status"new" | "contacted" | "qualified" | "unqualified"default "new"
unqualifiedReasonstringup to 300 characters
needstringup to 2000 characters
nextFollowUp"" or string or null

Example

curl -X PATCH https://app.msmepulse.com/api/v1/sales/leads/{id} \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"name":"Nova Retail Pvt Ltd","company":"company value","email":""}'

Answers 200 with the same data the MSMEPulse web app shows for it.

Delete a lead

DELETE /sales/leads/{id} Leads, deals and proposals: read and write

id

Example

curl -X DELETE https://app.msmepulse.com/api/v1/sales/leads/{id} \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN"

Answers 200 with the same data the MSMEPulse web app shows for it.

Convert a lead into a client and deal

POST /sales/leads/{id}/convert Leads, deals and proposals: read and write

id

Request body

FieldTypeRequiredNotes
clientIdstring or null
clientNamestringup to 120 characters
clientType"business" | "individual"default "business"
countrystring
statestringup to 4 characters
gstinstringup to 15 characters
dealTitlestringYes2–120 characters
valueinteger0 to … · default 0
currency"INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD"
stageKeystringup to 40 characters
expectedClose"" or string or null

Example

curl -X POST https://app.msmepulse.com/api/v1/sales/leads/{id}/convert \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"dealTitle":"dealTitle value"}'

Answers 200 with the same data the MSMEPulse web app shows for it.

List deals

GET /sales/deals Leads, deals and proposals: read

Example

curl https://app.msmepulse.com/api/v1/sales/deals \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN"

Answers 200 with the same data the MSMEPulse web app shows for it.

Add a deal

POST /sales/deals Leads, deals and proposals: read and write

Request body

FieldTypeRequiredNotes
titlestringYes2–120 characters
clientIdstringYesat least 1 characters
contactNamestringup to 80 characters
contactEmail"" or string
contactPhonestringup to 30 characters
ownerIdstring or null
valueinteger0 to … · default 0
currency"INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD"
stageKeystringup to 40 characters
expectedClose"" or string or null
source"referral" | "website" | "social" | "event" | "outreach" | "partner" | "existing_client" | "marketplace" | "other"
notesstringup to 2000 characters

Example

curl -X POST https://app.msmepulse.com/api/v1/sales/deals \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title":"Website rebuild","clientId":"65f0c2a1b4e8d9f0a1b2c3d4"}'

Answers 200 with the same data the MSMEPulse web app shows for it.

Get a deal

GET /sales/deals/{id} Leads, deals and proposals: read

id

Example

curl https://app.msmepulse.com/api/v1/sales/deals/{id} \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN"

Answers 200 with the same data the MSMEPulse web app shows for it.

Update a deal

PATCH /sales/deals/{id} Leads, deals and proposals: read and write

id

Request body

Send only the fields to change.

FieldTypeRequiredNotes
titlestring2–120 characters
clientIdstringat least 1 characters
contactNamestringup to 80 characters
contactEmail"" or string
contactPhonestringup to 30 characters
ownerIdstring or null
valueinteger0 to … · default 0
currency"INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD"
stageKeystringup to 40 characters
expectedClose"" or string or null
source"referral" | "website" | "social" | "event" | "outreach" | "partner" | "existing_client" | "marketplace" | "other"
notesstringup to 2000 characters

Example

curl -X PATCH https://app.msmepulse.com/api/v1/sales/deals/{id} \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title":"Website rebuild","clientId":"65f0c2a1b4e8d9f0a1b2c3d4","contactName":"contactName value"}'

Answers 200 with the same data the MSMEPulse web app shows for it.

Delete a deal

DELETE /sales/deals/{id} Leads, deals and proposals: read and write

id

Example

curl -X DELETE https://app.msmepulse.com/api/v1/sales/deals/{id} \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN"

Answers 200 with the same data the MSMEPulse web app shows for it.

Move a deal to another stage (won, lost…)

POST /sales/deals/{id}/move Leads, deals and proposals: read and write

id

Request body

FieldTypeRequiredNotes
stageKeystringYes1–40 characters
ordernumber
reasonstringup to 40 characters
reasonNotestringup to 500 characters

Example

curl -X POST https://app.msmepulse.com/api/v1/sales/deals/{id}/move \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"stageKey":"stageKey value"}'

Answers 200 with the same data the MSMEPulse web app shows for it.

Log a call, meeting or follow-up on a lead or deal

POST /sales/{type}/{id}/activities Leads, deals and proposals: read and write

type: leads or deals · id

Request body

FieldTypeRequiredNotes
kind"note" | "call" | "meeting" | "email" | "follow_up"Yes
bodystringup to 2000 characters
dueDate"" or string or null

Example

curl -X POST https://app.msmepulse.com/api/v1/sales/leads/{id}/activities \
  -H "Authorization: Bearer $MSMEPULSE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"kind":"note"}'

Answers 200 with the same data the MSMEPulse web app shows for it.