Google, Facebook ve Bing profil analizlerini alın

Konumun günlük Google ve Facebook profil metriklerini, haftalık Bing görüntülemelerini alın; serinin aylık toplamını bulup iki dönemi karşılaştırın.

Profil analizleri, bir konumun her yayın platformunda ne sıklıkla görüntülendiğini ve hangi işlemlerin yapıldığını gösterir: gösterimler, yol tarifi istekleri, aramalar ve web sitesi tıklamaları. Her metrik, { startTime, value } noktalarından oluşan bir zaman serisidir; bu nedenle gösterdiğiniz toplamları sizin hesaplamanız gerekir.

1. Bir tarih aralığı için Google metriklerini okuyun

GET /locations/{locationId}/google-analytics?fromDate=&toDate=, her metrik için bir günlük seri içeren data.googleInsights döndürür. total, profil gösterimlerini, yani search ile maps toplamını ifade eder; işlem metriklerini içermez.

Google
curl "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/google-analytics?fromDate=2026-08-01&toDate=2026-08-31" \-H "Authorization: API $LISTINGSAPI_KEY"
JSON
{  "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    }  }}
SeriAnlamı
totalGösterimler, search ile maps toplamı.
search, mapsGoogle Search ve Google Maps'daki gösterimler.
directionsAction, phoneAction, websiteActionYol tarifi istekleri, arama tıklamaları, web sitesi tıklamaları.
businessBookings, businessFoodOrders, businessFoodMenuClicksBu seçenekleri sunan profiller için rezervasyonlar, yemek siparişleri ve menü tıklamaları.

Hatalı biçimlendirilmiş bir konum kimliği kullanıldığında, googleInsights: null ve bir errors dizisi içeren 200 döndürülür; bu da bağlantısı kesilmiş bir profil gibi görünür. Önce errors değerini kontrol edin.

2. Facebook metriklerini okuyun

GET .../facebook-analytics, data.facebookInsights altında aynı yapıya sahiptir ve günlük veriler içeren beş seri içerir: views, ctaAction, directionsAction, phoneAction ve websiteAction.

Facebook
curl "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/facebook-analytics?fromDate=2026-08-01&toDate=2026-08-31" \-H "Authorization: API $LISTINGSAPI_KEY"
JSON
{  "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, Sayfanın eylem çağrısı düğmesine yapılan tıklamaları sayar; böylece bir "Hemen rezervasyon yap" veya "Hemen ara" kampanyasını ölçebilirsiniz. Sayfa beğenileri metriği yoktur.

3. Bing görüntülemelerini okuyun

GET .../bing-analytics, gün yerine haftaya göre gruplandırılmış tek bir seri olan data.bingInsights.views döndürür. Veriler her pazartesi bir önceki hafta için yenilenir; bu nedenle bir eğilim çizgisi için birkaç aylık bir aralığın verilerini alın.

Bing
curl "https://listingsapi.com/api/v4/locations/TG9jYXRpb246MTgwMDI4OQ==/bing-analytics?fromDate=2026-06-01&toDate=2026-08-31" \-H "Authorization: API $LISTINGSAPI_KEY"
JSON
{  "data": {    "bingInsights": {      "views": [        { "startTime": "2026-06-01T00:00:00+00:00", "value": 73 },        { "startTime": "2026-06-08T00:00:00+00:00", "value": 58 }      ]    }  }}

Google ve Facebook'tan farklı olarak Bing, veri bulunmadığını null yerine boş bir views dizisiyle bildirir. Her ikisini de "gösterilecek bir şey yok" olarak değerlendirin.

4. Bir serinin aylık toplamını hesaplayın

Ayın verilerini alın, ardından her noktanın value değerini toplayın. null değerini sıfırdan ayrı tutun: bağlantısı kesilmiş bir profil, hiç trafik olmayan bir ay olarak değil, "kullanılamıyor" olarak gösterilmelidir. Node SDK'nin analiz sayfasında da aynı sumSeries yardımcı işlevi bulunur.

Monthly total
# 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) }'

Bing için ek bir kontrol gerekir: boş bir views dizisinin toplamı 0 olur; bu nedenle orada da "veri yok" göstermek istiyorsanız length == 0 koşulunu kontrol edin.

5. İki dönemi karşılaştırın

Aynı metriği eşit uzunluktaki iki aralık için alın ve iki toplamdan değişimi hesaplayın. API, profil analizleri için yerleşik bir karşılaştırma özelliği sunmaz; delta alanları yalnızca yorum analizlerinde bulunur.

Two periods
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'

Üç durumu kontrol edin: dönemlerden herhangi birinin null olması (bağlı değil), önceki dönemin 0 olması (sıfıra bölme) ve aralığın henüz tamamlanmamış olması; çünkü tamamlanmamış bir ayın tam bir ayla karşılaştırılması her zaman düşüş gibi görünür. Her çağrı istek hızı limitinizden düşülür; bu nedenle önceki dönemin verilerini her görüntülemede yeniden almak yerine önbelleğe alın.

Sonraki adımlar