Skip to content

Message

Messages represent messages synced from connected chat providers in Lightfield. Read responses are visibility-aware and may be redacted based on the caller.

Retrieve a message
$ lightfield message retrieve
GET/v1/messages/{id}
List messages
$ lightfield message list
GET/v1/messages
ModelsExpand Collapse
message_list_response: object { data, object, totalCount }
data: array of object { id, accessLevel, createdAt, 6 more }

Array of message objects for the current page.

id: string

Unique identifier for the entity.

accessLevel: "FULL" or "METADATA"

The caller’s resolved access level for this message.

"FULL"
"METADATA"
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.

union_member_0: string
union_member_1: number
union_member_2: boolean
union_member_3: 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 13 more

The data type of the field.

"ADDRESS"
"CHECKBOX"
"CURRENCY"
"DATE"
"DATETIME"
"EMAIL"
"FULL_NAME"
"MARKDOWN"
"MULTI_SELECT"
"NUMBER"
"SINGLE_SELECT"
"SOCIAL_HANDLE"
"TELEPHONE"
"TEXT"
"URL"
"HTML"
objectType: "message"

Always message.

"message"
relationships: map[object { cardinality, objectType, values, directions } ]

Map of relationship names to their associated entities. System relationships are prefixed with $ (e.g. $owner, $contact). A self-referential relationship keeps its merged values and includes optional directional values. List filters select the current record’s role with :asSource or :asDestination, for example ?parent:asSource[contains]=account_id.

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.

directions: optional object { asDestination, asSource }

Directional values for a self-referential relationship. List filters use the relationship key with :asSource or :asDestination; writes continue to use the bare key.

asDestination: object { cardinality, values }

The current record is the destination (incoming) endpoint.

cardinality: "HAS_ONE" or "HAS_MANY"

Whether this endpoint direction is HAS_ONE or HAS_MANY.

"HAS_ONE"
"HAS_MANY"
values: array of string

IDs of the related entities in this direction.

asSource: object { cardinality, values }

The current record is the source (outgoing) endpoint.

cardinality: "HAS_ONE" or "HAS_MANY"

Whether this endpoint direction is HAS_ONE or HAS_MANY.

"HAS_ONE"
"HAS_MANY"
values: array of string

IDs of the related entities in this direction.

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.

message_retrieve_response: object { id, accessLevel, createdAt, 6 more }
id: string

Unique identifier for the entity.

accessLevel: "FULL" or "METADATA"

The caller’s resolved access level for this message.

"FULL"
"METADATA"
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.

union_member_0: string
union_member_1: number
union_member_2: boolean
union_member_3: 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 13 more

The data type of the field.

"ADDRESS"
"CHECKBOX"
"CURRENCY"
"DATE"
"DATETIME"
"EMAIL"
"FULL_NAME"
"MARKDOWN"
"MULTI_SELECT"
"NUMBER"
"SINGLE_SELECT"
"SOCIAL_HANDLE"
"TELEPHONE"
"TEXT"
"URL"
"HTML"
objectType: "message"

Always message.

"message"
relationships: map[object { cardinality, objectType, values, directions } ]

Map of relationship names to their associated entities. System relationships are prefixed with $ (e.g. $owner, $contact). A self-referential relationship keeps its merged values and includes optional directional values. List filters select the current record’s role with :asSource or :asDestination, for example ?parent:asSource[contains]=account_id.

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.

directions: optional object { asDestination, asSource }

Directional values for a self-referential relationship. List filters use the relationship key with :asSource or :asDestination; writes continue to use the bare key.

asDestination: object { cardinality, values }

The current record is the destination (incoming) endpoint.

cardinality: "HAS_ONE" or "HAS_MANY"

Whether this endpoint direction is HAS_ONE or HAS_MANY.

"HAS_ONE"
"HAS_MANY"
values: array of string

IDs of the related entities in this direction.

asSource: object { cardinality, values }

The current record is the source (outgoing) endpoint.

cardinality: "HAS_ONE" or "HAS_MANY"

Whether this endpoint direction is HAS_ONE or HAS_MANY.

"HAS_ONE"
"HAS_MANY"
values: array of string

IDs of the related entities in this direction.

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.