Změna role člena
Role a nic jiného. Adresy jsou druhá osa a mají vlastní volání.
Spustí skutečné volání proti vašemu pracovnímu prostoru, s vaším vlastním klíčem.
PATCH /members/{userId}
Role a nic jiného. Adresy jsou druhá osa a mají vlastní volání.
Příklad
Vyžaduje members:write. roleId je jediné pole a je povinné. Tohle volání pojmenovává stav, který chce, ne změnu, kterou provést, takže poslat ho dvakrát skončí u téhož člověka s toutéž rolí.
curl -X PATCH "$OE/members/7fQ2mN8vBz1aRd4tYwKx7fQ2mN8vBz1a" -H "$AUTH" \ -H "Content-Type: application/json" \ -d '{ "roleId": "role_2b81de079c1f0a4b7e05d386" }'{ "object": "member", "userId": "7fQ2mN8vBz1aRd4tYwKx7fQ2mN8vBz1a", "email": "[email protected]", "name": null, "image": null, "role": { "id": "role_2b81de079c1f0a4b7e05d386", "name": "Support", "builtin": null }, "implied": false, "permissions": [ "emails:send", "emails:read", "threads:read", "threads:write", "labels:read", "labels:write", "contacts:read" ], "addresses": [ { "addressId": "c40a95f2-1cc6-4d31-82a8-9e075d31c2a8", "address": "[email protected]", "access": "viewer" } ], "createdAt": "2026-08-30T15:44:02.000Z"}Adresy odtud patchovat NELZE a to vynechání je záměrné: jsou to množina s úrovní přístupu u každého prvku a PATCH nesoucí pole by musel znamenat nahradit celé, což je tiché hromadné odebrání pokaždé, když klient pošle zastaralý seznam. Obě volání pro adresy přidávají a odebírají po jedné, takže to, co se stalo, je vždy to, oč bylo požádáno.
Tohle je zároveň způsob, jak držitel staršího přístupu přestane být implied: nemá řádek člena, tohle ho upsertne a od té chvíle jsou jeho oprávnění tím, co někdo vybral, a ne tím, co náhodou plynulo z jeho přístupu k adresám. Všimněte si, jak se implied v odpovědi výše překlápí na false a objevuje se createdAt. Na jeho adresách se nemění nic.
Roli vlastníka nelze rozdat (role_immutable, 409), ať už volající drží cokoli. Udělat z někoho vlastníka je převod workspace, což má jiné důsledky a na tomto API to neexistuje.
Jejich nová role se projeví při jejich dalším požadavku a při dalším požadavku každého API klíče, který je jí omezený.