दस्तावेज़ पर जाएँ
API

भूमिका अपडेट करें

हर फ़ील्ड वैकल्पिक, और `permissions` पूरी सूची को बदल देता है।

PATCHapi.openemail.uk/roles/{id}

असली कॉल आपकी अपनी कुंजी से आपके वर्कस्पेस पर चलाता है।

PATCH /roles/{id}

हर फ़ील्ड वैकल्पिक, और permissions पूरी सूची को बदल देता है।

उदाहरण

roles:write चाहिए। फ़ील्ड छोड़ देने से वह वैसा ही रहता है, और PATCH का यही अर्थ है।

curl
curl -X PATCH "$OE/roles/role_2b81de079c1f0a4b7e05d386" -H "$AUTH" \  -H "Content-Type: application/json" \  -d '{ "permissions": ["emails:read", "threads:read", "labels:read", "contacts:read"] }'
रिस्पॉन्स
{  "object": "role",  "id": "role_2b81de079c1f0a4b7e05d386",  "name": "Support",  "description": "Answers the shared inboxes and nothing else.",  "permissions": ["emails:read", "threads:read", "labels:read", "contacts:read"],  "builtin": null,  "editable": true,  "deletable": true,  "members": 3,  "apiKeys": 1,  "createdAt": "2026-08-30T10:41:02.000Z",  "updatedAt": "2026-08-30T13:02:19.000Z"}

permissions पूरी सूची को बदल देता है। एक-एक अनुमति देने वाली कोई कॉल नहीं है और न होगी: ऑडिट सूची का होता है, और इंडेक्स से पता की जाने वाली patch दो टैब खुलते ही खोया हुआ अपडेट बन जाती है। भूमिका पढ़ें, जो प्रविष्टि बदलनी है वह बदलें, और सब वापस भेजें। एक अनुमति भेजना अनुमति जोड़ता नहीं। वह भूमिका को ठीक उसी एक अनुमति के साथ छोड़ देता है, साथ में वह सब जो उससे निहित है।

description वैकल्पिक होने के साथ-साथ nullable भी है, और यही अंतर patch का पूरा मतलब है: उसे छोड़ देने पर संग्रहित वाक्य बना रहता है, null भेजने पर मिट जाता है। nullable न होता तो विवरण हटाने का कोई तरीका ही न होता, सिवाय उसे एक स्पेस से बदलने के।

मालिक ही इकलौती भूमिका है जिस पर PATCH मना करता है, और वह उसके हर फ़ील्ड पर मना करता है: role_immutable, param: "roleId" के साथ एक 409। बाकी सब नई अनुमति-सूची जितनी सहजता से नया नाम भी लेते हैं, seed की गई भूमिकाएँ भी। builtin दर्ज करता है कि भूमिका कहाँ से आई, यह नहीं कि उसके साथ क्या किया जा सकता है। जो नाम कोई दूसरी भूमिका पहले से रखती है वह इसके बजाय role_name_taken है, param: "name" के साथ एक 409।

यह संपादन उस भूमिका को रखने वाले किसी भी व्यक्ति के अगले अनुरोध पर लागू होता है, API कुंजियाँ भी शामिल हैं, क्योंकि सीमा कैश नहीं की जाती, हर अनुरोध पर हल होती है। इसलिए भूमिका संकरी करना एक जीवंत निरस्तीकरण है जो उसके नीचे की कुंजियाँ घुमाए बिना प्रभावी होता है। चौड़ी करना भी उतना ही जीवंत है, और यही आधा हिस्सा याद रखने लायक है।