डायरेक्ट्री एपीआई: संगठन की इकाइयां

संगठन की इकाइयों को मैनेज करना

Google Workspace खाते का संगठन ट्री, संगठन की इकाइयों से मिलकर बना होता है. इसकी मदद से, उपयोगकर्ताओं को लॉजिकल और हैरारकी के हिसाब से मैनेज किया जा सकता है. यह Admin console के 'संगठन और उपयोगकर्ता' टैब पर मिलने वाली सुविधा के समान है. ग्राहक के संगठन की इकाई के लेवल की संख्या 35 तक सीमित है. ज़्यादा जानकारी के लिए, एडमिन सहायता केंद्र पर जाएं.

  • Google Workspace खाते में संगठन का सिर्फ़ एक ट्री ग्रुप होता है. इस खाते को शुरू में कॉन्फ़िगर करने पर, खाता-लेवल पर एक संगठन की इकाई होती है. यह प्राइमरी डोमेन से जुड़ा संगठन है. प्राइमरी डोमेन के बारे में ज़्यादा जानकारी के लिए, एपीआई की सीमाओं के बारे में जानकारी देखें.
  • संगठन की इकाई का पाथनाम यूनीक होता है. हो सकता है कि संगठन की हैरारकी में, संगठन की इकाई का नाम यूनीक न हो, लेकिन उस इकाई का नाम, उसी लेवल की अन्य इकाइयों के नाम से अलग हो. साथ ही, संगठन की इकाई का नाम केस-सेंसिटिव (बड़े और छोटे अक्षरों में अंतर) नहीं होता.
  • संगठन की इकाई पर, संगठन की हैरारकी की नीतियां लागू होती हैं. इनहेरिट की गई नीति को बदलकर, संगठन की कोई भी इकाई, पैरंट इनहेरिटेंस की इस चेन को ब्लॉक कर सकती है. एक से दूसरी नीति को प्राथमिकता देने का फ़ैसला, सबसे करीबी संगठनात्मक इकाई तय करती है. इसका मतलब है कि संगठन की निचली इकाई की नीतियां, पैरंट की ऊपरी इकाइयों की नीतियों से ज़्यादा अहम हो सकती हैं. संगठन के स्ट्रक्चर में इनहेरिटेंस और उपयोगकर्ताओं के बारे में ज़्यादा जानकारी के लिए, एडमिन से जुड़े सहायता केंद्र पर जाएं.
  • किसी संगठन की इकाई को हैरारकी वाले ट्री में ऊपर या नीचे ले जाया जा सकता है. साथ ही, नए संगठन में जानकारी भरते समय या उपयोगकर्ताओं के किसी सबसेट को संगठन की एक इकाई से दूसरी इकाई में ले जाते समय, संगठन से जुड़े उपयोगकर्ताओं को अलग-अलग या एक साथ ट्रांसफ़र किया जा सकता है.
  • संगठन की इकाई की प्रॉपर्टी में सेव किया गया डेटा, लगातार बदल सकता है. अनुरोध करते समय, इस बात की गारंटी होती है कि किसी इकाई के लिए वापस की गई प्रॉपर्टी, इकाई वापस मिलने के समय एक जैसी रहेंगी.इसका मतलब है कि आपको "आंशिक" अपडेट नहीं दिखेंगे. अगर डेटा वापस पाने की प्रोसेस में एक से ज़्यादा इकाइयां मिलती हैं, तो यह गारंटी नहीं दी जा सकती कि सभी इकाइयां एक जैसी हों.ऐसा खास तौर पर तब होता है, जब पेजेशन में जवाब कई पेजों पर दिखता है.

संगठन की इकाई बनाना

संगठन की इकाई बनाने के लिए, यहां दिए गए POST अनुरोध का इस्तेमाल करें. साथ ही, अनुरोधों को अनुमति दें में बताई गई अनुमति शामिल करें.

अगर आप संगठन की कोई इकाई बनाने वाले एडमिन हैं, तो my_customer का इस्तेमाल करें.

POST https://admin.googleapis.com/admin/directory/v1/customer/my_customer/orgunits

अगर आप रीसेलर हैं और आपको फिर से बेचे गए ग्राहक के लिए संगठन की इकाई बनानी है, तो customerId का इस्तेमाल करें. customerId को वापस पाने के लिए, उपयोगकर्ता की जानकारी वापस पाएं ऑपरेशन का इस्तेमाल करें.

