Overview
Creates a new contact with the specified information in the specified attribute groups.
JSON Parameters
| Name | Type | Description |
|---|---|---|
contactKey |
string | Primary address for the contact. You must provide either a value for contactKey or contactID. |
contactID |
string | Unique ID for the contact. You must provide either a value for contactKey or contactID. |
attributeSets |
array | Required. Array of information used to create a new contact |
attributeSets.name |
string | Required. Name of attribute group to which to add the contact information |
attributeSets.items |
array | Required. Array of items associated with the attribute group. Each item contains the values that define the contact's information for that group. |
attributeSets.items.values |
array | Required. Name and value pairs indicating the attribute and its applicable value within the item. |
Usage
To create a contact record, issue a POST request to the /contacts/v1/contacts endpoint.
Example Request
The request must include at least one of the attribute sets to create a new contact:
- Email Addresses (You must also include this attribute set if you include Email Demographics)
- MobileConnect Demographics (You must include a country code for the
Localevalue) - MobilePush Demographics (You must include an
ApplicationIDvalue) - LINE Addresses and LINE Subscriptions (You must also include these attribute sets if you include LINE Demographics)
Each request accepts only one instance of each attribute set.
You must also include values for contactKey and HTML Enabled.
Change @example.com to a valid domain.
Host: https://YOUR_SUBDOMAIN.rest.marketingcloudapis.com
POST /contacts/v1/contacts
Content-Type: application/json
Authorization: Bearer YOUR_ACCESS_TOKEN
{
"contactKey": "acruz@example.com",
"attributeSets": [{
"name": "Email Addresses",
"items": [{
"values": [{
"name": "Email Address",
"value": "acruz@example.com"
},
{
"name": "HTML Enabled",
"value": true
}]
}]
},
{
"name": "Email Demographics",
"items": [{
"values": [{
"name": "Last Name",
"value": "Cruz"
},
{
"name": "First Name",
"value": "Angela"
},
{
"name": "Text Profile Attribute",
"value": "value 1"
},
{
"name": "Number Profile Attribute",
"value": 12345
}]
}]
},
{
"name": "MobileConnect Demographics",
"items": [{
"values": [{
"name": "Mobile Number",
"value": "317-531-5555"
},
{
"name": "Locale",
"value": "US"
},
{
"name": "Status",
"value": 1
}]
}]
},
{
"name": "MobilePush Demographics",
"items": [{
"values": [{
"name": "Device ID",
"value": 958405948
},
{
"name": "Application",
"value": 958405948
}]
}]
},
{
"name": "GroupConnect LINE Addresses",
"items": [{
"values": [{
"name": "Address ID",
"value": "addressId_from_api"
}
]
}]
},
{
"name": "GroupConnect LINE Subscriptions",
"items": [{
"values": [{
"name": "Address ID",
"value": "addressId_from_api"
},
{
"name": "Channel ID",
"value": "1234567890"
}]
}]
},
{
"name": "GroupConnect LINE Demographics",
"items": [{
"values": [{
"name": "Address ID",
"value": "addressId_from_api"
},
{
"name": "Display Name",
"value": "display_name"
},
{
"name": "Picture Url",
"value": "picture_url"
},
{
"name": "Status Message",
"value": "status_message"
}]
}]
}
]
}
Example Response
After a successful request, the API returns a confirmation of the changes that were made.
200 (OK)
Content-Type: application/json
{
"operationStatus": "OK",
"rowsAffected": 1,
"contactKey": "acruz@example.com",
"contactId": 12345678,
"contactTypeID": 0,
"isNewContactKey": false,
"requestServiceMessageID": "8b51b524-28c1-46fc-9a44-02fca5b0a08c",
"hasErrors": false,
"resultMessages": [],
"serviceMessageID": "80676c59-ceb9-48aa-ad35-81e150094a17"
}
If the create request fails, the API returns an error response that includes information about the failure.
400 (Bad Request)
Content-Type: application/json
{
"operationStatus": "FAIL",
"rowsAffected": 0,
"requestServiceMessageID": "c37cff97-8930-4124-9b9d-921b688056bd",
"responseDateTime": "2026-07-15T12:54:33.4288209-06:00",
"hasErrors": true,
"resultMessages": [
{
"resultType": "Validation",
"resultClass": "Error",
"resultCode": "InvalidAttributeSet",
"message": "The AttributeSet 'Email Addresses' must contain an 'items' array. The 'items' property cannot be null."
}
],
"serviceMessageID": "5bbb662a-1d88-42a6-8331-896e0acb4d3b"
}