API üzerinden satıcı durumunu sorgulama

Kullanım alanları

Google Maps Booking API, kullanılabilecek iki yöntem sunar: her bir satıcının durumunu programlı bir şekilde almak için çeşitli İşlemler Merkezi entegrasyonları Yerel Hizmet Reklamları envanter.

Merchant Status API'nin kullanım alanları:

  • Çevik yaklaşımınızı göstermek için mevcut müşteri ilişkileri yönetimi envanterlerinin Actions Center platformunda nasıl gösterildiğini anlatacak.
  • Ürünlerin envanter ve eşleşme durumlarını izlemek için nasıl sağlayabileceğini de öğreneceksiniz.
  • Sitenizin eşleşme ve rezervasyon durumu için programatik olarak Satıcılara ulaşıp hatalı bilgileri düzelterek veri kalitesini artırın.

Satıcı durumu neleri içerir?

İlgili içeriği oluşturmak için kullanılan MerchantStatus aşağıdaki bilgileri içerir:

  • Satıcı envanter durumu: Hem rezervasyon hem de bekleme listesi satıcıları için geçerlidir.
  • Satıcı eşleşme durumu: Eşleşen işletme girişiyle ilgili ayrıntıları içerir
  • Örneğin, (Yalnızca Google Yerel Hizmet Reklamları) Eşleşen satıcı hizmeti sağlayıcısı: müşteri kimliği ve hizmet kategorilerini içerir.
  • Satıcının şu reklamverenle Rezervasyon aracılığıyla nasıl gösterildiğini gösteren URL'ler: Google'a dokunun.

Tek bir satıcı durumunu arama

Tek bir satıcının durumunu öğrenmek için inventory.partners.merchants.getStatus:

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

Aşağıda bir Python kod örneği verilmiştir (Diğer dillerdeki örneklere bakın) burada bulabilirsiniz):

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')

Örnek MerchantStatus yanıtı şu şekilde görünür:

  {
    "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"
      }
    ]
  }

Satıcı durumlarını toplu olarak al

Tüm satıcıların veya bir satıcı grubunun durumlarını alabilirsiniz belirli envanter/eşleşme koşullarını karşılama, inventory.partners.merchants.status.list. Örneğin herkesin Bu çağrı, geçerli olan, ileri tarihli tarihli rezervasyonları olan eşleşmeyen tüm satıcıları duyurmak için kullanılır envanter:

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

Örnek bir yanıt aşağıdaki gibi görünecektir:

  {
    "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"
  }

Bu yanıt 50 öğe içerecek Filtreleme koşullarını karşılayan ve buna göre sıralanmış MerchantStatus merchant_id. Yanıtta ayrıca bir sayfa jetonu (varsa son sayfa değil) emin olun.

Filtreleme koşullarının tüm reklam kategorilerinde tutarlı olması gerektiğini unutmayın. sayfalar.

En İyi Uygulamalar

Satıcı durumları çoğu zaman değişmediğinden, alınan sonuçları düzenli olarak (ör. birkaç dakikada bir) saat) döndürebilir. İşlemler Merkezi, sorgularının sayısını artırır.