---
title: "The firm's attributes: the fields its entries carry (any role)"
method: GET
path: "/v1/attributes"
tags: ["vocabulary"]
---

# The firm's attributes: the fields its entries carry (any role)

`GET /v1/attributes`

## Request

- Base URL: `https://api.sixminute.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.sixminute.ai/v1/attributes`
- Auth: HTTP bearer

In `position` then `key` order. `required` blocks release where the matter's list is non-empty and the entry carries no value; `proposed` says the narrative call answers this attribute in the one call it already makes. On a row the connector owns or has bound (`source: connector`, or a `binding`), `label` and `proposed` are the firm's and the rest is the connector's, as are the row's sets. `position` is the server's on every row.

## Response `200`

In position then key order.

- object[]
  - `key` string, required
  - `label` string, required
  - `required` boolean
  - `proposed` boolean
  - `source` 'firm' | 'connector'
  - `binding` object, nullable
    - `kind` string, required
    - `field` string, required
  - `default_set_ids` string[]
  - `active` boolean
  - `position` integer

## Other responses

- `400`: The body, query or path did not validate; `errors` lists the fields.
- `401`: No bearer token, or one that does not verify or has expired.
- `403`: The token verified but may not do this: no organisation, not provisioned, wrong role, or a device problem.

---

[API](https://skmtc.dev/sixminute/apis/sixminute-api.md) - [All operations](https://skmtc.dev/sixminute/apis/sixminute-api/llms.txt) - [OpenAPI document](https://skmtc.dev/sixminute/apis/sixminute-api/revisions/605577eadc10?raw)