POST https://admin.googleapis.com/admin/directory/v1/customer/customerId/orgunits

अपने खाते के संगठन के स्ट्रक्चर को समझने के लिए, एडमिन सहायता केंद्र पर जाएं. अनुरोध और रिस्पॉन्स प्रॉपर्टी के बारे में जानने के लिए, एपीआई का रेफ़रंस देखें.

JSON अनुरोध

यहां दिए गए JSON रीसेलर के उदाहरण में, अनुरोध बॉडी का एक सैंपल दिखाया गया है. इससे sales_support ऑर्गैनाइज़ेशनल यूनिट बनती है. name और parentOrgUnitPath ज़रूरी हैं:

POST https://admin.googleapis.com/admin/directory/v1/customer/C03az79cb/orgunits
{
    "name": "sales_support",
    "description": "The sales support team",
    "parentOrgUnitPath": "/corp/support",
}

JSON का रिस्पॉन्स

अनुरोध पूरा होने पर, एचटीटीपी 201 स्टेटस कोड दिखता है. स्टेटस कोड के साथ-साथ, रिस्पॉन्स में नए ग्रुप की प्रॉपर्टी भी दिखती हैं:

{
    "kind": "directory#orgUnit",
    "name": "sales_support",
    "description": "The sales support team",
    "orgUnitPath": "/corp/support/sales_support",
    "parentOrgUnitPath": "/corp/support"
  }

संगठन की इकाई अपडेट करना

संगठन की इकाई को अपडेट करने के लिए, नीचे दिए गए PUT अनुरोध का इस्तेमाल करें. साथ ही, अनुमति देने के अनुरोध में दी गई अनुमति को शामिल करें. अनुरोध और रिस्पॉन्स प्रॉपर्टी के लिए, एपीआई का संदर्भ देखें:

अगर आप संगठन की इकाई को अपडेट करने वाले एडमिन हैं, तो my_customer का इस्तेमाल करें.

 PUT https://admin.googleapis.com/admin/directory/v1/customer/my_customer/orgunits/orgUnitPath

अगर आप रीसेलर हैं और रीसेलर से खरीदने वाले किसी ग्राहक के लिए, संगठन की इकाई अपडेट कर रहे हैं, तो customerId का इस्तेमाल करें. customerId पाने के लिए, उपयोगकर्ता की जानकारी पाएं ऑपरेशन का इस्तेमाल करें.

PUT https://admin.googleapis.com/admin/directory/v1/customer/customerId/orgunits/orgUnitPath

JSON अनुरोध

नीचे दिए गए उदाहरण में, संगठन की इकाई का ब्यौरा अपडेट किया गया है:

PUT https://admin.googleapis.com/admin/directory/v1/customer/my_customer/orgunits/corp/support/sales_support
{
    "description": "The BEST sales support team"
}

अपडेट के अनुरोध के लिए नोट:

  • आपको अपने अनुरोध में सिर्फ़ अपडेट की गई जानकारी सबमिट करनी होगी. आपको अनुरोध में ग्रुप की सभी प्रॉपर्टी डालने की ज़रूरत नहीं है.
  • अगर उपयोगकर्ता खाता बनाते समय, उपयोगकर्ता को किसी खास संगठन की इकाई में असाइन नहीं किया गया था, तो खाता संगठन की टॉप-लेवल इकाई में होता है.
  • अनुरोध में parentOrgUnitPath प्रॉपर्टी को सेट करके, संगठन की किसी इकाई को अपने खाते के संगठन की संरचना के दूसरे हिस्से में ले जाने का विकल्प होता है. यह ध्यान रखना ज़रूरी है कि किसी संगठन की इकाई को एक से दूसरी जगह ले जाने पर, उस इकाई के उपयोगकर्ताओं के लिए सेवाएं और सेटिंग बदल सकती हैं.

JSON का रिस्पॉन्स

अनुरोध पूरा होने पर, एचटीटीपी 201 स्टेटस कोड दिखता है. स्टेटस कोड के साथ-साथ, रिस्पॉन्स में अपडेट की गई संगठन की इकाई की प्रॉपर्टी भी दिखती हैं.

{
    "kind": "directory#orgUnit",
    "name": "sales_support",
    "description": "The BEST sales support team",
    "orgUnitPath": "/corp/support/sales_support",
    "parentOrgUnitPath": "/corp/support"
}

