GET/api/v4/locations/{locationId}/listings/premium

Obtenir les fiches premium d'un établissement

Renvoie l'état de synchronisation de chaque annuaire de plateforme de publication inclus dans l'offre d'un établissement.

Nécessite une clé API. Consultez Authentification pour le format de l’en-tête et la rotation des clés.

Paramètres

Chemin

NomTypeObligatoireDescription
locationIdstringobligatoireLocation to read. Accepts a base64-encoded Relay ID (e.g. `TG9jYXRpb246MTgwMDI4OQ==`) or a raw numeric location ID.

Réponses

200Array of listings with per-directory sync status.
Response
{  "data": {    "listingsForLocation": [      {        "id": "TGlzdGluZzoxMDQ0Njg3MjM=",        "databaseId": "104468723",        "site": { "id": "U2l0ZTox", "databaseId": "1", "name": "Google Maps", "url": "maps.google.com", "syScore": "100" },        "syncStatus": "REQUIRING_ACTION",        "displayStatus": "Connect your account to sync the listing",        "actionRequired": true,        "listingUrl": null,        "connectedAccountId": null,        "lastUpdate": "2026-07-06T18:33:28Z",        "indexStatus": false,        "syncIssue": null,        "verified": false      },      {        "id": "TGlzdGluZzoxMDQ0Njg3MTQ=",        "databaseId": "104468714",        "site": { "id": "U2l0ZToxODA=", "databaseId": "180", "name": "Bing", "url": "www.bing.com", "syScore": "97" },        "syncStatus": "IN_PROGRESS",        "displayStatus": "Information submitted to partner; awaiting response",        "actionRequired": false,        "listingUrl": null,        "connectedAccountId": null,        "lastUpdate": "2026-07-06T18:33:35Z",        "indexStatus": false,        "syncIssue": null,        "verified": false      },      {        "id": "TGlzdGluZzoxMDQ0Njg3Mjc=",        "databaseId": "104468727",        "site": { "id": "U2l0ZTozODc=", "databaseId": "387", "name": "BeLocalFocussed", "url": "belocalfocussed.com", "syScore": "80" },        "syncStatus": "SYNCED",        "displayStatus": "Synced",        "actionRequired": false,        "listingUrl": "https://belocalfocussed.com/jenny-home-26x0ffkd0e",        "connectedAccountId": null,        "lastUpdate": "2026-07-06T18:33:30Z",        "indexStatus": false,        "syncIssue": null,        "verified": false      },      {        "id": "TGlzdGluZzoxMDQ0Njg3MDk=",        "databaseId": "104468709",        "site": { "id": "U2l0ZTozMDE=", "databaseId": "301", "name": "Local Mint", "url": "localmint.com", "syScore": "69" },        "syncStatus": "FAILED",        "displayStatus": "Partner experiencing issues; awaiting response",        "actionRequired": false,        "listingUrl": null,        "connectedAccountId": null,        "lastUpdate": "2026-07-06T18:34:03Z",        "indexStatus": false,        "syncIssue": "Publisher requires website URL",        "verified": false      }    ]  }}
401Unauthenticated, missing or invalid API key.
429Rate limit exceeded. Retry after the `Retry-After` header value.

Renvoie l'état de synchronisation de chaque annuaire de plateforme de publication inclus dans l'offre d'un établissement. Chaque enregistrement associe un site (métadonnées de l'annuaire) à un syncStatus et à un displayStatus lisible par un humain. L'exemple ci-dessus est un extrait de la réponse réelle pour Jenny Home (qui renvoie plus de 30 annuaires), limité à un enregistrement pour chacun des états courants.

Le niveau de fiche fait partie du chemin : /listings/premium renvoie les annuaires premium de l'offre (présentés ici) et /listings/additional renvoie les fiches supplémentaires/gratuites. Il n'existe aucun paramètre de requête listingType ; toute valeur transmise à cet emplacement est ignorée.

Cas d'utilisation : un tableau de bord de l'état des fiches

Récupérez les fiches premium d'un établissement et regroupez-les par syncStatus pour afficher la couverture en un coup d'œil : combien d'annuaires ont une fiche en ligne, en cours de synchronisation ou bloquée. Affichez listingUrl pour les lignes SYNCED afin que les utilisateurs puissent cliquer pour accéder à la fiche en ligne, et consultez displayStatus/syncIssue pour tout élément qui n'est pas synchronisé (e.g. Publisher requires website URL).

Cas d'utilisation : afficher les blocages nécessitant de « connecter votre compte »

Filtrez sur actionRequired: true pour créer la liste des tâches du propriétaire. Dans les données réelles, Google Maps, Facebook et Waze sont renvoyés avec l'état REQUIRING_ACTION et displayStatus: "Connect your account to sync the listing" ; une connexion OAuth est nécessaire avant de pouvoir les synchroniser. Orientez le propriétaire vers le parcours de connexion correspondant, puis interrogez à nouveau cet endpoint pour suivre l'évolution de l'état.

Valeurs de syncStatus : AVAILABLE (prêt pour la synchronisation, non démarrée), IN_PROGRESS (soumis au partenaire, en attente de réponse), PENDING_APPROVAL (en attente de l'approbation du partenaire), SYNCED / COMPLETED (en ligne ; listingUrl renseigné), REQUIRING_ACTION (action du propriétaire nécessaire, voir displayStatus), FAILED (échec de la synchronisation ; voir syncIssue), CANNOT_SUBMIT (soumission impossible).

Cette liste est propre à un établissement et soumise à la limite de requêtes du compte ; en cas de 429, réessayez après le délai indiqué par l'en-tête Retry-After au lieu d'interroger à nouveau l'endpoint immédiatement.

Request
curl -X GET 'https://listingsapi.com/api/v4/locations/<locationId>/listings/premium' \  -H "Authorization: API $LISTINGSAPI_KEY"