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
| Field | Type | Required | Notes |
|---|---|---|---|
name | string | Yes | 2–80 characters |
company | string | up to 120 characters | |
email | "" or string | ||
phone | string | up to 30 characters | |
designation | string | up to 60 characters | |
source | "referral" | "website" | "social" | "event" | "outreach" | "partner" | "existing_client" | "marketplace" | "other" | Yes | |
sourceDetail | string | up to 120 characters | |
ownerId | string or null | ||
estimatedValue | integer or null | 0 to … | |
currency | "INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD" | ||
status | "new" | "contacted" | "qualified" | "unqualified" | default "new" | |
unqualifiedReason | string | up to 300 characters | |
need | string | up 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.
| Field | Type | Required | Notes |
|---|---|---|---|
name | string | 2–80 characters | |
company | string | up to 120 characters | |
email | "" or string | ||
phone | string | up to 30 characters | |
designation | string | up to 60 characters | |
source | "referral" | "website" | "social" | "event" | "outreach" | "partner" | "existing_client" | "marketplace" | "other" | ||
sourceDetail | string | up to 120 characters | |
ownerId | string or null | ||
estimatedValue | integer or null | 0 to … | |
currency | "INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD" | ||
status | "new" | "contacted" | "qualified" | "unqualified" | default "new" | |
unqualifiedReason | string | up to 300 characters | |
need | string | up 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
| Field | Type | Required | Notes |
|---|---|---|---|
clientId | string or null | ||
clientName | string | up to 120 characters | |
clientType | "business" | "individual" | default "business" | |
country | string | ||
state | string | up to 4 characters | |
gstin | string | up to 15 characters | |
dealTitle | string | Yes | 2–120 characters |
value | integer | 0 to … · default 0 | |
currency | "INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD" | ||
stageKey | string | up 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
| Field | Type | Required | Notes |
|---|---|---|---|
title | string | Yes | 2–120 characters |
clientId | string | Yes | at least 1 characters |
contactName | string | up to 80 characters | |
contactEmail | "" or string | ||
contactPhone | string | up to 30 characters | |
ownerId | string or null | ||
value | integer | 0 to … · default 0 | |
currency | "INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD" | ||
stageKey | string | up to 40 characters | |
expectedClose | "" or string or null | ||
source | "referral" | "website" | "social" | "event" | "outreach" | "partner" | "existing_client" | "marketplace" | "other" | ||
notes | string | up 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.
| Field | Type | Required | Notes |
|---|---|---|---|
title | string | 2–120 characters | |
clientId | string | at least 1 characters | |
contactName | string | up to 80 characters | |
contactEmail | "" or string | ||
contactPhone | string | up to 30 characters | |
ownerId | string or null | ||
value | integer | 0 to … · default 0 | |
currency | "INR" | "SGD" | "USD" | "EUR" | "GBP" | "AED" | "AUD" | "MYR" | "CAD" | "CHF" | "HKD" | "NZD" | ||
stageKey | string | up to 40 characters | |
expectedClose | "" or string or null | ||
source | "referral" | "website" | "social" | "event" | "outreach" | "partner" | "existing_client" | "marketplace" | "other" | ||
notes | string | up 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
| Field | Type | Required | Notes |
|---|---|---|---|
stageKey | string | Yes | 1–40 characters |
order | number | ||
reason | string | up to 40 characters | |
reasonNote | string | up 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
| Field | Type | Required | Notes |
|---|---|---|---|
kind | "note" | "call" | "meeting" | "email" | "follow_up" | Yes | |
body | string | up 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.