Create a single record in Shape. For high-volume ingestion you can also use the bulk import endpoint.
POSThttps://secure-api.setshape.com/api/add/new/lead/{crmid}
Replace
{crmid} with your Shape system ID — found on the API Integrations page. Every request also needs your auth header — see Using Shape APIs.Body parameters
Only firstname, lastname, and email are directly required. Add any other fields your account supports using their exact field names.
| Field | Requirement | Description |
|---|---|---|
firstname |
Required | First name. |
lastname |
Required | Last name. |
email |
Required | Email address. |
source or leadsource |
Optional | Origination source. If the named source does not exist, Shape can create it. Defaults to Open Api. |
recordtype |
Optional | Explicit record-type value; use a value returned by Get Record Types. |
| Account field mappings | Optional | Additional configured record values. |
Duplicate identical request bodies are blocked for 15 minutes.
Example request
curl -X POST https://secure-api.setshape.com/api/add/new/lead/{crmid}
-H "Authorization: {YOUR_API_AUTHORIZATION_KEY}"
-H "Content-Type: application/json"
-d '{
"firstname": "Jamie",
"lastname": "Example",
"email": "jamie@example.test"
}'
{
"firstname": "Jamie",
"lastname": "Example",
"email": "jamie@example.test"
}
Example response
{
"message": "Record successfully received.",
"recordId": 123,
"systemId": 6397
}
Finding field names
Field names come from your Marketing Sources settings:
Settings → Marketing Sources → Edit any Marketing Source → Campaign Source Post URL Instructions
Open a campaign and scroll to Campaign Source Post URL Instructions for a searchable table of every available field, exportable to CSV.