Skip to content
Get Started

Create a contact

client.contacts.create(ContactCreateParams { number, assigned_to_email, assignedToEmail, 11 more } body, RequestOptionsoptions?): ContactCreateResponse { contact, status }
POST/api/v2/contacts

Create a new contact or update existing if update_if_exists is true

ParametersExpand Collapse
body: ContactCreateParams { number, assigned_to_email, assignedToEmail, 11 more }
number: string

Contact's phone number in E.164 format (preferred)

assigned_to_email?: string

Email of assigned user (preferred)

DeprecatedassignedToEmail?: string

Email of assigned user (deprecated, use assigned_to_email)

custom_variables?: Record<string, string>

Custom key-value pairs. Keys are human-readable labels; new labels are auto-created.

first_name?: string

Contact's first name (preferred)

DeprecatedfirstName?: string

Contact's first name (deprecated, use first_name)

last_name?: string

Contact's last name (preferred)

DeprecatedlastName?: string

Contact's last name (deprecated, use last_name)

Deprecatedphone_number?: string

Contact's phone number (deprecated, use number)

DeprecatedphoneNumber?: string

Contact's phone number (deprecated, use number)

sendblue_number?: string

Associated Sendblue phone number to send with (preferred)

DeprecatedsendblueNumber?: string

Associated Sendblue phone number (deprecated, use sendblue_number)

tags?: Array<string>

Tags for the contact

update_if_exists?: boolean

If true, updates the contact if it already exists

ReturnsExpand Collapse
ContactCreateResponse { contact, status }
contact?: Contact { assigned_to_email, company_name, created_at, 7 more }
assigned_to_email?: string

Email of assigned user

company_name?: string

Company name

created_at?: string

When the contact was created

formatdate-time
custom_variables?: Record<string, string>

Custom key-value pairs stored on the contact. Keys are human-readable labels.

first_name?: string

First name

last_name?: string

Last name

phone?: string

Phone number in E.164 format

sendblue_number?: string

Associated Sendblue phone number

tags?: Array<string>

Tags associated with the contact

verified?: boolean

Whether the contact is verified

status?: string

Create a contact

import SendblueAPI from 'sendblue';

const client = new SendblueAPI({
  apiKey: process.env['SENDBLUE_API_API_KEY'], // This is the default and can be omitted
  apiSecret: process.env['SENDBLUE_API_API_SECRET'], // This is the default and can be omitted
});

const contact = await client.contacts.create({ number: 'number' });

console.log(contact.contact);
{
  "contact": {
    "assigned_to_email": "[email protected]",
    "company_name": "Example Corp",
    "created_at": "2024-01-15T10:30:00Z",
    "custom_variables": {
      "Lead Source": "Website",
      "Plan": "Enterprise"
    },
    "first_name": "John",
    "last_name": "Doe",
    "phone": "+1234567890",
    "sendblue_number": "+1987654321",
    "tags": [
      "customer",
      "vip"
    ],
    "verified": true
  },
  "status": "OK"
}
Returns Examples
{
  "contact": {
    "assigned_to_email": "[email protected]",
    "company_name": "Example Corp",
    "created_at": "2024-01-15T10:30:00Z",
    "custom_variables": {
      "Lead Source": "Website",
      "Plan": "Enterprise"
    },
    "first_name": "John",
    "last_name": "Doe",
    "phone": "+1234567890",
    "sendblue_number": "+1987654321",
    "tags": [
      "customer",
      "vip"
    ],
    "verified": true
  },
  "status": "OK"
}