---
title: "Set switchable values for a user or group"
method: PUT
path: "/api/v1/user-attributes/{userAttributeId}/selectable-values"
tags: ["User Attributes"]
---

# Set switchable values for a user or group

`PUT /api/v1/user-attributes/{userAttributeId}/selectable-values`

Replaces the values a user or group may switch this attribute to. Values are validated against the attribute type. Sending an empty values array with allow_any_value false removes the provisioning entirely, which also stops honouring any switch the user has already made.

## Path parameters

- `userAttributeId` string, uuid, required

## Request body

- union
  - object
    - `allow_any_value` boolean — Additionally allow any value at all, typed or picked, held only to the attribute type. The values currently assigned to anyone in the organization are offered as suggestions, resolved at read time.
    - `user_id` string, uuid, required — Target user membership id (not a user id)
    - `values` string[], required — Values this subject may switch the attribute to. Validated against the attribute type: a Number attribute rejects non-numeric entries. Numbers are carried as strings to preserve precision beyond 2^53. At most 300 values, each up to 512 characters; a larger set should use allow_any_value.
  - object
    - `allow_any_value` boolean — Additionally allow any value at all, typed or picked, held only to the attribute type. The values currently assigned to anyone in the organization are offered as suggestions, resolved at read time.
    - `group_id` string, uuid, required — User group id
    - `values` string[], required — Values this subject may switch the attribute to. Validated against the attribute type: a Number attribute rejects non-numeric entries. Numbers are carried as strings to preserve precision beyond 2^53. At most 300 values, each up to 512 characters; a larger set should use allow_any_value.

## Response `200`

The provisioning as stored

- SelectableValuesResponse
  - `allow_any_value` boolean, required — Additionally allow any value at all, typed or picked, held only to the attribute type. The values currently assigned to anyone in the organization are offered as suggestions, resolved at read time.
  - `user_attribute_id` string, uuid, required — The attribute definition this provisioning applies to
  - `values` string[], required — Values this subject may switch the attribute to. Validated against the attribute type: a Number attribute rejects non-numeric entries. Numbers are carried as strings to preserve precision beyond 2^53. At most 300 values, each up to 512 characters; a larger set should use allow_any_value.

## Other responses

- `400` — Invalid body, or a value the attribute type rejects
- `401` — Authentication required
- `403` — Insufficient permissions
- `404` — Attribute definition, user, or group not found

## Changes

- **2026-09-30** `299eacbcab4d` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/omniapp/apis/omni-api/changes/api/v1/user-attributes/:userAttributeId/selectable-values/put.md)

---

[API](https://skmtc.dev/omniapp/apis/omni-api.md) · [All operations](https://skmtc.dev/omniapp/apis/omni-api/llms.txt) · [OpenAPI document](https://skmtc.dev/omniapp/apis/omni-api/revisions/299eacbcab4d?raw)
