यह कैसे काम करता है

customer API, Android पर 'पहले से तैयार डिवाइस' सुविधा के लिए, डिवाइसों को प्रोग्राम के हिसाब से कंट्रोल और कॉन्फ़िगरेशन की सुविधा देता है. इस दस्तावेज़ में, एंटरप्राइज़ मोबिलिटी मैनेजमेंट (ईएमएम) सेवा देने वालों और एंटरप्राइज़ आईटी डेवलपर के लिए, एपीआई के बारे में जानकारी दी गई है. इस दस्तावेज़ को पढ़ने के बाद, आपको एपीआई में इस्तेमाल किए जाने वाले मुख्य संसाधनों और उनके इंटरैक्ट करने के तरीके को समझना चाहिए. अगर ज़ीरो-टच रजिस्ट्रेशन आपके लिए नया है, तो android.com का शुरुआती हिस्सा लेख पढ़ें.

खास जानकारी

ग्राहक एपीआई उन संगठनों की मदद करता है जो Android पर 'पहले से तैयार डिवाइस' सुविधा वाले डिवाइस खरीदते हैं. आपके ऐप्लिकेशन या टूल की मदद से आईटी एडमिन ये काम कर सकते हैं:

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

एपीआई की मदद से, आईटी एडमिन, 'पहले से तैयार डिवाइस' सुविधा से डिवाइसों का रजिस्ट्रेशन भी रद्द कर सकते हैं. अपने संगठन के उपयोगकर्ताओं को मैनेज करने या सेवा की शर्तें स्वीकार करने के लिए, आईटी एडमिन, 'पहले से तैयार डिवाइस' सुविधा वाले रजिस्ट्रेशन पोर्टल का इस्तेमाल करते हैं.

आम तौर पर, इस एपीआई का इस्तेमाल करने वाले लोग:

  • ईएमएम सेवा देने वाली कंपनियां अपने कंसोल में, पहले से तैयार डिवाइस की सुविधा जोड़ रही हैं.
  • एंटरप्राइज़ आईटी डेवलपर, ऐसे टूल बनाते हैं जिनसे 'पहले से तैयार डिवाइस' सुविधा वाले टास्क अपने-आप पूरे हो जाते हैं.

मुख्य संसाधन

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

डिवाइस और ग्राहक संसाधन संबंध

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

आपका ऐप्लिकेशन, एपीआई के जिन तरीकों और संसाधनों का इस्तेमाल कर सकता है उनकी सूची बनाने के लिए, एपीआई का रेफ़रंस देखें.

कॉन्फ़िगरेशन

Configuration एपीआई रिसॉर्स में ये चीज़ें शामिल हैं:

  • डिवाइसों पर इंस्टॉल किया गया ईएमएम का DPC.
  • डिवाइसों पर लागू की गई ईएमएम नीतियां.
  • सेटअप के दौरान उपयोगकर्ताओं की मदद करने के लिए, डिवाइस पर दिखने वाली संपर्क जानकारी.

इस एपीआई का इस्तेमाल करके, आपका ऐप्लिकेशन आईटी एडमिन के लिए कॉन्फ़िगरेशन मैनेज कर सकता है. कॉन्फ़िगरेशन को फ़ेच करने, बनाने, अपडेट करने, और मिटाने के लिए, एपीआई को कॉल करें. नीचे दिए गए उदाहरण में, नया कॉन्फ़िगरेशन बनाने का तरीका बताया गया है:

Java

// Add metadata to help the device user during provisioning.
Configuration configuration = new Configuration();
configuration.setConfigurationName("Sales team");
configuration.setCompanyName("XYZ Corp.");
configuration.setContactEmail("it-support@example.com");
configuration.setContactPhone("+1 (800) 555-0112");
configuration.setCustomMessage("We're setting up your phone. Call or email for help.");

// Set the DPC that zero-touch enrollment downloads and installs from Google Play.
configuration.setDpcResourcePath(dpc.getName());

// Set the JSON-formatted EMM provisioning extras that are passed to the DPC.
configuration.setDpcExtras("{"
      + "\"android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED\":true,"
      + "\"android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE\":{"
      + "\"default_min_password_length\":6,"
      + "\"company_name\":\"XYZ Corp\","
      + "\"management_server\":\"emm.example.com\","
      + "\"terms_url\":\"https://www.example.com/policies/terms/\","
      + "\"allowed_user_domains\":\"[\\\"example.com\\\", \\\"example.org\\\"]\""
      + "}"
      + "}");

