/api/v4/connected-accounts/connect-googleBir Google hesabı bağlayın
Bir Google Business Profile hesabını Listings API hesabınıza bağlamak için bir OAuth URL'si döndürür.
Parametreler
Gövde
| Ad | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| input | object | zorunlu | Wrapper object. The entire request body must be nested under `input`. |
| input.successUrl | string | zorunlu | URL the user is redirected to after they successfully authorize Google. Must be an absolute https URL you control. |
| input.errorUrl | string | zorunlu | URL the user is redirected to if they cancel or the authorization fails. Must be an absolute https URL you control. |
Örnek istek
Yapıştırmaya hazır gövde. Yer tutucu kimlikleri ve değerleri kendi değerlerinizle değiştirin.
{ "input": { "successUrl": "https://listingsapi.com/docs/api/connected-accounts-trigger-matches", "errorUrl": "https://listingsapi.com/docs/api/connected-accounts-connect" }}Yanıtlar
200OAuth URL generated successfully. Redirect the user to `url` to begin the Google authorization flow. The `url` shown is a placeholder; send the user to the `url` returned in your own response.
{ "data": { "bulkConnectLinkForGoogle": { "errors": null, "success": true, "url": "https://connect.example.com/oauth?token=8f3c1d92-..." } }}400Bad request, the body was not wrapped in `input`, or `successUrl`/`errorUrl` was omitted (error message: `Variable "$input" of required type "GoogleOauthBulkInput!" was not provided`).
401Unauthenticated, missing or invalid API key.
Bir kullanıcının, Google Business Profile konumlarını toplu olarak yönetmesi için Listings API'ye yetki vermek üzere ziyaret ettiği kısa ömürlü bir OAuth URL'si oluşturur. Kullanıcıyı döndürülen url adresine yönlendirin; kullanıcı Google'ın izin ekranındaki işlemleri tamamlar ve sağladığınız URL'lerden birine geri yönlendirilir. Bağlantı 24 saat boyunca geçerlidir.
İstek yapısı. Gövde, zorunlu iki alan olan successUrl ve errorUrl alanlarını içeren bir input nesnesi içinde yer almalıdır. Bunlar, kullanıcı Google'ın izin ekranındaki işlemleri tamamladıktan (veya yarıda bıraktıktan) sonra geri yönlendirileceği mutlak https URL'leridir; kendi uygulamanızda başarı durumunda ilk kurulum sürecini sürdüren ve hata durumunda yeniden deneme olanağı sunan uç noktaları iletin. accountId alanı yoktur, bağlantı kurma bağlantısı her zaman API anahtarının sahibi olan hesapla sınırlıdır ve accountId (veya bir nesne içine alınmamış düz bir gövde) gönderilmesi HTTP 400 ile reddedilir.
Bu, toplu bağlantı kurma iş akışının ilk adımıdır. Hesaba yetki verildikten sonra hesap, bağlı hesapları listeleme uç noktasında (GET /connected-accounts), sonraki her çağrıda kullanacağınız bir connectedAccountId ile görünür.
Kullanım senaryosu: bir ajans müşterisinin Google profillerinin ilk kurulumu. Yeni bir müşteri, Google Business Profile erişimini size devreder. Bu uç noktayı çağırın, müşteriyi döndürülen url adresine yönlendirin; müşteri izin verdikten sonra Google işletme kayıtları yeni bağlanan hesap altında kullanılabilir hâle gelir. Ardından bu Google işletme kayıtlarını Listings API konumlarınızla eşleştirmek için POST /connected-accounts/trigger-matches çalıştırın, eşleştirmeleri GET /connected-accounts/{connectedAccountId}/connection-suggestions ile inceleyin ve POST /connected-accounts/confirm-matches ile kesinleştirin.
Kullanım senaryosu: süresi dolan kimlik bilgilerinin yenilenmesi. Bağlı bir hesabın Google token'ının süresi dolduğunda işletme kaydı güncellemelerinin senkronizasyonu durur. Bu uç noktayı kullanarak yeni bir bağlantı kurma bağlantısı oluşturun ve hesap sahibinin yeniden yetki vermesini sağlayın; mevcut bağlantının bir kopyası oluşturulmak yerine bağlantı yenilenir.
Facebook için connect-facebook uç noktasını kullanın. url değeri null olmayan bir success: true, bağlantının oluşturulduğu anlamına gelir; errors yalnızca oluşturma işlemi başarısız olduğunda doldurulur.
curl -X POST 'https://listingsapi.com/api/v4/connected-accounts/connect-google' \ -H "Authorization: API $LISTINGSAPI_KEY" \ -H 'Content-Type: application/json' \ -d '{ "input": { "successUrl": "https://listingsapi.com/docs/api/connected-accounts-trigger-matches", "errorUrl": "https://listingsapi.com/docs/api/connected-accounts-connect" } }'