अगर उपयोगकर्ता खाता बनाते समय, उपयोगकर्ता को किसी खास संगठन की इकाई में असाइन नहीं किया गया था, तो खाता संगठन की टॉप-लेवल इकाई में होता है. किसी उपयोगकर्ता की संगठन की इकाई तय करती है कि उसके पास Google Workspace की कौनसी सेवाओं का ऐक्सेस है. अगर उपयोगकर्ता को किसी नए संगठन में ले जाया जाता है, तो उपयोगकर्ता का ऐक्सेस बदल जाता है. संगठन के स्ट्रक्चर के बारे में ज़्यादा जानने के लिए, एडमिन से जुड़े सहायता केंद्र पर जाएं. किसी उपयोगकर्ता को किसी दूसरे संगठन में ले जाने के बारे में ज़्यादा जानकारी के लिए, उपयोगकर्ता की जानकारी अपडेट करना लेख पढ़ें.

संगठन की इकाई वापस लाना

संगठन की इकाई को वापस पाने के लिए, यहां दिए गए GET अनुरोध का इस्तेमाल करें. साथ ही, अनुरोधों को अनुमति दें में बताए गए अनुमति का ब्यौरा शामिल करें. orgUnitPath क्वेरी स्ट्रिंग, इस संगठन की इकाई का पूरा पाथ है. अनुरोध और रिस्पॉन्स प्रॉपर्टी के लिए, एपीआई का रेफ़रंस देखें:

अगर एडमिन आपके संगठन की किसी इकाई को वापस ला रहा है, तो my_customer का इस्तेमाल करें.

GET https://admin.googleapis.com/admin/directory/v1/customer/my_customer/orgunits/orgUnitPath

अगर आप ऐसे रीसेलर हैं जो फिर से बेचे गए ग्राहक के लिए संगठन की इकाई वापस पाना चाहते हैं, तो customerId का इस्तेमाल करें. customerId पाने के लिए, उपयोगकर्ता को वापस लाएं कार्रवाई का इस्तेमाल करें.

GET https://admin.googleapis.com/admin/directory/v1/customer/customerId/orgunits/orgUnitPath

JSON का रिस्पॉन्स

नीचे दिए गए उदाहरण में, 'फ़्रंटलाइन सेल्स' संगठन की इकाई को वापस पाया गया है. अनुरोध के यूआरआई में 'frontline+sales' एचटीटीपी कोडिंग पर ध्यान दें:

GET https://admin.googleapis.com/admin/directory/v1/customer/my_customer/orgunits/corp/sales/frontline+sales

अनुरोध पूरा होने पर, एचटीटीपी 200 स्टेटस कोड दिखता है. स्टेटस कोड के साथ-साथ, रिस्पॉन्स में संगठन के यूनिट की सेटिंग भी दिखती हैं:

{
    "kind": "directory#orgUnit",
    "name": "frontline sales",
    "description": "The frontline sales team",
    "orgUnitPath": "/corp/sales/frontline sales",
    "parentOrgUnitPath": "/corp/sales"
}

संगठन की इकाइयां वापस लाना

किसी संगठन की इकाई के तहत आने वाली सभी उप-इकाइयों, संगठन की इकाई के तहत आने वाली सीधे तौर पर जुड़ी उप-इकाइयों या संगठन की इकाई के साथ-साथ सभी उप-इकाइयों को वापस पाने के लिए, यहां दिए गए GET अनुरोध का इस्तेमाल करें. साथ ही, अनुरोधों को अनुमति दें में बताए गए अनुमति फ़ॉर्मैट का इस्तेमाल करें. अनुरोध और रिस्पॉन्स प्रॉपर्टी के बारे में जानने के लिए, एपीआई का रेफ़रंस देखें.

अगर आप खाता एडमिन हैं और सभी उप-संगठन की इकाइयों को वापस ला रहे हैं, तो my_customer का इस्तेमाल करें. इस उदाहरण में, आसानी से पढ़ने के लिए लाइन रिटर्न का इस्तेमाल किया गया है:

GET https://admin.googleapis.com/admin/directory/v1/customer/my_customer
/orgunits?orgUnitPath=full org unit path&type=all or children or all_including_parent

अगर आप रीसेलर हैं और आपको फिर से बेचे गए ग्राहक के लिए संगठन की इकाइयां वापस लानी हैं, तो customerId का इस्तेमाल करें. customerId पाने के लिए, किसी उपयोगकर्ता की जानकारी पाएं ऑपरेशन का इस्तेमाल करें:

GET https://admin.googleapis.com/admin/directory/v1/customer/customerId
/orgunits?orgUnitPath=full org unit path&type=all or children or all_including_parent

get क्वेरी स्ट्रिंग या तो orgUnitPath में मौजूद all सब-संगठन की इकाइयां, orgUnitPath के children या सभी उप-संगठन की इकाइयां और all_including_parent के लिए तय की गई orgUnitPath दिखाती है. डिफ़ॉल्ट रूप से, यह type=children पर सेट होता है.

JSON का रिस्पॉन्स

उदाहरण के लिए, यह अनुरोध /corp संगठन की इकाई से शुरू होने वाली सभी संगठन की इकाइयों को दिखाता है:

GET https://admin.googleapis.com/admin/directory/v1/customer/my_customer/orgunits?orgUnitPath=/corp&type=all

सही रिस्पॉन्स मिलने पर एचटीटीपी 200 स्टेटस कोड दिखता है. स्टेटस कोड के साथ-साथ, रिस्पॉन्स में खाते की संगठनात्मक इकाइयां भी दिखती हैं:

{
"kind": "directory#orgUnits",
    "organizationUnits": [
     {
    "kind": "directory#orgUnit",
    "name": "sales",
    "description": "The corporate sales team",
    "orgUnitPath": "/corp/sales",
    "parentOrgUnitPath": "/corp"
     },
     {
    "kind": "directory#orgUnit",
    "name": "frontline sales",
    "description": "The frontline sales team",
    "orgUnitPath": "/corp/sales/frontline sales",
    "parentOrgUnitPath": "/corp/sales"
     },
     {
    "kind": "directory#orgUnit",
    "name": "support",
    "description": "The corporate support team",
    "orgUnitPath": "/corp/support",
    "parentOrgUnitPath": "/corp"
     },
     {
    "kind": "directory#orgUnit",
    "name": "sales_support",
    "description": "The BEST support team",
    "orgUnitPath": "/corp/support/sales_support",
    "parentOrgUnitPath": "/corp/support"
     }
  ]
  }

संगठन की इकाई मिटाना

किसी संगठन की इकाई को मिटाने के लिए, यहां दिए गए DELETE अनुरोध का इस्तेमाल करें. साथ ही, अनुरोधों को अनुमति दें में बताई गई अनुमति शामिल करें. customerId को वापस पाने के लिए, उपयोगकर्ता की जानकारी वापस पाएं कार्रवाई का इस्तेमाल करें. अनुरोध और रिस्पॉन्स प्रॉपर्टी के लिए, एपीआई का रेफ़रंस देखें:

अगर आप खाते के एडमिन हैं और आपको किसी संगठन की इकाई मिटानी है, तो my_customer का इस्तेमाल करें.

DELETE https://admin.googleapis.com/admin/directory/v1/customer/my_customer/orgunits/orgUnitPath

अगर आप रीसेलर हैं और रीसेलर से खरीदने वाले ग्राहक की किसी संगठन की इकाई को मिटा रहे हैं, तो customerId का इस्तेमाल करें. customerId पाने के लिए, उपयोगकर्ता की जानकारी वापस पाएं ऑपरेशन का इस्तेमाल करें.

DELETE https://admin.googleapis.com/admin/directory/v1/customer/customerId/orgunits/orgUnitPath
उदाहरण के लिए, इस रीसेलर एडमिन का DELETE अनुरोध, संगठन की 'backend_tests' इकाई को मिटा देता है:
DELETE https://admin.googleapis.com/admin/directory/v1/customer/C03az79cb/orgunits/corp/sales/backend_tests

अनुरोध पूरा होने पर, एचटीटीपी 200 स्टेटस कोड दिखता है.

सिर्फ़ उन संगठन की इकाइयों को मिटाया जा सकता है जिनमें कोई चाइल्ड संगठन की इकाई या कोई उपयोगकर्ता असाइन न किया गया हो. उपयोगकर्ताओं को संगठन की दूसरी इकाइयों में फिर से असाइन करना होगा. साथ ही, मिटाने से पहले संगठन की सभी उप-इकाइयों को हटाना होगा.