Merchant API . accounts . services

Instance Methods

approve(name, body=None, x__xgafv=None)

Approve an account service proposal.

close()

Close httplib2 connections.

get(name, x__xgafv=None)

Retrieve an account service.

list(parent, pageSize=None, pageToken=None, x__xgafv=None)

List account services for the specified accounts. Supports filtering.

list_next()

Retrieves the next page of results.

propose(parent, body=None, x__xgafv=None)

Propose an account service.

reject(name, body=None, x__xgafv=None)

Reject an account service (both proposed and approve services can be rejected).

Method Details

approve(name, body=None, x__xgafv=None)
Approve an account service proposal.

Args:
  name: string, Required. The resource name of the account service to approve. Format: `accounts/{account}/services/{service}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Request to approve an account service.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The `AccountService` message represents a specific service that a provider account offers to a Merchant Center account. `AccountService` defines the permissions and capabilities granted to the provider, allowing for operations such as product management or campaign management. The lifecycle of an `AccountService` involves a proposal phase, where one party suggests the service, and an approval phase, where the other party accepts or rejects it. This handshake mechanism ensures mutual consent before any access is granted. This mechanism safeguards both parties by ensuring that access rights are granted appropriately and that both the business and provider are aware of the services enabled. In scenarios where a user is an admin of both accounts, the approval can happen automatically. The mutability of a service is also managed through `AccountService`. Some services might be immutable, for example, if they were established through other systems or APIs, and you cannot alter them through this API.
  "accountAggregation": { # `AccountAggregation` payload. # Service type for account aggregation. This enables the provider, which is an advanced account, to manage multiple sub-accounts (client accounts). Through this service, the advanced account provider can perform administrative and operational tasks across all linked sub-accounts. This is useful for agencies, aggregators, or large retailers that need centralized control over many Merchant Center accounts.
  },
  "accountManagement": { # `AccountManagement` payload. # Service type for account management. Enables the provider to perform administrative actions on the business's account, such as configuring account settings, managing users, or updating business information.
  },
  "campaignsManagement": { # `CampaignManagement` payload. # Service type for managing advertising campaigns. Grants the provider access to create and manage the business's ad campaigns, including setting up campaigns, adjusting bids, and optimizing performance.
  },
  "externalAccountId": "A String", # Immutable. An optional, immutable identifier that Google uses to refer to this account when communicating with the provider. This should be the unique account ID within the provider's system (for example, your shop ID in Shopify). If you have multiple accounts with the same provider - for instance, different accounts for various regions — the `external_account_id` differentiates between them, ensuring accurate linking and integration between Google and the provider.
  "handshake": { # The current status of establishing of the service. (for example, pending approval or approved). # Output only. Information about the state of the service in terms of establishing it (e.g. is it pending approval or approved).
    "actor": "A String", # Output only. The most recent account to modify the account service's `approval_status`.
    "approvalState": "A String", # Output only. The approval state of this handshake.
  },
  "localListingManagement": { # `LocalListingManagement` payload. # Service type for local listings management. The business group associated with the external account id will be used to provide local inventory to this Merchant Center account.
  },
  "mutability": "A String", # Output only. Whether the service is mutable (e.g. through Approve / Reject RPCs). A service that was created through another system or API might be immutable.
  "name": "A String", # Identifier. The resource name of the account service. Format: `accounts/{account}/services/{service}`
  "productsManagement": { # `ProductsManagement` payload. # Service type for managing products. This allows the provider to handle product data on behalf of the business, including reading and writing product listings. It's commonly used when the provider offers inventory management or catalog synchronization services to keep the business's product information up-to-date across platforms.
  },
  "provider": "A String", # Output only. The provider of the service. Either the reference to an account such as `providers/123` or a well-known service provider (one of `providers/GOOGLE_ADS` or `providers/GOOGLE_BUSINESS_PROFILE`).
  "providerDisplayName": "A String", # Output only. The human-readable display name of the provider account.
}
close()
Close httplib2 connections.
get(name, x__xgafv=None)
Retrieve an account service.

Args:
  name: string, Required. The resource name of the account service to get. Format: `accounts/{account}/services/{service}` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The `AccountService` message represents a specific service that a provider account offers to a Merchant Center account. `AccountService` defines the permissions and capabilities granted to the provider, allowing for operations such as product management or campaign management. The lifecycle of an `AccountService` involves a proposal phase, where one party suggests the service, and an approval phase, where the other party accepts or rejects it. This handshake mechanism ensures mutual consent before any access is granted. This mechanism safeguards both parties by ensuring that access rights are granted appropriately and that both the business and provider are aware of the services enabled. In scenarios where a user is an admin of both accounts, the approval can happen automatically. The mutability of a service is also managed through `AccountService`. Some services might be immutable, for example, if they were established through other systems or APIs, and you cannot alter them through this API.
  "accountAggregation": { # `AccountAggregation` payload. # Service type for account aggregation. This enables the provider, which is an advanced account, to manage multiple sub-accounts (client accounts). Through this service, the advanced account provider can perform administrative and operational tasks across all linked sub-accounts. This is useful for agencies, aggregators, or large retailers that need centralized control over many Merchant Center accounts.
  },
  "accountManagement": { # `AccountManagement` payload. # Service type for account management. Enables the provider to perform administrative actions on the business's account, such as configuring account settings, managing users, or updating business information.
  },
  "campaignsManagement": { # `CampaignManagement` payload. # Service type for managing advertising campaigns. Grants the provider access to create and manage the business's ad campaigns, including setting up campaigns, adjusting bids, and optimizing performance.
  },
  "externalAccountId": "A String", # Immutable. An optional, immutable identifier that Google uses to refer to this account when communicating with the provider. This should be the unique account ID within the provider's system (for example, your shop ID in Shopify). If you have multiple accounts with the same provider - for instance, different accounts for various regions — the `external_account_id` differentiates between them, ensuring accurate linking and integration between Google and the provider.
  "handshake": { # The current status of establishing of the service. (for example, pending approval or approved). # Output only. Information about the state of the service in terms of establishing it (e.g. is it pending approval or approved).
    "actor": "A String", # Output only. The most recent account to modify the account service's `approval_status`.
    "approvalState": "A String", # Output only. The approval state of this handshake.
  },
  "localListingManagement": { # `LocalListingManagement` payload. # Service type for local listings management. The business group associated with the external account id will be used to provide local inventory to this Merchant Center account.
  },
  "mutability": "A String", # Output only. Whether the service is mutable (e.g. through Approve / Reject RPCs). A service that was created through another system or API might be immutable.
  "name": "A String", # Identifier. The resource name of the account service. Format: `accounts/{account}/services/{service}`
  "productsManagement": { # `ProductsManagement` payload. # Service type for managing products. This allows the provider to handle product data on behalf of the business, including reading and writing product listings. It's commonly used when the provider offers inventory management or catalog synchronization services to keep the business's product information up-to-date across platforms.
  },
  "provider": "A String", # Output only. The provider of the service. Either the reference to an account such as `providers/123` or a well-known service provider (one of `providers/GOOGLE_ADS` or `providers/GOOGLE_BUSINESS_PROFILE`).
  "providerDisplayName": "A String", # Output only. The human-readable display name of the provider account.
}
list(parent, pageSize=None, pageToken=None, x__xgafv=None)
List account services for the specified accounts. Supports filtering.

Args:
  parent: string, Required. The parent account of the account service to filter by. Format: `accounts/{account}` (required)
  pageSize: integer, Optional. The maximum number of elements to return in the response. Use for paging. If no `page_size` is specified, `100` is used as the default value. The maximum allowed value is `1000`.
  pageToken: string, Optional. The token returned by the previous `list` request.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response after trying to list account services.
  "accountServices": [ # The account services that match your filter.
    { # The `AccountService` message represents a specific service that a provider account offers to a Merchant Center account. `AccountService` defines the permissions and capabilities granted to the provider, allowing for operations such as product management or campaign management. The lifecycle of an `AccountService` involves a proposal phase, where one party suggests the service, and an approval phase, where the other party accepts or rejects it. This handshake mechanism ensures mutual consent before any access is granted. This mechanism safeguards both parties by ensuring that access rights are granted appropriately and that both the business and provider are aware of the services enabled. In scenarios where a user is an admin of both accounts, the approval can happen automatically. The mutability of a service is also managed through `AccountService`. Some services might be immutable, for example, if they were established through other systems or APIs, and you cannot alter them through this API.
      "accountAggregation": { # `AccountAggregation` payload. # Service type for account aggregation. This enables the provider, which is an advanced account, to manage multiple sub-accounts (client accounts). Through this service, the advanced account provider can perform administrative and operational tasks across all linked sub-accounts. This is useful for agencies, aggregators, or large retailers that need centralized control over many Merchant Center accounts.
      },
      "accountManagement": { # `AccountManagement` payload. # Service type for account management. Enables the provider to perform administrative actions on the business's account, such as configuring account settings, managing users, or updating business information.
      },
      "campaignsManagement": { # `CampaignManagement` payload. # Service type for managing advertising campaigns. Grants the provider access to create and manage the business's ad campaigns, including setting up campaigns, adjusting bids, and optimizing performance.
      },
      "externalAccountId": "A String", # Immutable. An optional, immutable identifier that Google uses to refer to this account when communicating with the provider. This should be the unique account ID within the provider's system (for example, your shop ID in Shopify). If you have multiple accounts with the same provider - for instance, different accounts for various regions — the `external_account_id` differentiates between them, ensuring accurate linking and integration between Google and the provider.
      "handshake": { # The current status of establishing of the service. (for example, pending approval or approved). # Output only. Information about the state of the service in terms of establishing it (e.g. is it pending approval or approved).
        "actor": "A String", # Output only. The most recent account to modify the account service's `approval_status`.
        "approvalState": "A String", # Output only. The approval state of this handshake.
      },
      "localListingManagement": { # `LocalListingManagement` payload. # Service type for local listings management. The business group associated with the external account id will be used to provide local inventory to this Merchant Center account.
      },
      "mutability": "A String", # Output only. Whether the service is mutable (e.g. through Approve / Reject RPCs). A service that was created through another system or API might be immutable.
      "name": "A String", # Identifier. The resource name of the account service. Format: `accounts/{account}/services/{service}`
      "productsManagement": { # `ProductsManagement` payload. # Service type for managing products. This allows the provider to handle product data on behalf of the business, including reading and writing product listings. It's commonly used when the provider offers inventory management or catalog synchronization services to keep the business's product information up-to-date across platforms.
      },
      "provider": "A String", # Output only. The provider of the service. Either the reference to an account such as `providers/123` or a well-known service provider (one of `providers/GOOGLE_ADS` or `providers/GOOGLE_BUSINESS_PROFILE`).
      "providerDisplayName": "A String", # Output only. The human-readable display name of the provider account.
    },
  ],
  "nextPageToken": "A String", # A page token. You can send the `page_token` to get the next page. Only included in the `list` response if there are more pages.
}
list_next()
Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call 'execute()' on to request the next
          page. Returns None if there are no more items in the collection.
        
propose(parent, body=None, x__xgafv=None)
Propose an account service.

Args:
  parent: string, Required. The resource name of the parent account for the service. Format: `accounts/{account}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Request to propose an account service.
  "accountService": { # The `AccountService` message represents a specific service that a provider account offers to a Merchant Center account. `AccountService` defines the permissions and capabilities granted to the provider, allowing for operations such as product management or campaign management. The lifecycle of an `AccountService` involves a proposal phase, where one party suggests the service, and an approval phase, where the other party accepts or rejects it. This handshake mechanism ensures mutual consent before any access is granted. This mechanism safeguards both parties by ensuring that access rights are granted appropriately and that both the business and provider are aware of the services enabled. In scenarios where a user is an admin of both accounts, the approval can happen automatically. The mutability of a service is also managed through `AccountService`. Some services might be immutable, for example, if they were established through other systems or APIs, and you cannot alter them through this API. # Required. The account service to propose.
    "accountAggregation": { # `AccountAggregation` payload. # Service type for account aggregation. This enables the provider, which is an advanced account, to manage multiple sub-accounts (client accounts). Through this service, the advanced account provider can perform administrative and operational tasks across all linked sub-accounts. This is useful for agencies, aggregators, or large retailers that need centralized control over many Merchant Center accounts.
    },
    "accountManagement": { # `AccountManagement` payload. # Service type for account management. Enables the provider to perform administrative actions on the business's account, such as configuring account settings, managing users, or updating business information.
    },
    "campaignsManagement": { # `CampaignManagement` payload. # Service type for managing advertising campaigns. Grants the provider access to create and manage the business's ad campaigns, including setting up campaigns, adjusting bids, and optimizing performance.
    },
    "externalAccountId": "A String", # Immutable. An optional, immutable identifier that Google uses to refer to this account when communicating with the provider. This should be the unique account ID within the provider's system (for example, your shop ID in Shopify). If you have multiple accounts with the same provider - for instance, different accounts for various regions — the `external_account_id` differentiates between them, ensuring accurate linking and integration between Google and the provider.
    "handshake": { # The current status of establishing of the service. (for example, pending approval or approved). # Output only. Information about the state of the service in terms of establishing it (e.g. is it pending approval or approved).
      "actor": "A String", # Output only. The most recent account to modify the account service's `approval_status`.
      "approvalState": "A String", # Output only. The approval state of this handshake.
    },
    "localListingManagement": { # `LocalListingManagement` payload. # Service type for local listings management. The business group associated with the external account id will be used to provide local inventory to this Merchant Center account.
    },
    "mutability": "A String", # Output only. Whether the service is mutable (e.g. through Approve / Reject RPCs). A service that was created through another system or API might be immutable.
    "name": "A String", # Identifier. The resource name of the account service. Format: `accounts/{account}/services/{service}`
    "productsManagement": { # `ProductsManagement` payload. # Service type for managing products. This allows the provider to handle product data on behalf of the business, including reading and writing product listings. It's commonly used when the provider offers inventory management or catalog synchronization services to keep the business's product information up-to-date across platforms.
    },
    "provider": "A String", # Output only. The provider of the service. Either the reference to an account such as `providers/123` or a well-known service provider (one of `providers/GOOGLE_ADS` or `providers/GOOGLE_BUSINESS_PROFILE`).
    "providerDisplayName": "A String", # Output only. The human-readable display name of the provider account.
  },
  "provider": "A String", # Required. The provider of the service. Either the reference to an account such as `providers/123` or a well-known service provider (one of `providers/GOOGLE_ADS` or `providers/GOOGLE_BUSINESS_PROFILE`).
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The `AccountService` message represents a specific service that a provider account offers to a Merchant Center account. `AccountService` defines the permissions and capabilities granted to the provider, allowing for operations such as product management or campaign management. The lifecycle of an `AccountService` involves a proposal phase, where one party suggests the service, and an approval phase, where the other party accepts or rejects it. This handshake mechanism ensures mutual consent before any access is granted. This mechanism safeguards both parties by ensuring that access rights are granted appropriately and that both the business and provider are aware of the services enabled. In scenarios where a user is an admin of both accounts, the approval can happen automatically. The mutability of a service is also managed through `AccountService`. Some services might be immutable, for example, if they were established through other systems or APIs, and you cannot alter them through this API.
  "accountAggregation": { # `AccountAggregation` payload. # Service type for account aggregation. This enables the provider, which is an advanced account, to manage multiple sub-accounts (client accounts). Through this service, the advanced account provider can perform administrative and operational tasks across all linked sub-accounts. This is useful for agencies, aggregators, or large retailers that need centralized control over many Merchant Center accounts.
  },
  "accountManagement": { # `AccountManagement` payload. # Service type for account management. Enables the provider to perform administrative actions on the business's account, such as configuring account settings, managing users, or updating business information.
  },
  "campaignsManagement": { # `CampaignManagement` payload. # Service type for managing advertising campaigns. Grants the provider access to create and manage the business's ad campaigns, including setting up campaigns, adjusting bids, and optimizing performance.
  },
  "externalAccountId": "A String", # Immutable. An optional, immutable identifier that Google uses to refer to this account when communicating with the provider. This should be the unique account ID within the provider's system (for example, your shop ID in Shopify). If you have multiple accounts with the same provider - for instance, different accounts for various regions — the `external_account_id` differentiates between them, ensuring accurate linking and integration between Google and the provider.
  "handshake": { # The current status of establishing of the service. (for example, pending approval or approved). # Output only. Information about the state of the service in terms of establishing it (e.g. is it pending approval or approved).
    "actor": "A String", # Output only. The most recent account to modify the account service's `approval_status`.
    "approvalState": "A String", # Output only. The approval state of this handshake.
  },
  "localListingManagement": { # `LocalListingManagement` payload. # Service type for local listings management. The business group associated with the external account id will be used to provide local inventory to this Merchant Center account.
  },
  "mutability": "A String", # Output only. Whether the service is mutable (e.g. through Approve / Reject RPCs). A service that was created through another system or API might be immutable.
  "name": "A String", # Identifier. The resource name of the account service. Format: `accounts/{account}/services/{service}`
  "productsManagement": { # `ProductsManagement` payload. # Service type for managing products. This allows the provider to handle product data on behalf of the business, including reading and writing product listings. It's commonly used when the provider offers inventory management or catalog synchronization services to keep the business's product information up-to-date across platforms.
  },
  "provider": "A String", # Output only. The provider of the service. Either the reference to an account such as `providers/123` or a well-known service provider (one of `providers/GOOGLE_ADS` or `providers/GOOGLE_BUSINESS_PROFILE`).
  "providerDisplayName": "A String", # Output only. The human-readable display name of the provider account.
}
reject(name, body=None, x__xgafv=None)
Reject an account service (both proposed and approve services can be rejected).

Args:
  name: string, Required. The resource name of the account service to reject. Format: `accounts/{account}/services/{service}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Request to reject an account service.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # 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); }
}