# Attributes

Attributes are custom data fields that allow you to store, organise, and filter information across **Users, Exams, Collections, Tests (Quizzes), Library content, Questions, User groups and more**.

{% hint style="info" %}
Attributes are not  available on Standard plans. Attribute limits apply:&#x20;

* Pro: 50
* Business: 100
* Enterprise: 250

&#x20; Get in touch with support about upgrading
{% endhint %}

They give you much more control over how your data is structured, making it easier to **filter, integrate with other systems and automations and manage large volumes of data, content and users** across your portal.

<figure><img src="https://3316915154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkgvUeCmTPeNouRxGPC%2Fuploads%2FJiT2iWjxKvhUUr7lPCuv%2Fattrfilter.gif?alt=media&#x26;token=a8aa58a4-165c-4d92-a699-73db4010d0f0" alt=""><figcaption></figcaption></figure>

#### Use cases

Attributes can be used to:

* **Organise and filter large datasets**\
  Add categories like *Department, Exam Type, Season* or *Course* to quickly filter and find what you need across exams and content.
* **Manage users and cohorts more effectively**\
  Track things like *Start year, Cohort, Region,* or *Product access* to make it easier to segment and manage users and user groups.
* **Support automations and integrations**\
  Use attributes like *Product name* or *Access level* to drive workflows in tools like Zapier or Segment.
* **Separate and control internal vs external content**\
  Mark exams or content as *Demo*, *Testing*, or *Internal* so you can filter them out, organise them, or bulk archive when needed.
* **Improve day-to-day admin workflows**\
  With attribute-based filtering and sorting, you can quickly locate specific exams, groups, or users without relying on naming conventions alone.

#### Flexible and scalable

* You can add **multiple attributes** to any entity
* You can apply **multiple filters at once**
* Attributes work across tables, exports, and integrations

This makes attributes a powerful way to scale your organisation as your portal grows.

<figure><img src="https://3316915154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkgvUeCmTPeNouRxGPC%2Fuploads%2FVv31krGJ31ySTiUBmF2c%2Fimage.png?alt=media&#x26;token=83f9162d-f66c-463f-b54b-29fd663582a9" alt=""><figcaption><p>Exam attributes in use</p></figcaption></figure>

### User attributes

User Attributes will be included in exports and shown in tables, see below for an example of how user attributes is stored and shown&#x20;

```json
{
  "gdpr_consent": true,
  "country": "USA",
  "role": "busDriver",
  "training-year": 2,
  "date-of-birth": "1989-12-07T00:00:00.000Z",
  "segment-trait": "Performance Review"
}
```

From any user table use Manage columns to show or hide columns, any user attributes will be able to be toggled on and off here. Admins or other moderators from here can select users individually or in bulk and update attributes from there.&#x20;

<figure><img src="https://3316915154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkgvUeCmTPeNouRxGPC%2Fuploads%2FipNaIAuKeoBlylBVGDV2%2FScreenshot%202026-04-20%20at%2014.54.45.png?alt=media&#x26;token=da1bdf73-93d9-4af9-ab80-78b55805b98d" alt=""><figcaption></figcaption></figure>

More on managing and viewing user data below&#x20;

