Skip to content

Object

Custom objects and relationships are available on Pro and Growth plans. Records can be fetched and manipulated via these endpoints, and definitions can be fetched to discover the available custom object types in the system.

Create a custom object record
POST/v1/objects/{entitySlug}/values
Get a custom object record
GET/v1/objects/{entitySlug}/values/{id}
Update a custom object record
POST/v1/objects/{entitySlug}/values/{id}
List custom object records
GET/v1/objects/{entitySlug}
Get definitions for a custom object type
GET/v1/objects/{entitySlug}/definitions
ModelsExpand Collapse
ObjectCreateResponse object { id, createdAt, fields, 4 more }
id: string

Unique identifier for the entity.

createdAt: string

ISO 8601 timestamp of when the entity was created.

fields: map[object { value, valueType } ]

Map of field names to their typed values. System fields are prefixed with $ (e.g. $name, $email); custom attributes use their bare slug.

value: string or number or boolean or 3 more

The field value, or null if unset.

One of the following:
string
number
boolean
array of string
Address object { city, country, latitude, 5 more }
city: optional string

City name.

country: optional string

2-letter ISO 3166-1 alpha-2 country code.

latitude: optional number

Latitude coordinate.

longitude: optional number

Longitude coordinate.

postalCode: optional string

Postal or ZIP code.

state: optional string

State or province.

street: optional string

Street address line 1.

street2: optional string

Street address line 2.

FullName object { firstName, lastName }
firstName: optional string

The contact’s first name.

lastName: optional string

The contact’s last name.

valueType: "ADDRESS" or "CHECKBOX" or "CURRENCY" or 11 more

The data type of the field.

One of the following:
"ADDRESS"
"CHECKBOX"
"CURRENCY"
"DATETIME"
"EMAIL"
"FULL_NAME"
"MARKDOWN"
"MULTI_SELECT"
"NUMBER"
"SINGLE_SELECT"
"SOCIAL_HANDLE"
"TELEPHONE"
"TEXT"
"URL"
relationships: map[object { cardinality, objectType, values } ]

Map of relationship names to their associated entities. System relationships are prefixed with $ (e.g. $owner, $contact).

cardinality: string

Whether the relationship is has_one or has_many.

objectType: string

The type of the related object (e.g. account, contact).

values: array of string

IDs of the related entities.

updatedAt: string

ISO 8601 timestamp of when the entity was last updated, or null.

externalId: optional string

External identifier for the entity, or null if unset.

ObjectDefinitionsResponse object { fieldDefinitions, objectType, relationshipDefinitions }
fieldDefinitions: map[object { description, label, typeConfiguration, 3 more } ]

Map of field keys to their definitions, including both system and custom fields.

description: string

Description of the field, or null.

label: string

Human-readable display name of the field.

typeConfiguration: object { currency, handleService, multipleValues, 2 more }

Type-specific configuration (e.g. select options, currency code).

currency: optional string

ISO 4217 3-letter currency code.

handleService: optional "TWITTER" or "LINKEDIN" or "FACEBOOK" or "INSTAGRAM"

Social platform associated with this handle field.

One of the following:
"TWITTER"
"LINKEDIN"
"FACEBOOK"
"INSTAGRAM"
multipleValues: optional boolean

Whether this field accepts multiple values.

options: optional array of object { id, label, description }

Available options for select fields.

id: string

Unique identifier of the select option.

label: string

Human-readable display name of the option.

description: optional string

Description of the option, or null.

unique: optional boolean

Whether values for this field must be unique.

valueType: "ADDRESS" or "CHECKBOX" or "CURRENCY" or 11 more

Data type of the field.

One of the following:
"ADDRESS"
"CHECKBOX"
"CURRENCY"
"DATETIME"
"EMAIL"
"FULL_NAME"
"MARKDOWN"
"MULTI_SELECT"
"NUMBER"
"SINGLE_SELECT"
"SOCIAL_HANDLE"
"TELEPHONE"
"TEXT"
"URL"
id: optional string

Unique identifier of the field definition.

readOnly: optional boolean

true for fields that are not writable via the API (e.g. AI-generated summaries). false or absent for writable fields.

objectType: string

The object type these definitions belong to (e.g. account).

relationshipDefinitions: map[object { cardinality, description, label, 2 more } ]

Map of relationship keys to their definitions.

cardinality: "HAS_ONE" or "HAS_MANY"

Whether this is a has_one or has_many relationship.

One of the following:
"HAS_ONE"
"HAS_MANY"
description: string

Description of the relationship, or null.

label: string

Human-readable display name of the relationship.

objectType: string

The type of the related object (e.g. account, contact).

id: optional string

Unique identifier of the relationship definition.

ObjectListDefinitionsResponse object { data }
data: array of object { label, objectType }

All object types available to the caller.

label: string

Human-readable display name.

objectType: string

The slug used to reference this object type in the API.

ObjectListResponse object { data, object, totalCount }
data: array of object { id, createdAt, fields, 4 more }

Array of entity objects for the current page.

id: string

Unique identifier for the entity.

createdAt: string

ISO 8601 timestamp of when the entity was created.

fields: map[object { value, valueType } ]

Map of field names to their typed values. System fields are prefixed with $ (e.g. $name, $email); custom attributes use their bare slug.

value: string or number or boolean or 3 more

The field value, or null if unset.

