Properties are custom data fields you can attach to chats, threads, events, groups, and licenses. They let you store and retrieve any business-relevant information alongside your Text data — for example, order IDs, customer tiers, or internal tags.
You manage properties through the Configuration API.
Property types
Each property has one of four types:
Property locations
Properties can be attached to the following objects:
event
thread
chat
group
license
You can configure access per location independently. For example, a property can be visible to agents in a chat and thread, but not on individual events.
Property domain
The property domain defines the set of values a property accepts. You can configure it in two ways:
- Explicit values — define an allowed set (for example,
[1, 2, 3]).
- Range — define a numeric range where all values within it are allowed (for example,
1 to 3). Only available for numeric types.
Default values
If a property has no explicitly set value, the default value is returned. You set the default when registering a property using the default_value parameter.
Private and public properties
Private properties
When you register a property, it is private by default. Private properties can only be accessed with a token belonging to the owner Client ID. You can register, update, and delete private properties freely.
Public properties
You can publish a private property to make it accessible to other integrations. When publishing, you define the public access level: read, write, or both.
For example, you register a private chat property with read and write access for agents and customers:
When publishing, you can narrow down the public access — for example, allowing only read for everyone outside your integration:
In this case, the owner Client ID retains full read and write access, while all other tokens can only read the property.
Published properties cannot be unregistered.
Test properties
Every license includes a set of test properties you can use to experiment with the properties system before registering your own.
Predefined properties
Text also provides a set of predefined public properties used by the Text backend. You can find them in the default properties reference.