{% content-ref url="../../users-and-groups/user-information" %}
[user-information](https://academy.synap.ac/doc/users-and-groups/user-information)
{% endcontent-ref %}

## Creating attributes

In order to create an attribute an admin needs with settings access navigates to **Settings > Data management > Attributes.**  From the attribute manager  new attributes can be created and existing attributes updated.

<figure><img src="https://3316915154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkgvUeCmTPeNouRxGPC%2Fuploads%2FeF4NHwF5c6dKZtSRoEex%2FScreenshot%202026-04-20%20at%2013.55.07.png?alt=media&#x26;token=f5b0426c-4829-4ac2-8009-b77840c939f4" alt=""><figcaption></figcaption></figure>

When adding a new attribute a label is required. If you're mapping to other systems you can also set a specific ID else the platform will generate one for you. The screenshot below shows creation of a new user Multiple choice type attribute. User attribute types have a unique option which is you can collect them on registration, this is not applied to other attribute types.

<figure><img src="https://3316915154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkgvUeCmTPeNouRxGPC%2Fuploads%2Fwc7LIrNXYFGCtMp34Yq4%2FScreenshot%202026-04-20%20at%2014.16.51.png?alt=media&#x26;token=73e22898-7c5e-442d-b7de-d6632ab27316" alt=""><figcaption></figcaption></figure>

* **Label \*:** Name of the attribute and how it will appear on tables
* **Description:** Displays as a hotspot on tables for other admins / educators. For attributes collected on registration the description will display here also.&#x20;
* **ID:** Inferred from the Label, spaces will be replaced with `-` these IDs are important and required on all imports using attributes, you'll also need them to match up attributes in Zapier and Segment.
* **Who can edit** Select which users have write access to this attribute (you may not want students to be able to update certain attributes ie Year group)&#x20;
  * Users, moderators and admins = Any one who can see the attribute can edit it&#x20;
  * Moderators and admins = only admins, educators and managers can update the attribute values
  * Admins only = only admins can edit the attribute values, or they can only be updated through via the API&#x20;
* **Settings: (Unique to user attributes)**
  * **Hidden from user =** These attributes will never be shown to users, they are for admins and educators only
  * **Collect on registration =** These attributes will be collected on registration when a user is setting up their account. If this option is selected you'll be prompted to select a question to ask students on the registration page.  You can also make an attribute required here which means a user can't be registered without a value for this attribute.  Please note this applies both to users registering themselves and admins generating accounts.
* **Type\*:** Select the type from the dropdown, different types require different values, some may need you to define some options. For attributes for filtering and organisation we'd recommend Multiple Choice types

| Attribute type  | Expected value on CSV                                                                                                                                        |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Checkbox        | `TRUE` or `FALSE`                                                                                                                                            |
| Long answer     | `string`                                                                                                                                                     |
| Short answer    | `string`                                                                                                                                                     |
| Multiple choice | One of defined `options`                                                                                                                                     |
| Checkboxes      | defined `options` separated by commas                                                                                                                        |
| Number          | Any numerical value                                                                                                                                          |
| Date            | `DD/MM/YYYY`                                                                                                                                                 |
| Link            | Choose whether to display as text or as a button. The link can be typed as an absolute URL (opens in new tab), or a root-relative URL (open in the same tab) |

Once you've finished creating attributes, save your changes. User attribute types can be bulk set or updated via the user importer, learn more about the required formatting below

{% content-ref url="../../users-and-groups/creating-groups/importing-new-and-existing-users-via-csv" %}
[importing-new-and-existing-users-via-csv](https://academy.synap.ac/doc/users-and-groups/creating-groups/importing-new-and-existing-users-via-csv)
{% endcontent-ref %}

{% hint style="danger" %}
🚨 Be careful deleting attributes as if they're being used in other integrations this can cause problems.
{% endhint %}

## Using attributes on platform&#x20;

High level content like : Exams, Assignments, Courses, Collections, Tests (Quizzes), Notes attribtues are set on the details page and can be viewed from here at any time.&#x20;

User group attributes are set on the user group editing modal, and user attributes from the user>administration page (more on user information below)&#x20;

{% content-ref url="../../users-and-groups/user-information" %}
[user-information](https://academy.synap.ac/doc/users-and-groups/user-information)
{% endcontent-ref %}

<figure><img src="https://3316915154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkgvUeCmTPeNouRxGPC%2Fuploads%2FiZ6FVN9naqymETmkDSoI%2Fimage.png?alt=media&#x26;token=2222a4b1-fc9a-4180-8547-ea0e67c0897d" alt=""><figcaption><p>Exam attributes on the exam details page</p></figcaption></figure>

### Filtering by attributes

From supported pages  (Exam, User groups, Collections, Courses, Assignments, Library) content can be filtered by attribute values. For best practice using attributes for on platform organisation, we'd recommend using Multiple choice types where possible:

This ensures:

* Consistent values
* No duplication from free text (e.g. “HR” vs “Human Resources”)
* Cleaner filtering and reporting

<figure><img src="https://3316915154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkgvUeCmTPeNouRxGPC%2Fuploads%2FcYoEVsJI4ts6T7FUziAt%2FScreenshot%202026-04-20%20at%2014.49.16.png?alt=media&#x26;token=5a48b6b5-313f-46ee-928e-577a12b2890c" alt=""><figcaption><p>Filtering by Multiple choice attribute types</p></figcaption></figure>

Filtering by text attribute type, must be exact match to work&#x20;

<figure><img src="https://3316915154-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-MkgvUeCmTPeNouRxGPC%2Fuploads%2FJaF4PtABLFU7NY7AL5No%2FScreenshot%202026-04-20%20at%2014.50.45.png?alt=media&#x26;token=1fc2a363-334e-4749-8bab-7a323be7e8bf" alt=""><figcaption><p>Text type attribute searching</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://academy.synap.ac/doc/portal-settings/data-management/attributes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