// Create the new configuration on the server.
AndroidProvisioningPartner.Customers.Configurations.Create request =
      service.customers().configurations().create(customerAccount, configuration);
Configuration response = request.execute();

.NET

// Add metadata to help the device user during provisioning.
Configuration configuration = new Configuration
{
    ConfigurationName = "Sales team",
    CompanyName = "XYZ Corp.",
    ContactEmail = "it-support@example.com",
    ContactPhone = "+1 (800) 555-0112",
    CustomMessage = "We're setting up your phone. Call or email for help."
};

// Set the DPC that zero-touch enrollment downloads and installs from Google Play.
configuration.DpcResourcePath = dpc.Name;

// Set the JSON-formatted EMM provisioning extras that are passed to the DPC.
configuration.DpcExtras = @"{
    ""android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED"":true,
    ""android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE"":{
    ""default_min_password_length"":6,
    ""company_name"":""XYZ Corp"",
    ""management_server"":""emm.example.com"",
    ""terms_url"":""https://www.example.com/policies/terms/"",
    ""allowed_user_domains"":""[\""example.com\"", \""example.org\""]""
  }
}";

// Create the new configuration on the server.
var request = service.Customers.Configurations.Create(configuration, customerAccount);
var response = request.Execute();

Python

# Add metadata to help the device user during provisioning.
configuration = {
    'configurationName': 'Sales team',
    'companyName': 'XYZ Corp.',
    'contactEmail': 'it-support@example.com',
    'contactPhone': '+1 (800) 555-0112',
    'customMessage': 'We\'re setting up your phone. Call or email for help.'}

# Set the DPC that zero-touch enrollment installs from Google Play.
configuration['dpcResourcePath'] = dpc['name']

# Set the JSON-formatted EMM provisioning extras that are passed to the DPC.
configuration['dpcExtras'] = '''{
    "android.app.extra.PROVISIONING_LEAVE_ALL_SYSTEM_APPS_ENABLED":true,
    "android.app.extra.PROVISIONING_ADMIN_EXTRAS_BUNDLE":{
      "default_min_password_length":6,
      "company_name":"XYZ Corp",
      "management_server":"emm.example.com",
      "terms_url":"https://www.example.com/policies/terms/",
      "allowed_user_domains":"[\\"example.com\\", \\"example.org\\"]"}
}'''

# Create the new configuration on the server.
response = service.customers().configurations().create(
    parent=customer_account, body=configuration).execute()

पैच एपीआई का इस्तेमाल करके कॉन्फ़िगरेशन अपडेट करते समय, फ़ील्ड मास्क या हर उस फ़ील्ड के लिए वैल्यू शामिल करें जिसे null नहीं बनाना है. नीचे दिए गए उदाहरण के लिए डिफ़ॉल्ट कॉन्फ़िगरेशन देखें. इसमें यह बताया गया है कि कॉन्फ़िगरेशन को बेहतर तरीके से कैसे अपडेट किया जा सकता है.

कॉन्फ़िगरेशन मिटाएं

अगर कॉन्फ़िगरेशन अब भी डिवाइसों पर लागू है, तो उसे नहीं मिटाया जा सकता. अगर इस्तेमाल किए जा रहे किसी कॉन्फ़िगरेशन को मिटाने की कोशिश की जाती है, तो एपीआई का तरीका एक एचटीटीपी 400 Bad Request स्टेटस कोड दिखाता है. साथ ही, एक मैसेज दिखाता है कि कितने डिवाइसों में इस कॉन्फ़िगरेशन का इस्तेमाल किया जा रहा है. फिर से कोशिश करने से पहले, डिवाइसों से कॉन्फ़िगरेशन हटाने के लिए customers.devices.removeConfiguration को कॉल करें.

डिफ़ॉल्ट कॉन्फ़िगरेशन

'पहले से तैयार डिवाइस' सुविधा तब सबसे अच्छी तरह काम करती है, जब कोई संगठन डिफ़ॉल्ट कॉन्फ़िगरेशन सेट करता है. यह कॉन्फ़िगरेशन, संगठन के खरीदे गए सभी नए डिवाइसों पर लागू होता है. अगर कोई डिफ़ॉल्ट कॉन्फ़िगरेशन सेट नहीं है, तो आईटी एडमिन को डिफ़ॉल्ट कॉन्फ़िगरेशन सेट करने का निर्देश दें. नीचे दिए गए उदाहरण में, isDefault को true पर सेट करके मौजूदा कॉन्फ़िगरेशन को डिफ़ॉल्ट बनाने का तरीका बताया गया है:

Java

