Create or Update Contact

This endpoint uses upsert behaviour — if a contact with the given phone number already exists, it updates the provided fields. Otherwise, it creates a new contact.

POST/v2.0/contacts

Request Parameters

Body Parameters

ParameterTypeDescription
phonestringPhone number — local or full international format
countryCodestringCountry code to prepend if phone is local
contactNamestringFull name of the contact
emailstringEmail address
platformstringContact platformDefault: whatsapp
businessNamestringCompany / business name
addressLine1stringAddress line 1
addressLine2stringAddress line 2
citystringCity
statestringState / Province
postalCodestringPostal / ZIP code
countrystringCountry
sourcestringLead sourceDefault: api
notesstringFree-form notes
lead_categorystringLead category (must match a category in your dashboard)
customFieldsobjectKey-value pairs for custom contact attributes

Code Examples

curl -X POST https://api.sendiee.com/v2.0/contacts \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "phone": "919876543210",
    "contactName": "Priya Sharma",
    "email": "[email protected]",
    "city": "Mumbai",
    "lead_category": "Interested",
    "customFields": {
      "shopify_customer_id": "cust_12345",
      "preferred_language": "Hindi",
      "order_count": 5
    }
  }'

Response

Created (201)

{
  "success": true,
  "message": "Contact created successfully",
  "data": {
    "_id": "664abc...",
    "phone": "919876543210",
    "contactName": "Priya Sharma",
    "isNew": true
  }
}

Updated (200)

{
  "success": true,
  "message": "Contact updated successfully",
  "data": {
    "_id": "664abc...",
    "phone": "919876543210",
    "contactName": "Priya Sharma",
    "isNew": false
  }
}

Try It

Try it — API Playground