Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.
Per-app Google setup is deprecated. All Google apps now share one Google OAuth client and one Redirect URI. To use your own client, follow the Google setup guide. Credentials saved for one Google app apply to all of them.
OneCLI connects AI agents to Google Analytics through Google’s OAuth flow. Agents can query reports, read metrics and dimensions, and pull traffic data from your GA4 properties. The gateway injects OAuth credentials into requests to the Google Analytics Data API automatically.This is useful for reporting agents that generate traffic summaries, marketing agents that monitor campaign performance, or any agent that needs web analytics data.
This applies on OneCLI Cloud and self-hosted alike. One Google client serves every Google app in OneCLI, so you set it up once. If you already did it for another Google app, skip to step 2.
1. Set up your Google client
Follow the Google setup guide. It enables the Google APIs, sets up the consent screen, creates the OAuth client, and adds the Redirect URI.
2. Connect Google Analytics
Open Connections > Google Analytics, select Connect Google Analytics, pick your Google account, and click Allow.
The Google Analytics connect window before a Google client is set up.
Access is per agent: grant the connection to each agent that needs it, choosing per tool what runs freely, what needs human approval, and what stays blocked — a read-only agent is a single grant. Organization rules add guardrails on top, like rate limits and blanket blocks. Everything is checked before credential injection, so a blocked request never reaches Google Analytics.
Do I need my own Google client for Google Analytics?
Yes. Follow the Google setup guide once. One client serves every Google app in OneCLI.
Does the agent see my Google token?
No. The token stays in OneCLI, and the gateway adds it at the proxy. See How it works.
How do I reconnect Google Analytics?
Open Connections > Google Analytics and connect again. Agents with access use the new connection automatically.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"OneCLI","colors":{"primary":"#19BA5D","light":"#34D474","dark":"#128A45"},"logo":{"light":"https://mintcdn.com/chartdbinc/3IvBQeNyWpN0X2ob/logo/logo-full-light.svg?fit=max\u0026auto=format\u0026n=3IvBQeNyWpN0X2ob\u0026q=85\u0026s=630ee6bb5c7441548135c690b3e18d35","dark":"https://mintcdn.com/chartdbinc/3IvBQeNyWpN0X2ob/logo/logo-full-dark.svg?fit=max\u0026auto=format\u0026n=3IvBQeNyWpN0X2ob\u0026q=85\u0026s=c80db357e121f4676dba423c01304258","href":"/"},"favicon":"https://mintcdn.com/chartdbinc/wh8636A1-I7XVdgP/favicon.png?fit=max\u0026auto=format\u0026n=wh8636A1-I7XVdgP\u0026q=85\u0026s=71b6d9b7afc7659e690354e389db9da8","appearance":{"default":"light"},"background":{"color":{"light":"#FAFAF9","dark":"#1A1918"}},"navbar":{"links":[{"href":"https://github.com/onecli/onecli","label":"GitHub"},{"href":"https://onecli.sh","label":"Install"}]},"footer":{"socials":{"github":"https://github.com/onecli"}},"fonts":{"heading":{"family":"Overused Grotesk","weight":600,"source":"fonts/OverusedGroteskRoman-VF.woff2","format":"woff2"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"GitHub","icon":"https://mintlify.s3.us-west-1.amazonaws.com/chartdbinc/images/github.svg","href":"https://github.com/onecli"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"chartdbinc","hasAudioNarration":false,"actualSubdomain":"chartdbinc","customDomains":["onecli.sh"],"gitSource":{"type":"github","owner":"onecli","repo":"onecli-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"entitlements":{},"buildId":"6aed6ecd1adb743cd28e52b5","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"default","tag":"API Reference","count":240},{"language":"default","tag":"Workspace","count":105},{"language":"default","tag":"Integrations","count":88},{"language":"default","tag":"All app connections","count":64},{"language":"default","tag":"Enterprise","count":57},{"language":"default","tag":"Organization","count":52},{"language":"default","tag":"Apps","count":29},{"language":"default","tag":"Channels","count":28},{"language":"default","tag":"Platform","count":21},{"language":"default","tag":"Guides","count":17}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"/docs","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"a.nav-anchor div.mr-4.rounded-md{--tw-ring-color: transparent !important;--tw-ring-shadow: 0 0 0 0 transparent !important;--tw-ring-offset-shadow: 0 0 0 0 transparent !important;box-shadow:none!important;background:transparent!important;filter:none!important;transition:opacity 0.15s ease!important}a.nav-anchor:hover div.mr-4.rounded-md{--tw-ring-color: transparent !important;--tw-ring-shadow: 0 0 0 0 transparent !important;--tw-ring-offset-shadow: 0 0 0 0 transparent !important;box-shadow:none!important;background:transparent!important;filter:none!important;opacity:0.7!important}a.nav-anchor div.mr-4.rounded-md img{opacity:1!important;filter:none!important;background:transparent!important}a.nav-anchor:hover div.mr-4.rounded-md img{opacity:1!important;filter:none!important;background:transparent!important}.dark a.nav-anchor div.mr-4.rounded-md img,[data-theme=\"dark\"] a.nav-anchor div.mr-4.rounded-md img{filter:invert(1)!important}"}],"page":{"pagePath":"integrations/google-analytics","slug":"/integrations/google-analytics","pageMetadata":{"title":"Pull GA4 Reports Into AI Agents","sidebarTitle":"Google Analytics","description":"Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.","canonical":"https://onecli.sh/docs/integrations/google-analytics","href":"/integrations/google-analytics"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,AccordionGroup,Frame,Heading,Info,OptimizedImage,Warning}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!AccordionGroup)_missingMdxReference(`AccordionGroup`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Per-app Google setup is deprecated.`}),` All Google apps now share one Google OAuth client and one Redirect URI. To use your own client, follow the `,_jsx(_components.a,{href:`/integrations/google`,children:`Google setup guide`}),`. Credentials saved for one Google app apply to all of them.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`overview`,children:`Overview`}),`\n`,_jsx(_components.p,{children:`OneCLI connects AI agents to Google Analytics through Google’s OAuth flow. Agents can query reports, read metrics and dimensions, and pull traffic data from your GA4 properties. The gateway injects OAuth credentials into requests to the Google Analytics Data API automatically.`}),`\n`,_jsx(_components.p,{children:`This is useful for reporting agents that generate traffic summaries, marketing agents that monitor campaign performance, or any agent that needs web analytics data.`}),`\n`,_jsx(Heading,{level:`2`,id:`what-you-will-set-up`,children:`What you will set up`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`A Google OAuth client shared by every Google app in OneCLI`}),`\n`,_jsx(_components.li,{children:`A Google Analytics connection for your GA4 properties`}),`\n`,_jsx(_components.li,{children:`Per-agent, per-tool access to reporting data`}),`\n`]}),`\n`,_jsx(`a`,{id:`self-hosted`,style:{scrollMarginTop:`8rem`}}),`\n`,_jsx(Heading,{level:`2`,id:`connect-google-analytics`,children:`Connect Google Analytics`}),`\n`,_jsx(Info,{children:_jsx(_components.p,{children:`This applies on OneCLI Cloud and self-hosted alike. One Google client serves every Google app in OneCLI, so you set it up once. If you already did it for another Google app, skip to step 2.`})}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`1. Set up your Google client`,defaultOpen:true,id:`1-set-up-your-google-client`,children:_jsxs(_components.p,{children:[`Follow the `,_jsx(_components.a,{href:`/integrations/google`,children:`Google setup guide`}),`. It enables the Google APIs, sets up the consent screen, creates the OAuth client, and adds the Redirect URI.`]})}),_jsxs(Accordion,{title:`2. Connect Google Analytics`,id:`2-connect-google-analytics`,children:[_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Connections`}),` > `,_jsx(_components.strong,{children:`Google Analytics`}),`, select `,_jsx(_components.strong,{children:`Connect Google Analytics`}),`, pick your Google account, and click `,_jsx(_components.strong,{children:`Allow`}),`.`]}),_jsx(Frame,{caption:`The Google Analytics connect window before a Google client is set up.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/chartdbinc/L4k9tYUENUtEpMY8/images/integrations/google-analytics/onecli-connect-google-analytics.png?fit=max\u0026auto=format\u0026n=L4k9tYUENUtEpMY8\u0026q=85\u0026s=f371ccfd7e77d3b4b3f342494674e78c`,alt:`OneCLI connect window for Google Analytics showing Configuration required, the setup guide link, and the Configure credentials button.`,\"data-og-width\":`1056`,width:`1056`,\"data-og-height\":`1084`,height:`1084`,\"data-path\":`images/integrations/google-analytics/onecli-connect-google-analytics.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/chartdbinc/L4k9tYUENUtEpMY8/images/integrations/google-analytics/onecli-connect-google-analytics.png?w=280\u0026fit=max\u0026auto=format\u0026n=L4k9tYUENUtEpMY8\u0026q=85\u0026s=e0252de195bf0cad0cef4ebd5febbd00 280w, https://mintcdn.com/chartdbinc/L4k9tYUENUtEpMY8/images/integrations/google-analytics/onecli-connect-google-analytics.png?w=560\u0026fit=max\u0026auto=format\u0026n=L4k9tYUENUtEpMY8\u0026q=85\u0026s=4c59d55d447ac294e082255830b7be72 560w, https://mintcdn.com/chartdbinc/L4k9tYUENUtEpMY8/images/integrations/google-analytics/onecli-connect-google-analytics.png?w=840\u0026fit=max\u0026auto=format\u0026n=L4k9tYUENUtEpMY8\u0026q=85\u0026s=08192e925cae4aa068348a06f7a349f9 840w, https://mintcdn.com/chartdbinc/L4k9tYUENUtEpMY8/images/integrations/google-analytics/onecli-connect-google-analytics.png?w=1100\u0026fit=max\u0026auto=format\u0026n=L4k9tYUENUtEpMY8\u0026q=85\u0026s=19e7c1c597dcaec717bd755485b096a5 1100w, https://mintcdn.com/chartdbinc/L4k9tYUENUtEpMY8/images/integrations/google-analytics/onecli-connect-google-analytics.png?w=1650\u0026fit=max\u0026auto=format\u0026n=L4k9tYUENUtEpMY8\u0026q=85\u0026s=8c1131a2cdb5746db810f5c6e7ab48b1 1650w, https://mintcdn.com/chartdbinc/L4k9tYUENUtEpMY8/images/integrations/google-analytics/onecli-connect-google-analytics.png?w=2500\u0026fit=max\u0026auto=format\u0026n=L4k9tYUENUtEpMY8\u0026q=85\u0026s=8a74c77b2e0496211a8ce9c6f53e3955 2500w`})})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`what-agents-can-do`,children:`What agents can do`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Run reports with custom date ranges, metrics, and dimensions`}),`\n`,_jsx(_components.li,{children:`Query core metrics (sessions, users, page views, bounce rate, conversions)`}),`\n`,_jsx(_components.li,{children:`Break down data by dimensions (source, medium, country, page path, device)`}),`\n`,_jsx(_components.li,{children:`Read real-time active user data`}),`\n`,_jsx(_components.li,{children:`List GA4 properties and data streams on your account`}),`\n`,_jsx(_components.li,{children:`Query audience and demographic data`}),`\n`,_jsx(_components.li,{children:`Read event-level data and custom event parameters`}),`\n`,_jsx(_components.li,{children:`Compare date ranges for trend analysis`}),`\n`,_jsx(_components.li,{children:`Query e-commerce metrics (revenue, transactions, items purchased)`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`controlling-access`,children:`Controlling access`}),`\n`,_jsxs(_components.p,{children:[`Access is per agent: `,_jsx(_components.a,{href:`/guides/agent-access`,children:`grant`}),` the connection to each agent that needs it, choosing per tool what runs freely, what needs human approval, and what stays blocked — a read-only agent is a single grant. Organization `,_jsx(_components.a,{href:`/guides/rules`,children:`rules`}),` add guardrails on top, like rate limits and blanket blocks. Everything is checked before credential injection, so a blocked request never reaches Google Analytics.`]}),`\n`,_jsx(Heading,{level:`2`,id:`faq`,children:`FAQ`}),`\n`,_jsxs(AccordionGroup,{children:[_jsx(Accordion,{title:`Do I need my own Google client for Google Analytics?`,id:`do-i-need-my-own-google-client-for-google-analytics`,children:_jsxs(_components.p,{children:[`Yes. Follow the `,_jsx(_components.a,{href:`/integrations/google`,children:`Google setup guide`}),` once. One client serves every Google app in OneCLI.`]})}),_jsx(Accordion,{title:`Does the agent see my Google token?`,id:`does-the-agent-see-my-google-token`,children:_jsxs(_components.p,{children:[`No. The token stays in OneCLI, and the gateway adds it at the proxy. See `,_jsx(_components.a,{href:`/how-it-works`,children:`How it works`}),`.`]})}),_jsx(Accordion,{title:`How do I reconnect Google Analytics?`,id:`how-do-i-reconnect-google-analytics`,children:_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Connections`}),` > `,_jsx(_components.strong,{children:`Google Analytics`}),` and connect again. Agents with access use the new connection automatically.`]})})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Pull GA4 Reports Into AI Agents","sidebarTitle":"Google Analytics","description":"Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.","canonical":"https://onecli.sh/docs/integrations/google-analytics","href":"/integrations/google-analytics"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Overview","slug":"overview","depth":2,"children":[]},{"title":"What you will set up","slug":"what-you-will-set-up","depth":2,"children":[]},{"title":"Connect Google Analytics","slug":"connect-google-analytics","depth":2,"children":[]},{"title":"What agents can do","slug":"what-agents-can-do","depth":2,"children":[]},{"title":"Controlling access","slug":"controlling-access","depth":2,"children":[]},{"title":"FAQ","slug":"faq","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/chartdbinc/e8c5fc0faf4d8de9/infra/cloudfront/docs-response-headers.js"],"subdomain":"chartdbinc","siteName":"OneCLI","title":"Pull GA4 Reports Into AI Agents - OneCLI","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-03T01:51:11.675Z","originalFileLocation":"integrations/google-analytics.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"light\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.\">\u003cmeta data-mint-head name=\"application-name\" content=\"OneCLI\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Pull GA4 Reports Into AI Agents - OneCLI\">\u003cmeta data-mint-head property=\"og:description\" content=\"Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"OneCLI\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://onecli.sh/docs/integrations/google-analytics\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://chartdbinc.mintlify.site/docs/_mintlify/api/og/v2?division=All+app+connections\u0026amp;title=Pull+GA4+Reports+Into+AI+Agents\u0026amp;description=Let+reporting+agents+query+GA4+traffic%2C+metrics%2C+and+audience+data+through+the+Google+Analytics+API.+The+gateway+injects+OAuth+tokens+on+every+request.\u0026amp;theme=4d31f9e8e68b774b9a2b22f5\u0026amp;signature=d48ea15cf3b68f1374b8ec3f3f803ae40e9b7d25abb56acbf755783ca6fb574d\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Pull GA4 Reports Into AI Agents - OneCLI\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://chartdbinc.mintlify.site/docs/_mintlify/api/og/v2?division=All+app+connections\u0026amp;title=Pull+GA4+Reports+Into+AI+Agents\u0026amp;description=Let+reporting+agents+query+GA4+traffic%2C+metrics%2C+and+audience+data+through+the+Google+Analytics+API.+The+gateway+injects+OAuth+tokens+on+every+request.\u0026amp;theme=4d31f9e8e68b774b9a2b22f5\u0026amp;signature=d48ea15cf3b68f1374b8ec3f3f803ae40e9b7d25abb56acbf755783ca6fb574d\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/chartdbinc/M5-fw7HRdTdsqSgf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"OneCLI\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#19BA5D\">\u003clink data-mint-head rel=\"canonical\" href=\"https://onecli.sh/docs/integrations/google-analytics\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/integrations/google-analytics.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://onecli.sh/#organization\",\"name\":\"OneCLI\",\"url\":\"https://onecli.sh\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/chartdbinc/3IvBQeNyWpN0X2ob/logo/logo-full-light.svg?fit=max\u0026auto=format\u0026n=3IvBQeNyWpN0X2ob\u0026q=85\u0026s=630ee6bb5c7441548135c690b3e18d35\"}},{\"@type\":\"WebSite\",\"@id\":\"https://onecli.sh/docs#website\",\"name\":\"OneCLI\",\"url\":\"https://onecli.sh/docs\",\"publisher\":{\"@id\":\"https://onecli.sh/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://onecli.sh/docs/integrations/google-analytics#webpage\",\"url\":\"https://onecli.sh/docs/integrations/google-analytics\",\"name\":\"Pull GA4 Reports Into AI Agents\",\"description\":\"Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.\",\"dateModified\":\"2026-11-03T01:51:11.675Z\",\"isPartOf\":{\"@id\":\"https://onecli.sh/docs#website\"},\"breadcrumb\":{\"@id\":\"https://onecli.sh/docs/integrations/google-analytics#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://onecli.sh/docs/integrations/google-analytics#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"All app connections\",\"item\":\"https://onecli.sh/docs/integrations/affinity\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Pull GA4 Reports Into AI Agents\",\"item\":\"https://onecli.sh/docs/integrations/google-analytics\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://onecli.sh/docs/integrations/google-analytics#article\",\"headline\":\"Pull GA4 Reports Into AI Agents\",\"name\":\"Pull GA4 Reports Into AI Agents\",\"description\":\"Let reporting agents query GA4 traffic, metrics, and audience data through the Google Analytics API. The gateway injects OAuth tokens on every request.\",\"url\":\"https://onecli.sh/docs/integrations/google-analytics\",\"mainEntityOfPage\":{\"@id\":\"https://onecli.sh/docs/integrations/google-analytics#webpage\"},\"dateModified\":\"2026-11-03T01:51:11.675Z\",\"publisher\":{\"@id\":\"https://onecli.sh/#organization\"},\"isPartOf\":{\"@id\":\"https://onecli.sh/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"OneCLI\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"OneCLI","nav":{"global":{"anchors":[{"anchor":"GitHub","icon":"https://mintlify.s3.us-west-1.amazonaws.com/chartdbinc/images/github.svg","href":"https://github.com/onecli"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"Integrations","groups":[{"group":"Integrations","root":{"title":"Integrations: Connect Agents to External Services","sidebarTitle":"Overview","href":"/integrations"},"pages":[{"title":"App Connections: How OAuth \u0026 API Keys Work","sidebarTitle":"App Connections","href":"/integrations/app-connections"},{"title":"Custom Connections: Connect Any API With a Key","sidebarTitle":"Custom connections","href":"/integrations/custom-connections"},{"title":"Chat With AI Agents and Approve Actions in Slack","sidebarTitle":"Slack","href":"/integrations/slack"},{"title":"Keep LLM API Keys Out of Your AI Agents","sidebarTitle":"LLMs","href":"/integrations/llms"},{"title":"External Vaults: Connect Password Managers","sidebarTitle":"External Vaults","href":"/vaults/overview"}]},{"group":"Cloud integrations","pages":[{"title":"Prospect and Enrich Leads in Apollo.io With Agents","sidebarTitle":"Apollo.io","href":"/integrations/apollo-io"},{"title":"Use AWS From AI Agents Without Exposing Keys","sidebarTitle":"AWS","href":"/integrations/aws"},{"title":"Let AI Agents Open PRs and Issues on GitHub","sidebarTitle":"GitHub","href":"/integrations/github"},{"title":"Org-Approved GitHub Repo Access for AI Agents","sidebarTitle":"GitHub App","href":"/integrations/github-app"},{"title":"Let AI Agents Query Datadog Metrics and Monitors","sidebarTitle":"Datadog","href":"/integrations/datadog"},{"title":"Let AI Agents Update HubSpot CRM Records","sidebarTitle":"HubSpot","href":"/integrations/hubspot"},{"title":"Let AI Agents Triage Sentry Errors","sidebarTitle":"Sentry","href":"/integrations/sentry"},{"title":"Let AI Agents Read and Write OneNote Notebooks","sidebarTitle":"Microsoft OneNote","href":"/integrations/microsoft-onenote"},{"title":"Connect AI Agents to Outlook Mail in Microsoft 365","sidebarTitle":"Outlook Mail","href":"/integrations/outlook-mail"},{"title":"Let AI Agents Book Meetings in Outlook Calendar","sidebarTitle":"Outlook Calendar","href":"/integrations/outlook-calendar"}]},{"group":"All app connections","pages":[{"title":"Connect AI Agents to Affinity CRM With an API Key","sidebarTitle":"Affinity","href":"/integrations/affinity"},{"title":"Let AI Agents Manage Attio CRM Records","sidebarTitle":"Attio","href":"/integrations/attio"},{"title":"Run Clay Enrichment From AI Agents","sidebarTitle":"Clay","href":"/integrations/clay"},{"title":"Query PostHog Analytics and Flags From Agents","sidebarTitle":"PostHog","href":"/integrations/posthog"},{"title":"Connect AI Agents to Salesforce With an External App","sidebarTitle":"Salesforce","href":"/integrations/salesforce"},{"title":"Turn Timeless Meetings Into Agent Follow-Ups","sidebarTitle":"Timeless","href":"/integrations/timeless"},{"title":"Let Agents Search Circleback Meeting Notes","sidebarTitle":"Circleback","href":"/integrations/circleback"},{"title":"Run HeyReach LinkedIn Campaigns From AI Agents","sidebarTitle":"HeyReach","href":"/integrations/heyreach"},{"title":"Automate Dripify LinkedIn Outreach With Agents","sidebarTitle":"Dripify","href":"/integrations/dripify"},{"title":"Let On-Call Agents Triage PagerDuty Incidents","sidebarTitle":"PagerDuty","href":"/integrations/pagerduty"},{"title":"Query Coralogix Logs and Metrics From Agents","sidebarTitle":"Coralogix","href":"/integrations/coralogix"},{"title":"Search Company Knowledge in Onyx From Agents","sidebarTitle":"Onyx","href":"/integrations/onyx"},{"title":"Scoped Cloudflare API Tokens for AI Agents","sidebarTitle":"Cloudflare","href":"/integrations/cloudflare"},{"title":"Set Up One Google OAuth Client for All Google Apps","sidebarTitle":"Google (setup)","href":"/integrations/google"},{"title":"Let AI Agents Search, Draft, and Send Gmail","sidebarTitle":"Gmail","href":"/integrations/gmail"},{"title":"Let AI Agents Schedule Meetings in Google Calendar","sidebarTitle":"Google Calendar","href":"/integrations/google-calendar"},{"title":"Give AI Agents Access to Google Drive Files","sidebarTitle":"Google Drive","href":"/integrations/google-drive"},{"title":"Let AI Agents Draft and Edit Google Docs","sidebarTitle":"Google Docs","href":"/integrations/google-docs"},{"title":"Let AI Agents Read and Update Google Sheets","sidebarTitle":"Google Sheets","href":"/integrations/google-sheets"},{"title":"Generate Google Slides Decks With AI Agents","sidebarTitle":"Google Slides","href":"/integrations/google-slides"},{"title":"Build Google Forms and Read Responses With Agents","sidebarTitle":"Google Forms","href":"/integrations/google-forms"},{"title":"Create Google Meet Links From AI Agents","sidebarTitle":"Google Meet","href":"/integrations/google-meet"},{"title":"Search and Organize Google Photos With AI Agents","sidebarTitle":"Google Photos","href":"/integrations/google-photos"},{"title":"Track To-Dos in Google Tasks From AI Agents","sidebarTitle":"Google Tasks","href":"/integrations/google-tasks"},{"title":"Automate Google Workspace User Admin With Agents","sidebarTitle":"Google Admin","description":"Let IT agents provision users, manage groups, and audit org units through the Google Admin SDK, with OAuth tokens injected by the gateway, not the agent.","href":"/integrations/google-admin"},{"title":"Pull GA4 Reports Into AI Agents","sidebarTitle":"Google Analytics","href":"/integrations/google-analytics"},{"title":"Let AI Agents Check Indexing in Search Console","sidebarTitle":"Google Search Console","description":"Let SEO agents query clicks and impressions, inspect URLs, and check indexing in Google Search Console. The gateway injects OAuth tokens for every call.","href":"/integrations/google-search-console"},{"title":"Automate Google Classroom Coursework With Agents","sidebarTitle":"Google Classroom","href":"/integrations/google-classroom"},{"title":"Manage YouTube Playlists and Analytics With Agents","sidebarTitle":"YouTube","href":"/integrations/youtube"},{"title":"Let AI Agents Search and Update Notion Pages","sidebarTitle":"Notion","href":"/integrations/notion"},{"title":"Let AI Agents Create and Triage Jira Issues","sidebarTitle":"Jira","href":"/integrations/jira"},{"title":"Give AI Agents Search and Edit Access to Confluence","sidebarTitle":"Confluence","href":"/integrations/confluence"},{"title":"Let AI Agents Manage Your Todoist Tasks","sidebarTitle":"Todoist","href":"/integrations/todoist"},{"title":"Give AI Agents Safe Access to Your Dropbox Files","sidebarTitle":"Dropbox","href":"/integrations/dropbox"},{"title":"Deploy to Fly.io From an Agent Without Exposing Tokens","sidebarTitle":"Fly.io","href":"/integrations/flyio"},{"title":"Let AI Agents Post to LinkedIn on Your Behalf","sidebarTitle":"LinkedIn","href":"/integrations/linkedin"},{"title":"Connect AI Agents to Monday.com Boards","sidebarTitle":"Monday.com","href":"/integrations/monday"},{"title":"Administer MongoDB Atlas Clusters With Agents","sidebarTitle":"MongoDB Atlas","href":"/integrations/mongodb-atlas"},{"title":"Sync Navan Bookings and Expenses With AI Agents","sidebarTitle":"Navan","href":"/integrations/navan"},{"title":"Let AI Agents Send Email With Resend","sidebarTitle":"Resend","href":"/integrations/resend"},{"title":"Send SMS and WhatsApp From AI Agents With Twilio","sidebarTitle":"Twilio","href":"/integrations/twilio"},{"title":"Zendesk Integration: Tickets and Help Center","sidebarTitle":"Zendesk","href":"/integrations/zendesk"},{"title":"Manage Supabase Projects With AI Agents","sidebarTitle":"Supabase","href":"/integrations/supabase"},{"title":"Call Claude and Gemini on Vertex AI From Agents","sidebarTitle":"Vertex AI","href":"/integrations/vertex-ai"},{"title":"Let AI Agents Edit Webflow CMS and Publish Sites","sidebarTitle":"Webflow","href":"/integrations/webflow"},{"title":"Let AI Agents Schedule Zoom Meetings and Get Recordings","sidebarTitle":"Zoom","href":"/integrations/zoom"},{"title":"Give Agents AWS Access With an IAM Role, Not Keys","sidebarTitle":"AWS Role","href":"/integrations/aws-role"},{"title":"Bitbucket Repos, Pull Requests, and Pipelines","sidebarTitle":"Bitbucket","href":"/integrations/bitbucket"},{"title":"Manage Docker Hub Repositories From AI Agents","sidebarTitle":"Docker Hub","href":"/integrations/docker"},{"title":"Read Fathom Meeting Summaries From AI Agents","sidebarTitle":"Fathom","href":"/integrations/fathom"},{"title":"Give AI Agents Access to Fireflies Transcripts","sidebarTitle":"Fireflies","href":"/integrations/fireflies"},{"title":"Let AI Agents Work With GitLab Merge Requests","sidebarTitle":"GitLab","href":"/integrations/gitlab"},{"title":"Send Google Chat Messages From AI Agents","sidebarTitle":"Google Chat","href":"/integrations/google-chat"},{"title":"Let AI Agents Look Up and Update Google Contacts","sidebarTitle":"Google Contacts","href":"/integrations/google-contacts"},{"title":"Let AI Agents Read Your Granola Meeting Notes","sidebarTitle":"Granola","href":"/integrations/granola"},{"title":"Route Agent Package Installs Through JFrog","sidebarTitle":"JFrog Artifactory","href":"/integrations/jfrog-artifactory"},{"title":"Let AI Agents File and Update Linear Issues","sidebarTitle":"Linear","href":"/integrations/linear"},{"title":"Run Snowflake SQL From an Agent, Token Hidden","sidebarTitle":"Snowflake","href":"/integrations/snowflake"},{"title":"Use a Restricted Stripe Key With AI Agents","sidebarTitle":"Stripe","href":"/integrations/stripe"},{"title":"Let AI Agents Manage Trello Boards and Cards","sidebarTitle":"Trello","href":"/integrations/trello"},{"title":"Let AI Agents Deploy and Manage Vercel Projects","sidebarTitle":"Vercel","href":"/integrations/vercel"},{"title":"Let AI Agents Post and Read on X (Twitter)","sidebarTitle":"X","href":"/integrations/x"},{"title":"Let AI Agents Work Zoho CRM Leads and Deals","sidebarTitle":"Zoho CRM","href":"/integrations/zoho-crm"},{"title":"Let AI Agents Draft Word Docs in OneDrive","sidebarTitle":"Microsoft Word","href":"/integrations/microsoft-word"}]},{"group":"LLMs","pages":[{"title":"Connect Claude to Agents With a Token or API Key","sidebarTitle":"Anthropic","href":"/integrations/anthropic"},{"title":"Use OpenAI API Keys and Codex OAuth With AI Agents","sidebarTitle":"OpenAI","href":"/integrations/openai"}]},{"group":"External Vaults","pages":[{"title":"Bitwarden Vault: Sync Secrets to the Gateway","sidebarTitle":"Bitwarden","href":"/vaults/bitwarden"},{"title":"1Password Vault: Service Account Integration","sidebarTitle":"1Password","href":"/vaults/1password"}]}]},{"tab":"Guides","pages":[{"title":"Guides","href":"/guides"}]},{"tab":"API Reference","pages":[{"title":"API Reference","href":"/api-reference"}]},{"tab":"SDKs","pages":[{"title":"SDKs","href":"/sdks"}]}]},"basePath":"","title":"Pull GA4 Reports Into AI Agents - OneCLI","buildId":"dpl_BSPUBxEoKhhK7HzXVDPxdPvWx4xc","deploymentId":"dpl_BSPUBxEoKhhK7HzXVDPxdPvWx4xc","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-DRxXE_WT.js","DynamicMarkdown-AlxJK8VR.js","zoom-image-lightbox-B_-GSaTf.js","lightbox-handle-r17bVUz3.js"]}