access

PATCH /v1/orgs/{orgId}/members/{userId}

Change a member's role.

Todos los endpoints de access

Autenticación

Envía una clave de API como token de portador. La clave debe tener el permiso members.role.assign; una clave que no lo tenga se rechazará con un código 403, no 404.

Donde va el ID de tu organización

Este endpoint toma el id de tu organización directamente en la URL, como orgId. Sustitúyelo en la ruta; no hay ninguna cabecera ni parámetro de consulta que sirva para ello.

El id de tu organización se encuentra en la pantalla de claves de API en tu panel de control, junto a la propia clave. Es el mismo id en cada llamada que realices.

Pruébalo

Reemplaza cualquier elemento entre corchetes angulares por tus propios valores, y el marcador de posición key con una clave de tu panel de control.

curl -X PATCH https://api.zinndigital.com/v1/orgs/{orgId}/members/{userId} \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "role": <string> }'

¿Has iniciado sesión? La consola de la API en tu panel de control rellena el ID de tu organización real y tu propia clave, y ejecuta la solicitud contra la API en vivo para que puedas ver la respuesta real. Abre este endpoint en la consola de la API

Detalles

Sets this member's role in the organization. Requires `members.role.assign` **on that org**. ⛔ **Replaces** the member's roles with the one given rather than adding to them — a person may hold several `Membership` rows, and collapsing them can only ever reduce what they hold, so no path through this endpoint escalates by accident. Three refusals, and they are the same rules an invitation is held to: **403** if the member holds a permission the caller does not (`more_privileged`), **403** if the *role being granted* holds one (`role_not_grantable` — this is what stops any holder of the key promoting themselves to `owner`), and **409** for the org's last owner (`last_owner`). An unknown role is a **422**, never a 403, so a typo is distinguishable from a permission you lack.

Parámetros

NombreTipoObligatorio¿Qué es esto?
orgId (path)UuidOrganization ID (UUIDv7).
userId (path)UuidThe user to remove from the organization.

Cuerpo de la solicitud

NombreTipoObligatorio¿Qué es esto?
rolestringA role key from `GET /v1/orgs/{orgId}/roles`.

Respuesta

NombreTipoObligatorio¿Qué es esto?
user_idUuidUUIDv7 identifier — sortable by creation time (docs/02 §8).
emailstring
namestringDisplay name; may be empty for an account that never set one.
rolesstring[]Every role this person holds in this org, sorted.
joined_atstringWhen their EARLIEST membership of this org was created.
is_selfbooleanWhether this row is the calling user.
removableboolean
not_removable_reasonOrgMemberRemovalBlock | nullWhy not, when `removable` is false. Null when removable — and also null for a caller lacking `members.remove`, because "you cannot remove anyone here" is a fact about the caller…
role_assignablebooleanWhether `PATCH` on this member would be accepted — the caller holds `members.role.assign` here, does not outrank themselves, and this is not the last owner. ⛔ *Which* role may t…

Errores que este endpoint puede devolver

401 · 403 · 404 · 409 · 422 · 429