Describe an agent's attributes¶
An attribute is a key and value that an agent sends with each request, such as a customer's plan or how many months in a row they hit their data limit. Each agent keeps its own attribute catalog, and a rule's Who sees it and Not shown to fields can use only the attributes in its agent's catalog. This document describes how to review the catalog in the console, describe each attribute so that marketers and the copilot read it the same way, and have the team that runs the agent register attributes before they arrive.
The examples on this page use a mobile carrier's sales agent, which sends
plan and data_limit_streak_months with each request.
Before you begin¶
- Offer Manager must be enabled for your org. See Availability.
- To read the catalog, you need the viewer role or above. To describe an attribute, you need the editor, admin, or owner role.
Review the catalog¶
- In the console, in the Offer Manager section, click Attributes.
- In Agent, choose the agent. All agents lists every agent's attributes, each with its agent's name.
Each attribute shows its key as the agent sends it, its label and description, and these facts:
| Fact | Meaning |
|---|---|
| Status | Where the entry came from. See the next table. |
| Type | How values are read: string, number, boolean, date, enum (one of a set of values), or list. The type decides which comparisons a rule can make, such as "at least" for a number. The line under it says whether the agent platform set it, someone set it in the console, or it was inferred from requests. |
| Last received | When a request last carried the attribute. |
| Coverage | The share of the agent's requests in the last seven days that carried it, with the same share for each moment and each channel. |
| Status | Meaning |
|---|---|
| Observed | The agent sends it, and no one has described it yet. Add a label and description. |
| Registered | The agent platform registered it with its type. |
| Documented | Someone in your org described it in the console, and the agent platform hasn't registered it. |
| Retired | Rules can no longer use it in new conditions. To list these, turn on Show N retired. |
New keys appear as Observed within about ten minutes of the first request that carries them, so you can see what an agent already sends without asking its team.
Low coverage matters. A rule that requires an attribute matches no one on the requests that don't carry it. If a moment shows low coverage for an attribute that a rule depends on, ask the agent's team to send it at that moment.
Describe an attribute¶
- On the Attributes page, find the attribute. To narrow the list, type part of the key, label, or description in Filter.
- Click Describe.
- In Label, enter the name your team uses, such as
Months at data limit in a row. The rule card and the copilot show the label in place of the key. - In Description, write what the attribute means and how the agent
works it out, such as
Consecutive billing months in which the customer reached their plan's data limit.The copilot reads the description to decide which attribute an instruction refers to, so name the units and the edge cases. - Click Save.
An observed attribute becomes documented when you save a label or a description. If the agent platform registered its own label or description, the page shows it under yours. Clear your value and save to show the platform's again.
Retire an attribute¶
Retire an attribute that the agent no longer sends, or that rules shouldn't use. You need the editor role or above.
- On the Attributes page, find the attribute and click Retire.
- Check the rules listed as using it, then click Retire attribute to confirm.
Rules can no longer use a retired attribute in conditions. A rule that already does keeps serving as saved, but can't be saved until you remove that condition. To bring an attribute back, turn on Show N retired and click Restore.
To change an attribute's type, ask the copilot or use the Offer Manager API. A change that would break a saved rule is refused, and the response names the rules.
Have the agent platform register attributes¶
The team that runs the agent can register its attributes before it sends them, with the same API key it uses to request offers. Registration sets each attribute's type, which is authoritative, and can add a label and a description. A registered attribute can be used in rules right away, even before the first request carries it.
Registration matters most for dates and for attributes with a fixed set of values, such as plan names. A type inferred from the values seen can be wrong. For example, an attribute whose first values all look like numbers is read as a number.
For the request, see Register attributes. When a translation in the rule editor finds that an instruction needs an attribute the agent doesn't send, it drafts a note to the agent's team that names the attribute to register and send. See When the data is missing.
Check channels at each moment¶
Under Channels at each moment, the page lists each moment's recent requests by channel, including requests that named no channel. A rule limited to a channel, such as RCS only, never matches a request that names no channel. If a moment shows many requests with no channel, ask the agent's team to send the channel with each request. See Name the channel.
What's next¶
- Write a rule in plain language that uses the attributes.
- Read how each type is compared in How attributes are read.
- Read every catalog field and the registration API in the Attribute catalog reference.