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

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

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

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

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

संगठन की इकाई बनाने के लिए, नीचे दिए गए 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",
    "blockInheritance": false
}

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

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

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

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

संगठन की इकाई को अपडेट करने के लिए, नीचे दिए गए 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",
    "blockInheritance": false
}

अगर उपयोगकर्ता खाता बनाते समय, किसी उपयोगकर्ता को संगठन की किसी खास इकाई के लिए असाइन नहीं किया गया था, तो वह खाता संगठन की टॉप-लेवल की इकाई में शामिल होता है. किसी उपयोगकर्ता के संगठन की इकाई से यह तय होता है कि उसके पास 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 का रिस्पॉन्स

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

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",
    "blockInheritance": false
}
अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है

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

संगठन की किसी इकाई, उसके तहत आने वाले सभी उप-संगठनों की इकाइयों, संगठन की सभी इकाइयों, और संगठन की सभी उप-इकाइयों के साथ-साथ संगठन की सभी उप-इकाइयों को वापस लाने के लिए, नीचे दिए गए 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",
    "blockInheritance": false
     },
     {
    "kind": "directory#orgUnit",
    "name": "frontline sales",
    "description": "The frontline sales team",
    "orgUnitPath": "/corp/sales/frontline sales",
    "parentOrgUnitPath": "/corp/sales",
    "blockInheritance": false
     },
     {
    "kind": "directory#orgUnit",
    "name": "support",
    "description": "The corporate support team",
    "orgUnitPath": "/corp/support",
    "parentOrgUnitPath": "/corp",
    "blockInheritance": false
     },
     {
    "kind": "directory#orgUnit",
    "name": "sales_support",
    "description": "The BEST support team",
    "orgUnitPath": "/corp/support/sales_support",
    "parentOrgUnitPath": "/corp/support",
    "blockInheritance": false
     }
  ]
  }

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

संगठन की किसी इकाई को मिटाने के लिए, नीचे दिए गए 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 स्टेटस कोड दिखता है.

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