One of the following:
string
number
boolean
array of string
Address object { city, country, latitude, 5 more }
city: optional string

City name.

country: optional string

2-letter ISO 3166-1 alpha-2 country code.

latitude: optional number

Latitude coordinate.

longitude: optional number

Longitude coordinate.

postalCode: optional string

Postal or ZIP code.

state: optional string

State or province.

street: optional string

Street address line 1.

street2: optional string

Street address line 2.

FullName object { firstName, lastName }
firstName: optional string

The contact’s first name.

lastName: optional string

The contact’s last name.

valueType: "ADDRESS" or "CHECKBOX" or "CURRENCY" or 11 more

The data type of the field.

One of the following:
"ADDRESS"
"CHECKBOX"
"CURRENCY"
"DATETIME"
"EMAIL"
"FULL_NAME"
"MARKDOWN"
"MULTI_SELECT"
"NUMBER"
"SINGLE_SELECT"
"SOCIAL_HANDLE"
"TELEPHONE"
"TEXT"
"URL"
relationships: map[object { cardinality, objectType, values } ]

Map of relationship names to their associated entities. System relationships are prefixed with $ (e.g. $owner, $contact).

cardinality: string

Whether the relationship is has_one or has_many.

objectType: string

The type of the related object (e.g. account, contact).

values: array of string

IDs of the related entities.

updatedAt: string

ISO 8601 timestamp of when the entity was last updated, or null.

externalId: optional string

External identifier for the entity, or null if unset.

object: string

The object type, always "list".

totalCount: number

Total number of entities matching the query.

minimum0
maximum9007199254740991
ObjectRetrieveResponse object { id, createdAt, fields, 4 more }
id: string

Unique identifier for the entity.

createdAt: string

ISO 8601 timestamp of when the entity was created.

fields: map[object { value, valueType } ]

Map of field names to their typed values. System fields are prefixed with $ (e.g. $name, $email); custom attributes use their bare slug.

value: string or number or boolean or 3 more

The field value, or null if unset.

One of the following:
string
number
boolean
array of string
Address object { city, country, latitude, 5 more }
city: optional string

City name.

country: optional string

2-letter ISO 3166-1 alpha-2 country code.

latitude: optional number

Latitude coordinate.

longitude: optional number

Longitude coordinate.

postalCode: optional string

Postal or ZIP code.

state: optional string

State or province.

street: optional string

Street address line 1.

street2: optional string

Street address line 2.

FullName object { firstName, lastName }
firstName: optional string

The contact’s first name.

lastName: optional string

The contact’s last name.

valueType: "ADDRESS" or "CHECKBOX" or "CURRENCY" or 11 more

The data type of the field.

One of the following:
"ADDRESS"
"CHECKBOX"
"CURRENCY"
"DATETIME"
"EMAIL"
"FULL_NAME"
"MARKDOWN"
"MULTI_SELECT"
"NUMBER"
"SINGLE_SELECT"
"SOCIAL_HANDLE"
"TELEPHONE"
"TEXT"
"URL"
relationships: map[object { cardinality, objectType, values } ]

Map of relationship names to their associated entities. System relationships are prefixed with $ (e.g. $owner, $contact).

cardinality: string

Whether the relationship is has_one or has_many.

objectType: string

The type of the related object (e.g. account, contact).

values: array of string

IDs of the related entities.

updatedAt: string

ISO 8601 timestamp of when the entity was last updated, or null.

externalId: optional string

External identifier for the entity, or null if unset.

ObjectUpdateResponse object { id, createdAt, fields, 4 more }
id: string

Unique identifier for the entity.

createdAt: string

ISO 8601 timestamp of when the entity was created.

fields: map[object { value, valueType } ]

Map of field names to their typed values. System fields are prefixed with $ (e.g. $name, $email); custom attributes use their bare slug.

value: string or number or boolean or 3 more

The field value, or null if unset.

One of the following:
string
number
boolean
array of string
Address object { city, country, latitude, 5 more }
city: optional string

City name.

country: optional string

2-letter ISO 3166-1 alpha-2 country code.

latitude: optional number

Latitude coordinate.

longitude: optional number

Longitude coordinate.

postalCode: optional string

Postal or ZIP code.

state: optional string

State or province.

street: optional string

Street address line 1.

street2: optional string

Street address line 2.

FullName object { firstName, lastName }
firstName: optional string

The contact’s first name.

lastName: optional string

The contact’s last name.

valueType: "ADDRESS" or "CHECKBOX" or "CURRENCY" or 11 more

The data type of the field.

One of the following:
"ADDRESS"
"CHECKBOX"
"CURRENCY"
"DATETIME"
"EMAIL"
"FULL_NAME"
"MARKDOWN"
"MULTI_SELECT"
"NUMBER"
"SINGLE_SELECT"
"SOCIAL_HANDLE"
"TELEPHONE"
"TEXT"
"URL"
relationships: map[object { cardinality, objectType, values } ]

Map of relationship names to their associated entities. System relationships are prefixed with $ (e.g. $owner, $contact).

cardinality: string

Whether the relationship is has_one or has_many.

objectType: string

The type of the related object (e.g. account, contact).

values: array of string

IDs of the related entities.

updatedAt: string

ISO 8601 timestamp of when the entity was last updated, or null.

externalId: optional string

External identifier for the entity, or null if unset.