// Send minimal data with the request. Just the 2 required fields.
// targetConfiguration is an existing configuration that we want to make the default.
Configuration configuration = new Configuration();
configuration.setIsDefault(true);
configuration.setConfigurationId(targetConfiguration.getConfigurationId());

// Call the API, including the FieldMask to avoid setting other fields to null.
AndroidProvisioningPartner.Customers.Configurations.Patch request = service
      .customers()
      .configurations()
      .patch(targetConfiguration.getName(), configuration);
request.setUpdateMask("isDefault");
Configuration results = request.execute();

.NET

// Send minimal data with the request. Just the 2 required fields.
// targetConfiguration is an existing configuration that we want to make the default.
Configuration configuration = new Configuration
{
    IsDefault = true,
    ConfigurationId = targetConfiguration.ConfigurationId,
};

// Call the API, including the FieldMask to avoid setting other fields to null.
var request = service.Customers.Configurations.Patch(configuration,
                                                     targetConfiguration.Name);
request.UpdateMask = "IsDefault";
Configuration results = request.Execute();

Python

# Send minimal data with the request. Just the 2 required fields.
# target_configuration is an existing configuration we'll make the default.
configuration = {
    'isDefault': True,
    'configurationId': target_configuration['configurationId']}

# Call the API, including the FieldMask to avoid setting other fields to null.
response = service.customers().configurations().patch(
    name=target_configuration['name'],
    body=configuration, updateMask='isDefault').execute()

सिर्फ़ एक डिफ़ॉल्ट कॉन्फ़िगरेशन हो सकता है. नया डिफ़ॉल्ट कॉन्फ़िगरेशन बनाने से, पिछले कॉन्फ़िगरेशन के isDefault फ़ील्ड को false पर सेट कर दिया जाता है. isDefault फ़ील्ड में सही वैल्यू देखने के लिए, आपको कैश मेमोरी में सेव किए गए Configuration इंस्टेंस को रीफ़्रेश करना पड़ सकता है.

डिवाइस उपयोगकर्ताओं को गाइड करें

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

उपयोगकर्ता, सेट अप किए जा रहे डिवाइस से कॉल या ईमेल नहीं कर पाएंगे. इसलिए, टेलीफ़ोन नंबर और ईमेल पते को फ़ॉर्मैट करें, ताकि उन्हें आसानी से जानकारी मिल सके.

डिवाइस

जब कोई ग्राहक, 'पहले से तैयार डिवाइस' सुविधा के लिए डिवाइस खरीदता है, तो रीसेलर डिवाइस बनाते हैं—आईटी एडमिन, डिवाइस नहीं बना सकते. डिवाइसों के साथ काम करने के लिए, Device एपीआई संसाधन पर कॉल करने के तरीके उपलब्ध कराएं. अगर आपको डिवाइसों को खोजना है, तो सभी डिवाइसों की सूची बनाएं और हर बैच को अपने ऐप्लिकेशन में स्थानीय तौर पर फ़िल्टर करें. उदाहरण के लिए, नीचे पेज पर उपलब्ध नतीजे देखें.

डिवाइस कॉन्फ़िगर करें

डिवाइस पर कॉन्फ़िगरेशन लागू करने से, 'पहले से तैयार डिवाइस' सुविधा वाले डिवाइस को रजिस्टर किया जाता है. कॉन्फ़िगरेशन लागू करने के लिए, customers.devices.applyConfiguration पर कॉल करें. कॉन्फ़िगरेशन लागू करने के बाद, डिवाइस पहले बूट या अगली फ़ैक्ट्री रीसेट किए जाने पर, अपने-आप उसे सेट कर देता है. नीचे दिए गए उदाहरण में बताया गया है कि अलग-अलग डिवाइसों के कलेक्शन में किसी कॉन्फ़िगरेशन को कैसे लागू किया जा सकता है:

Java

List<Device> devices = getDevicesToConfigure(service);
Configuration configurationToApply = getConfigurationToApply(service);

// Loop through the collection and apply the configuration to each device. This might
// take some time if the collection contains many devices.
for (Device device : devices) {
    System.out.println(device.getDeviceIdentifier().getImei());

    // Wrap the device ID in a DeviceReference.
    DeviceReference deviceRef = new DeviceReference();
    deviceRef.setDeviceId(device.getDeviceId());

    // Build and send the request to the API.
    CustomerApplyConfigurationRequest body = new CustomerApplyConfigurationRequest();
    body.setConfiguration(configurationToApply.getName());
    body.setDevice(deviceRef);

    AndroidProvisioningPartner.Customers.Devices.ApplyConfiguration request = service
          .customers()
          .devices()
          .applyConfiguration(customerAccount, body);
    request.execute();
}

