Profilanalysen von Google, Facebook und Bing abrufen
Rufen Sie je Standort tägliche Google-/Facebook-Kennzahlen und wöchentliche Bing-Aufrufe ab, bilden Sie Monatssummen und vergleichen Sie zwei Zeiträume.
Profilanalysen zeigen Ihnen, wie oft ein Standort auf der jeweiligen Plattform gesehen wurde und wie oft Nutzer dort Aktionen ausgeführt haben: Impressionen, Routenanfragen, Anrufe und Website-Klicks. Jede Kennzahl ist eine Zeitreihe aus { startTime, value }-Datenpunkten, daher berechnen Sie die angezeigten Gesamtwerte selbst.
1. Google-Kennzahlen für einen Datumsbereich abrufen
GET /locations/{locationId}/google-analytics?fromDate=&toDate= gibt data.googleInsights mit einer täglichen Zeitreihe pro Kennzahl zurück. total sind die Profilimpressionen, also search plus maps; die Aktionskennzahlen sind darin nicht enthalten.
curl "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/google-analytics?fromDate=2026-08-01&toDate=2026-08-31" \-H "Authorization: API $LISTINGSAPI_KEY"{ "data": { "googleInsights": { "total": [ { "startTime": "2026-08-01T00:00:00+00:00", "value": 412 }, { "startTime": "2026-08-02T00:00:00+00:00", "value": 388 } ], "search": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 300 }], "maps": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 112 }], "directionsAction": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 24 }], "phoneAction": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 8 }], "websiteAction": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 41 }], "businessBookings": null, "businessFoodOrders": null, "businessFoodMenuClicks": null } }}Bei einer fehlerhaft formatierten Standort-ID wird 200 mit googleInsights: null und einem errors-Array zurückgegeben, was wie ein nicht verbundenes Profil aussieht. Prüfen Sie zuerst errors.
2. Facebook-Kennzahlen abrufen
GET .../facebook-analytics hat unter data.facebookInsights dieselbe Struktur mit fünf täglichen Zeitreihen: views, ctaAction, directionsAction, phoneAction und websiteAction.
curl "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/facebook-analytics?fromDate=2026-08-01&toDate=2026-08-31" \-H "Authorization: API $LISTINGSAPI_KEY"{ "data": { "facebookInsights": { "views": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 120 }], "ctaAction": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 5 }], "directionsAction": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 3 }], "phoneAction": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 2 }], "websiteAction": [{ "startTime": "2026-08-01T00:00:00+00:00", "value": 9 }] } }}ctaAction zählt Klicks auf die Call-to-Action-Schaltfläche der Seite, womit Sie eine Kampagne für „Jetzt buchen“ oder „Jetzt anrufen“ messen können. Es gibt keine Kennzahl für „Gefällt mir“-Angaben der Seite.
3. Bing-Aufrufe abrufen
GET .../bing-analytics gibt eine einzelne Zeitreihe, data.bingInsights.views, zurück, die nach Wochen statt nach Tagen gruppiert ist. Die Daten werden jeden Montag für die vorherige Woche aktualisiert; rufen Sie daher für eine Trendlinie einen Zeitraum von mehreren Monaten ab.
curl "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/bing-analytics?fromDate=2026-06-01&toDate=2026-08-31" \-H "Authorization: API $LISTINGSAPI_KEY"{ "data": { "bingInsights": { "views": [ { "startTime": "2026-06-01T00:00:00+00:00", "value": 73 }, { "startTime": "2026-06-08T00:00:00+00:00", "value": 58 } ] } }}Anders als Google und Facebook gibt Bing bei fehlenden Daten ein leeres views-Array statt null zurück. Behandeln Sie beides als „nichts anzuzeigen“.
4. Eine Zeitreihe zu einem Monatsgesamtwert summieren
Rufen Sie den Monat ab und addieren Sie dann die value-Werte aller Datenpunkte. Unterscheiden Sie null von der Zahl 0: Ein nicht verbundenes Profil muss als „nicht verfügbar“ angezeigt werden, nicht als Monat ohne Zugriffe. Die Analyseseite des Node SDK enthält dieselbe Hilfsfunktion sumSeries.
# jq: null when the metric is null, otherwise the sum of valuescurl -s "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/google-analytics?fromDate=2026-08-01&toDate=2026-08-31" \-H "Authorization: API $LISTINGSAPI_KEY" \| jq '.data.googleInsights | { search: (if .search == null then null else ([.search[].value] | add) end), maps: (if .maps == null then null else ([.maps[].value] | add) end) }'Für Bing ist eine zusätzliche Prüfung erforderlich: Ein leeres views-Array ergibt als Summe 0, prüfen Sie daher auf length == 0, wenn Sie auch dort „keine Daten“ anzeigen möchten.
5. Zwei Zeiträume vergleichen
Rufen Sie dieselbe Kennzahl für zwei gleich lange Zeiträume ab und berechnen Sie die Veränderung anhand der beiden Gesamtwerte. Die API bietet keinen integrierten Vergleich für Profilanalysen; die delta-Felder gibt es nur bei Bewertungsanalysen.
curl -s "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/google-analytics?fromDate=2026-07-01&toDate=2026-07-31" \-H "Authorization: API $LISTINGSAPI_KEY" | jq '[.data.googleInsights.total[].value] | add' curl -s "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/google-analytics?fromDate=2026-08-01&toDate=2026-08-31" \-H "Authorization: API $LISTINGSAPI_KEY" | jq '[.data.googleInsights.total[].value] | add'Fangen Sie drei Fälle ab: Einer der beiden Zeiträume hat den Wert null (nicht verbunden), der frühere Zeitraum hat den Wert 0 (Division durch null), oder ein Zeitraum ist noch nicht abgeschlossen, da ein unvollständiger Monat im Vergleich zu einem vollständigen immer wie ein Rückgang aussieht. Jeder Aufruf wird auf Ihr Anfragelimit angerechnet; speichern Sie daher den früheren Zeitraum im Cache, statt ihn bei jedem Rendern erneut abzurufen.
Nächste Schritte
- Bewertungsanalysen: Bewertungsnote, Anzahl der Bewertungen und Antwortquote für denselben Standort, mit integrierten Differenzen zwischen Zeiträumen.
- Einen Standort aktualisieren: Ändern Sie die Öffnungszeiten oder Kategorien, deren Wirkung Sie messen.
- Referenz: Google-Analysen, Facebook-Analysen, Bing-Analysen.
- SDKs: Python-Analysen, Node-Analysen.