List analytics events
list_analytics_eventsReturns the Google Analytics 4 events of the site’s connected property in a period, most frequent first: for each event name, eventCount, totalUsers (the users who triggered it), eventCountPerUser and keyEvents. isKeyEvent is true when the event counted as a key event in the period. GA4 counts key events only from the day the owner marked the event as a key event, so keyEvents can be lower than eventCount. totalEventNames says how many event names GA4 has for the query, also those past limit; it is not a count of events. Each call reads GA4 directly.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"projectId": "<projectId>"
},
"name": "list_analytics_events"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Most events to return. totalEventNames says how many GA4 has. | |
| device | No | Only sessions on this device category. | all |
| country | No | Only sessions from this country, as an ISO 3166-1 alpha-2 code such as "US". Omit for every country. | |
| endDate | No | Last day, YYYY-MM-DD. Defaults to yesterday. | |
| eventName | No | Only this event, such as "generate_lead". The name must match exactly, case included. Omit for every event. | |
| projectId | Yes | Site to act on, from list_sites. Only its connected Google Analytics property is used. | |
| startDate | No | First day, YYYY-MM-DD. Defaults to 28 days ending on endDate, as on the Analytics page. | |
| trafficSegment | No | "organic" keeps sessions from the Organic Search channel. "llm" keeps sessions from AI assistants such as ChatGPT, Perplexity and Gemini. | all |