.NET

IList<Device> devices = GetDevicesToConfigure(service);
Configuration configurationToApply = GetConfigurationToApply(service);

// Loop through the collection and apply the configuration to each device. This might
// take some time if the collection contains many devices.
foreach (Device device in devices)
{
    Console.WriteLine(device.DeviceIdentifier.Imei);

    // Wrap the device ID in a DeviceReference.
    var deviceRef = new DeviceReference
    {
        DeviceId = device.DeviceId
    };

    // Build and send the request to the API.
    CustomerApplyConfigurationRequest body = new CustomerApplyConfigurationRequest
    {
        Configuration = configurationToApply.Name,
        Device = deviceRef
    };
    var request = service.Customers.Devices.ApplyConfiguration(body,
                                                               customerAccount);
    request.Execute();
}

Python

devices = get_devices_to_configure(service)
configuration = get_configuration_to_apply(service)

# Loop through the collection and apply the configuration to each device.
# This might take some time if the collection contains many devices.
for device in devices:
  print(device['deviceIdentifier']['imei'])

  # Wrap the device ID in a DeviceReference.
  device_ref = {'deviceId': device['deviceId']}

  # Build and send the request to the API.
  body = {'configuration': configuration['name'], 'device': device_ref}
  service.customers().devices().applyConfiguration(
      parent=customer_account, body=body).execute()

किसी डिवाइस से कॉन्फ़िगरेशन हटाने के लिए, customers.devices.removeConfiguration पर कॉल करें. डिवाइस को फ़ैक्ट्री रीसेट करने के बाद बदलाव लागू होता है.

डिवाइसों से दावा हटाएं

आईटी एडमिन, पहले से तैयार डिवाइस से किसी डिवाइस को हटाने के लिए उस पर दावा छोड़ सकते हैं. आईटी एडमिन, उस डिवाइस पर दावा छोड़ सकता है जिसे वह किसी दूसरे खाते में माइग्रेट करना चाहता है, बेचना चाहता है या रीसेलर को लौटाना चाहता है. किसी संगठन के डिवाइस से दावा हटाने के लिए, तरीका customers.devices.unclaim कॉल करें.

नीचे दिए गए उदाहरण में, IMEI नंबर और डिवाइस बनाने वाली कंपनी के नाम से किसी डिवाइस पर दावा हटाने का तरीका बताया गया है:

Java

// Wrap the hardware ID and manufacturer values in a DeviceIdentifier.
// Then wrap the DeviceIdentifier in a DeviceReference.
DeviceIdentifier identifier = new DeviceIdentifier();
identifier.setImei("123456789012347");
identifier.setManufacturer("Google");
DeviceReference reference = new DeviceReference();
reference.setDeviceIdentifier(identifier);

// Create the body of the request.
CustomerUnclaimDeviceRequest body = new CustomerUnclaimDeviceRequest();
body.setDevice(reference);

// Call the API method to unclaim the device from the organization.
service.customers().devices().unclaim(customerAccount, body).execute();

.NET

// Wrap the hardware ID and manufacturer values in a DeviceIdentifier.
// Then wrap the DeviceIdentifier in a DeviceReference.
DeviceIdentifier identifier = new DeviceIdentifier
{
    Imei = "123456789012347",
    Manufacturer = "Google"
};
DeviceReference reference = new DeviceReference();
reference.DeviceIdentifier = identifier;

// Create the body of the request.
CustomerUnclaimDeviceRequest body = new CustomerUnclaimDeviceRequest();
body.Device = reference;

// Call the API method to unclaim the device from the organization.
service.Customers.Devices.Unclaim(body, customerAccount).Execute();

Python

# Wrap the hardware ID and manufacturer values in a DeviceIdentifier.
# Then wrap the DeviceIdentifier in a DeviceReference.
identifier = {'imei': '123456789012347', 'manufacturer': 'Google'}
reference = {'deviceIdentifier': identifier}

# Create the body of the request.
body = {'device': reference}

# Call the API method to unclaim the device from the organization.
service.customers().devices().unclaim(
    parent=customer_account, body=body).execute()

डिवाइस का मेटाडेटा

आईटी एडमिन, डिवाइस के साथ रीसेलर का अटैच किया गया मेटाडेटा देख सकता है. डिवाइस को पहचानने में आईटी एडमिन की मदद करने के लिए, इस डिवाइस मेटाडेटा को अपने ऐप्लिकेशन में दिखाएं.

