OAuth

ध्यान दें: इस दस्तावेज़ में तीन पैरों वाले OAuth2 फ़्लो के बारे में बताया गया है. इसका इस्तेमाल दूसरे पक्षों के डेटा का ऐक्सेस पाने के लिए किया जाता है. अगर तीसरे पक्ष का कोई ऐसा ऐप्लिकेशन डेवलप किया जा रहा है जिसे अपने क्लाइंट के Merchant Center खातों का ऐक्सेस चाहिए, तो पुष्टि करने के इस तरीके का इस्तेमाल करें. अगर आप ऐसा इन-हाउस ऐप्लिकेशन बना रहे हैं जिससे सिर्फ़ आपके Merchant Center खाते को ऐक्सेस किया जा सकता है, तो कृपया सेवा खाते की गाइड देखें.

आपके ऐप्लिकेशन से 'शॉपिंग के लिए Google Content API' को भेजे जाने वाले हर अनुरोध में, अनुमति वाला टोकन शामिल होना चाहिए. इस टोकन से Google आपके ऐप्लिकेशन की पहचान भी करता है.

अनुमति देने के प्रोटोकॉल के बारे में जानकारी

अनुरोधों को अनुमति देने के लिए, आपके ऐप्लिकेशन में OAuth 2.0 का इस्तेमाल किया जाना चाहिए. अनुमति देने वाले दूसरे प्रोटोकॉल इस्तेमाल नहीं किए जा सकते. अगर आपका ऐप्लिकेशन Google से साइन इन करने की सुविधा इस्तेमाल करता है, तो अनुमति देने से जुड़े कुछ पहलुओं को Google आपके लिए खुद मैनेज करता है.

OAuth 2.0 से अनुरोधों को अनुमति देना

'शॉपिंग के लिए Google Content API' के सभी अनुरोधों के लिए अनुमति किसी ऐसे उपयोगकर्ता को देनी चाहिए जिसके पास ऐसा करने का अधिकार हो.

OAuth 2.0 के लिए अनुमति देने की प्रक्रिया या "तरीका" अलग-अलग हो सकता है. यह इस बात पर निर्भर करता है कि ऐप्लिकेशन किस तरह का है. सभी तरह के ऐप्लिकेशन के लिए नीचे दी गई सामान्य प्रक्रिया लागू होती है:

  1. ऐप्लिकेशन बनाने के बाद, उसे Google API (एपीआई) कंसोल का इस्तेमाल करके, रजिस्टर किया जाता है. इसके बाद, Google आपको क्लाइंट आईडी और क्लाइंट सीक्रेट जैसी जानकारी देगा. इस जानकारी की ज़रूरत आपको बाद में पड़ेगी.
  2. Google API (एपीआई) कंसोल में 'शॉपिंग के लिए Google Content API' चालू करें. (अगर एपीआई को 'API कंसोल' की सूची में नहीं जोड़ा गया है, तो यह चरण छोड़ दें.)
  3. जब आपके ऐप्लिकेशन को उपयोगकर्ता के डेटा को ऐक्सेस करने की ज़रूरत होती है, तब वह Google से, डेटा के खास लिंक का अनुरोध करता है.
  4. Google, उपयोगकर्ता को सहमति वाली स्क्रीन दिखाता है, जिसमें उनसे आपके ऐप्लिकेशन को उनके कुछ डेटा को ऐक्सेस करने की अनुमति मांगी जाती है.
  5. अगर उपयोगकर्ता इसकी अनुमति दे देता है, तो Google आपके ऐप्लिकेशन को कुछ समय के लिए इस्तेमाल किए जा सकने वाला ऐक्सेस टोकन देता है.
  6. आपका ऐप्लिकेशन, ऐक्सेस टोकन से उपयोगकर्ता के डेटा को ऐक्सेस करने का अनुरोध करता है.
  7. अगर Google को पता चलता है कि आपका अनुरोध और टोकन मान्य है, तो वह आपके ऐप्लिकेशन को अनुरोध किए गए डेटा का ऐक्सेस दे देता है.

कुछ तरीकों में दूसरे चरण भी शामिल हो सकते हैं, जैसे कि रिफ़्रेश टोकन इस्तेमाल करके, नया ऐक्सेस टोकन पाना. अलग-अलग तरह के ऐप्लिकेशन के लिए डेटा ऐक्सेस करने के तरीकों के बारे में ज़्यादा जानकारी पाने के लिए, Google का OAuth 2.0 दस्तावेज़ पढ़ें.

