Merchant API . accounts

Instance Methods

autofeedSettings()

Returns the autofeedSettings Resource.

automaticImprovements()

Returns the automaticImprovements Resource.

businessIdentity()

Returns the businessIdentity Resource.

businessInfo()

Returns the businessInfo Resource.

developerRegistration()

Returns the developerRegistration Resource.

emailPreferences()

Returns the emailPreferences Resource.

gbpAccounts()

Returns the gbpAccounts Resource.

homepage()

Returns the homepage Resource.

issues()

Returns the issues Resource.

omnichannelSettings()

Returns the omnichannelSettings Resource.

onlineReturnPolicies()

Returns the onlineReturnPolicies Resource.

programs()

Returns the programs Resource.

regions()

Returns the regions Resource.

relationships()

Returns the relationships Resource.

services()

Returns the services Resource.

shippingSettings()

Returns the shippingSettings Resource.

termsOfServiceAgreementStates()

Returns the termsOfServiceAgreementStates Resource.

users()

Returns the users Resource.

close()

Close httplib2 connections.

createAndConfigure(body=None, x__xgafv=None)

Creates a Merchant Center account with additional configuration. Adds the user that makes the request as an admin for the new account.

delete(name, force=None, x__xgafv=None)

Deletes the specified account regardless of its type: standalone, advanced account or sub-account. Deleting an advanced account leads to the deletion of all of its sub-accounts. Executing this method requires admin access. The deletion succeeds only if the account does not provide services to any other account and has no processed offers. You can use the `force` parameter to override this.

get(name, x__xgafv=None)

Retrieves an account from your Merchant Center account. After inserting, updating, or deleting an account, it may take several minutes before changes take effect.

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

Note: For the `accounts.list` method, quota and limits usage are charged for each user, and not for the Merchant Center ID or the advanced account ID. To list several sub-accounts, you should use the `accounts.listSubaccounts` method, which is more suitable for advanced accounts use case.

listSubaccounts(provider, pageSize=None, pageToken=None, x__xgafv=None)

List all sub-accounts for a given advanced account. This is a convenience wrapper for the more powerful `accounts.list` method. This method will produce the same results as calling `ListsAccounts` with the following filter: `relationship(providerId={parent} AND service(type="ACCOUNT_AGGREGATION"))`

listSubaccounts_next()

Retrieves the next page of results.

list_next()

Retrieves the next page of results.

patch(name, body=None, updateMask=None, x__xgafv=None)

Updates an account regardless of its type: standalone, advanced account or sub-account. Executing this method requires admin access.

Method Details

close()
Close httplib2 connections.
createAndConfigure(body=None, x__xgafv=None)
Creates a Merchant Center account with additional configuration. Adds the user that makes the request as an admin for the new account.

Args:
  body: object, The request body.
    The object takes the form of:

{ # Request message for the `CreateAndConfigureAccount` method.
  "account": { # The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on. # Required. The account to be created.
    "accountId": "A String", # Output only. The ID of the account.
    "accountName": "A String", # Required. A human-readable name of the account. See [store name](https://support.google.com/merchants/answer/160556) and [business name](https://support.google.com/merchants/answer/12159159) for more information.
    "adultContent": True or False, # Optional. Whether this account contains adult content.
    "languageCode": "A String", # Required. The account's [BCP-47 language code](https://tools.ietf.org/html/bcp47), such as `en-US` or `sr-Latn`.
    "name": "A String", # Identifier. The resource name of the account. Format: `accounts/{account}`
    "testAccount": True or False, # Output only. Whether this is a test account.
    "timeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Required. The time zone of the account. On writes, `time_zone` sets both the `reporting_time_zone` and the `display_time_zone`. For reads, `time_zone` always returns the `display_time_zone`. If `display_time_zone` doesn't exist for your account, `time_zone` is empty. The `version` field is not supported, won't be set in responses and will be silently ignored if specified in requests.
      "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
      "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
    },
  },
  "service": [ # Required. An account service between the account to be created and the provider account is initialized as part of the creation. At least one such service needs to be provided. Currently exactly one of these needs to be `account_aggregation` and `accounts.createAndConfigure` method can be used to create a sub-account under an existing advanced account through this method. Additional `account_management` or `product_management` services may be provided.
    { # Additional instructions to add account services during creation of the account.
      "accountAggregation": { # `AccountAggregation` payload. # The provider is an [aggregator](https://support.google.com/merchants/answer/188487) for the account. Payload for service type Account Aggregation.
      },
      "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`).
    },
  ],
  "user": [ # Optional. Users to be added to the account.
    { # Instruction for adding a user to the account during creation.
      "user": { # The `User` message represents a user associated with a Merchant Center account. It is used to manage user permissions and access rights within the account. For more information, see [Frequently asked questions about people and access levels](//support.google.com/merchants/answer/12160472). # Optional. Details about the user to be added. At the moment, only access rights may be specified.
        "accessRights": [ # Required. The [access rights](https://support.google.com/merchants/answer/12160472?sjid=6789834943175119429-EU#accesstypes) the user has.
          "A String",
        ],
        "name": "A String", # Identifier. The resource name of the user. Format: `accounts/{account}/user/{email}` Use `me` to refer to your own email address, for example `accounts/{account}/users/me`.
        "state": "A String", # Output only. The state of the user.
      },
      "userId": "A String", # Required. The email address of the user (for example, `john.doe@gmail.com`).
    },
  ],
}

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

