Record properties
Properties format
The property names must not contain .
symbols.
Standard properties types
Currently, the following standard properties with types are supported:
Properties with $type label
The following properties with $type
label are supported:
There is a possibility to pass a property object with special attribute name $type
and specific value. These kind
of special properties allow to adhere to specific use cases.
relation
or relation[]
The main purpose of this property structure is to establish relationships between two workspace object records.
The basic structure of the property shown below:
Provided property companies
has a $type
attribute with the value relation
, indicating that other
attributes should be processed differently. The application will create a relationship between the main workspace object
record and the records found by the domain
in the workspace object identified by the object_slug
. If no records are
found by domain
, no relation will be created.
You can also create a relation using the email
attribute instead of domain
. In this case, the application will link the
main workspace object record to those found by matching the email
property in the workspace object with the specified
object_slug
. Again, if no records are found, the relation won’t be created:
Relations can also be created using a recordId
. In this case, the application will create a relation with the specified
recordId
and will even create the corresponding workspace object record if it doesn’t exist. If the recordId
belongs to
a different type than specified in the object_slug
, the application will create a record with the same remote ID in the
appropriate workspace object.
Similarly, you can provide multiple relations by using the $type
attribute with the value relation[]
.
The behavior is almost the same as described above, with the key difference being that it creates relations
for multiple provided identifiers.
Below are examples with slightly different syntax:
In all cases above, if the workspace object for the provided object_slug
doesn’t exist, it will be created automatically.
currency
The main purpose of this property structure is to pass validated currency properties with a specific currency.
The basic structure of the property is shown below:
Provided property amount
has a $type
attribute with the value currency
, indicating that other attributes
should be processed differently. The application will validate property attributes format and save currency property.
Set related record properties
If a certain event is supposed to change related record properties, you can easily do that using the set
and set_once
parameters when specifying relations, as shown below:
Set record properties
Related record properties could be set when tracking, as described here.
However, if you need to set properties separately from the event or manage records that are not related to the event, you can use client.setRecordProperties()
, as shown below: