Attributes
Declare an attribute before ARCY will store it, and see whether your identify() calls are actually landing.
Agent > Attributes is where you declare each Attribute your app will send through
identify(), and where you can see whether the attributes you're already sending are actually
arriving. A key that shows up without being declared here is dropped, not stored.
Declaring a new attribute
Press New attribute and fill in:
- Display name: what you see in the dashboard. Changeable later.
- Code name: the key your code sends. Permanent once created. Auto-suggested from the display name (lowercased, non-letters become underscores) until you type your own. Must be lowercase, start with a letter, and contain only lowercase letters, numbers, and underscores, up to 64 characters, with no trailing underscore.
- Data type, one of five: Text, Number, Datetime, True/false, List. A value that doesn't match is refused, never silently converted. You can change the type later.
- Description: optional, for your own reference.
A code name starting with user_, organization_, or plan_ is allowed; ARCY may also add
its own attributes under those prefixes, and yours is grouped alongside them.
Nothing you declare appears on a user profile until your front end actually sends it with
identify().
Reading the observation status
Every attribute row shows what's actually arriving, scoped to the active environment:
- Never seen: nothing has arrived for this key yet.
- Arriving but refused: every value received so far was rejected; the row explains why (wrong data type, over a size limit, a read-only ARCY-computed key, or a value that failed a built-in check).
- Arriving, nothing stored: ARCY is receiving the key, but nothing is currently stored
(an incoming payload can clear a value by sending
null). - Receiving: shows when it was last seen.
No sample values are ever stored in this ledger, only the fact that something arrived and whether it was accepted.
Built-in attributes
A handful of attributes are computed by ARCY itself, marked with a Set by ARCY lock badge.
Sending one of these through identify() is refused: your own value can never overwrite it.
Editing and removing
Editing lets you change the display name, description, and (for an attribute you declared yourself) the data type. Removing an attribute archives it rather than deleting it outright: existing values stay recorded, and declaring the same code name again brings it back. A built-in attribute can't be removed at all, since ARCY relies on it always being present.
See also
- Users and Organizations: where declared attributes show up per person or per account
- Quickstart: sending your first custom attributes