Attribute types

Attributes are used to model data on objects and lists. Standard objects come with a series of "system" attributes predefined, but users and developers can create and modify their own attributes as well.

Attribute properties

In the API, attributes are presented as a set of properties. Some attribute types have specific properties (e.g. an actor reference attribute has the referenced_actor_type property), but all attributes have the following properties:

  • id, which is a composite ID composed of (workspace_id, object_id, attribute_id)
  • title, the human-readable name of the attribute (e.g. "Name")
  • description, an optional human-readable description (e.g. "The name as registered in our database")
  • api_slug, a shorthand way for developers to refer to this attribute (e.g. "name")
  • type, one of the enumerated types below (e.g. "text")
  • is_archived, whether the attribute has been archived
  • is_required, whether a value is required when creating the record or list entry
  • is_unique, whether the value for this attribute is unique among all other records or list entries of that type
  • is_multiselect, whether you can write more than one value to this attribute
  • is_default_value_enabled and default_value, see the default values guide
  • created_at, a timestamp of when this attribute was first created
  • config, an object containing specific configuration for currency or record_reference types

For more information about attributes, you can find our attribute APIs here.

Attribute values

Attribute values represent the value of the given attribute on a given record or list entry. They also have a set of common properties, that you'll see referenced throughout this guide:

  • active_from, a timestamp showing when this value was created
  • active_until, either a timestamp (meaning the value was readable until that point in time) or null, meaning the value is still currently active. Most endpoints will only return active values, meaning this value is usually null. In special cases, such as the list record attribute values API, you can also query historic data.
  • created_by_actor, a reference to the id and type of the Actor who created this value
  • attribute_type, matches the type property on the Attribute itself (e.g. "text")

Attribute types

Attio currently has 17 different attribute types, and they can behave differently when creating, viewing, filtering and sorting. This guide will walk through each type, with examples of where you might find them and how to work with them: