Directory API: संगठन की इकाइयां

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

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 स्टेटस कोड दिखता है.

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