How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

Google Analytics management API

The management API from Google Analytics — 36 operation(s) for management.

Google Analytics management API is one of 13 APIs that Google Analytics publishes on the APIs.io network, described by a machine-readable OpenAPI specification.

Tagged areas include Management. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, a getting-started guide, authentication docs, and rate-limit docs.

This API exposes 81 operations across 36 paths, and defines 48 schemas. It is described by OpenAPI 3.0.0, at version v1.

Requests are made against a single base URL, https://analyticsadmin.googleapis.com/.

81 operations 36 paths 48 schemas 10 DELETE31 GET10 PATCH17 POST13 PUT

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.0.0
API Version
v1
Base URL
https://analytics.googleapis.com/analytics/v3
Authentication
OAuth 2.0, OAuth 2.0
Contact
Terms of Service
Resource Areas
1

Authentication & Security 2

Google Analytics management API declares 2 security schemes for authenticating requests. It supports OAuth 2.0 (Oauth2) using the implicit flow, exposing 2 scopes. It supports OAuth 2.0 (Oauth2c) using the authorizationCode flow, exposing 2 scopes.

  • Oauth2 — Oauth 2.0 implicit authentication
  • Oauth2c — Oauth 2.0 authorizationCode authentication

Paths & Operations 81

Across 36 paths, the API surfaces 81 operations — 10 DELETE, 31 GET, 10 PATCH, 17 POST, 13 PUT. Each is listed below with its method, path, parameters, and response codes.

