---
title: "For a firm: Every option set the firm holds, or one attribute's (any role)"
method: GET
path: "/v1/admin/tenants/{tenant}/attribute-sets"
tags: ["admin"]
---

# For a firm: Every option set the firm holds, or one attribute's (any role)

`GET /v1/admin/tenants/{tenant}/attribute-sets`

## 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/admin/tenants/{tenant}/attribute-sets`
- Auth: HTTP bearer

`?attribute=` narrows it to one attribute's sets. A matter names the sets that apply to it and never owns options of its own, which is what keeps one list in one place however many matters read it. Where the firm's practice system shows each person their own matters, a set of the system's that only matters the caller is not shown name is left out.

Operator mount: an operator acting for the firm named in the path, as its oldest active admin, else its oldest active billing member; `X-Six-Minute-Acting-As` names them. 404 for no such firm, 409 `urn:six-minute:problem:no-acting-member` for one with neither.

## Path parameters

- `tenant` string, required

## Query parameters

- `attribute` string

## Response `200`

In attribute then id order.

- object[]
  - `id` string, required
  - `attribute_key` string, required
  - `name` string, required
  - `source` 'firm' | 'connector'
  - `external_ref` string, nullable
  - `options` object[], required
    - `value` string, required
    - `label` string, required
    - `description` string
    - `external_ref` string, nullable
    - `active` boolean
    - `min_narrative_chars` integer, nullable
  - `active` boolean
  - `updated_at` string, date-time, required

## 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.
- `404`: No such row for this tenant.
- `409`: The id or the email already belongs to something else.
- `503`: A capability this service was not configured with, or a practice system that could not be reached; the `type` says which.

---

[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)