यहां 'शॉपिंग के लिए Google Content API' के लिए, OAuth 2.0 का इस्तेमाल करके अनुमति के लिए अनुरोध करने के बारे में जानकारी दी गई है:

दायरा लिंक
https://www.googleapis.com/auth/content पढ़ने/लिखने का ऐक्सेस.

OAuth 2.0 का इस्तेमाल करके, डेटा ऐक्सेस करने का अनुरोध करने के लिए, आपके ऐप्लिकेशन को अनुरोध के तरीके की जानकारी देनी होगी. साथ ही, वह जानकारी भी देनी होगी जो आपको ऐप्लिकेशन रजिस्टर करते समय, Google से मिली थी, जैसे कि क्लाइंट आईडी और क्लाइंट सीक्रेट.

सलाह: Google API की क्लाइंट लाइब्रेरी आपके लिए अनुमति देने की कुछ प्रक्रियाएं खुद कर सकती है. ये लाइब्रेरी कई प्रोग्रामिंग भाषाओं के लिए उपलब्ध होती हैं. ज़्यादा जानकारी के लिए लाइब्रेरी और नमूनों वाला पेज देखें.

OAuth के दायरे पाएं

हमारा सुझाव है कि दायरा चुनने से जुड़ी समस्याओं से बचने के लिए, इंक्रीमेंटल अनुमति का इस्तेमाल करें.

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

OAuth अनुरोध से मिले जवाब की जांच करके, पुष्टि करें कि आपको सही दायरे मिले हैं.

ज़्यादा जानकारी के लिए, OAuth 2.0 की नीतियां पेज देखें.

ऐप्लिकेशन की पुष्टि का अनुरोध करें

Content API को ऐक्सेस करने वाले किसी भी ऐप्लिकेशन को OAuth की पुष्टि करने की प्रक्रिया से गुज़रना होगा. बिना पुष्टि वाले ऐप्लिकेशन के ऐसे उपयोगकर्ता जो Content API को ऐक्सेस करते हैं उन्हें चेतावनियां मिलेंगी. साथ ही, ऐप्लिकेशन के कुछ फ़ंक्शन ही काम करेंगे. इस मामले में, ऐप्लिकेशन को Google Cloud में यूनीक OAuth 2.0 क्लाइंट आईडी के तौर पर परिभाषित किया जाता है.

पुष्टि की प्रक्रिया पूरी होने में आम तौर पर तीन से पांच कामकाजी दिन लगते हैं. इस प्रक्रिया के बारे में ज़्यादा जानने और पुष्टि के लिए अनुरोध सबमिट करने के लिए, ऐप्लिकेशन की पुष्टि करना देखें.

यह नीति सभी ऐप्लिकेशन पर लागू होती है. हमारा सुझाव है कि कारोबार से जुड़ी किसी भी रुकावट से बचने के लिए, सभी ऐप्लिकेशन जल्द से जल्द Google OAuth की पुष्टि करने की प्रक्रिया से गुज़रें.

अनुमति का उदाहरण

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

PHP

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

<?php
require_once 'Google/Client.php';

session_start();

$client = new Google_Client();
$client->setApplicationName('Sample Content API application');
$client->setClientId('YOUR_CLIENT_ID');
$client->setClientSecret('YOUR_CLIENT_SECRET');
$client->setRedirectUri('YOUR_REDIRECT_URI');
$client->setScopes('https://www.googleapis.com/auth/content');

if (isset($_SESSION['oauth_access_token'])) {
  $client->setAccessToken($_SESSION['oauth_access_token']);
} elseif (isset($_GET['code'])) {
  $token = $client->authenticate($_GET['code']);
  $_SESSION['oauth_access_token'] = $token;
} else {
  header('Location: ' . $client->createAuthUrl());
  exit;
}

अब जब आपने पुष्टि कर ली है, तो अब आप एपीआई ऑब्जेक्ट से सेवा के ऑब्जेक्ट बना सकते हैं.

require_once 'Google/Service/ShoppingContent.php';

$service = new Google_Service_ShoppingContent($client);