management 81
GET
/management/accountSummaries
Lists account summaries (lightweight tree comprised of accounts/properties/profiles) to which the user has access.
analytics.management.accountSummaries.list 9 params → 200
GET
/management/accounts
Lists all accounts to which the user has access.
analytics.management.accounts.list 9 params → 200
GET
/management/accounts/{accountId}/entityUserLinks
Lists account-user links for a given account.
analytics.management.accountUserLinks.list 10 params → 200
POST
/management/accounts/{accountId}/entityUserLinks
Adds a new user to the given account.
analytics.management.accountUserLinks.insert 8 params body → 200
DELETE
/management/accounts/{accountId}/entityUserLinks/{linkId}
Removes a user from the given account.
analytics.management.accountUserLinks.delete 9 params → 200
PUT
/management/accounts/{accountId}/entityUserLinks/{linkId}
Updates permissions for an existing user on the given account.
analytics.management.accountUserLinks.update 9 params body → 200
GET
/management/accounts/{accountId}/filters
Lists all filters for an account
analytics.management.filters.list 10 params → 200
POST
/management/accounts/{accountId}/filters
Create a new filter.
analytics.management.filters.insert 8 params body → 200
DELETE
/management/accounts/{accountId}/filters/{filterId}
Delete a filter.
analytics.management.filters.delete 9 params → 200
GET
/management/accounts/{accountId}/filters/{filterId}
Returns filters to which the user has access.
analytics.management.filters.get 9 params → 200
PATCH
/management/accounts/{accountId}/filters/{filterId}
Updates an existing filter. This method supports patch semantics.
analytics.management.filters.patch 9 params body → 200
PUT
/management/accounts/{accountId}/filters/{filterId}
Updates an existing filter.
analytics.management.filters.update 9 params body → 200
GET
/management/accounts/{accountId}/webproperties
Lists web properties to which the user has access.
analytics.management.webproperties.list 10 params → 200
POST
/management/accounts/{accountId}/webproperties
Create a new property if the account has fewer than 20 properties. Web properties are visible in the Google Analytics interface only if they have at least one profile.
analytics.management.webproperties.insert 8 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}
Gets a web property to which the user has access.
analytics.management.webproperties.get 9 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}
Updates an existing web property. This method supports patch semantics.
analytics.management.webproperties.patch 9 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}
Updates an existing web property.
analytics.management.webproperties.update 9 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources
List custom data sources to which the user has access.
analytics.management.customDataSources.list 11 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/deleteUploadData
Delete data associated with a previous upload.
analytics.management.uploads.deleteUploadData 10 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads
List uploads to which the user has access.
analytics.management.uploads.list 12 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads
Upload data for a custom data source.
analytics.management.uploads.uploadData 10 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDataSources/{customDataSourceId}/uploads/{uploadId}
List uploads to which the user has access.
analytics.management.uploads.get 11 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions
Lists custom dimensions to which the user has access.
analytics.management.customDimensions.list 11 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions
Create a new custom dimension.
analytics.management.customDimensions.insert 9 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}
Get a custom dimension to which the user has access.
analytics.management.customDimensions.get 10 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}
Updates an existing custom dimension. This method supports patch semantics.
analytics.management.customDimensions.patch 11 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/customDimensions/{customDimensionId}
Updates an existing custom dimension.
analytics.management.customDimensions.update 11 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics
Lists custom metrics to which the user has access.
analytics.management.customMetrics.list 11 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics
Create a new custom metric.
analytics.management.customMetrics.insert 9 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}
Get a custom metric to which the user has access.
analytics.management.customMetrics.get 10 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}
Updates an existing custom metric. This method supports patch semantics.
analytics.management.customMetrics.patch 11 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/customMetrics/{customMetricId}
Updates an existing custom metric.
analytics.management.customMetrics.update 11 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks
Lists webProperty-Google Ads links for a given web property.
analytics.management.webPropertyAdWordsLinks.list 11 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks
Creates a webProperty-Google Ads link.
analytics.management.webPropertyAdWordsLinks.insert 9 params body → 200
DELETE
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}
Deletes a web property-Google Ads link.
analytics.management.webPropertyAdWordsLinks.delete 10 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}
Returns a web property-Google Ads link to which the user has access.
analytics.management.webPropertyAdWordsLinks.get 10 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}
Updates an existing webProperty-Google Ads link. This method supports patch semantics.
analytics.management.webPropertyAdWordsLinks.patch 10 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityAdWordsLinks/{webPropertyAdWordsLinkId}
Updates an existing webProperty-Google Ads link.
analytics.management.webPropertyAdWordsLinks.update 10 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks
Lists webProperty-user links for a given web property.
analytics.management.webpropertyUserLinks.list 11 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks
Adds a new user to the given web property.
analytics.management.webpropertyUserLinks.insert 9 params body → 200
DELETE
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}
Removes a user from the given web property.
analytics.management.webpropertyUserLinks.delete 10 params → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/entityUserLinks/{linkId}
Updates permissions for an existing user on the given web property.
analytics.management.webpropertyUserLinks.update 10 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles
Lists views (profiles) to which the user has access.
analytics.management.profiles.list 11 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles
Create a new view (profile).
analytics.management.profiles.insert 9 params body → 200
DELETE
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}
Deletes a view (profile).
analytics.management.profiles.delete 10 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}
Gets a view (profile) to which the user has access.
analytics.management.profiles.get 10 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}
Updates an existing view (profile). This method supports patch semantics.
analytics.management.profiles.patch 10 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}
Updates an existing view (profile).
analytics.management.profiles.update 10 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks
Lists profile-user links for a given view (profile).
analytics.management.profileUserLinks.list 12 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks
Adds a new user to the given view (profile).
analytics.management.profileUserLinks.insert 10 params body → 200
DELETE
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}
Removes a user from the given view (profile).
analytics.management.profileUserLinks.delete 11 params → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/entityUserLinks/{linkId}
Updates permissions for an existing user on the given view (profile).
analytics.management.profileUserLinks.update 11 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments
Lists experiments to which the user has access.
analytics.management.experiments.list 12 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments
Create a new experiment.
analytics.management.experiments.insert 10 params body → 200
DELETE
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}
Delete an experiment.
analytics.management.experiments.delete 11 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}
Returns an experiment to which the user has access.
analytics.management.experiments.get 11 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}
Update an existing experiment. This method supports patch semantics.
analytics.management.experiments.patch 11 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/experiments/{experimentId}
Update an existing experiment.
analytics.management.experiments.update 11 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals
Lists goals to which the user has access.
analytics.management.goals.list 12 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals
Create a new goal.
analytics.management.goals.insert 10 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}
Gets a goal to which the user has access.
analytics.management.goals.get 11 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}
Updates an existing goal. This method supports patch semantics.
analytics.management.goals.patch 11 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/goals/{goalId}
Updates an existing goal.
analytics.management.goals.update 11 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks
Lists all profile filter links for a profile.
analytics.management.profileFilterLinks.list 12 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks
Create a new profile filter link.
analytics.management.profileFilterLinks.insert 10 params body → 200
DELETE
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}
Delete a profile filter link.
analytics.management.profileFilterLinks.delete 11 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}
Returns a single profile filter link.
analytics.management.profileFilterLinks.get 11 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}
Update an existing profile filter link. This method supports patch semantics.
analytics.management.profileFilterLinks.patch 11 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/profileFilterLinks/{linkId}
Update an existing profile filter link.
analytics.management.profileFilterLinks.update 11 params body → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports
Lists unsampled reports to which the user has access.
analytics.management.unsampledReports.list 12 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports
Create a new unsampled report.
analytics.management.unsampledReports.insert 10 params body → 200
DELETE
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}
Deletes an unsampled report.
analytics.management.unsampledReports.delete 11 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/profiles/{profileId}/unsampledReports/{unsampledReportId}
Returns a single unsampled report.
analytics.management.unsampledReports.get 11 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences
Lists remarketing audiences to which the user has access.
analytics.management.remarketingAudience.list 12 params → 200
POST
/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences
Creates a new remarketing audience.
analytics.management.remarketingAudience.insert 9 params body → 200
DELETE
/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}
Delete a remarketing audience.
analytics.management.remarketingAudience.delete 10 params → 200
GET
/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}
Gets a remarketing audience to which the user has access.
analytics.management.remarketingAudience.get 10 params → 200
PATCH
/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}
Updates an existing remarketing audience. This method supports patch semantics.
analytics.management.remarketingAudience.patch 10 params body → 200
PUT
/management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}
Updates an existing remarketing audience.
analytics.management.remarketingAudience.update 10 params body → 200
POST
/management/clientId:hashClientId
Hashes the given Client ID.
analytics.management.clientId.hashClientId 7 params body → 200
GET
/management/segments
Lists segments to which the user has access.
analytics.management.segments.list 9 params → 200

