Class CloudChannelService.CloudChannelServiceBase (1.0.0)

[BindServiceMethod(typeof(CloudChannelService), "BindService")]
public abstract class CloudChannelServiceBase

Base class for server-side implementations of CloudChannelService

Inheritance

Object > CloudChannelService.CloudChannelServiceBase

Namespace

Google.Cloud.Channel.V1

Assembly

Google.Cloud.Channel.V1.dll

Methods

ActivateEntitlement(ActivateEntitlementRequest, ServerCallContext)

public virtual Task<Operation> ActivateEntitlement(ActivateEntitlementRequest request, ServerCallContext context)

Activates a previously suspended entitlement. The entitlement must be in a suspended state for it to be activated. Entitlements suspended for pending ToS acceptance can't be activated using this method. An entitlement activation is a long-running operation and can result in updates to the state of the customer entitlement.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller or if the reseller account making the request and reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: Entitlement resource not found.
  • SUSPENSION_NOT_RESELLER_INITIATED: Can't activate an entitlement that is pending TOS acceptance. Only reseller initiated suspensions can be activated.
  • NOT_SUSPENDED: Can't activate entitlements that are already in ACTIVE state. Can only activate suspended entitlements.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestActivateEntitlementRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

CancelEntitlement(CancelEntitlementRequest, ServerCallContext)

public virtual Task<Operation> CancelEntitlement(CancelEntitlementRequest request, ServerCallContext context)

Cancels a previously fulfilled entitlement. An entitlement cancellation is a long-running operation.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller or if the reseller account making the request and reseller account being queried for are different.
  • FAILED_PRECONDITION: If there are any Google Cloud projects linked to the Google Cloud entitlement's Cloud Billing subaccount.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: Entitlement resource not found.
  • DELETION_TYPE_NOT_ALLOWED: Cancel is only allowed for Google Workspace add-ons or entitlements for Google Cloud's development platform.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The response will contain google.protobuf.Empty on success. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestCancelEntitlementRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

ChangeOffer(ChangeOfferRequest, ServerCallContext)

public virtual Task<Operation> ChangeOffer(ChangeOfferRequest request, ServerCallContext context)

Updates the Offer for an existing customer entitlement.

An entitlement update is a long-running operation and results in updates to the entitlement as a result of fulfillment.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: Offer or Entitlement resource not found.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestChangeOfferRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

ChangeParameters(ChangeParametersRequest, ServerCallContext)

public virtual Task<Operation> ChangeParameters(ChangeParametersRequest request, ServerCallContext context)

Change parameters of the entitlement

An entitlement parameters update is a long-running operation and results in updates to the entitlement as a result of fulfillment.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request. For example, if the number of seats being changed to is greater than the allowed number of max seats for the resource. Or decreasing seats for a commitment based plan.
  • NOT_FOUND: Entitlement resource not found.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestChangeParametersRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

ChangeRenewalSettings(ChangeRenewalSettingsRequest, ServerCallContext)

public virtual Task<Operation> ChangeRenewalSettings(ChangeRenewalSettingsRequest request, ServerCallContext context)

Updates the renewal settings for an existing customer entitlement.

An entitlement update is a long-running operation and results in updates to the entitlement as a result of fulfillment.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: Entitlement resource not found.
  • NOT_COMMITMENT_PLAN: Renewal Settings are only applicable for a commitment plan. Can't enable or disable renewal for non-commitment plans.
  • INTERNAL: Any non user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestChangeRenewalSettingsRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

CheckCloudIdentityAccountsExist(CheckCloudIdentityAccountsExistRequest, ServerCallContext)

public virtual Task<CheckCloudIdentityAccountsExistResponse> CheckCloudIdentityAccountsExist(CheckCloudIdentityAccountsExistRequest request, ServerCallContext context)

Confirms the existence of Cloud Identity accounts, based on the domain and whether the Cloud Identity accounts are owned by the reseller.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • INVALID_VALUE: Invalid domain value in the request.

Return Value: List of [CloudIdentityCustomerAccount][google.cloud.channel.v1.CloudIdentityCustomerAccount] resources for the domain. List may be empty.

Note: in the v1alpha1 version of the API, a NOT_FOUND error is returned if no [CloudIdentityCustomerAccount][google.cloud.channel.v1.CloudIdentityCustomerAccount] resources match the domain.

Parameters
NameDescription
requestCheckCloudIdentityAccountsExistRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<CheckCloudIdentityAccountsExistResponse>

The response to send back to the client (wrapped by a task).

public virtual Task<ChannelPartnerLink> CreateChannelPartnerLink(CreateChannelPartnerLinkRequest request, ServerCallContext context)

