/api/v4/connected-accountsEnumerar las cuentas conectadas
Devuelve las cuentas de Google y Facebook conectadas a tu cuenta de Listings API, con el estado de la conexión y el número de ubicaciones vinculadas.
Parámetros
Consulta
| Nombre | Tipo | Obligatorio | Descripción | Predeterminado |
|---|---|---|---|---|
| page | integer | opcional | 1-based page number. | 1 |
| perPage | integer | opcional | Records per page. | 20 |
| publisher | string | opcional | Narrow to one publisher by account type: `GoogleAccount`, `FacebookAccount`, `AppleAccount`, `YelpAccount`, `TripadvisorAccount`, `LinkedinAccount`, `PinterestAccount`, or `TwitterAccount`. | — |
| status | string | opcional | Narrow to one connection status: `Connected`, `NotConnected`, or `ConnectionIssue`. Note the mixed case, and that these are not the values the response's own `status` field uses. | — |
Respuestas
200List of connected accounts with pagination metadata.
{ "data": { "connectedAccountsInfo": { "pageInfo": { "hasNextPage": false, "hasPreviousPage": false, "totalPages": 1, "totalRecords": 1 }, "records": [ { "accountId": "12345", "clientName": "owner@brightsmile-dental.com", "connectedAccountId": "4f712c17-4f95-42dd-90f4-97171a2e67b5", "connectedAccountType": "GoogleAccount", "connectedLocationsCount": 0, "connectivityIssue": null, "email": "owner@brightsmile-dental.com", "lastFetchMatchesRequestedAt": "2026-07-06 21:43:07 UTC", "remarks": null, "requestMatches": false, "requestMatchesStatus": "MATCH_COMPLETED", "status": "CONNECTED" } ] } }}401Unauthenticated, missing or invalid API key.
429Rate limit exceeded. Retry after the `Retry-After` header value.
Devuelve todas las cuentas de Google Business Profile y Facebook Pages autorizadas para conectarse a tu cuenta de Listings API. Cada registro contiene el estado de la conexión (status, connectivityIssue), cuántas ubicaciones están vinculadas (connectedLocationsCount) y el estado de la última obtención de coincidencias (requestMatchesStatus).
Caso de uso: auditar el estado de la conexión antes de una sincronización. Ejecuta esta operación al inicio de una tarea nocturna para encontrar cuentas cuyas credenciales hayan caducado. Cualquier registro con un connectivityIssue que no sea null o un status distinto de CONNECTED requiere que el cliente vuelva a autorizar la conexión mediante el flujo de conexión; omite esos registros para no desperdiciar una llamada a trigger-matches con una credencial que ya no funciona.
Caso de uso: resolver un connectedAccountId para llamadas posteriores. Los endpoints trigger-matches, fetch-listings, folders y details utilizan connectedAccountId como clave. Enumera las cuentas, elige aquella cuyo email coincida con el cliente y reutiliza su connectedAccountId.
La paginación y el filtrado utilizan parámetros de consulta simples y sin anidamiento, no JSON: page, perPage, publisher y status. No existe ningún parámetro pageInfo, filters ni sort, y no hay forma de cambiar el orden: los resultados siempre se ordenan por el correo electrónico de la cuenta, en orden ascendente. Cualquier otro parámetro que envíes se ignora en lugar de rechazarse, por lo que un pageInfo en JSON devuelve la página 1 sin advertencia.
curl -s 'https://listingsapi.com/api/v4/connected-accounts?page=1&perPage=20&publisher=GoogleAccount&status=Connected' \ -H "Authorization: API $LISTINGSAPI_KEY"El filtro status y el campo status no comparten el mismo vocabulario. El filtro acepta Connected, NotConnected o ConnectionIssue; el valor de status en cada registro devuelto es CONNECTED, MATCH_IN_PROGRESS o CONNECTIVITY_ISSUE. Usar el propio status de un registro como filtro supone proporcionar un valor de enumeración no válido y devuelve un 400.
Lee pageInfo.hasNextPage y pageInfo.totalPages en la respuesta para decidir si debes obtener otra página. Las llamadas a este endpoint cuentan para el límite de solicitudes de la cuenta; una respuesta 429 incluye una cabecera Retry-After.
curl -X GET 'https://listingsapi.com/api/v4/connected-accounts' \ -H "Authorization: API $LISTINGSAPI_KEY"