Skip to content
POST /unified/marketing-automation/contacts

Query Parameters

Refer Specifying query parameters in Truto APIs

list_idstring

The list's unique identifier

1 supported1 required
Mailchimp
required
Show Truto-specific parameters
integrated_account_idstring · uuid
required·

The ID of the integrated account to use for the request.

Example: 62f44730-dd91-461e-bd6a-aedd9e0ad79d
truto_response_formatstring

The format of the response.

  • unified returns the response with unified mappings applied.
  • raw returns the unprocessed, raw response from the remote API.
  • normalized applies the unified mappings and returns the data in a normalized format.
  • stream returns the response as a stream, which is ideal for transmitting large datasets, files, or binary data. Using streaming mode helps to efficiently handle large payloads or real-time data flows without requiring the entire data to be buffered in memory.

Defaults to unified.

Example: unified
Possible values:
unifiedrawnormalizedstream
truto_ignore_remote_databoolean

Excludes the remote_data attribute from the response.

truto_exclude_fieldsstring[]

Array of fields to exclude from the response.

Example: truto_exclude_fields[]=id&truto_exclude_fields[]=name
remote_queryRecord<string, any>

Query parameters to pass to the underlying API without any transformations. Refer this guide to see how to structure the query parameters.

Example: remote_query[foo]=bar

Request Body

Refer Writing data using Unified APIs

addressesobject[]

The contact's addresses

1 supported
Mailchimp
supported
citystring

The contact's city

countrystring

The contact's country

postal_codestring

The contact's postal code

statestring

The contact's state

street_1string

The contact's first line of street address

street_2string

The contact's second line of street address

typestring

The address type

campaignobject
2 supported2 required
GetResponse
required
Smartlead
required
idstring
emailstring

The contact's email

4 supported4 required
Constant Contact
required
GetResponse
required
Mailchimp
required
Smartlead
required
first_namestring

The contact's first name

1 supported
Mailchimp
supported
last_namestring

The contact's last name

1 supported
Mailchimp
supported
listsobject[]

The lists that the contact is subscribed to

References: Lists → id
idstring

The list's unique identifier

phonesobject[]

The contact's phone numbers

1 supported
Mailchimp
supported
phonestring

The phone number

typestring

The phone number type

remote_dataRecord<string, any>

Any additional data that should be passed as part of the request body. This data is not transformed by Truto and is passed as is to the remote API.

statusstring

The status of the contact if it is new

1 supported
Mailchimp
supported
tagsobject[]

The contact's tags

References: Tags → id
1 supported
Mailchimp
supported
idstring

The tag's unique identifier

namestring

The tag's name

Response Body

idstring
required·

The contact's unique identifier

2 supported
GetResponse
supported
Mailchimp
supported
addressesobject[]

The contact's addresses

1 supported
Mailchimp
supported
citystring

The contact's city

countrystring

The contact's country

postal_codestring

The contact's postal code

statestring

The contact's state

street_1string

The contact's first line of street address

street_2string

The contact's second line of street address

typestring

The address type

created_atstring · date-time

The date and time of the contact's creation

1 supported
GetResponse
supported
emailstring

The contact's email

2 supported
GetResponse
supported
Mailchimp
supported
first_namestring

The contact's first name

1 supported
Mailchimp
supported
last_namestring

The contact's last name

1 supported
Mailchimp
supported
listsobject[]

The lists that the contact is subscribed to

References: Lists → id
idstring

The list's unique identifier

namestring

The contact's full name

2 supported
GetResponse
supported
Mailchimp
supported
phonesobject[]

The contact's phone numbers

1 supported
Mailchimp
supported
phonestring

The phone number

typestring

The phone number type

remote_dataRecord<string, any>

Raw data returned from the remote API call.

statusstring

The contact's subscription status

1 supported
Mailchimp
supported
tagsobject[]

The contact's tags

References: Tags → id
1 supported
Mailchimp
supported
idstring

The tag's unique identifier

namestring

The tag's name

updated_atstring · date-time

The date and time of the contact's last update

1 supported
Mailchimp
supported
curl -X POST 'https://api.truto.one/unified/marketing-automation/contacts?integrated_account_id=<integrated_account_id>' \
  -H 'Authorization: Bearer <your_api_token>' \
  -H 'Content-Type: application/json' \
  -d '{
  "email": "your_email",
  "first_name": "your_first_name",
  "last_name": "your_last_name",
  "phones": [],
  "addresses": [],
  "lists": [],
  "campaign": {},
  "status": "your_status",
  "tags": [],
  "remote_data": {}
}'
const integratedAccountId = '<integrated_account_id>';

const body = {
  "email": "your_email",
  "first_name": "your_first_name",
  "last_name": "your_last_name",
  "phones": [],
  "addresses": [],
  "lists": [],
  "campaign": {},
  "status": "your_status",
  "tags": [],
  "remote_data": {}
};

const response = await fetch(`https://api.truto.one/unified/marketing-automation/contacts?integrated_account_id=${integratedAccountId}`, {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <your_api_token>',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify(body),
});

const data = await response.json();
console.log(data);
import requests

url = "https://api.truto.one/unified/marketing-automation/contacts"
headers = {
    "Authorization": "Bearer <your_api_token>",
    "Content-Type": "application/json",
}
params = {
    "integrated_account_id": "<integrated_account_id>"
}
payload = {
    "email": "your_email",
    "first_name": "your_first_name",
    "last_name": "your_last_name",
    "phones": [],
    "addresses": [],
    "lists": [],
    "campaign": {},
    "status": "your_status",
    "tags": [],
    "remote_data": {}
}

response = requests.post(url, headers=headers, params=params, json=payload)
print(response.json())
import Truto from '@truto/truto-ts-sdk';

const truto = new Truto({
  token: '<your_api_token>',
});

const result = await truto.unifiedApi.create(
  'marketing-automation',
  'contacts',
  {
  "email": "your_email",
  "first_name": "your_first_name",
  "last_name": "your_last_name",
  "phones": [],
  "addresses": [],
  "lists": [],
  "campaign": {},
  "status": "your_status",
  "tags": [],
  "remote_data": {}
},
  { integrated_account_id: '<integrated_account_id>' }
);

console.log(result);
import asyncio
from truto_python_sdk import TrutoApi

truto_api = TrutoApi(token="<your_api_token>")

async def main():
    result = await truto_api.unified_api.create(
        "marketing-automation",
        "contacts",
        {
        "email": "your_email",
        "first_name": "your_first_name",
        "last_name": "your_last_name",
        "phones": [],
        "addresses": [],
        "lists": [],
        "campaign": {},
        "status": "your_status",
        "tags": [],
        "remote_data": {}
},
        {"integrated_account_id": "<integrated_account_id>"}
    )
    print(result)

asyncio.run(main())