/api/v4/connected-accounts/connect-listingBir işletme kaydını bir konuma bağlayın
Belirli bir Google Business Profile veya Facebook işletme kaydını bir Listings API konumuna bağlar.
Parametreler
Gövde
| Ad | Tür | Zorunlu | Açıklama |
|---|---|---|---|
| input | object | zorunlu | Wrapper object. The entire request body must be nested under `input`. |
| input.locationId | string | zorunlu | Base64-encoded location Relay ID (e.g. `TG9jYXRpb246MTgwMDI4OQ==`) of the Listings API location to link the listing to. |
| input.connectedAccountId | string | zorunlu | ID of the connected account (Google or Facebook) that owns the listing. Taken from `GET /connected-accounts`. |
| input.connectedAccountListingId | string | zorunlu | ID of the listing within that connected account to link. Taken from the `id` of a record returned by `POST /connected-accounts/connected-account-listings`. |
Örnek istek
Yapıştırmaya hazır gövde. Yer tutucu kimlikleri ve değerleri kendi değerlerinizle değiştirin.
{ "input": { "locationId": "TG9jYXRpb246MTgwMDI4OQ==", "connectedAccountId": "4f712c17-4f95-42dd-90f4-97171a2e67b5", "connectedAccountListingId": "R29vZ2xlTG9jYXRpb246ODc3NTkzNGItNTA5OC00ZDBhLThiNDQ=" }}Yanıtlar
200Request accepted. `success` is `true` when the listing was linked; when it cannot be linked `success` is `false` and `message` explains why (for example, `Listing record not found`).
{ "data": { "connectListing": { "message": null, "success": true } }}400Bad request, the body was not wrapped in `input`, or a required field was omitted. Note the field is `connectedAccountListingId`, not `listingId` (the API rejects `listingId` with `did you mean locationId?`).
401Unauthenticated, missing or invalid API key.
İşletme kaydı verilerinin senkronize kalması için bir yayın platformundaki işletme kaydını (Google Business Profile veya Facebook Page) bir Listings API konumuyla ilişkilendirir. Önerilere dayalı akıştan farklı olarak bu endpoint, önceden seçtiğiniz tek bir işletme kaydını bağlar ve eşleşme onayı adımı gerektirmez.
İstek yapısı. Gövde, üç zorunlu alan içeren bir input nesnesiyle sarmalanmalıdır: locationId (konumun base64 ile kodlanmış Relay ID'si), connectedAccountId (işletme kaydının sahibi olan hesap) ve connectedAccountListingId (bağlanacak belirli işletme kaydı). listingId alanı yoktur; şema bu alanı reddeder. connectedAccountId değerini GET /connected-accounts üzerinden, connectedAccountListingId değerini ise POST /connected-accounts/connected-account-listings tarafından döndürülen bir kaydın id alanından alın.
Kullanım örneği: otomatik eşleştirme belirsiz olduğunda elle bağlama. Birbirine yakın iki mağazanın adları benzerdir ve trigger-matches, hangi Google işletme kaydının hangi Listings API konumuna ait olduğuna karar veremez. Bağlı hesaba ait işletme kayıtlarını alın, bir operatörün doğru kaydı seçmesini sağlayın ve öneri/onay akışını tamamen atlayarak kaydı doğrudan bu endpoint ile bağlayın.
Bağlantı kurulamazsa yanıtta, nedeni açıklayan ve null olmayan bir message ile birlikte success: false döndürülür; örneğin, connectedAccountListingId çözümlenemediğinde Listing record not found veya işletme kaydının zaten başka bir konuma bağlı olduğunu belirten bir mesaj döndürülür. Bunun yerine sistemin önerdiği eşleşmeleri toplu olarak kabul etmek için confirm-matches endpoint'ini kullanın.
curl -X POST 'https://listingsapi.com/api/v4/connected-accounts/connect-listing' \ -H "Authorization: API $LISTINGSAPI_KEY" \ -H 'Content-Type: application/json' \ -d '{ "input": { "locationId": "TG9jYXRpb246MTgwMDI4OQ==", "connectedAccountId": "4f712c17-4f95-42dd-90f4-97171a2e67b5", "connectedAccountListingId": "R29vZ2xlTG9jYXRpb246ODc3NTkzNGItNTA5OC00ZDBhLThiNDQ=" } }'