एपीआई के ज़रिए कारोबारी या कंपनी की स्थिति के बारे में क्वेरी करना

उपयोग के उदाहरण

Google Maps Booking API दो तरीके उपलब्ध कराता है. इनका इस्तेमाल, प्रोग्राम के हिसाब से अलग-अलग कारोबारियों की स्थिति को वापस पाने के लिए किया जा सकता है. ऐसा, Actions Center के अलग-अलग इंटिग्रेशन या स्थानीय सेवाओं के विज्ञापनों की इन्वेंट्री के लिए किया जा सकता है.

Merchant Status API के इस्तेमाल के उदाहरण:

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

कारोबारी या कंपनी की स्थिति में क्या-क्या शामिल होता है

MerchantStatus में यह जानकारी शामिल होती है:

  • कारोबारी या कंपनी की इन्वेंट्री की स्थिति: यह बुकिंग और/या वेटलिस्ट की सुविधा देने वाले कारोबारियों या कंपनियों, दोनों पर लागू होती है.
  • कारोबारी या कंपनी के मिलान की स्थिति: इसमें मैच की गई कारोबार की लिस्टिंग की जानकारी शामिल होती है
  • सिर्फ़ Google Local Services Ads के लिए) मैच किया गया कारोबारी या कंपनी जो सेवा देती है: इसमें ग्राहक आईडी और सेवा की कैटगरी शामिल होती हैं.
  • इन यूआरएल से पता चलता है कि Reserve with Google के ज़रिए कारोबारी या कंपनी को कैसे दिखाया जाता है.

किसी एक कारोबारी या कंपनी का स्टेटस देखना

inventory.partners.merchants.getStatus का इस्तेमाल करके, किसी एक कारोबारी या कंपनी की स्थिति देखी जा सकती है:

GET https://mapsbooking.googleapis.com/v1alpha/inventory/partners/{partnerId}/merchants/{merchantId}/status

यहां Python कोड का एक सैंपल दिया गया है. अन्य भाषाओं में उदाहरण देखने के लिए, यहां जाएं:

from google.auth.transport.requests import AuthorizedSession
from google.oauth2 import service_account

credentials = service_account.Credentials.from_service_account_file(
    './your_key.json')
scoped_credentials = credentials.with_scopes(
    ['https://www.googleapis.com/auth/mapsbooking'])
authed_session = AuthorizedSession(scoped_credentials)

response = authed_session.get('https://partnerdev-mapsbooking.googleapis.com' +
    '/v1alpha/inventory/partners/123456789/merchants/001/status')

MerchantStatus के जवाब का एक उदाहरण यहां दिया गया है:

  {
    "name": "partners/123456789/merchants/001/status",
    "merchantName": "Foo Bar Restaurant",
    "inputGeoInfo": {
      "unstructured_address": "123 Foo Bar Street, Mountain View"
    },
    "processingStatus": "COMPLETED",
    "bookingStatus": {
      "hasValidFutureInventory": true
    },
    "waitlistStatus": {
      "hasValidWaitlistService": true
    }
    "geoMatch": {
      "name": "Foo Bar Restaurant",
      "formattedAddress": "123 Foo Bar St, Mountain View, CA 94043",
      "placeId": "ChIAAAAAAAAABBBBBBBB"
    },
    "directUrls": [
      {
        "type": "BOOKING",
        "url": "https://reserve-partnerdev.sandbox.google.com/maps/reserve/v/dine/m/Nwaaaaa"
      },
      {
        "type": "WAITLIST",
        "url": "https://reserve-partnerdev.sandbox.google.com/maps/reserve/v/wait/c/iDbbbbb"
      }
    ]
  }

कारोबारी या कंपनी के स्टेटस की जानकारी एक साथ पाना

inventory.partners.merchants.status.list का इस्तेमाल करके, उन सभी कारोबारियों या कंपनियों या कारोबारियों या कंपनियों के ग्रुप की स्थितियां वापस पाई जा सकती हैं जो इन्वेंट्री/मिलान की कुछ शर्तों को पूरा करते हैं. उदाहरण के लिए, बुकिंग की मान्य इन्वेंट्री के साथ मेल न खाने वाले सभी कारोबारियों या कंपनियों की जानकारी पाने के लिए, यह कॉल किया जा सकता है:

GET https://mapsbooking.googleapis.com/v1alpha/inventory/partners/{partnerId}/merchants/status?pageSize=50&bookingInventoryStatusRestrict=HAS_VALID_FUTURE_INVENTORY&geoMatchRestrict=GEO_UNMATCHED

जवाब का उदाहरण कुछ ऐसा दिखेगा:

  {
    "merchantStatuses": [
      {
        "name": "partners/123456789/merchants/002/status",
        "merchantName": "Bar Foo Restaurant",
        "inputGeoInfo": {
          "unstructured_address": "234 Bar Foo Street, Mountain View"
        },
        "processingStatus": "COMPLETED",
        "bookingStatus": {
          "hasValidFutureInventory": true
        },
        "waitlistStatus": {},
      },
      ...
      {
        "name": "partners/123456789/merchants/080/status",
        "merchantName": "Baz Restaurant",
        "inputGeoInfo": {
          "unstructured_address": "345 Baz Street, Mountain View"
        },
        "processingStatus": "COMPLETED",
        "bookingStatus": {
          "hasValidFutureInventory": true
        },
        "waitlistStatus": {
          "hasValidWaitlistService": true
        },
      },
    ],
    "nextPageToken": "AAABBBB"
  }

इस जवाब में, फ़िल्टर करने की शर्तों को पूरा करने वाले 50 MerchantStatus शामिल होंगे. इन्हें merchant_id के हिसाब से क्रम में लगाया जाएगा. जवाब में, अगले पेज के लिए क्वेरी करने के लिए पेज टोकन भी शामिल होता है. हालांकि, ऐसा तब होता है, जब यह आखिरी पेज न हो.

कृपया ध्यान दें: फ़िल्टर करने की शर्तें, सभी पेजों पर एक जैसी होनी चाहिए.

सबसे सही तरीके

आम तौर पर, कारोबारी या कंपनी के स्टेटस में बार-बार बदलाव नहीं होता.इसलिए, यह सुझाव दिया जाता है कि आप मिले हुए नतीजों को कैश मेमोरी में सेव करें. साथ ही, समय-समय पर (जैसे, हर कुछ घंटों में) नई क्वेरी के ज़रिए उन्हें फिर से पाएं. अगर प्रति सेकंड अनुरोधों की संख्या बहुत ज़्यादा होती है, तो Actions Center आपकी क्वेरी की संख्या को सीमित कर सकता है.