Class AccountService
The AccountService
message represents a specific service that a provider account offers to a merchant 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 merchant 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.
Implements
Inherited Members
Namespace: Google.Apis.Merchant.accounts_v1beta.Data
Assembly: Google.Apis.Merchant.accounts_v1beta.dll
Syntax
public class AccountService : IDirectResponseSchema
Properties
AccountAggregation
Service type for account aggregation. This enables the provider, which is a Multi-Client Account (MCA), to manage multiple sub-accounts (client accounts). Through this service, the MCA 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 accounts.
Declaration
[JsonProperty("accountAggregation")]
public virtual AccountAggregation AccountAggregation { get; set; }
Property Value
Type | Description |
---|---|
AccountAggregation |
AccountManagement
Service type for account management. Enables the provider to perform administrative actions on the merchant's account, such as configuring account settings, managing users, or updating business information.
Declaration
[JsonProperty("accountManagement")]
public virtual AccountManagement AccountManagement { get; set; }
Property Value
Type | Description |
---|---|
AccountManagement |
CampaignsManagement
Service type for managing advertising campaigns. Grants the provider access to create and manage the merchant's ad campaigns, including setting up campaigns, adjusting bids, and optimizing performance.
Declaration
[JsonProperty("campaignsManagement")]
public virtual CampaignsManagement CampaignsManagement { get; set; }
Property Value
Type | Description |
---|---|
CampaignsManagement |
ETag
The ETag of the item.
Declaration
public virtual string ETag { get; set; }
Property Value
Type | Description |
---|---|
string |
ExternalAccountId
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.
Declaration
[JsonProperty("externalAccountId")]
public virtual string ExternalAccountId { get; set; }
Property Value
Type | Description |
---|---|
string |
Handshake
Output only. Information about the state of the service in terms of establishing it (e.g. is it pending approval or approved).
Declaration
[JsonProperty("handshake")]
public virtual Handshake Handshake { get; set; }
Property Value
Type | Description |
---|---|
Handshake |
Mutability
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.
Declaration
[JsonProperty("mutability")]
public virtual string Mutability { get; set; }
Property Value
Type | Description |
---|---|
string |
Name
Identifier. The resource name of the account service. Format: accounts/{account}/services/{service}
Declaration
[JsonProperty("name")]
public virtual string Name { get; set; }
Property Value
Type | Description |
---|---|
string |
ProductsManagement
Service type for managing products. This allows the provider to handle product data on behalf of the merchant, including reading and writing product listings. It's commonly used when the provider offers inventory management or catalog synchronization services to keep the merchant's product information up-to-date across platforms.
Declaration
[JsonProperty("productsManagement")]
public virtual ProductsManagement ProductsManagement { get; set; }
Property Value
Type | Description |
---|---|
ProductsManagement |
Provider
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
).
Declaration
[JsonProperty("provider")]
public virtual string Provider { get; set; }
Property Value
Type | Description |
---|---|
string |
ProviderDisplayName
Output only. The human-readable display name of the provider account.
Declaration
[JsonProperty("providerDisplayName")]
public virtual string ProviderDisplayName { get; set; }
Property Value
Type | Description |
---|---|
string |