GET/api/v4/locations/{locationId}/google-analytics

Obtenir les données analytiques Google d’un établissement

Renvoie les métriques quotidiennes d’interaction avec le profil Google Business Profile d’un établissement sur une plage de dates.

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 ID, either the Base64 Relay id (e.g. TG9jYXRpb246MTgwMDI4OQ==) or the raw numeric database id (e.g. 1800289). Both forms resolve to the same location.

Chaîne de requête

NomTypeObligatoireDescriptionPar défaut
fromDatestringfacultatifStart of the range (YYYY-MM-DD). Defaults to a recent window when omitted.—
toDatestringfacultatifEnd of the range (YYYY-MM-DD).—

Réponses

200Daily Google interaction metrics. Each metric is a time-series array; a metric is `null` when no data exists for the range or the profile is not connected.
Response
{  "data": {    "googleInsights": {      "total": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 412 },        { "startTime": "2025-06-02T00:00:00+00:00", "value": 388 }      ],      "search": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 300 }      ],      "maps": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 112 }      ],      "directionsAction": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 24 }      ],      "phoneAction": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 8 }      ],      "websiteAction": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 41 }      ],      "businessBookings": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 0 }      ],      "businessFoodOrders": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 0 }      ],      "businessFoodMenuClicks": [        { "startTime": "2025-06-01T00:00:00+00:00", "value": 0 }      ]    }  }}
401Unauthenticated, missing or invalid API key.

Renvoie les données quotidiennes d’interaction avec le profil Google Business Profile d’un établissement. Chaque métrique est un tableau de points de série temporelle, où chaque point comporte un startTime (le jour auquel le décompte est rattaché) et un value.

Métriques disponibles :

  • total : nombre total d’impressions du profil, soit search plus maps. Ce total n’inclut pas les métriques d’action ci-dessous ; ainsi, dans l’exemple ci-dessus, 412 = 300 pour la recherche + 112 pour Maps.
  • search : impressions dans les résultats de Google Search (ordinateurs et mobiles confondus)
  • maps : impressions dans les résultats Google Maps (ordinateurs et mobiles confondus)
  • directionsAction : demandes d’itinéraire vers l’établissement
  • phoneAction : clics sur le bouton d’appel
  • websiteAction : clics vers le site web
  • businessBookings : réservations commencées depuis le profil
  • businessFoodOrders : commandes de repas passées depuis le profil
  • businessFoodMenuClicks : clics sur le lien du menu

Les deux formes d’identifiant fonctionnent dans le chemin

1800289 et TG9jYXRpb246MTgwMDI4OQ== désignent tous deux le même établissement. Privilégiez l’identifiant Relay encodé en Base64 : c’est celui que renvoie chaque endpoint de lecture et c’est la forme qu’accepte le reste de l’API. Si la valeur n’est ni un nombre ni un identifiant Relay décodable, l’endpoint renvoie un 200 dont le corps est {"data":{"googleInsights":null},"errors":[...]}, ce qui peut facilement être pris pour une défaillance du serveur.

Shell
curl -s 'https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/google-analytics?fromDate=2025-06-01&toDate=2025-06-30' \  -H "Authorization: API $LISTINGSAPI_KEY"

Présenter l’impact d’une mise à jour des données

Un usage courant consiste à produire un rapport de visibilité avant/après : après avoir envoyé des modifications d’horaires ou de catégories pour un établissement, interrogez régulièrement google-analytics pour les semaines précédant et suivant la modification, puis représentez search + maps sur un graphique pour montrer l’augmentation. Les métriques individuelles renvoient null (plutôt qu’un tableau vide) lorsque l’établissement ne dispose d’aucune donnée Google pour la période demandée ou que son profil Google n’est pas connecté ; traitez null et [] de la même manière lors de l’agrégation. Combinez ces données avec les données analytiques Facebook et Bing pour obtenir une vue d’ensemble couvrant plusieurs plateformes de publication.

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