आपको जो मेटाडेटा दिख सकता है उसके बारे में ज़्यादा जानने के लिए, रीसेलर से जुड़ी डिवाइस मेटाडेटा गाइड पढ़ें.

पेज किए गए नतीजे

customers.devices.list एपीआई के तरीके से, डिवाइस की बहुत बड़ी सूचियां मिल सकती हैं. रिस्पॉन्स साइज़ को कम करने के लिए, यह और एपीआई के दूसरे तरीकों (जैसे कि customers.list) के लिए, पेज पर मौजूद नतीजे इस्तेमाल किए जा सकते हैं. पेज किए गए नतीजों के साथ, आपका ऐप्लिकेशन बार-बार बड़ी सूचियों के लिए एक बार में एक ही पेज पर अनुरोध कर सकता है और उन्हें प्रोसेस कर सकता है.

एपीआई तरीके को कॉल करने के बाद, देखें कि रिस्पॉन्स में nextPageToken के लिए वैल्यू शामिल है या नहीं. अगर nextPageToken null नहीं है, तो आपका ऐप्लिकेशन इसका इस्तेमाल डिवाइस के दूसरे पेज को फ़ेच करने के लिए कर सकता है. इसके लिए, इस तरीके को फिर से कॉल करें. आपको pageSize पैरामीटर में डिवाइस की ज़्यादा से ज़्यादा संख्या सेट करनी होगी. अगर nextPageToken null है, तो इसका मतलब है कि आपके ऐप्लिकेशन ने आखिरी पेज का अनुरोध किया है.

नीचे दिया गया उदाहरण दिखाता है कि आपका ऐप्लिकेशन डिवाइसों की सूची को, एक बार में एक पेज को कैसे प्रिंट कर सकता है:

Java

private void printDevices(AndroidProvisioningPartner service, String customerAccount,
      String pageToken) throws IOException {

    // Call the API to get a page of Devices. Send a page token from the method argument.
    // If the page token is null, the API returns the first page.
    AndroidProvisioningPartner.Customers.Devices.List request =
          service.customers().devices().list(customerAccount);
    request.setPageSize(50L);
    request.setPageToken(pageToken);
    CustomerListDevicesResponse response = request.execute();

    // Print the devices included in this page of results.
    for (Device device : response.getDevices()) {
        System.out.format("Device: %s\n", device.getName());
    }
    System.out.println("---");

    // Check to see if another page of devices is available. If yes, fetch & print the devices.
    if (response.getNextPageToken() != null) {
        this.printDevices(service, customerAccount, response.getNextPageToken());
    }
}

.NET

private void PrintDevices(AndroidProvisioningPartnerService service, String customerAccount,
                          String pageToken)
{
    // Call the API to get a page of Devices. Send a page token from the method argument.
    // If the page token is null, the API returns the first page.
    var request = service.Customers.Devices.List(customerAccount);
    request.PageSize = 50;
    request.PageToken = pageToken;
    var response = request.Execute();

    // Print the devices included in this page of results.
    foreach (Device device in response.Devices)
    {
        Console.WriteLine("Device: {0}", device.Name);
    }
    Console.WriteLine("---");

    // Check to see if another page of devices is available. If yes, fetch and print the devices.
    if (response.NextPageToken != null)
    {
        this.PrintDevices(service, customerAccount, response.NextPageToken);
    }
}

Python

def print_devices(service, customer_account, page_token):
  """Demonstrates how to loop through paginated lists of devices."""

  # Call the API to get a page of Devices. Send a page token from the method
  # argument. If the page token is None, the API returns the first page.
  response = service.customers().devices().list(
      parent=customer_account, pageSize=50, pageToken=page_token).execute()

  # Print the devices included in this page of results.
  for device in response['devices']:
    print('Device: {0}'.format(device['name']))
  print('---')

  # Check to see if another page of devices is available. If yes,
  # fetch and print the devices.
  if 'nextPageToken' in response:
    print_devices(service, customer_account, response['nextPageToken'])

शुरू करें

इसके बाद, ऑथराइज़ेशन में एपीआई कॉल को अनुमति देने का तरीका पढ़ें. अगर आपको एपीआई के बारे में ज़्यादा जानना है, तो Java, .NET, और Python के लिए क्विकस्टार्ट गाइड देखें. एपीआई कॉल के उदाहरण देखने और एपीआई कॉल को खुद करने के साथ प्रयोग करने के लिए, कोलैब का इस्तेमाल किया जा सकता है.