{
  "basePath": "",
  "ownerName": "Google",
  "id": "marketingplatformadmin:v1alpha",
  "mtlsRootUrl": "https://marketingplatformadmin.mtls.googleapis.com/",
  "kind": "discovery#restDescription",
  "canonicalName": "Google Marketing Platform Admin API",
  "version": "v1alpha",
  "description": "The Google Marketing Platform Admin API allows for programmatic access to the Google Marketing Platform configuration data. You can use the Google Marketing Platform Admin API to manage links between your Google Marketing Platform organization and Google Analytics accounts, and to set the service level of your GA4 properties.",
  "parameters": {
    "callback": {
      "description": "JSONP",
      "type": "string",
      "location": "query"
    },
    "access_token": {
      "location": "query",
      "description": "OAuth access token.",
      "type": "string"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "type": "boolean",
      "location": "query",
      "description": "Returns response with indentations and line breaks.",
      "default": "true"
    },
    "$.xgafv": {
      "enum": [
        "1",
        "2"
      ],
      "description": "V1 error format.",
      "type": "string",
      "location": "query",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ]
    },
    "upload_protocol": {
      "type": "string",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query"
    },
    "alt": {
      "type": "string",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "default": "json",
      "description": "Data format for response."
    },
    "uploadType": {
      "type": "string",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query"
    },
    "oauth_token": {
      "location": "query",
      "type": "string",
      "description": "OAuth 2.0 token for the current user."
    }
  },
  "discoveryVersion": "v1",
  "version_module": true,
  "resources": {
    "organizations": {
      "methods": {
        "reportPropertyUsage": {
          "id": "marketingplatformadmin.organizations.reportPropertyUsage",
          "description": "Gets the usage and billing data for properties within the organization for the specified month. Per direct client org, user needs to be OrgAdmin/BillingAdmin on the organization in order to view the billing and usage data. Per sales partner client org, user needs to be OrgAdmin/BillingAdmin on the sales partner org in order to view the billing and usage data, or OrgAdmin/BillingAdmin on the sales partner client org in order to view the usage data only.",
          "request": {
            "$ref": "ReportPropertyUsageRequest"
          },
          "scopes": [
            "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
            "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
          ],
          "parameterOrder": [
            "organization"
          ],
          "parameters": {
            "organization": {
              "type": "string",
              "required": true,
              "pattern": "^organizations/[^/]+$",
              "description": "Required. Specifies the organization whose property usage will be listed. Format: organizations/{org_id}",
              "location": "path"
            }
          },
          "httpMethod": "POST",
          "path": "v1alpha/{+organization}:reportPropertyUsage",
          "response": {
            "$ref": "ReportPropertyUsageResponse"
          },
          "flatPath": "v1alpha/organizations/{organizationsId}:reportPropertyUsage"
        },
        "list": {
          "httpMethod": "GET",
          "id": "marketingplatformadmin.organizations.list",
          "description": "Returns a list of organizations that the user has access to.",
          "scopes": [
            "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
            "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
          ],
          "parameterOrder": [],
          "response": {
            "$ref": "ListOrganizationsResponse"
          },
          "path": "v1alpha/organizations",
          "parameters": {
            "pageSize": {
              "location": "query",
              "type": "integer",
              "format": "int32",
              "description": "Optional. The maximum number of organizations to return in one call. The service may return fewer than this value. If unspecified, at most 50 organizations will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000."
            },
            "pageToken": {
              "type": "string",
              "description": "Optional. A page token, received from a previous ListOrganizations call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListOrganizations` must match the call that provided the page token.",
              "location": "query"
            }
          },
          "flatPath": "v1alpha/organizations"
        },
        "get": {
          "flatPath": "v1alpha/organizations/{organizationsId}",
          "parameterOrder": [
            "name"
          ],
          "httpMethod": "GET",
          "id": "marketingplatformadmin.organizations.get",
          "response": {
            "$ref": "Organization"
          },
          "scopes": [
            "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
            "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
          ],
          "description": "Looks up a single organization.",
          "path": "v1alpha/{+name}",
          "parameters": {
            "name": {
              "description": "Required. The name of the Organization to retrieve. Format: organizations/{org_id}",
              "pattern": "^organizations/[^/]+$",
              "type": "string",
              "location": "path",
              "required": true
            }
          }
        },
        "findSalesPartnerManagedClients": {
          "parameterOrder": [
            "organization"
          ],
          "id": "marketingplatformadmin.organizations.findSalesPartnerManagedClients",
          "request": {
            "$ref": "FindSalesPartnerManagedClientsRequest"
          },
          "flatPath": "v1alpha/organizations/{organizationsId}:findSalesPartnerManagedClients",
          "parameters": {
            "organization": {
              "required": true,
              "type": "string",
              "description": "Required. The name of the sales partner organization. Format: organizations/{org_id}",
              "location": "path",
              "pattern": "^organizations/[^/]+$"
            }
          },
          "response": {
            "$ref": "FindSalesPartnerManagedClientsResponse"
          },
          "description": "Returns a list of clients managed by the sales partner organization. User needs to be an OrgAdmin/BillingAdmin on the sales partner organization in order to view the end clients.",
          "scopes": [
            "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
            "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
          ],
          "httpMethod": "POST",
          "path": "v1alpha/{+organization}:findSalesPartnerManagedClients"
        }
      },
      "resources": {
        "analyticsAccountLinks": {
          "methods": {
            "create": {
              "id": "marketingplatformadmin.organizations.analyticsAccountLinks.create",
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "httpMethod": "POST",
              "request": {
                "$ref": "AnalyticsAccountLink"
              },
              "response": {
                "$ref": "AnalyticsAccountLink"
              },
              "parameters": {
                "parent": {
                  "location": "path",
                  "pattern": "^organizations/[^/]+$",
                  "required": true,
                  "type": "string",
                  "description": "Required. The parent resource where this Analytics account link will be created. Format: organizations/{org_id}"
                }
              },
              "path": "v1alpha/{+parent}/analyticsAccountLinks",
              "description": "Creates the link between the Analytics account and the Google Marketing Platform organization. User needs to be an org user, and admin on the Analytics account to create the link. If the account is already linked to an organization, user needs to unlink the account from the current organization, then try link again.",
              "parameterOrder": [
                "parent"
              ],
              "flatPath": "v1alpha/organizations/{organizationsId}/analyticsAccountLinks"
            },
            "list": {
              "parameterOrder": [
                "parent"
              ],
              "httpMethod": "GET",
              "id": "marketingplatformadmin.organizations.analyticsAccountLinks.list",
              "response": {
                "$ref": "ListAnalyticsAccountLinksResponse"
              },
              "flatPath": "v1alpha/organizations/{organizationsId}/analyticsAccountLinks",
              "path": "v1alpha/{+parent}/analyticsAccountLinks",
              "description": "Lists the Google Analytics accounts link to the specified Google Marketing Platform organization.",
              "parameters": {
                "pageToken": {
                  "location": "query",
                  "type": "string",
                  "description": "Optional. A page token, received from a previous ListAnalyticsAccountLinks call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAnalyticsAccountLinks` must match the call that provided the page token."
                },
                "parent": {
                  "required": true,
                  "type": "string",
                  "pattern": "^organizations/[^/]+$",
                  "location": "path",
                  "description": "Required. The parent organization, which owns this collection of Analytics account links. Format: organizations/{org_id}"
                },
                "pageSize": {
                  "format": "int32",
                  "description": "Optional. The maximum number of Analytics account links to return in one call. The service may return fewer than this value. If unspecified, at most 50 Analytics account links will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
                  "location": "query",
                  "type": "integer"
                }
              },
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ]
            },
            "delete": {
              "response": {
                "$ref": "Empty"
              },
              "path": "v1alpha/{+name}",
              "httpMethod": "DELETE",
              "flatPath": "v1alpha/organizations/{organizationsId}/analyticsAccountLinks/{analyticsAccountLinksId}",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "location": "path",
                  "description": "Required. The name of the Analytics account link to delete. Format: organizations/{org_id}/analyticsAccountLinks/{analytics_account_link_id}",
                  "pattern": "^organizations/[^/]+/analyticsAccountLinks/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "id": "marketingplatformadmin.organizations.analyticsAccountLinks.delete",
              "description": "Deletes the AnalyticsAccountLink, which detaches the Analytics account from the Google Marketing Platform organization. User needs to be an org user, and admin on the Analytics account in order to delete the link."
            },
            "setPropertyServiceLevel": {
              "request": {
                "$ref": "SetPropertyServiceLevelRequest"
              },
              "parameters": {
                "analyticsAccountLink": {
                  "required": true,
                  "type": "string",
                  "location": "path",
                  "pattern": "^organizations/[^/]+/analyticsAccountLinks/[^/]+$",
                  "description": "Required. The parent AnalyticsAccountLink scope where this property is in. Format: organizations/{org_id}/analyticsAccountLinks/{analytics_account_link_id}"
                }
              },
              "path": "v1alpha/{+analyticsAccountLink}:setPropertyServiceLevel",
              "id": "marketingplatformadmin.organizations.analyticsAccountLinks.setPropertyServiceLevel",
              "description": "Updates the service level for an Analytics property.",
              "response": {
                "$ref": "SetPropertyServiceLevelResponse"
              },
              "parameterOrder": [
                "analyticsAccountLink"
              ],
              "flatPath": "v1alpha/organizations/{organizationsId}/analyticsAccountLinks/{analyticsAccountLinksId}:setPropertyServiceLevel",
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "httpMethod": "POST"
            }
          }
        },
        "userGroups": {
          "methods": {
            "delete": {
              "httpMethod": "DELETE",
              "parameterOrder": [
                "name"
              ],
              "description": "Deletes a user group in the specified GMP organization.",
              "path": "v1alpha/{+name}",
              "id": "marketingplatformadmin.organizations.userGroups.delete",
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "response": {
                "$ref": "Empty"
              },
              "parameters": {
                "name": {
                  "description": "Required. The name of the user group to delete. Format: organizations/{org_id}/userGroups/{user_group_id}",
                  "location": "path",
                  "pattern": "^organizations/[^/]+/userGroups/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "flatPath": "v1alpha/organizations/{organizationsId}/userGroups/{userGroupsId}"
            },
            "get": {
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "pattern": "^organizations/[^/]+/userGroups/[^/]+$",
                  "required": true,
                  "type": "string",
                  "location": "path",
                  "description": "Required. The name of the UserGroup to retrieve. Format: organizations/{org_id}/userGroups/{user_group_id}"
                }
              },
              "path": "v1alpha/{+name}",
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "id": "marketingplatformadmin.organizations.userGroups.get",
              "response": {
                "$ref": "UserGroup"
              },
              "description": "Looks up a single user group.",
              "flatPath": "v1alpha/organizations/{organizationsId}/userGroups/{userGroupsId}",
              "httpMethod": "GET"
            },
            "list": {
              "description": "Returns a list of user groups in the specified GMP organization.",
              "path": "v1alpha/{+parent}/userGroups",
              "httpMethod": "GET",
              "parameterOrder": [
                "parent"
              ],
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "id": "marketingplatformadmin.organizations.userGroups.list",
              "flatPath": "v1alpha/organizations/{organizationsId}/userGroups",
              "parameters": {
                "pageSize": {
                  "description": "Optional. The maximum number of user groups to return in one call. The service may return fewer than this value. If unspecified, at most 50 user groups will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
                  "location": "query",
                  "format": "int32",
                  "type": "integer"
                },
                "pageToken": {
                  "type": "string",
                  "location": "query",
                  "description": "Optional. A page token, received from a previous ListUserGroups call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListUserGroups` must match the call that provided the page token."
                },
                "parent": {
                  "required": true,
                  "description": "Required. The parent org where this UserGroup will be listed. Format: organizations/{org_id}",
                  "type": "string",
                  "location": "path",
                  "pattern": "^organizations/[^/]+$"
                }
              },
              "response": {
                "$ref": "ListUserGroupsResponse"
              }
            },
            "patch": {
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "httpMethod": "PATCH",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "updateMask": {
                  "description": "Required. The list of fields to update. Field names must be in snake case (for example, \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.",
                  "location": "query",
                  "type": "string",
                  "format": "google-fieldmask"
                },
                "name": {
                  "required": true,
                  "type": "string",
                  "location": "path",
                  "description": "Identifier. Resource name of this UserGroup. Format: organizations/{org_id}/userGroups/{user_group_id} Example: \"organizations/123abc/userGroups/456def\"",
                  "pattern": "^organizations/[^/]+/userGroups/[^/]+$"
                }
              },
              "flatPath": "v1alpha/organizations/{organizationsId}/userGroups/{userGroupsId}",
              "path": "v1alpha/{+name}",
              "description": "Updates a user group in the specified GMP organization.",
              "request": {
                "$ref": "UserGroup"
              },
              "id": "marketingplatformadmin.organizations.userGroups.patch",
              "response": {
                "$ref": "UserGroup"
              }
            },
            "create": {
              "id": "marketingplatformadmin.organizations.userGroups.create",
              "flatPath": "v1alpha/organizations/{organizationsId}/userGroups",
              "parameters": {
                "parent": {
                  "description": "Required. The parent resource where this UserGroup will be created. Format: organizations/{org_id}",
                  "pattern": "^organizations/[^/]+$",
                  "location": "path",
                  "required": true,
                  "type": "string"
                }
              },
              "response": {
                "$ref": "UserGroup"
              },
              "description": "Creates a user group in the specified GMP organization.",
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "request": {
                "$ref": "UserGroup"
              },
              "parameterOrder": [
                "parent"
              ],
              "httpMethod": "POST",
              "path": "v1alpha/{+parent}/userGroups"
            }
          },
          "resources": {
            "members": {
              "methods": {
                "delete": {
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "pattern": "^organizations/[^/]+/userGroups/[^/]+/members/[^/]+$",
                      "location": "path",
                      "type": "string",
                      "description": "Required. The name of the user group member to delete. Format: organizations/{org_id}/userGroups/{user_group_id}/members/{member_id}",
                      "required": true
                    }
                  },
                  "id": "marketingplatformadmin.organizations.userGroups.members.delete",
                  "scopes": [
                    "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
                  ],
                  "path": "v1alpha/{+name}",
                  "flatPath": "v1alpha/organizations/{organizationsId}/userGroups/{userGroupsId}/members/{membersId}",
                  "description": "Deletes a member in the specified GMP user group.",
                  "response": {
                    "$ref": "Empty"
                  },
                  "httpMethod": "DELETE"
                },
                "patch": {
                  "parameterOrder": [
                    "name"
                  ],
                  "parameters": {
                    "name": {
                      "description": "Identifier. The resource name of this UserGroupMember. Format: organizations/{org_id}/userGroups/{user_group_id}/members/{member_id} Example: \"organizations/123abc/userGroups/456def/members/789ghi\"",
                      "location": "path",
                      "pattern": "^organizations/[^/]+/userGroups/[^/]+/members/[^/]+$",
                      "required": true,
                      "type": "string"
                    },
                    "updateMask": {
                      "description": "Required. The list of fields to update. Field names must be in snake case (for example, \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.",
                      "type": "string",
                      "location": "query",
                      "format": "google-fieldmask"
                    }
                  },
                  "response": {
                    "$ref": "UserGroupMember"
                  },
                  "request": {
                    "$ref": "UserGroupMember"
                  },
                  "id": "marketingplatformadmin.organizations.userGroups.members.patch",
                  "path": "v1alpha/{+name}",
                  "description": "Updates a member in the specified GMP user group.",
                  "flatPath": "v1alpha/organizations/{organizationsId}/userGroups/{userGroupsId}/members/{membersId}",
                  "scopes": [
                    "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
                  ],
                  "httpMethod": "PATCH"
                },
                "get": {
                  "httpMethod": "GET",
                  "id": "marketingplatformadmin.organizations.userGroups.members.get",
                  "response": {
                    "$ref": "UserGroupMember"
                  },
                  "description": "Looks up a single user group member.",
                  "parameterOrder": [
                    "name"
                  ],
                  "flatPath": "v1alpha/organizations/{organizationsId}/userGroups/{userGroupsId}/members/{membersId}",
                  "parameters": {
                    "name": {
                      "description": "Required. The name of the user group member to retrieve. Format: organizations/{org_id}/userGroups/{user_group_id}/members/{member_id}",
                      "required": true,
                      "pattern": "^organizations/[^/]+/userGroups/[^/]+/members/[^/]+$",
                      "location": "path",
                      "type": "string"
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
                    "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
                  ],
                  "path": "v1alpha/{+name}"
                },
                "list": {
                  "scopes": [
                    "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
                    "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
                  ],
                  "response": {
                    "$ref": "ListUserGroupMembersResponse"
                  },
                  "description": "Returns a list of members in the specified user group.",
                  "flatPath": "v1alpha/organizations/{organizationsId}/userGroups/{userGroupsId}/members",
                  "parameters": {
                    "pageSize": {
                      "format": "int32",
                      "description": "Optional. The maximum number of user group members to return in one call. The service may return fewer than this value. If unspecified, at most 50 user group members will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
                      "location": "query",
                      "type": "integer"
                    },
                    "parent": {
                      "description": "Required. The parent user group where this UserGroupMember will be listed. Format: organizations/{org_id}/userGroups/{user_group_id}",
                      "required": true,
                      "type": "string",
                      "location": "path",
                      "pattern": "^organizations/[^/]+/userGroups/[^/]+$"
                    },
                    "pageToken": {
                      "type": "string",
                      "location": "query",
                      "description": "Optional. A page token, received from a previous ListUserGroupMembers call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListUserGroupMembers` must match the call that provided the page token."
                    }
                  },
                  "parameterOrder": [
                    "parent"
                  ],
                  "path": "v1alpha/{+parent}/members",
                  "httpMethod": "GET",
                  "id": "marketingplatformadmin.organizations.userGroups.members.list"
                },
                "create": {
                  "response": {
                    "$ref": "UserGroupMember"
                  },
                  "parameters": {
                    "parent": {
                      "pattern": "^organizations/[^/]+/userGroups/[^/]+$",
                      "location": "path",
                      "type": "string",
                      "description": "Required. The parent resource where this UserGroupMember will be created. Format: organizations/{org_id}/userGroups/{user_group_id}",
                      "required": true
                    }
                  },
                  "scopes": [
                    "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
                  ],
                  "parameterOrder": [
                    "parent"
                  ],
                  "flatPath": "v1alpha/organizations/{organizationsId}/userGroups/{userGroupsId}/members",
                  "request": {
                    "$ref": "UserGroupMember"
                  },
                  "path": "v1alpha/{+parent}/members",
                  "id": "marketingplatformadmin.organizations.userGroups.members.create",
                  "httpMethod": "POST",
                  "description": "Adds a member to the specified GMP user group."
                }
              }
            }
          }
        },
        "adminAccessBindings": {
          "methods": {
            "create": {
              "response": {
                "$ref": "AdminAccessBinding"
              },
              "path": "v1alpha/{+parent}/adminAccessBindings",
              "parameters": {
                "parent": {
                  "location": "path",
                  "type": "string",
                  "required": true,
                  "description": "Required. The parent organization, which owns this Admin Access Binding. Format: organizations/{org_id}",
                  "pattern": "^organizations/[^/]+$"
                }
              },
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "id": "marketingplatformadmin.organizations.adminAccessBindings.create",
              "flatPath": "v1alpha/organizations/{organizationsId}/adminAccessBindings",
              "parameterOrder": [
                "parent"
              ],
              "httpMethod": "POST",
              "description": "Creates an admin access binding in the specified GMP organization.",
              "request": {
                "$ref": "AdminAccessBinding"
              }
            },
            "get": {
              "id": "marketingplatformadmin.organizations.adminAccessBindings.get",
              "parameters": {
                "name": {
                  "location": "path",
                  "description": "Required. The name of the AdminAccessBinding to retrieve. Format: organizations/{org_id}/adminAccessBindings/{admin_access_binding_id}",
                  "required": true,
                  "type": "string",
                  "pattern": "^organizations/[^/]+/adminAccessBindings/[^/]+$"
                }
              },
              "flatPath": "v1alpha/organizations/{organizationsId}/adminAccessBindings/{adminAccessBindingsId}",
              "httpMethod": "GET",
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "description": "Looks up a single admin access binding.",
              "response": {
                "$ref": "AdminAccessBinding"
              },
              "parameterOrder": [
                "name"
              ],
              "path": "v1alpha/{+name}"
            },
            "list": {
              "httpMethod": "GET",
              "id": "marketingplatformadmin.organizations.adminAccessBindings.list",
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read",
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "description": "Returns a list of admin access bindings in the specified GMP organization.",
              "path": "v1alpha/{+parent}/adminAccessBindings",
              "parameterOrder": [
                "parent"
              ],
              "flatPath": "v1alpha/organizations/{organizationsId}/adminAccessBindings",
              "parameters": {
                "parent": {
                  "description": "Required. The parent organization, which owns this collection of Admin Access Bindings. Format: organizations/{org_id}",
                  "location": "path",
                  "type": "string",
                  "required": true,
                  "pattern": "^organizations/[^/]+$"
                },
                "pageToken": {
                  "description": "Optional. A page token, received from a previous ListAdminAccessBindings call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListAdminAccessBindings` must match the call that provided the page token.",
                  "location": "query",
                  "type": "string"
                },
                "pageSize": {
                  "description": "Optional. The maximum number of Admin Access Bindings to return in one call. The service may return fewer than this value. If unspecified, at most 50 Admin Access Bindings will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.",
                  "location": "query",
                  "type": "integer",
                  "format": "int32"
                }
              },
              "response": {
                "$ref": "ListAdminAccessBindingsResponse"
              }
            },
            "patch": {
              "response": {
                "$ref": "AdminAccessBinding"
              },
              "parameterOrder": [
                "name"
              ],
              "request": {
                "$ref": "AdminAccessBinding"
              },
              "flatPath": "v1alpha/organizations/{organizationsId}/adminAccessBindings/{adminAccessBindingsId}",
              "httpMethod": "PATCH",
              "scopes": [
                "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update"
              ],
              "id": "marketingplatformadmin.organizations.adminAccessBindings.patch",
              "parameters": {
                "name": {
                  "required": true,
                  "location": "path",
                  "pattern": "^organizations/[^/]+/adminAccessBindings/[^/]+$",
                  "description": "Identifier. The resource name of this AdminAccessBinding. Format: organizations/{org_id}/adminAccessBindings/{admin_access_binding_id} Example: \"organizations/123abc/adminAccessBindings/456def\"",
                  "type": "string"
                },
                "updateMask": {
                  "description": "Required. The list of fields to update. Field names must be in snake case (for example, \"field_to_update\"). Omitted fields will not be updated. To replace the entire entity, use one path with the string \"*\" to match all fields.",
                  "location": "query",
                  "type": "string",
                  "format": "google-fieldmask"
                }
              },
              "path": "v1alpha/{+name}",
              "description": "Updates an admin access binding in the specified GMP organization."
            }
          }
        }
      }
    }
  },
  "batchPath": "batch",
  "baseUrl": "https://marketingplatformadmin.googleapis.com/",
  "protocol": "rest",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/marketingplatformadmin.analytics.update": {
          "description": "Manage your Google Analytics product account data in GMP home"
        },
        "https://www.googleapis.com/auth/marketingplatformadmin.analytics.read": {
          "description": "View your Google Analytics product account data in GMP home"
        }
      }
    }
  },
  "servicePath": "",
  "revision": "20260924",
  "schemas": {
    "Empty": {
      "properties": {},
      "id": "Empty",
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }",
      "type": "object"
    },
    "ReportPropertyUsageResponse": {
      "description": "Response message for ReportPropertyUsage RPC.",
      "properties": {
        "propertyUsages": {
          "description": "Usage data for all properties in the specified organization and month.",
          "items": {
            "$ref": "PropertyUsage"
          },
          "type": "array"
        },
        "billInfo": {
          "description": "Bill amount in the specified organization and month. Will be empty if user only has access to usage data.",
          "$ref": "BillInfo"
        }
      },
      "id": "ReportPropertyUsageResponse",
      "type": "object"
    },
    "ListAdminAccessBindingsResponse": {
      "type": "object",
      "description": "Response message for ListAdminAccessBindings RPC.",
      "id": "ListAdminAccessBindingsResponse",
      "properties": {
        "nextPageToken": {
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.",
          "type": "string"
        },
        "adminAccessBindings": {
          "items": {
            "$ref": "AdminAccessBinding"
          },
          "type": "array",
          "description": "Admin Access Bindings in the organization."
        }
      }
    },
    "AdminAccessBinding": {
      "id": "AdminAccessBinding",
      "type": "object",
      "description": "A resource message representing a binding to a set of roles.",
      "properties": {
        "name": {
          "type": "string",
          "description": "Identifier. The resource name of this AdminAccessBinding. Format: organizations/{org_id}/adminAccessBindings/{admin_access_binding_id} Example: \"organizations/123abc/adminAccessBindings/456def\""
        },
        "userGroup": {
          "description": "Resource name of the user group.",
          "type": "string"
        },
        "organizationRoles": {
          "type": "array",
          "description": "Optional. A list of roles granted to the parent organization. USER_ADMIN_ROLE and BILLING_ADMIN_ROLE will be automatically added if ORG_ADMIN_ROLE is assigned. No roles will be assigned if no roles are specified.",
          "items": {
            "enum": [
              "ORGANIZATION_ROLE_UNSPECIFIED",
              "ORG_ADMIN_ROLE",
              "USER_ADMIN_ROLE",
              "BILLING_ADMIN_ROLE"
            ],
            "enumDescriptions": [
              "Unknown or unspecified organization role.",
              "Organization admin role that grants all administrative privileges.",
              "User admin role that grants access to the Users section to perform various user management functions.",
              "Billing admin role that grants access to the Billing section to perform various billing-related functions."
            ],
            "type": "string"
          }
        },
        "userEmail": {
          "type": "string",
          "description": "Email address of the user."
        }
      }
    },
    "UserGroupMember": {
      "properties": {
        "userGroup": {
          "type": "string",
          "description": "User group resource name of the group member."
        },
        "userEmail": {
          "description": "Email address of the user member.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Identifier. The resource name of this UserGroupMember. Format: organizations/{org_id}/userGroups/{user_group_id}/members/{member_id} Example: \"organizations/123abc/userGroups/456def/members/789ghi\""
        },
        "membershipRole": {
          "description": "Optional. The role of the member in the user group.",
          "enum": [
            "MEMBERSHIP_ROLE_UNSPECIFIED",
            "MEMBERSHIP_ROLE_OWNER",
            "MEMBERSHIP_ROLE_MEMBER"
          ],
          "enumDescriptions": [
            "Unspecified membership role.",
            "Owner role that can add and remove group members.",
            "Member role that receives all permissions assigned to the group."
          ],
          "type": "string"
        }
      },
      "type": "object",
      "id": "UserGroupMember",
      "description": "A resource message representing a member of a user group."
    },
    "Money": {
      "description": "Represents an amount of money with its currency type.",
      "type": "object",
      "properties": {
        "currencyCode": {
          "description": "The three-letter currency code defined in ISO 4217.",
          "type": "string"
        },
        "nanos": {
          "description": "Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.",
          "type": "integer",
          "format": "int32"
        },
        "units": {
          "description": "The whole units of the amount. For example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
          "type": "string",
          "format": "int64"
        }
      },
      "id": "Money"
    },
    "ReportPropertyUsageRequest": {
      "type": "object",
      "properties": {
        "month": {
          "description": "Required. The target month to list property usages. Format: YYYY-MM. For example, \"2025-05\"",
          "type": "string"
        }
      },
      "id": "ReportPropertyUsageRequest",
      "description": "Request message for ReportPropertyUsage RPC."
    },
    "UserGroup": {
      "type": "object",
      "id": "UserGroup",
      "properties": {
        "displayName": {
          "type": "string",
          "description": "Optional. The human-readable name for the user group."
        },
        "name": {
          "type": "string",
          "description": "Identifier. Resource name of this UserGroup. Format: organizations/{org_id}/userGroups/{user_group_id} Example: \"organizations/123abc/userGroups/456def\""
        },
        "description": {
          "type": "string",
          "description": "Optional. The description of the user group."
        }
      },
      "description": "A resource message representing a user group in a GMP organization."
    },
    "SetPropertyServiceLevelResponse": {
      "description": "Response message for SetPropertyServiceLevel RPC.",
      "properties": {},
      "type": "object",
      "id": "SetPropertyServiceLevelResponse"
    },
    "ListAnalyticsAccountLinksResponse": {
      "properties": {
        "nextPageToken": {
          "type": "string",
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages."
        },
        "analyticsAccountLinks": {
          "type": "array",
          "items": {
            "$ref": "AnalyticsAccountLink"
          },
          "description": "Analytics account links in this organization."
        }
      },
      "description": "Response message for ListAnalyticsAccountLinks RPC.",
      "id": "ListAnalyticsAccountLinksResponse",
      "type": "object"
    },
    "BillInfo": {
      "description": "Contains the bill amount.",
      "type": "object",
      "id": "BillInfo",
      "properties": {
        "eventFee": {
          "description": "The amount of the event fee.",
          "$ref": "Money"
        },
        "priceProtectionCredit": {
          "$ref": "Money",
          "description": "The amount of the price protection credit, this is only available for eligible customers."
        },
        "total": {
          "description": "The total amount of the bill.",
          "$ref": "Money"
        },
        "baseFee": {
          "description": "The amount of the monthly base fee.",
          "$ref": "Money"
        }
      }
    },
    "ListUserGroupsResponse": {
      "type": "object",
      "description": "Response message for ListUserGroups RPC.",
      "id": "ListUserGroupsResponse",
      "properties": {
        "userGroups": {
          "type": "array",
          "items": {
            "$ref": "UserGroup"
          },
          "description": "User groups in the organization."
        },
        "nextPageToken": {
          "type": "string",
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages."
        }
      }
    },
    "AnalyticsAccountLink": {
      "id": "AnalyticsAccountLink",
      "description": "A resource message representing the link between a Google Analytics account and a Google Marketing Platform organization.",
      "properties": {
        "linkVerificationState": {
          "readOnly": true,
          "enum": [
            "LINK_VERIFICATION_STATE_UNSPECIFIED",
            "LINK_VERIFICATION_STATE_VERIFIED",
            "LINK_VERIFICATION_STATE_NOT_VERIFIED"
          ],
          "type": "string",
          "description": "Output only. The verification state of the link between the Analytics account and the parent organization.",
          "enumDescriptions": [
            "The link state is unknown.",
            "The link is established.",
            "The link is requested, but hasn't been approved by the product account admin."
          ]
        },
        "name": {
          "description": "Identifier. Resource name of this AnalyticsAccountLink. Note the resource ID is the same as the ID of the Analtyics account. Format: organizations/{org_id}/analyticsAccountLinks/{analytics_account_link_id} Example: \"organizations/xyz/analyticsAccountLinks/1234\"",
          "type": "string"
        },
        "analyticsAccount": {
          "description": "Required. Immutable. The resource name of the AnalyticsAdmin API account. The account ID will be used as the ID of this AnalyticsAccountLink resource, which will become the final component of the resource name. Format: analyticsadmin.googleapis.com/accounts/{account_id}",
          "type": "string"
        },
        "displayName": {
          "description": "Output only. The human-readable name for the Analytics account.",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "Date": {
      "description": "Represents a whole or partial calendar date, such as a birthday. The time of day and time zone are either specified elsewhere or are insignificant. The date is relative to the Gregorian Calendar. This can represent one of the following: * A full date, with non-zero year, month, and day values. * A month and day, with a zero year (for example, an anniversary). * A year on its own, with a zero month and a zero day. * A year and month, with a zero day (for example, a credit card expiration date). Related types: * google.type.TimeOfDay * google.type.DateTime * google.protobuf.Timestamp",
      "properties": {
        "month": {
          "type": "integer",
          "format": "int32",
          "description": "Month of a year. Must be from 1 to 12, or 0 to specify a year without a month and day."
        },
        "year": {
          "format": "int32",
          "type": "integer",
          "description": "Year of the date. Must be from 1 to 9999, or 0 to specify a date without a year."
        },
        "day": {
          "format": "int32",
          "description": "Day of a month. Must be from 1 to 31 and valid for the year and month, or 0 to specify a year by itself or a year and month where the day isn't significant.",
          "type": "integer"
        }
      },
      "type": "object",
      "id": "Date"
    },
    "SetPropertyServiceLevelRequest": {
      "id": "SetPropertyServiceLevelRequest",
      "type": "object",
      "properties": {
        "analyticsProperty": {
          "description": "Required. The Analytics property to change the ServiceLevel setting. This field is the name of the Google Analytics Admin API property resource. Format: analyticsadmin.googleapis.com/properties/{property_id}",
          "type": "string"
        },
        "serviceLevel": {
          "enumDescriptions": [
            "Service level unspecified.",
            "The standard version of Google Analytics.",
            "The premium version of Google Analytics."
          ],
          "enum": [
            "ANALYTICS_SERVICE_LEVEL_UNSPECIFIED",
            "ANALYTICS_SERVICE_LEVEL_STANDARD",
            "ANALYTICS_SERVICE_LEVEL_360"
          ],
          "description": "Required. The service level to set for this property.",
          "type": "string"
        }
      },
      "description": "Request message for SetPropertyServiceLevel RPC."
    },
    "FindSalesPartnerManagedClientsResponse": {
      "description": "Response message for FindSalesPartnerManagedClients RPC.",
      "type": "object",
      "properties": {
        "clientData": {
          "type": "array",
          "items": {
            "$ref": "ClientData"
          },
          "description": "The clients managed by the sales org."
        }
      },
      "id": "FindSalesPartnerManagedClientsResponse"
    },
    "ListOrganizationsResponse": {
      "id": "ListOrganizationsResponse",
      "type": "object",
      "properties": {
        "organizations": {
          "type": "array",
          "items": {
            "$ref": "Organization"
          },
          "description": "The Organization resource that the user has access to, which includes the org id and display name."
        },
        "nextPageToken": {
          "type": "string",
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages."
        }
      },
      "description": "Response message for ListOrganizations RPC."
    },
    "PropertyUsage": {
      "type": "object",
      "description": "Contains the count of events received by the property, along with metadata that influences the volume of `billable` events.",
      "properties": {
        "propertyType": {
          "enum": [
            "ANALYTICS_PROPERTY_TYPE_UNSPECIFIED",
            "ANALYTICS_PROPERTY_TYPE_ORDINARY",
            "ANALYTICS_PROPERTY_TYPE_SUBPROPERTY",
            "ANALYTICS_PROPERTY_TYPE_ROLLUP"
          ],
          "type": "string",
          "enumDescriptions": [
            "Unknown or unspecified property type",
            "Ordinary Google Analytics property",
            "Google Analytics subproperty",
            "Google Analytics rollup property"
          ],
          "description": "The subtype of the analytics property. This affects the billable event count."
        },
        "property": {
          "type": "string",
          "description": "The name of the Google Analytics Admin API property resource. Format: analyticsadmin.googleapis.com/properties/{property_id}"
        },
        "billableEventCount": {
          "description": "The number of events for which the property is billed in the requested month.",
          "format": "int64",
          "type": "string"
        },
        "displayName": {
          "type": "string",
          "description": "The display name of the property."
        },
        "accountId": {
          "description": "The ID of the property's parent account.",
          "format": "int64",
          "type": "string"
        },
        "serviceLevel": {
          "description": "The service level of the property.",
          "enum": [
            "ANALYTICS_SERVICE_LEVEL_UNSPECIFIED",
            "ANALYTICS_SERVICE_LEVEL_STANDARD",
            "ANALYTICS_SERVICE_LEVEL_360"
          ],
          "type": "string",
          "enumDescriptions": [
            "Service level unspecified.",
            "The standard version of Google Analytics.",
            "The premium version of Google Analytics."
          ]
        },
        "totalEventCount": {
          "description": "Total event count that the property received during the requested month.",
          "type": "string",
          "format": "int64"
        }
      },
      "id": "PropertyUsage"
    },
    "ClientData": {
      "id": "ClientData",
      "properties": {
        "endDate": {
          "description": "The end date of the contract between the sales org and the end client.",
          "$ref": "Date"
        },
        "startDate": {
          "description": "The start date of the contract between the sales org and the end client.",
          "$ref": "Date"
        },
        "organization": {
          "description": "The end client that has/had contract with the requested sales org.",
          "$ref": "Organization"
        }
      },
      "description": "Contains the client data.",
      "type": "object"
    },
    "ListUserGroupMembersResponse": {
      "type": "object",
      "properties": {
        "userGroupMembers": {
          "type": "array",
          "items": {
            "$ref": "UserGroupMember"
          },
          "description": "User group members in the user group."
        },
        "nextPageToken": {
          "type": "string",
          "description": "A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages."
        }
      },
      "id": "ListUserGroupMembersResponse",
      "description": "Response message for ListUserGroupMembers RPC."
    },
    "Organization": {
      "id": "Organization",
      "type": "object",
      "description": "A resource message representing a Google Marketing Platform organization.",
      "properties": {
        "displayName": {
          "description": "The human-readable name for the organization.",
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Identifier. The resource name of the GMP organization. Format: organizations/{org_id}"
        }
      }
    },
    "FindSalesPartnerManagedClientsRequest": {
      "id": "FindSalesPartnerManagedClientsRequest",
      "properties": {
        "isActive": {
          "description": "Optional. If set, only active and just ended clients will be returned.",
          "type": "boolean"
        }
      },
      "description": "Request message for FindSalesPartnerManagedClients RPC.",
      "type": "object"
    }
  },
  "icons": {
    "x32": "http://www.google.com/images/icons/product/search-32.gif",
    "x16": "http://www.google.com/images/icons/product/search-16.gif"
  },
  "name": "marketingplatformadmin",
  "title": "Google Marketing Platform Admin API",
  "ownerDomain": "google.com",
  "fullyEncodeReservedExpansion": true,
  "rootUrl": "https://marketingplatformadmin.googleapis.com/",
  "documentationLink": "https://developers.google.com/analytics/devguides/config/gmp/v1"
}