Schemas 48

The contract defines 48 schemas that model the data the API accepts and returns. The most detailed are Experiment (28 properties), Profile (26 properties), UnsampledReport (19 properties), Webproperty (19 properties). Each schema is shown below with its type and property counts.

HashClientIdResponse
object
JSON template for a hash Client Id response resource.
4 properties
WebPropertySummary
object
JSON template for an Analytics WebPropertySummary. WebPropertySummary returns basic information (i.e., summary) for a web property.
8 properties
ProfileFilterLink
object
JSON template for an Analytics profile filter link.
6 properties
AccountRef
object
JSON template for a linked account.
4 properties
Experiment
object
JSON template for Analytics experiment resource.
28 properties
Filter
object
JSON template for an Analytics account filter.
15 properties
UserRef
object
JSON template for a user reference.
3 properties
Experiments
object
An experiment collection lists Analytics experiments to which the user has access. Each view (profile) can have a set of experiments. Each resource in the Expe…
8 properties
Profile
object
JSON template for an Analytics view (profile).
26 properties
EntityUserLinks
object
An entity user link collection provides a list of Analytics ACL links Each resource in this collection corresponds to a single link.
7 properties
EntityUserLink
object
JSON template for an Analytics Entity-User Link. Returns permissions that a user has for an entity.
6 properties
IncludeConditions
object
JSON template for an Analytics Remarketing Include Conditions.
5 properties
AccountSummary
object
JSON template for an Analytics AccountSummary. An AccountSummary is a lightweight tree comprised of properties/profiles.
5 properties
RemarketingAudience
object
JSON template for an Analytics remarketing audience.
14 properties
AnalyticsDataimportDeleteUploadDataRequest
object
Request template for the delete upload data request.
1 property
RemarketingAudiences
object
A remarketing audience collection lists Analytics remarketing audiences to which the user has access. Each resource in the collection corresponds to a single A…
8 properties
Account
object
JSON template for Analytics account entry.
9 properties
CustomMetric
object
JSON template for Analytics Custom Metric.
15 properties
FilterExpression
object
JSON template for an Analytics filter expression.
6 properties
UnsampledReport
object
JSON template for Analytics unsampled report resource.
19 properties
ProfileRef
object
JSON template for a linked view (profile).
7 properties
FilterRef
object
JSON template for a profile filter link.
5 properties
Webproperties
object
A web property collection lists Analytics web properties to which the user has access. Each resource in the collection corresponds to a single Analytics web pr…
8 properties
Goals
object
A goal collection lists Analytics goals to which the user has access. Each view (profile) can have a set of goals. Each resource in the Goal collection corresp…
8 properties
Goal
object
JSON template for Analytics goal resource.
18 properties
EntityAdWordsLinks
object
An entity Google Ads link collection provides a list of GA-Google Ads links Each resource in this collection corresponds to a single link.
7 properties
EntityAdWordsLink
object
JSON template for Analytics Entity Google Ads Link.
7 properties
Upload
object
Metadata returned for an upload operation.
7 properties
Profiles
object
A view (profile) collection lists Analytics views (profiles) to which the user has access. Each resource in the collection corresponds to a single Analytics vi…
8 properties
AccountSummaries
object
An AccountSummary collection lists a summary of accounts, properties and views (profiles) to which the user has access. Each resource in the collection corresp…
8 properties
CustomDimensions
object
A custom dimension collection lists Analytics custom dimensions to which the user has access. Each resource in the collection corresponds to a single Analytics…
8 properties
CustomDimension
object
JSON template for Analytics Custom Dimension.
12 properties
ProfileFilterLinks
object
A profile filter link collection lists profile filter links between profiles and filters. Each resource in the collection corresponds to a profile filter link.
8 properties
Segments
object
An segment collection lists Analytics segments that the user has access to. Each resource in the collection corresponds to a single Analytics segment.
8 properties
Accounts
object
An account collection provides a list of Analytics accounts to which a user has access. The account collection is the entry point to all management information…
8 properties
CustomDataSource
object
JSON template for an Analytics custom data source.
16 properties
ProfileSummary
object
JSON template for an Analytics ProfileSummary. ProfileSummary returns basic information (i.e., summary) for a profile.
5 properties
LinkedForeignAccount
object
JSON template for an Analytics Remarketing Audience Foreign Link.
10 properties
Segment
object
JSON template for an Analytics segment.
9 properties
Webproperty
object
JSON template for an Analytics web property.
19 properties
Filters
object
A filter collection lists filters created by users in an Analytics account. Each resource in the collection corresponds to a filter.
8 properties
HashClientIdRequest
object
JSON template for a hash Client Id request resource.
3 properties
Uploads
object
Upload collection lists Analytics uploads to which the user has access. Each custom data source can have a set of uploads. Each resource in the upload collecti…
7 properties
CustomMetrics
object
A custom metric collection lists Analytics custom metrics to which the user has access. Each resource in the collection corresponds to a single Analytics custo…
8 properties
CustomDataSources
object
Lists Analytics custom data sources to which the user has access. Each resource in the collection corresponds to a single Analytics custom data source.
8 properties
WebPropertyRef
object
JSON template for a web property reference.
6 properties
AdWordsAccount
object
JSON template for an Google Ads account.
3 properties
UnsampledReports
object
An unsampled report collection lists Analytics unsampled reports to which the user has access. Each view (profile) can have a set of unsampled reports. Each re…
8 properties

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

google-analytics-management-api-openapi.yml Raw ↑

Other APIs Google Analytics publishes across the network.

Google Analytics accounts API
Google Analytics accountSummaries API
Google Analytics data API
Google Analytics Events API
Google Analytics metadata API
Google Analytics properties API
Google Analytics provisioning API
Google Analytics reports API
Google Analytics User Deletion API
Google Analytics userActivity API
Google Analytics userDeletion API
Google Analytics Validation API
Where this information came from

This is an independent, third-party profile of Google Analytics management API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.