Returns:
  An object of the form:

    { # The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.
  "accountId": "A String", # Output only. The ID of the account.
  "accountName": "A String", # Required. A human-readable name of the account. See [store name](https://support.google.com/merchants/answer/160556) and [business name](https://support.google.com/merchants/answer/12159159) for more information.
  "adultContent": True or False, # Optional. Whether this account contains adult content.
  "languageCode": "A String", # Required. The account's [BCP-47 language code](https://tools.ietf.org/html/bcp47), such as `en-US` or `sr-Latn`.
  "name": "A String", # Identifier. The resource name of the account. Format: `accounts/{account}`
  "testAccount": True or False, # Output only. Whether this is a test account.
  "timeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Required. The time zone of the account. On writes, `time_zone` sets both the `reporting_time_zone` and the `display_time_zone`. For reads, `time_zone` always returns the `display_time_zone`. If `display_time_zone` doesn't exist for your account, `time_zone` is empty. The `version` field is not supported, won't be set in responses and will be silently ignored if specified in requests.
    "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
    "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
  },
}
delete(name, force=None, x__xgafv=None)
Deletes the specified account regardless of its type: standalone, advanced account or sub-account. Deleting an advanced account leads to the deletion of all of its sub-accounts. Executing this method requires admin access. The deletion succeeds only if the account does not provide services to any other account and has no processed offers. You can use the `force` parameter to override this.

Args:
  name: string, Required. The name of the account to delete. Format: `accounts/{account}` (required)
  force: boolean, Optional. If set to `true`, the account is deleted even if it provides services to other accounts or has processed offers.
  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); }
}
get(name, x__xgafv=None)
Retrieves an account from your Merchant Center account. After inserting, updating, or deleting an account, it may take several minutes before changes take effect.

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

Returns:
  An object of the form:

    { # The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.
  "accountId": "A String", # Output only. The ID of the account.
  "accountName": "A String", # Required. A human-readable name of the account. See [store name](https://support.google.com/merchants/answer/160556) and [business name](https://support.google.com/merchants/answer/12159159) for more information.
  "adultContent": True or False, # Optional. Whether this account contains adult content.
  "languageCode": "A String", # Required. The account's [BCP-47 language code](https://tools.ietf.org/html/bcp47), such as `en-US` or `sr-Latn`.
  "name": "A String", # Identifier. The resource name of the account. Format: `accounts/{account}`
  "testAccount": True or False, # Output only. Whether this is a test account.
  "timeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Required. The time zone of the account. On writes, `time_zone` sets both the `reporting_time_zone` and the `display_time_zone`. For reads, `time_zone` always returns the `display_time_zone`. If `display_time_zone` doesn't exist for your account, `time_zone` is empty. The `version` field is not supported, won't be set in responses and will be silently ignored if specified in requests.
    "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
    "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
  },
}
list(filter=None, pageSize=None, pageToken=None, x__xgafv=None)
Note: For the `accounts.list` method, quota and limits usage are charged for each user, and not for the Merchant Center ID or the advanced account ID. To list several sub-accounts, you should use the `accounts.listSubaccounts` method, which is more suitable for advanced accounts use case.

Args:
  filter: string, Optional. Returns only accounts that match the [filter](https://developers.google.com/merchant/api/guides/accounts/filter). For more details, see the [filter syntax reference](https://developers.google.com/merchant/api/guides/accounts/filter-syntax).
  pageSize: integer, Optional. The maximum number of accounts to return. The service may return fewer than this value. If unspecified, at most 250 accounts are returned. The maximum value is 500; values above 500 are coerced to 500.
  pageToken: string, Optional. A page token, received from a previous `accounts.list` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided in the `accounts.list` request must match the call that provided the page token.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for the `accounts.list` method.
  "accounts": [ # The accounts matching the `ListAccountsRequest`.
    { # The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.
      "accountId": "A String", # Output only. The ID of the account.
      "accountName": "A String", # Required. A human-readable name of the account. See [store name](https://support.google.com/merchants/answer/160556) and [business name](https://support.google.com/merchants/answer/12159159) for more information.
      "adultContent": True or False, # Optional. Whether this account contains adult content.
      "languageCode": "A String", # Required. The account's [BCP-47 language code](https://tools.ietf.org/html/bcp47), such as `en-US` or `sr-Latn`.
      "name": "A String", # Identifier. The resource name of the account. Format: `accounts/{account}`
      "testAccount": True or False, # Output only. Whether this is a test account.
      "timeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Required. The time zone of the account. On writes, `time_zone` sets both the `reporting_time_zone` and the `display_time_zone`. For reads, `time_zone` always returns the `display_time_zone`. If `display_time_zone` doesn't exist for your account, `time_zone` is empty. The `version` field is not supported, won't be set in responses and will be silently ignored if specified in requests.
        "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
        "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
      },
    },
  ],
  "nextPageToken": "A String", # A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
}
listSubaccounts(provider, pageSize=None, pageToken=None, x__xgafv=None)
List all sub-accounts for a given advanced account. This is a convenience wrapper for the more powerful `accounts.list` method. This method will produce the same results as calling `ListsAccounts` with the following filter: `relationship(providerId={parent} AND service(type="ACCOUNT_AGGREGATION"))`

