---
title: "Update Partner User"
method: PUT
path: "/api/organizations/{org_id}/users/{id}"
tags: ["Users"]
---

# Update Partner User

`PUT /api/organizations/{org_id}/users/{id}`

Updates a user's assigned permissions roles.

> 🚧 Requires partner key
>
> User endpoints are only accessible using [partner keys](../../../../../guides/obtaining-api-keys#partner-keys).

Only the user's role assignments are modified. Profile information such as name
and email address is not affected by this endpoint.

## Path parameters

- `id` string, uuid, required — Unique identifier of the user to update.
- `org_id` string, uuid, required — Unique identifier of the organization the user belongs to.

## Headers

- `X-Polytomic-Version` string

## Request body

- UpdateUserRequestSchema
  - `email` string, required — Email address used to sign the user in and receive notifications.
  - `role` string — Deprecated legacy role name. Use role_ids instead; setting both role and role_ids in the same request is rejected.
  - `role_ids` string[] — Identifiers of the permissions roles to assign to the user. Must contain at least one entry when provided.

## Response `200`

OK

- UserEnvelope
  - `data` User
    - `email` string — Email address used to sign in and receive notifications.
    - `id` string, uuid — Unique identifier of the user.
    - `organization_id` string, uuid — Unique identifier of the organization the user belongs to.
    - `role` string — Deprecated legacy role name. Use role_ids instead.
    - `role_ids` string[], nullable — Identifiers of the permissions roles assigned to the user.

## Other responses

- `403` — Forbidden
- `422` — Unprocessable Entity
- `500` — Internal Server Error

---

[API](https://skmtc.dev/polytomic/apis/polytomic-api.md) · [All operations](https://skmtc.dev/polytomic/apis/polytomic-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/polytomic/polytomic-api/revisions/6c3b7c51e463/schema)