Initiates a channel partner link between a distributor and a reseller or between resellers in an n-tier reseller channel. To accept the invite, the invited partner should follow the invite_link_uri provided in the response. If the link creation is accepted, a valid link is set up between the two involved parties. To call this method, you must be a distributor.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • ALREADY_EXISTS: If the ChannelPartnerLink sent in the request already exists.
  • NOT_FOUND: If no Cloud Identity customer exists for domain provided.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Newly created [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource if successful, otherwise error is returned.

Parameters
NameDescription
requestCreateChannelPartnerLinkRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ChannelPartnerLink>

The response to send back to the client (wrapped by a task).

CreateCustomer(CreateCustomerRequest, ServerCallContext)

public virtual Task<Customer> CreateCustomer(CreateCustomerRequest request, ServerCallContext context)

Creates a new [Customer][google.cloud.channel.v1.Customer] resource under the reseller or distributor account.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: It can happen in following scenarios -
  • Missing or invalid required parameters in the request.
  • Domain field value doesn't match the domain specified in primary email.

Return Value: If successful, the newly created [Customer][google.cloud.channel.v1.Customer] resource, otherwise returns an error.

Parameters
NameDescription
requestCreateCustomerRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Customer>

The response to send back to the client (wrapped by a task).

CreateEntitlement(CreateEntitlementRequest, ServerCallContext)

public virtual Task<Operation> CreateEntitlement(CreateEntitlementRequest request, ServerCallContext context)

Creates an entitlement for a customer.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: It can happen in below scenarios -
  • Missing or invalid required parameters in the request.
  • Cannot purchase an entitlement if there is already an entitlement for customer, for a SKU from the same product family.
  • INVALID_VALUE: Offer passed in isn't valid. Make sure OfferId is valid. If it is valid, then contact Google Channel support for further troubleshooting.
  • NOT_FOUND: If the customer or offer resource is not found for the reseller.
  • ALREADY_EXISTS: This failure can happen in the following cases:
  • If the SKU has been already purchased for the customer.
  • If the customer's primary email already exists. In this case retry after changing the customer's primary contact email.
  • CONDITION_NOT_MET or FAILED_PRECONDITION: This failure can happen in the following cases:
  • Purchasing a SKU that requires domain verification and the domain has not been verified.
  • Purchasing an Add-On SKU like Vault or Drive without purchasing the pre-requisite SKU, such as Google Workspace Business Starter.
  • Applicable only for developer accounts: reseller and resold domain. Must meet the following domain naming requirements:
    • Domain names must start with goog-test.
    • Resold domain names must include the reseller domain.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel Support in this case.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel Support in this case.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestCreateEntitlementRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

DeleteCustomer(DeleteCustomerRequest, ServerCallContext)

public virtual Task<Empty> DeleteCustomer(DeleteCustomerRequest request, ServerCallContext context)

Deletes the given [Customer][google.cloud.channel.v1.Customer] permanently and irreversibly.

Possible Error Codes:

  • PERMISSION_DENIED: If the account making the request does not own this customer.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • FAILED_PRECONDITION: If the customer has existing entitlements.
  • NOT_FOUND: No [Customer][google.cloud.channel.v1.Customer] resource found for the name specified in the request.
Parameters
NameDescription
requestDeleteCustomerRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.Protobuf.WellKnownTypes.Empty>

The response to send back to the client (wrapped by a task).

public virtual Task<ChannelPartnerLink> GetChannelPartnerLink(GetChannelPartnerLinkRequest request, ServerCallContext context)

Returns a requested [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource. To call this method, you must be a distributor.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: ChannelPartnerLink resource not found. Results due invalid channel partner link name.

Return Value: [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource if found, otherwise returns an error.

Parameters
NameDescription
requestGetChannelPartnerLinkRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ChannelPartnerLink>

The response to send back to the client (wrapped by a task).

GetCustomer(GetCustomerRequest, ServerCallContext)

public virtual Task<Customer> GetCustomer(GetCustomerRequest request, ServerCallContext context)

Returns a requested [Customer][google.cloud.channel.v1.Customer] resource.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: If the customer resource doesn't exist. Usually the result of an invalid name parameter.

Return Value: [Customer][google.cloud.channel.v1.Customer] resource if found, error otherwise.

Parameters
NameDescription
requestGetCustomerRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Customer>

The response to send back to the client (wrapped by a task).

GetEntitlement(GetEntitlementRequest, ServerCallContext)

public virtual Task<Entitlement> GetEntitlement(GetEntitlementRequest request, ServerCallContext context)

Returns a requested [Entitlement][google.cloud.channel.v1.Entitlement] resource.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: If the entitlement is not found for the customer.

Return Value: If found, the requested [Entitlement][google.cloud.channel.v1.Entitlement] resource, otherwise returns an error.

Parameters
NameDescription
requestGetEntitlementRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Entitlement>

The response to send back to the client (wrapped by a task).

public virtual Task<ListChannelPartnerLinksResponse> ListChannelPartnerLinks(ListChannelPartnerLinksRequest request, ServerCallContext context)

List [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink]s belonging to a distributor. To call this method, you must be a distributor.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.

Return Value: If successful, returns the list of [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resources for the distributor account, otherwise returns an error.

Parameters
NameDescription
requestListChannelPartnerLinksRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListChannelPartnerLinksResponse>

The response to send back to the client (wrapped by a task).

ListCustomers(ListCustomersRequest, ServerCallContext)

public virtual Task<ListCustomersResponse> ListCustomers(ListCustomersRequest request, ServerCallContext context)

List downstream [Customer][google.cloud.channel.v1.Customer]s.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.

Return Value: List of [Customer][google.cloud.channel.v1.Customer]s pertaining to the reseller or empty list if there are none.

Parameters
NameDescription
requestListCustomersRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListCustomersResponse>

The response to send back to the client (wrapped by a task).

ListEntitlements(ListEntitlementsRequest, ServerCallContext)

public virtual Task<ListEntitlementsResponse> ListEntitlements(ListEntitlementsRequest request, ServerCallContext context)

List [Entitlement][google.cloud.channel.v1.Entitlement]s belonging to a customer.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.

Return Value: List of [Entitlement][google.cloud.channel.v1.Entitlement]s belonging to the customer, or empty list if there are none.

Parameters
NameDescription
requestListEntitlementsRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListEntitlementsResponse>

The response to send back to the client (wrapped by a task).

ListOffers(ListOffersRequest, ServerCallContext)

public virtual Task<ListOffersResponse> ListOffers(ListOffersRequest request, ServerCallContext context)

Lists the Offers the reseller can sell.

Possible Error Codes:

  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
Parameters
NameDescription
requestListOffersRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListOffersResponse>

The response to send back to the client (wrapped by a task).

ListProducts(ListProductsRequest, ServerCallContext)

public virtual Task<ListProductsResponse> ListProducts(ListProductsRequest request, ServerCallContext context)

Lists the Products the reseller is authorized to sell.

Possible Error Codes:

  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
Parameters
NameDescription
requestListProductsRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListProductsResponse>

The response to send back to the client (wrapped by a task).

ListPurchasableOffers(ListPurchasableOffersRequest, ServerCallContext)

public virtual Task<ListPurchasableOffersResponse> ListPurchasableOffers(ListPurchasableOffersRequest request, ServerCallContext context)

Lists the Purchasable Offers for the following cases:

  • Offers that can be newly purchased for a customer
  • Offers that can be changed to, for an entitlement.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
Parameters
NameDescription
requestListPurchasableOffersRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListPurchasableOffersResponse>

The response to send back to the client (wrapped by a task).

ListPurchasableSkus(ListPurchasableSkusRequest, ServerCallContext)

public virtual Task<ListPurchasableSkusResponse> ListPurchasableSkus(ListPurchasableSkusRequest request, ServerCallContext context)

Lists the Purchasable SKUs for following cases:

  • SKUs that can be newly purchased for a customer
  • SKUs that can be upgraded/downgraded to, for an entitlement.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
Parameters
NameDescription
requestListPurchasableSkusRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListPurchasableSkusResponse>

The response to send back to the client (wrapped by a task).

ListSkus(ListSkusRequest, ServerCallContext)

public virtual Task<ListSkusResponse> ListSkus(ListSkusRequest request, ServerCallContext context)

Lists the SKUs for a product the reseller is authorized to sell.

Possible Error Codes:

  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
Parameters
NameDescription
requestListSkusRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListSkusResponse>

The response to send back to the client (wrapped by a task).

ListSubscribers(ListSubscribersRequest, ServerCallContext)

public virtual Task<ListSubscribersResponse> ListSubscribers(ListSubscribersRequest request, ServerCallContext context)

Lists service accounts with subscriber privileges on the Cloud Pub/Sub topic created for this Channel Services account.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being provided are different, or if the account is not a super admin.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: If the topic resource doesn't exist.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: List of service email addresses if successful, otherwise error is returned.

Parameters
NameDescription
requestListSubscribersRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListSubscribersResponse>

The response to send back to the client (wrapped by a task).

ListTransferableOffers(ListTransferableOffersRequest, ServerCallContext)

public virtual Task<ListTransferableOffersResponse> ListTransferableOffers(ListTransferableOffersRequest request, ServerCallContext context)

List [TransferableOffer][google.cloud.channel.v1.TransferableOffer]s of a customer based on Cloud Identity ID or Customer Name in the request.

This method is used when a reseller gets the entitlement information of a customer that is not owned. The reseller should provide the customer's Cloud Identity ID or Customer Name.

Possible Error Codes:

  • PERMISSION_DENIED: Appears because of one of the following:
  • If the customer doesn't belong to the reseller and no auth token or invalid auth token is supplied.
  • If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.

Return Value: List of [TransferableOffer][google.cloud.channel.v1.TransferableOffer] for the given customer and SKU.

Parameters
NameDescription
requestListTransferableOffersRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListTransferableOffersResponse>

The response to send back to the client (wrapped by a task).

ListTransferableSkus(ListTransferableSkusRequest, ServerCallContext)

public virtual Task<ListTransferableSkusResponse> ListTransferableSkus(ListTransferableSkusRequest request, ServerCallContext context)

List [TransferableSku][google.cloud.channel.v1.TransferableSku]s of a customer based on Cloud Identity ID or Customer Name in the request.

This method is used when a reseller lists the entitlements information of a customer that is not owned. The reseller should provide the customer's Cloud Identity ID or Customer Name.

Possible Error Codes:

  • PERMISSION_DENIED: Appears because of one of the following -
  • The customer doesn't belong to the reseller and no auth token.
  • The supplied auth token is invalid.
  • The reseller account making the request and the queries reseller account are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.

Return Value: List of [TransferableSku][google.cloud.channel.v1.TransferableSku] for the given customer.

Parameters
NameDescription
requestListTransferableSkusRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ListTransferableSkusResponse>

The response to send back to the client (wrapped by a task).

ProvisionCloudIdentity(ProvisionCloudIdentityRequest, ServerCallContext)

public virtual Task<Operation> ProvisionCloudIdentity(ProvisionCloudIdentityRequest request, ServerCallContext context)

Creates a Cloud Identity for the given customer using the customer's information or the information provided here, if present.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: If the customer is not found for the reseller.
  • ALREADY_EXISTS: If the customer's primary email already exists. In this case, retry after changing the customer's primary contact email.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support in this case.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Contact Cloud Channel support in this case.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestProvisionCloudIdentityRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

RegisterSubscriber(RegisterSubscriberRequest, ServerCallContext)

public virtual Task<RegisterSubscriberResponse> RegisterSubscriber(RegisterSubscriberRequest request, ServerCallContext context)

Registers a service account with subscriber privileges on the Cloud Pub/Sub topic created for this Channel Services account. Once you create a subscriber, you will get the events as per [SubscriberEvent][google.cloud.channel.v1.SubscriberEvent]

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being provided are different, or if the impersonated user is not a super admin.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Topic name with service email address registered if successful, otherwise error is returned.

Parameters
NameDescription
requestRegisterSubscriberRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<RegisterSubscriberResponse>

The response to send back to the client (wrapped by a task).

StartPaidService(StartPaidServiceRequest, ServerCallContext)

public virtual Task<Operation> StartPaidService(StartPaidServiceRequest request, ServerCallContext context)

Starts paid service for a trial entitlement.

Starts paid service for a trial entitlement immediately. This method is only applicable if a plan has already been set up for a trial entitlement but has some trial days remaining.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: Entitlement resource not found.
  • FAILED_PRECONDITION/NOT_IN_TRIAL: This method only works for entitlement on trial plans.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestStartPaidServiceRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

SuspendEntitlement(SuspendEntitlementRequest, ServerCallContext)

public virtual Task<Operation> SuspendEntitlement(SuspendEntitlementRequest request, ServerCallContext context)

Suspends a previously fulfilled entitlement. An entitlement suspension is a long-running operation.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: Entitlement resource not found.
  • NOT_ACTIVE: Entitlement is not active.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestSuspendEntitlementRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

TransferEntitlements(TransferEntitlementsRequest, ServerCallContext)

public virtual Task<Operation> TransferEntitlements(TransferEntitlementsRequest request, ServerCallContext context)

Transfers customer entitlements to new reseller.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: If the customer or offer resource is not found for the reseller.
  • ALREADY_EXISTS: If the SKU has been already transferred for the customer.
  • CONDITION_NOT_MET or FAILED_PRECONDITION: This failure can happen in the following cases:
  • Transferring a SKU that requires domain verification and the domain has not been verified.
  • Transferring an Add-On SKU like Vault or Drive without transferring the pre-requisite SKU, such as G Suite Basic.
  • Applicable only for developer accounts: reseller and resold domain must follow the domain naming convention as follows:
    • Domain names must start with goog-test.
    • Resold domain names must include the reseller domain.
  • All transferring entitlements must be specified.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Please contact Cloud Channel Support in this case.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Please contact Cloud Channel Support in this case.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestTransferEntitlementsRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

TransferEntitlementsToGoogle(TransferEntitlementsToGoogleRequest, ServerCallContext)

public virtual Task<Operation> TransferEntitlementsToGoogle(TransferEntitlementsToGoogleRequest request, ServerCallContext context)

Transfers customer entitlements from current reseller to Google.

Possible Error Codes:

  • PERMISSION_DENIED: If the customer doesn't belong to the reseller.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: If the customer or offer resource is not found for the reseller.
  • ALREADY_EXISTS: If the SKU has been already transferred for the customer.
  • CONDITION_NOT_MET or FAILED_PRECONDITION: This failure can happen in the following cases:
  • Transferring a SKU that requires domain verification and the domain has not been verified.
  • Transferring an Add-On SKU like Vault or Drive without purchasing the pre-requisite SKU, such as G Suite Basic.
  • Applicable only for developer accounts: reseller and resold domain must follow the domain naming convention as follows:
    • Domain names must start with goog-test.
    • Resold domain names must include the reseller domain.
  • INTERNAL: Any non-user error related to a technical issue in the backend. Please contact Cloud Channel Support in this case.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. Please contact Cloud Channel Support in this case.

Return Value: Long Running Operation ID.

To get the results of the operation, call the GetOperation method of CloudChannelOperationsService. The response will contain google.protobuf.Empty on success. The Operation metadata will contain an instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].

Parameters
NameDescription
requestTransferEntitlementsToGoogleRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Google.LongRunning.Operation>

The response to send back to the client (wrapped by a task).

UnregisterSubscriber(UnregisterSubscriberRequest, ServerCallContext)

public virtual Task<UnregisterSubscriberResponse> UnregisterSubscriber(UnregisterSubscriberRequest request, ServerCallContext context)

Unregisters a service account with subscriber privileges on the Cloud Pub/Sub topic created for this Channel Services account. If there are no more service account left with sunbscriber privileges, the topic will be deleted. You can check this by calling ListSubscribers api.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being provided are different, or if the impersonated user is not a super admin.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: If the topic resource doesn't exist.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: Topic name from which service email address has been unregistered if successful, otherwise error is returned. If the service email was already not associated with the topic, the success response will be returned.

Parameters
NameDescription
requestUnregisterSubscriberRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<UnregisterSubscriberResponse>

The response to send back to the client (wrapped by a task).

public virtual Task<ChannelPartnerLink> UpdateChannelPartnerLink(UpdateChannelPartnerLinkRequest request, ServerCallContext context)

Updates a channel partner link. A distributor calls this method to change a link's status. For example, suspend a partner link. To call this method, you must be a distributor.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: It can happen in following scenarios -
  • Missing or invalid required parameters in the request.
  • Updating link state from invited to active or suspended.
  • Sending reseller_cloud_identity_id, invite_url or name in update mask.
  • NOT_FOUND: ChannelPartnerLink resource not found.
  • INTERNAL: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.
  • UNKNOWN: Any non-user error related to a technical issue in the backend. In this case, contact Cloud Channel support.

Return Value: If successful, the updated [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource, otherwise returns an error.

Parameters
NameDescription
requestUpdateChannelPartnerLinkRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<ChannelPartnerLink>

The response to send back to the client (wrapped by a task).

UpdateCustomer(UpdateCustomerRequest, ServerCallContext)

public virtual Task<Customer> UpdateCustomer(UpdateCustomerRequest request, ServerCallContext context)

Updates an existing [Customer][google.cloud.channel.v1.Customer] resource belonging to the reseller or distributor.

Possible Error Codes:

  • PERMISSION_DENIED: If the reseller account making the request and the reseller account being queried for are different.
  • INVALID_ARGUMENT: Missing or invalid required parameters in the request.
  • NOT_FOUND: No [Customer][google.cloud.channel.v1.Customer] resource found for the name specified in the request.

Return Value: If successful, the updated [Customer][google.cloud.channel.v1.Customer] resource, otherwise returns an error.

Parameters
NameDescription
requestUpdateCustomerRequest

The request received from the client.

contextServerCallContext

The context of the server-side call handler being invoked.

Returns
TypeDescription
Task<Customer>

The response to send back to the client (wrapped by a task).