/api/v4/connected-accounts/connect-listingConectar uma listagem a um local
Vincula uma listagem específica do Google Business Profile ou do Facebook a um local da Listings API.
Parâmetros
Corpo
| Nome | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| input | object | obrigatório | Wrapper object. The entire request body must be nested under `input`. |
| input.locationId | string | obrigatório | Base64-encoded location Relay ID (e.g. `TG9jYXRpb246MTgwMDI4OQ==`) of the Listings API location to link the listing to. |
| input.connectedAccountId | string | obrigatório | ID of the connected account (Google or Facebook) that owns the listing. Taken from `GET /connected-accounts`. |
| input.connectedAccountListingId | string | obrigatório | 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`. |
Exemplo de requisição
Corpo pronto para colar. Substitua os IDs e valores de exemplo pelos seus.
{ "input": { "locationId": "TG9jYXRpb246MTgwMDI4OQ==", "connectedAccountId": "4f712c17-4f95-42dd-90f4-97171a2e67b5", "connectedAccountListingId": "R29vZ2xlTG9jYXRpb246ODc3NTkzNGItNTA5OC00ZDBhLThiNDQ=" }}Respostas
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.
Associa uma listagem de uma plataforma de publicação (Google Business Profile ou Página do Facebook) a um local da Listings API para manter os dados da listagem sincronizados. Ao contrário do fluxo baseado em sugestões, este endpoint vincula uma única listagem que você já escolheu, sem exigir uma etapa de confirmação de correspondência.
Estrutura da requisição. O corpo deve estar contido em um objeto input com três campos obrigatórios: locationId (o Relay ID do local codificado em base64), connectedAccountId (a conta à qual a listagem pertence) e connectedAccountListingId (a listagem específica a ser vinculada). Não há campo listingId; ele é rejeitado pelo esquema. Obtenha connectedAccountId de GET /connected-accounts e connectedAccountListingId do id de um registro retornado por POST /connected-accounts/connected-account-listings.
Caso de uso: vinculação manual quando a correspondência automática é ambígua. Duas lojas próximas têm nomes semelhantes e trigger-matches não consegue determinar qual listagem do Google pertence a qual local da Listings API. Obtenha as listagens da conta conectada, deixe um operador escolher a correta e vincule-a diretamente com este endpoint, ignorando por completo o fluxo de sugestões e confirmação.
Se a conexão falhar, a resposta retornará success: false com um message não nulo descrevendo o motivo, por exemplo, Listing record not found quando o connectedAccountListingId não puder ser resolvido, ou uma mensagem indicando que a listagem já está conectada a outro local. Para aceitar em lote as correspondências sugeridas pelo sistema, use o endpoint confirm-matches.
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=" } }'