access

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

Change a member's role.

همه نقاط پایانی access

احراز هویت

یک کلید API را به عنوان یک توکن حامل ارسال کنید. این کلید باید دارای مجوز members.role.assign باشد؛ کلیدی که فاقد آن باشد با خطای 403 رد می‌شود، نه 404.

جایی که شناسه سازمان شما قرار می‌گیرد

این نقطه پایانی، شناسه سازمان شما را مستقیماً در خود URL به صورت orgId دریافت می‌کند. آن را در مسیر جایگزین کنید؛ هیچ هدر یا پارامتر کوئری‌ای وجود ندارد که بتواند جایگزین آن شود.

شناسه سازمان شما در صفحه کلیدهای API در داشبوردتان، در کنار خود کلید قرار دارد. این شناسه در تمام درخواست‌هایی که ارسال می‌کنید یکسان است.

امتحان کنید

هر چیزی را که داخل براکت‌های زاویه‌دار قرار دارد با مقادیر خودتان جایگزین کنید، و نگهدارنده کلید را با کلیدی از داشبورد خود جایگزین نمایید.

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> }'

وارد شده‌اید؟ کنسول API در داشبورد شما شناسه سازمان واقعی و کلید خودتان را پر می‌کند و درخواست را روی API زنده اجرا می‌کند تا بتوانید پاسخ واقعی را ببینید. این نقطه پایانی را در کنسول API باز کنید

جزئیات

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.

پارامترها

نامنوعالزامیچیست
orgId (path)UuidبلهOrganization ID (UUIDv7).
userId (path)UuidبلهThe user to remove from the organization.

بدنه درخواست

نامنوعالزامیچیست
rolestringبلهA role key from `GET /v1/orgs/{orgId}/roles`.

پاسخ

نامنوعالزامیچیست
user_idUuidبلهUUIDv7 identifier — sortable by creation time (docs/02 §8).
emailstringبله
namestringبلهDisplay name; may be empty for an account that never set one.
rolesstring[]بلهEvery role this person holds in this org, sorted.
joined_atstringبلهWhen their EARLIEST membership of this org was created.
is_selfbooleanبلهWhether this row is the calling user.
removablebooleanبله
not_removable_reasonOrgMemberRemovalBlock | nullبلهWhy 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_assignablebooleanبلهWhether `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…

خطاهایی که این نقطه پایانی می‌تواند برگرداند

401 · 403 · 404 · 409 · 422 · 429