Google AnalyticsGoogle AnalyticsSEO/AEO

Run a custom GA4 report by property id

google-analytics.report

Run a traffic or behaviour report on your own Google Analytics property

Price
freeZum Listenpreis
Success rate
100 %Last 30 days · 15.619 calls
Latency p50
545 msp95 2.3 s
Last verified
28.07.2026Verified working
POSThttps://toolswitch.dev/v1/tools/google-analytics.reportBeta
  • Uses platform quota
  • Synchronous response
  • Reads public data

Parameter

request shape previously live-verified via the registry entry's examples. An incompatible dimension/metric pair fails the whole call — check google.analytics.metadata for what combines. Sampling and thresholding are reported back in the response metadata, not as an error

ParameterTypErforderlichBeschreibungBeispiel
Pfadparameter
property_idZeichenketteErforderlichnumeric GA4 property id (the digits only — the admin API returns it as 'properties/123456789')123456789
Anfragetext (JSON)
limitGanzzahlOptionaldefault 10000, max 250000100
offsetGanzzahlOptional0
metricsArrayOptional[{name: …}] — e.g. screenPageViews, sessions, activeUsers, conversions, engagementRate[{"name":"screenPageViews"}]
orderBysArrayOptionale.g. [{"metric":{"metricName":"sessions"},"desc":true}]
dateRangesArrayErforderlichup to 4 ranges. Use 'yesterday' or 'NdaysAgo', not 'today' — today is a partial day and always reads low[{"endDate":"yesterday","startDate":"28daysAgo"}]
dimensionsArrayOptional[{name: …}] — e.g. pagePath, sessionSource, sessionDefaultChannelGroup, country, deviceCategory, date[{"name":"pagePath"}]
keepEmptyRowsBooleanOptional
dimensionFilterObjektOptionale.g. {"filter":{"fieldName":"pagePath","stringFilter":{"matchType":"CONTAINS","value":"/blog/"}}}
  • Pfadparameter
  • property_idZeichenketteErforderlich

    numeric GA4 property id (the digits only — the admin API returns it as 'properties/123456789')

    Beispiel: 123456789

  • Anfragetext (JSON)
  • limitGanzzahlOptional

    default 10000, max 250000

    Beispiel: 100

  • offsetGanzzahlOptional

    Beispiel: 0

  • metricsArrayOptional

    [{name: …}] — e.g. screenPageViews, sessions, activeUsers, conversions, engagementRate

    Beispiel: [{"name":"screenPageViews"}]

  • orderBysArrayOptional

    e.g. [{"metric":{"metricName":"sessions"},"desc":true}]

  • dateRangesArrayErforderlich

    up to 4 ranges. Use 'yesterday' or 'NdaysAgo', not 'today' — today is a partial day and always reads low

    Beispiel: [{"endDate":"yesterday","startDate":"28daysAgo"}]

  • dimensionsArrayOptional

    [{name: …}] — e.g. pagePath, sessionSource, sessionDefaultChannelGroup, country, deviceCategory, date

    Beispiel: [{"name":"pagePath"}]

  • keepEmptyRowsBooleanOptional
  • dimensionFilterObjektOptional

    e.g. {"filter":{"fieldName":"pagePath","stringFilter":{"matchType":"CONTAINS","value":"/blog/"}}}

Codebeispiele

Ersetze $TOOLSWITCH_KEY durch den in der Konsole erstellten Schlüssel.

Beta
curl -X POST 'https://toolswitch.dev/v1/tools/google-analytics.report' \
  -H "X-Toolswitch-Key: $TOOLSWITCH_KEY" \
  -H "Content-Type: application/json" \
  --data-raw '{"limit":3,"metrics":[{"name":"sessions"}],"dateRanges":[{"endDate":"yesterday","startDate":"28daysAgo"}],"dimensions":[{"name":"sessionDefaultChannelGroup"}]}'

Diese Gateway-API ist in der Beta; URL und Authentifizierung können sich ändern. Die Beispielparameter sind Musterdaten. Aufrufe werden mit free einschließlich Servicegebühr abgerechnet.