Args:
  provider: string, Required. The aggregation service provider. Format: `accounts/{accountId}` (required)
  pageSize: integer, Optional. The maximum number of accounts to return. The service may return fewer than this value. If unspecified, at most 250 accounts are returned. The maximum value is 500; values above 500 are coerced to 500.
  pageToken: string, Optional. A page token, received from a previous `accounts.list` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided in the `accounts.list` request must match the call that provided the page token.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Response message for the `ListSubAccounts` method.
  "accounts": [ # The accounts for which the given parent account is an aggregator.
    { # The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.
      "accountId": "A String", # Output only. The ID of the account.
      "accountName": "A String", # Required. A human-readable name of the account. See [store name](https://support.google.com/merchants/answer/160556) and [business name](https://support.google.com/merchants/answer/12159159) for more information.
      "adultContent": True or False, # Optional. Whether this account contains adult content.
      "languageCode": "A String", # Required. The account's [BCP-47 language code](https://tools.ietf.org/html/bcp47), such as `en-US` or `sr-Latn`.
      "name": "A String", # Identifier. The resource name of the account. Format: `accounts/{account}`
      "testAccount": True or False, # Output only. Whether this is a test account.
      "timeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Required. The time zone of the account. On writes, `time_zone` sets both the `reporting_time_zone` and the `display_time_zone`. For reads, `time_zone` always returns the `display_time_zone`. If `display_time_zone` doesn't exist for your account, `time_zone` is empty. The `version` field is not supported, won't be set in responses and will be silently ignored if specified in requests.
        "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
        "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
      },
    },
  ],
  "nextPageToken": "A String", # A token, which can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
}
listSubaccounts_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.
        
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.
        
patch(name, body=None, updateMask=None, x__xgafv=None)
Updates an account regardless of its type: standalone, advanced account or sub-account. Executing this method requires admin access.

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

{ # The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.
  "accountId": "A String", # Output only. The ID of the account.
  "accountName": "A String", # Required. A human-readable name of the account. See [store name](https://support.google.com/merchants/answer/160556) and [business name](https://support.google.com/merchants/answer/12159159) for more information.
  "adultContent": True or False, # Optional. Whether this account contains adult content.
  "languageCode": "A String", # Required. The account's [BCP-47 language code](https://tools.ietf.org/html/bcp47), such as `en-US` or `sr-Latn`.
  "name": "A String", # Identifier. The resource name of the account. Format: `accounts/{account}`
  "testAccount": True or False, # Output only. Whether this is a test account.
  "timeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Required. The time zone of the account. On writes, `time_zone` sets both the `reporting_time_zone` and the `display_time_zone`. For reads, `time_zone` always returns the `display_time_zone`. If `display_time_zone` doesn't exist for your account, `time_zone` is empty. The `version` field is not supported, won't be set in responses and will be silently ignored if specified in requests.
    "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
    "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
  },
}

  updateMask: string, Optional. List of fields being updated. The following fields are supported (in both `snake_case` and `lowerCamelCase`): - `account_name` - `adult_content` - `language_code` - `time_zone`
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The `Account` message represents a business's account within Shopping Ads. It's the primary entity for managing product data, settings, and interactions with Google's services and external providers. Accounts can operate as standalone entities or be part of a advanced account structure. In an advanced account setup the parent account manages multiple sub-accounts. Establishing an account involves configuring attributes like the account name, time zone, and language preferences. The `Account` message is the parent entity for many other resources, for example, `AccountRelationship`, `Homepage`, `BusinessInfo` and so on.
  "accountId": "A String", # Output only. The ID of the account.
  "accountName": "A String", # Required. A human-readable name of the account. See [store name](https://support.google.com/merchants/answer/160556) and [business name](https://support.google.com/merchants/answer/12159159) for more information.
  "adultContent": True or False, # Optional. Whether this account contains adult content.
  "languageCode": "A String", # Required. The account's [BCP-47 language code](https://tools.ietf.org/html/bcp47), such as `en-US` or `sr-Latn`.
  "name": "A String", # Identifier. The resource name of the account. Format: `accounts/{account}`
  "testAccount": True or False, # Output only. Whether this is a test account.
  "timeZone": { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # Required. The time zone of the account. On writes, `time_zone` sets both the `reporting_time_zone` and the `display_time_zone`. For reads, `time_zone` always returns the `display_time_zone`. If `display_time_zone` doesn't exist for your account, `time_zone` is empty. The `version` field is not supported, won't be set in responses and will be silently ignored if specified in requests.
    "id": "A String", # IANA Time Zone Database time zone. For example "America/New_York".
    "version": "A String", # Optional. IANA Time Zone Database version number. For example "2019a".
  },
}