For Agents
Run advanced batched and segmented reports against historical Universal Analytics data, plus per-user activity search.
Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the Analytics Reporting API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with Analytics Reporting API.
Run up to 5 historical Universal Analytics reports in one batch with reports:batchGet
Define segments and apply them to historical UA report queries
Run cohort reports over historical Universal Analytics data
GET STARTED
Use for: Batch-run several historical Universal Analytics reports for a dashboard backfill, Run a Universal Analytics cohort report on historical data, Apply a segment to a historical UA report, Get the activity history for a specific UA user ID
Not supported: Does not query GA4 properties, configure UA properties, or send measurement events — use for advanced historical Universal Analytics reporting only.
The Analytics Reporting API v4 is the advanced reporting surface for Universal Analytics. Compared to Google Analytics v3 Core Reporting, v4 introduced batched report requests, segments, cohort reports, pivots, and richer date range support in a single endpoint. With Universal Analytics no longer processing new data after July 2023, this API is now used to read historical UA data with the v4 feature set, and for the userActivity:search endpoint that returns the activity history of a single user. New reporting work should target the GA4 Data API.
Pivot UA dimensions to produce matrix-style historical reports
Search the activity history of a single Universal Analytics user via userActivity:search
Query historical UA data with multiple non-overlapping date ranges in one request
Patterns agents use Analytics Reporting API for, with concrete tasks.
★ Historical UA Data Backfill
Teams that ran Universal Analytics for years still want that history in their warehouse. The v4 batchGet endpoint runs up to five reports in one call with full segment, cohort, and pivot support, which is the practical way to backfill multi-year UA history without hitting per-call quota repeatedly. Once data is loaded, downstream tooling can compare YoY against GA4 going forward.
POST /v4/reports:batchGet with up to five ReportRequest objects covering different date ranges and dimension/metric combinations, then write the rowData arrays to a warehouse table.
Per-User Activity Investigation
userActivity:search returns the recorded sessions and events for a single Universal Analytics user ID over a date range. Investigations and account audits can use this to reconstruct what a specific user did historically — what pages they viewed, which campaigns brought them in — without running a full report. This is the only v4 endpoint that operates per user rather than aggregated.
POST /v4/userActivity:search with viewId, user.userId, and dateRange to fetch the SessionRecord list for that user.
Cohort and Segment Migration Audit
Before retiring a UA property, analytics teams want to capture which segments and cohorts they relied on so equivalents can be rebuilt in GA4. Running batchGet with each segment and cohort definition as a ReportRequest snapshots the historical numbers each segment produced, providing baseline data for the GA4 rebuild.
For each preserved UA segment, POST /v4/reports:batchGet with the segment in dimensions and the segment definition, write results, then mark the segment as captured.
Agent Pull of Historical UA
An agent integrating the Analytics Reporting v4 API through Jentic can answer historical UA questions even after migration. Jentic stores the OAuth credential and exposes the batchGet schema, so the agent translates a question like 'sessions by source for Q4 2022' into a valid ReportRequest body without learning the v4 reference end to end.
Use the Jentic search query 'run a Universal Analytics v4 report' to discover /v4/reports:batchGet, then build a ReportRequest with the requested dateRanges, dimensions, and metrics and execute it.
2 endpoints — the analytics reporting api v4 is the advanced reporting surface for universal analytics.
METHOD
PATH
DESCRIPTION
/v4/reports:batchGet
Run up to 5 advanced UA reports in one call
/v4/userActivity:search
Search the activity history of a specific UA user ID
/v4/reports:batchGet
Run up to 5 advanced UA reports in one call
/v4/userActivity:search
Search the activity history of a specific UA user ID
Three things that make agents converge on Jentic-routed access.
Credential isolation
Reporting v4 uses OAuth 2.0 with analytics scopes. Jentic stores the refresh token in the MAXsystem vault and mints short-lived access tokens for the agent, so the OAuth client secret and refresh token stay out of agent context.
Intent-based discovery
Agents search Jentic with intents like 'run a Universal Analytics v4 report' and receive the matching reports:batchGet operation with its ReportRequest schema, including segments and cohorts.
Time to first call
Direct integration takes 1-2 days to handle OAuth and learn the v4 ReportRequest model. Through Jentic, a working batched report runs in under an hour.
Alternatives and complements available in the Jentic catalogue.
Specific to using Analytics Reporting API through Jentic.
What authentication does the Analytics Reporting API v4 use?
OAuth 2.0 with analytics or analytics.readonly scopes. Jentic stores the OAuth refresh token in its MAXsystem vault and gives the agent only short-lived access tokens, so credentials never enter agent context.
Can I query GA4 properties through this API?
No. v4 reports against Universal Analytics views only. For GA4 reporting, use the Google Analytics Data API (analyticsdata) — runReport, batchRunReports, runRealtimeReport, and runPivotReport.
What are the rate limits for the Analytics Reporting API?
Per-project quotas apply under the Analytics Reporting API in the Cloud Console. Default quotas are 50,000 requests per project per day shared with the Core Reporting v3 API. batchGet allows up to 5 ReportRequest objects per call to amortise quota.
How do I run a historical UA batched report through Jentic?
Search Jentic for 'run a Universal Analytics v4 report', load the schema for /v4/reports:batchGet, and execute it with a list of ReportRequest objects (viewId, dateRanges, dimensions, metrics, segments). Run pip install jentic and use the async search, load, execute pattern.
Is Universal Analytics still active for new data?
No. Universal Analytics stopped processing new hits on 1 July 2023. This API now serves historical UA data only; production reporting should use GA4 via analyticsdata.