1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452 |
- // Copyright 2022 Google LLC
- //
- // Licensed under the Apache License, Version 2.0 (the "License");
- // you may not use this file except in compliance with the License.
- // You may obtain a copy of the License at
- //
- // http://www.apache.org/licenses/LICENSE-2.0
- //
- // Unless required by applicable law or agreed to in writing, software
- // distributed under the License is distributed on an "AS IS" BASIS,
- // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- // See the License for the specific language governing permissions and
- // limitations under the License.
- syntax = "proto3";
- package google.cloud.channel.v1;
- import "google/api/annotations.proto";
- import "google/api/client.proto";
- import "google/api/field_behavior.proto";
- import "google/api/resource.proto";
- import "google/cloud/channel/v1/channel_partner_links.proto";
- import "google/cloud/channel/v1/common.proto";
- import "google/cloud/channel/v1/customers.proto";
- import "google/cloud/channel/v1/entitlements.proto";
- import "google/cloud/channel/v1/offers.proto";
- import "google/cloud/channel/v1/products.proto";
- import "google/cloud/channel/v1/repricing.proto";
- import "google/longrunning/operations.proto";
- import "google/protobuf/empty.proto";
- import "google/protobuf/field_mask.proto";
- option go_package = "google.golang.org/genproto/googleapis/cloud/channel/v1;channel";
- option java_multiple_files = true;
- option java_outer_classname = "ServiceProto";
- option java_package = "com.google.cloud.channel.v1";
- // CloudChannelService lets Google cloud resellers and distributors manage
- // their customers, channel partners, entitlements, and reports.
- //
- // Using this service:
- // 1. Resellers and distributors can manage a customer entity.
- // 2. Distributors can register an authorized reseller in their channel and
- // provide them with delegated admin access.
- // 3. Resellers and distributors can manage customer entitlements.
- //
- // CloudChannelService exposes the following resources:
- // - [Customer][google.cloud.channel.v1.Customer]s: An entity—usually an enterprise—managed by a reseller or
- // distributor.
- //
- // - [Entitlement][google.cloud.channel.v1.Entitlement]s: An entity that provides a customer with the means to use
- // a service. Entitlements are created or updated as a result of a successful
- // fulfillment.
- //
- // - [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink]s: An entity that identifies links between
- // distributors and their indirect resellers in a channel.
- service CloudChannelService {
- option (google.api.default_host) = "cloudchannel.googleapis.com";
- option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/apps.order";
- // List [Customer][google.cloud.channel.v1.Customer]s.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- //
- // Return value:
- // List of [Customer][google.cloud.channel.v1.Customer]s, or an empty list if there are no customers.
- rpc ListCustomers(ListCustomersRequest) returns (ListCustomersResponse) {
- option (google.api.http) = {
- get: "/v1/{parent=accounts/*}/customers"
- additional_bindings {
- get: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers"
- }
- };
- }
- // Returns the requested [Customer][google.cloud.channel.v1.Customer] resource.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: The customer resource doesn't exist. Usually the result of an
- // invalid name parameter.
- //
- // Return value:
- // The [Customer][google.cloud.channel.v1.Customer] resource.
- rpc GetCustomer(GetCustomerRequest) returns (Customer) {
- option (google.api.http) = {
- get: "/v1/{name=accounts/*/customers/*}"
- additional_bindings {
- get: "/v1/{name=accounts/*/channelPartnerLinks/*/customers/*}"
- }
- };
- option (google.api.method_signature) = "name";
- }
- // Confirms the existence of Cloud Identity accounts based on the domain and
- // if the Cloud Identity accounts are owned by the reseller.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * INVALID_VALUE: Invalid domain value in the request.
- //
- // Return value:
- // A list of [CloudIdentityCustomerAccount][google.cloud.channel.v1.CloudIdentityCustomerAccount] resources for the domain (may be
- // empty)
- //
- // Note: in the v1alpha1 version of the API, a NOT_FOUND error returns if
- // no [CloudIdentityCustomerAccount][google.cloud.channel.v1.CloudIdentityCustomerAccount] resources match the domain.
- rpc CheckCloudIdentityAccountsExist(CheckCloudIdentityAccountsExistRequest) returns (CheckCloudIdentityAccountsExistResponse) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*}:checkCloudIdentityAccountsExist"
- body: "*"
- };
- }
- // Creates a new [Customer][google.cloud.channel.v1.Customer] resource under the reseller or distributor
- // account.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT:
- // * Required request parameters are missing or invalid.
- // * Domain field value doesn't match the primary email domain.
- //
- // Return value:
- // The newly created [Customer][google.cloud.channel.v1.Customer] resource.
- rpc CreateCustomer(CreateCustomerRequest) returns (Customer) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*}/customers"
- body: "customer"
- additional_bindings {
- post: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers"
- body: "customer"
- }
- };
- }
- // Updates an existing [Customer][google.cloud.channel.v1.Customer] resource for the reseller or
- // distributor.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: No [Customer][google.cloud.channel.v1.Customer] resource found for the name in the request.
- //
- // Return value:
- // The updated [Customer][google.cloud.channel.v1.Customer] resource.
- rpc UpdateCustomer(UpdateCustomerRequest) returns (Customer) {
- option (google.api.http) = {
- patch: "/v1/{customer.name=accounts/*/customers/*}"
- body: "customer"
- additional_bindings {
- patch: "/v1/{customer.name=accounts/*/channelPartnerLinks/*/customers/*}"
- body: "customer"
- }
- };
- }
- // Deletes the given [Customer][google.cloud.channel.v1.Customer] permanently.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The account making the request does not own
- // this customer.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * FAILED_PRECONDITION: The customer has existing entitlements.
- // * NOT_FOUND: No [Customer][google.cloud.channel.v1.Customer] resource found for the name in the request.
- rpc DeleteCustomer(DeleteCustomerRequest) returns (google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/v1/{name=accounts/*/customers/*}"
- additional_bindings {
- delete: "/v1/{name=accounts/*/channelPartnerLinks/*/customers/*}"
- }
- };
- option (google.api.method_signature) = "name";
- }
- // Imports a [Customer][google.cloud.channel.v1.Customer] from the Cloud Identity associated with the provided
- // Cloud Identity ID or domain before a TransferEntitlements call. If a
- // linked Customer already exists and overwrite_if_exists is true, it will
- // update that Customer's data.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * NOT_FOUND: Cloud Identity doesn't exist or was deleted.
- // * INVALID_ARGUMENT: Required parameters are missing, or the auth_token is
- // expired or invalid.
- // * ALREADY_EXISTS: A customer already exists and has conflicting critical
- // fields. Requires an overwrite.
- //
- // Return value:
- // The [Customer][google.cloud.channel.v1.Customer].
- rpc ImportCustomer(ImportCustomerRequest) returns (Customer) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*}/customers:import"
- body: "*"
- additional_bindings {
- post: "/v1/{parent=accounts/*/channelPartnerLinks/*}/customers:import"
- body: "*"
- }
- };
- }
- // Creates a Cloud Identity for the given customer using the customer's
- // information, or the information provided here.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: The customer was not found.
- // * ALREADY_EXISTS: The customer's primary email already exists. 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.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // To get the results of the operation, call the GetOperation method of
- // CloudChannelOperationsService. The Operation metadata contains an
- // instance of [OperationMetadata][google.cloud.channel.v1.OperationMetadata].
- rpc ProvisionCloudIdentity(ProvisionCloudIdentityRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{customer=accounts/*/customers/*}:provisionCloudIdentity"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Customer"
- metadata_type: "OperationMetadata"
- };
- }
- // Lists [Entitlement][google.cloud.channel.v1.Entitlement]s belonging to a customer.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- //
- // Return value:
- // A list of the customer's [Entitlement][google.cloud.channel.v1.Entitlement]s.
- rpc ListEntitlements(ListEntitlementsRequest) returns (ListEntitlementsResponse) {
- option (google.api.http) = {
- get: "/v1/{parent=accounts/*/customers/*}/entitlements"
- };
- }
- // List [TransferableSku][google.cloud.channel.v1.TransferableSku]s of a customer based on the Cloud Identity ID or
- // Customer Name in the request.
- //
- // Use this method to list the entitlements information of an
- // unowned customer. You should provide the customer's
- // Cloud Identity ID or Customer Name.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED:
- // * The customer doesn't belong to the reseller and has no auth token.
- // * The supplied auth token is invalid.
- // * The reseller account making the request is different
- // from the reseller account in the query.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- //
- // Return value:
- // A list of the customer's [TransferableSku][google.cloud.channel.v1.TransferableSku].
- rpc ListTransferableSkus(ListTransferableSkusRequest) returns (ListTransferableSkusResponse) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*}:listTransferableSkus"
- body: "*"
- };
- }
- // List [TransferableOffer][google.cloud.channel.v1.TransferableOffer]s of a customer based on Cloud Identity ID or
- // Customer Name in the request.
- //
- // Use this method when a reseller gets the entitlement information of an
- // unowned customer. The reseller should provide the customer's
- // Cloud Identity ID or Customer Name.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED:
- // * The customer doesn't belong to the reseller and has no auth token.
- // * The customer provided incorrect reseller information when generating
- // auth token.
- // * The reseller account making the request is different
- // from the reseller account in the query.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- //
- // Return value:
- // List of [TransferableOffer][google.cloud.channel.v1.TransferableOffer] for the given customer and SKU.
- rpc ListTransferableOffers(ListTransferableOffersRequest) returns (ListTransferableOffersResponse) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*}:listTransferableOffers"
- body: "*"
- };
- }
- // Returns the requested [Entitlement][google.cloud.channel.v1.Entitlement] resource.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: The customer entitlement was not found.
- //
- // Return value:
- // The requested [Entitlement][google.cloud.channel.v1.Entitlement] resource.
- rpc GetEntitlement(GetEntitlementRequest) returns (Entitlement) {
- option (google.api.http) = {
- get: "/v1/{name=accounts/*/customers/*/entitlements/*}"
- };
- }
- // Creates an entitlement for a customer.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT:
- // * Required request parameters are missing or invalid.
- // * There is already a customer entitlement for a SKU from the same
- // product family.
- // * INVALID_VALUE: Make sure the OfferId is valid. If it is, contact
- // Google Channel support for further troubleshooting.
- // * NOT_FOUND: The customer or offer resource was not found.
- // * ALREADY_EXISTS:
- // * The SKU was already purchased for the customer.
- // * The customer's primary email already exists. Retry
- // after changing the customer's primary contact email.
- // * CONDITION_NOT_MET or FAILED_PRECONDITION:
- // * The domain required for purchasing a SKU has not been verified.
- // * A pre-requisite SKU required to purchase an Add-On SKU is missing.
- // For example, Google Workspace Business Starter is required to purchase
- // Vault or Drive.
- // * (Developer accounts only) Reseller and resold domain must meet the
- // following naming requirements:
- // * Domain names must start with goog-test.
- // * Domain names must include the reseller domain.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc CreateEntitlement(CreateEntitlementRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*/customers/*}/entitlements"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Entitlement"
- metadata_type: "OperationMetadata"
- };
- }
- // Change parameters of the entitlement.
- //
- // An entitlement update is a long-running operation and it updates the
- // entitlement as a result of fulfillment.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // For example, the number of seats being changed is greater than the allowed
- // number of max seats, 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. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc ChangeParameters(ChangeParametersRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{name=accounts/*/customers/*/entitlements/*}:changeParameters"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Entitlement"
- metadata_type: "OperationMetadata"
- };
- }
- // Updates the renewal settings for an existing customer entitlement.
- //
- // An entitlement update is a long-running operation and it updates the
- // entitlement as a result of fulfillment.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: Entitlement resource not found.
- // * NOT_COMMITMENT_PLAN: Renewal Settings are only applicable for a
- // commitment plan. Can't enable or disable renewals for non-commitment plans.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc ChangeRenewalSettings(ChangeRenewalSettingsRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{name=accounts/*/customers/*/entitlements/*}:changeRenewalSettings"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Entitlement"
- metadata_type: "OperationMetadata"
- };
- }
- // Updates the Offer for an existing customer entitlement.
- //
- // An entitlement update is a long-running operation and it updates the
- // entitlement as a result of fulfillment.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: Offer or Entitlement resource not found.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc ChangeOffer(ChangeOfferRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{name=accounts/*/customers/*/entitlements/*}:changeOffer"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Entitlement"
- metadata_type: "OperationMetadata"
- };
- }
- // Starts paid service for a trial entitlement.
- //
- // Starts paid service for a trial entitlement immediately. This method is
- // only applicable if a plan is set up for a trial entitlement but has some
- // trial days remaining.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * 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. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc StartPaidService(StartPaidServiceRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{name=accounts/*/customers/*/entitlements/*}:startPaidService"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Entitlement"
- metadata_type: "OperationMetadata"
- };
- }
- // Suspends a previously fulfilled entitlement.
- //
- // An entitlement suspension is a long-running operation.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * 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. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc SuspendEntitlement(SuspendEntitlementRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{name=accounts/*/customers/*/entitlements/*}:suspend"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Entitlement"
- metadata_type: "OperationMetadata"
- };
- }
- // Cancels a previously fulfilled entitlement.
- //
- // An entitlement cancellation is a long-running operation.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * FAILED_PRECONDITION: There are Google Cloud projects linked to the
- // Google Cloud entitlement's Cloud Billing subaccount.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * 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. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc CancelEntitlement(CancelEntitlementRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{name=accounts/*/customers/*/entitlements/*}:cancel"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "google.protobuf.Empty"
- metadata_type: "OperationMetadata"
- };
- }
- // Activates a previously suspended entitlement. Entitlements suspended for
- // pending ToS acceptance can't be activated using this method.
- //
- // An entitlement activation is a long-running operation and it updates
- // the state of the customer entitlement.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: Entitlement resource not found.
- // * SUSPENSION_NOT_RESELLER_INITIATED: Can only activate reseller-initiated
- // suspensions and entitlements that have accepted the TOS.
- // * NOT_SUSPENDED: Can only activate suspended entitlements not in an ACTIVE
- // state.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc ActivateEntitlement(ActivateEntitlementRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{name=accounts/*/customers/*/entitlements/*}:activate"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "Entitlement"
- metadata_type: "OperationMetadata"
- };
- }
- // Transfers customer entitlements to new reseller.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: The customer or offer resource was not found.
- // * ALREADY_EXISTS: The SKU was already transferred for the customer.
- // * CONDITION_NOT_MET or FAILED_PRECONDITION:
- // * The SKU requires domain verification to transfer, but the domain is
- // not verified.
- // * An Add-On SKU (example, Vault or Drive) is missing the
- // pre-requisite SKU (example, G Suite Basic).
- // * (Developer accounts only) Reseller and resold domain must meet the
- // following naming requirements:
- // * Domain names must start with goog-test.
- // * Domain names must include the reseller domain.
- // * Specify all transferring entitlements.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc TransferEntitlements(TransferEntitlementsRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*/customers/*}:transferEntitlements"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "TransferEntitlementsResponse"
- metadata_type: "OperationMetadata"
- };
- }
- // Transfers customer entitlements from their current reseller to Google.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: The customer or offer resource was not found.
- // * ALREADY_EXISTS: The SKU was already transferred for the customer.
- // * CONDITION_NOT_MET or FAILED_PRECONDITION:
- // * The SKU requires domain verification to transfer, but the domain is
- // not verified.
- // * An Add-On SKU (example, Vault or Drive) is missing the
- // pre-requisite SKU (example, G Suite Basic).
- // * (Developer accounts only) Reseller and resold domain must meet the
- // following naming requirements:
- // * Domain names must start with goog-test.
- // * Domain names must include the reseller domain.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The ID of a long-running operation.
- //
- // 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].
- rpc TransferEntitlementsToGoogle(TransferEntitlementsToGoogleRequest) returns (google.longrunning.Operation) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*/customers/*}:transferEntitlementsToGoogle"
- body: "*"
- };
- option (google.longrunning.operation_info) = {
- response_type: "google.protobuf.Empty"
- metadata_type: "OperationMetadata"
- };
- }
- // List [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink]s belonging to a distributor.
- // You must be a distributor to call this method.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- //
- // Return value:
- // The list of the distributor account's [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resources.
- rpc ListChannelPartnerLinks(ListChannelPartnerLinksRequest) returns (ListChannelPartnerLinksResponse) {
- option (google.api.http) = {
- get: "/v1/{parent=accounts/*}/channelPartnerLinks"
- };
- }
- // Returns the requested [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource.
- // You must be a distributor to call this method.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: ChannelPartnerLink resource not found because of an
- // invalid channel partner link name.
- //
- // Return value:
- // The [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource.
- rpc GetChannelPartnerLink(GetChannelPartnerLinkRequest) returns (ChannelPartnerLink) {
- option (google.api.http) = {
- get: "/v1/{name=accounts/*/channelPartnerLinks/*}"
- };
- }
- // Initiates a channel partner link between a distributor and a reseller, or
- // between resellers in an n-tier reseller channel.
- // Invited partners need to follow the invite_link_uri provided in the
- // response to accept. After accepting the invitation, a link is set up
- // between the two parties.
- // You must be a distributor to call this method.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * ALREADY_EXISTS: The ChannelPartnerLink sent in the request already
- // exists.
- // * NOT_FOUND: No Cloud Identity customer exists for provided domain.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The new [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource.
- rpc CreateChannelPartnerLink(CreateChannelPartnerLinkRequest) returns (ChannelPartnerLink) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*}/channelPartnerLinks"
- body: "channel_partner_link"
- };
- }
- // Updates a channel partner link. Distributors call this method to change a
- // link's status. For example, to suspend a partner link.
- // You must be a distributor to call this method.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request is different
- // from the reseller account in the API request.
- // * INVALID_ARGUMENT:
- // * Required request parameters are missing or invalid.
- // * Link state cannot change from invited to active or suspended.
- // * Cannot send 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. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The updated [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink] resource.
- rpc UpdateChannelPartnerLink(UpdateChannelPartnerLinkRequest) returns (ChannelPartnerLink) {
- option (google.api.http) = {
- patch: "/v1/{name=accounts/*/channelPartnerLinks/*}"
- body: "*"
- };
- }
- // Gets information about how a Reseller modifies their bill before sending
- // it to a Customer.
- //
- // Possible Error Codes:
- //
- // * PERMISSION_DENIED: If the account making the request and the account
- // being queried are different.
- // * NOT_FOUND: The [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] was not found.
- // * INTERNAL: Any non-user error related to technical issues in the
- // backend. In this case, contact Cloud Channel support.
- //
- // Return Value:
- // If successful, the [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] resource, otherwise returns
- // an error.
- rpc GetCustomerRepricingConfig(GetCustomerRepricingConfigRequest) returns (CustomerRepricingConfig) {
- option (google.api.http) = {
- get: "/v1/{name=accounts/*/customers/*/customerRepricingConfigs/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Lists information about how a Reseller modifies their bill before sending
- // it to a Customer.
- //
- // Possible Error Codes:
- //
- // * PERMISSION_DENIED: If the account making the request and the account
- // being queried are different.
- // * NOT_FOUND: The [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] specified does not exist or is
- // not associated with the given account.
- // * INTERNAL: Any non-user error related to technical issues in the
- // backend. In this case, contact Cloud Channel support.
- //
- // Return Value:
- // If successful, the [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] resources. The
- // data for each resource is displayed in the ascending order of:
- // * customer ID
- // * [RepricingConfig.EntitlementGranularity.entitlement][google.cloud.channel.v1.RepricingConfig.EntitlementGranularity.entitlement]
- // * [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
- // * [CustomerRepricingConfig.update_time][google.cloud.channel.v1.CustomerRepricingConfig.update_time]
- //
- // If unsuccessful, returns an error.
- rpc ListCustomerRepricingConfigs(ListCustomerRepricingConfigsRequest) returns (ListCustomerRepricingConfigsResponse) {
- option (google.api.http) = {
- get: "/v1/{parent=accounts/*/customers/*}/customerRepricingConfigs"
- };
- option (google.api.method_signature) = "parent";
- }
- // Creates a CustomerRepricingConfig. Call this method to set modifications
- // for a specific customer's bill. You can only create configs if the
- // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month] is a
- // future month. If needed, you can create a config for the current month,
- // with some restrictions.
- //
- // When creating a config for a future month, make sure there are no existing
- // configs for that
- // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
- //
- // The following restrictions are for creating configs in the current month.
- //
- // * This functionality is reserved for recovering from an erroneous config,
- // and should not be used for regular business cases.
- // * The new config will not modify exports used with other configs.
- // Changes to the config may be immediate, but may take up to 24 hours.
- // * There is a limit of ten configs for any
- // [RepricingConfig.EntitlementGranularity.entitlement][google.cloud.channel.v1.RepricingConfig.EntitlementGranularity.entitlement]
- // or [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
- // * The contained [CustomerRepricingConfig.repricing_config][google.cloud.channel.v1.CustomerRepricingConfig.repricing_config] vaule must be
- // different from the value used in the current config for a
- // [RepricingConfig.EntitlementGranularity.entitlement][google.cloud.channel.v1.RepricingConfig.EntitlementGranularity.entitlement].
- //
- // Possible Error Codes:
- //
- // * PERMISSION_DENIED: If the account making the request and the account
- // being queried are different.
- // * INVALID_ARGUMENT: Missing or invalid required parameters in the
- // request. Also displays if the updated config is for the current month or
- // past months.
- // * NOT_FOUND: The [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] specified does not exist or is
- // not associated with the given account.
- // * INTERNAL: Any non-user error related to technical issues in the
- // backend. In this case, contact Cloud Channel support.
- //
- // Return Value:
- // If successful, the updated [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] resource, otherwise
- // returns an error.
- rpc CreateCustomerRepricingConfig(CreateCustomerRepricingConfigRequest) returns (CustomerRepricingConfig) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*/customers/*}/customerRepricingConfigs"
- body: "customer_repricing_config"
- };
- option (google.api.method_signature) = "parent,customer_repricing_config";
- }
- // Updates a CustomerRepricingConfig. Call this method to set modifications
- // for a specific customer's bill. This method overwrites the existing
- // CustomerRepricingConfig.
- //
- // You can only update configs if the
- // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month] is a
- // future month. To make changes to configs for the current month, use
- // [CreateCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.CreateCustomerRepricingConfig], taking note of its restrictions. You
- // cannot update the [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
- //
- // When updating a config in the future:
- //
- // * This config must already exist.
- //
- // Possible Error Codes:
- //
- // * PERMISSION_DENIED: If the account making the request and the account
- // being queried are different.
- // * INVALID_ARGUMENT: Missing or invalid required parameters in the
- // request. Also displays if the updated config is for the current month or
- // past months.
- // * NOT_FOUND: The [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] specified does not exist or is
- // not associated with the given account.
- // * INTERNAL: Any non-user error related to technical issues in the
- // backend. In this case, contact Cloud Channel support.
- //
- // Return Value:
- // If successful, the updated [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] resource, otherwise
- // returns an error.
- rpc UpdateCustomerRepricingConfig(UpdateCustomerRepricingConfigRequest) returns (CustomerRepricingConfig) {
- option (google.api.http) = {
- patch: "/v1/{customer_repricing_config.name=accounts/*/customers/*/customerRepricingConfigs/*}"
- body: "customer_repricing_config"
- };
- option (google.api.method_signature) = "customer_repricing_config";
- }
- // Deletes the given [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] permanently. You can only
- // delete configs if their [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month] is set
- // to a date after the current month.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The account making the request does not own
- // this customer.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * FAILED_PRECONDITION: The [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] is active or in the
- // past.
- // * NOT_FOUND: No [CustomerRepricingConfig][google.cloud.channel.v1.CustomerRepricingConfig] found for the name in the
- // request.
- rpc DeleteCustomerRepricingConfig(DeleteCustomerRepricingConfigRequest) returns (google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/v1/{name=accounts/*/customers/*/customerRepricingConfigs/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Gets information about how a Distributor modifies their bill before sending
- // it to a ChannelPartner.
- //
- // Possible Error Codes:
- //
- // * PERMISSION_DENIED: If the account making the request and the account
- // being queried are different.
- // * NOT_FOUND: The [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] was not found.
- // * INTERNAL: Any non-user error related to technical issues in the
- // backend. In this case, contact Cloud Channel support.
- //
- // Return Value:
- // If successful, the [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] resource, otherwise
- // returns an error.
- rpc GetChannelPartnerRepricingConfig(GetChannelPartnerRepricingConfigRequest) returns (ChannelPartnerRepricingConfig) {
- option (google.api.http) = {
- get: "/v1/{name=accounts/*/channelPartnerLinks/*/channelPartnerRepricingConfigs/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Lists information about how a Reseller modifies their bill before sending
- // it to a ChannelPartner.
- //
- // Possible Error Codes:
- //
- // * PERMISSION_DENIED: If the account making the request and the account
- // being queried are different.
- // * NOT_FOUND: The [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] specified does not exist
- // or is not associated with the given account.
- // * INTERNAL: Any non-user error related to technical issues in the
- // backend. In this case, contact Cloud Channel support.
- //
- // Return Value:
- // If successful, the [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] resources.
- // The data for each resource is displayed in the ascending order of:
- // * channel partner ID
- // * [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month]
- // * [ChannelPartnerRepricingConfig.update_time][google.cloud.channel.v1.ChannelPartnerRepricingConfig.update_time]
- //
- // If unsuccessful, returns an error.
- rpc ListChannelPartnerRepricingConfigs(ListChannelPartnerRepricingConfigsRequest) returns (ListChannelPartnerRepricingConfigsResponse) {
- option (google.api.http) = {
- get: "/v1/{parent=accounts/*/channelPartnerLinks/*}/channelPartnerRepricingConfigs"
- };
- option (google.api.method_signature) = "parent";
- }
- // Creates a ChannelPartnerRepricingConfig. Call this method to set
- // modifications for a specific ChannelPartner's bill. You can only create
- // configs if the [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month] is a future
- // month. If needed, you can create a config for the current month, with some
- // restrictions.
- //
- // When creating a config for a future month, make sure there are no existing
- // configs for that
- // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
- //
- // The following restrictions are for creating configs in the current month.
- //
- // * This functionality is reserved for recovering from an erroneous config,
- // and should not be used for regular business cases.
- // * The new config will not modify exports used with other configs.
- // Changes to the config may be immediate, but may take up to 24 hours.
- // * There is a limit of ten configs for any ChannelPartner or
- // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
- // * The contained [ChannelPartnerRepricingConfig.repricing_config][google.cloud.channel.v1.ChannelPartnerRepricingConfig.repricing_config] vaule
- // must be different from the value used in the current config for a
- // ChannelPartner.
- //
- // Possible Error Codes:
- //
- // * PERMISSION_DENIED: If the account making the request and the account
- // being queried are different.
- // * INVALID_ARGUMENT: Missing or invalid required parameters in the
- // request. Also displays if the updated config is for the current month or
- // past months.
- // * NOT_FOUND: The [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] specified does not exist
- // or is not associated with the given account.
- // * INTERNAL: Any non-user error related to technical issues in the
- // backend. In this case, contact Cloud Channel support.
- //
- // Return Value:
- // If successful, the updated [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] resource,
- // otherwise returns an error.
- rpc CreateChannelPartnerRepricingConfig(CreateChannelPartnerRepricingConfigRequest) returns (ChannelPartnerRepricingConfig) {
- option (google.api.http) = {
- post: "/v1/{parent=accounts/*/channelPartnerLinks/*}/channelPartnerRepricingConfigs"
- body: "channel_partner_repricing_config"
- };
- option (google.api.method_signature) = "parent,channel_partner_repricing_config";
- }
- // Updates a ChannelPartnerRepricingConfig. Call this method to set
- // modifications for a specific ChannelPartner's bill. This method overwrites
- // the existing CustomerRepricingConfig.
- //
- // You can only update configs if the
- // [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month] is a
- // future month. To make changes to configs for the current month, use
- // [CreateChannelPartnerRepricingConfig][google.cloud.channel.v1.CloudChannelService.CreateChannelPartnerRepricingConfig], taking note of its restrictions.
- // You cannot update the [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month].
- //
- // When updating a config in the future:
- //
- // * This config must already exist.
- //
- // Possible Error Codes:
- //
- // * PERMISSION_DENIED: If the account making the request and the account
- // being queried are different.
- // * INVALID_ARGUMENT: Missing or invalid required parameters in the
- // request. Also displays if the updated config is for the current month or
- // past months.
- // * NOT_FOUND: The [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] specified does not exist
- // or is not associated with the given account.
- // * INTERNAL: Any non-user error related to technical issues in the
- // backend. In this case, contact Cloud Channel support.
- //
- // Return Value:
- // If successful, the updated [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] resource,
- // otherwise returns an error.
- rpc UpdateChannelPartnerRepricingConfig(UpdateChannelPartnerRepricingConfigRequest) returns (ChannelPartnerRepricingConfig) {
- option (google.api.http) = {
- patch: "/v1/{channel_partner_repricing_config.name=accounts/*/channelPartnerLinks/*/channelPartnerRepricingConfigs/*}"
- body: "channel_partner_repricing_config"
- };
- option (google.api.method_signature) = "channel_partner_repricing_config";
- }
- // Deletes the given [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] permanently. You can
- // only delete configs if their [RepricingConfig.effective_invoice_month][google.cloud.channel.v1.RepricingConfig.effective_invoice_month] is
- // set to a date after the current month.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The account making the request does not own
- // this customer.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * FAILED_PRECONDITION: The [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] is active or
- // in the past.
- // * NOT_FOUND: No [ChannelPartnerRepricingConfig][google.cloud.channel.v1.ChannelPartnerRepricingConfig] found for the name in the
- // request.
- rpc DeleteChannelPartnerRepricingConfig(DeleteChannelPartnerRepricingConfigRequest) returns (google.protobuf.Empty) {
- option (google.api.http) = {
- delete: "/v1/{name=accounts/*/channelPartnerLinks/*/channelPartnerRepricingConfigs/*}"
- };
- option (google.api.method_signature) = "name";
- }
- // Returns the requested [Offer][google.cloud.channel.v1.Offer] resource.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The entitlement doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: Entitlement or offer was not found.
- //
- // Return value:
- // The [Offer][google.cloud.channel.v1.Offer] resource.
- rpc LookupOffer(LookupOfferRequest) returns (Offer) {
- option (google.api.http) = {
- get: "/v1/{entitlement=accounts/*/customers/*/entitlements/*}:lookupOffer"
- };
- }
- // Lists the Products the reseller is authorized to sell.
- //
- // Possible error codes:
- //
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- rpc ListProducts(ListProductsRequest) returns (ListProductsResponse) {
- option (google.api.http) = {
- get: "/v1/products"
- };
- }
- // Lists the SKUs for a product the reseller is authorized to sell.
- //
- // Possible error codes:
- //
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- rpc ListSkus(ListSkusRequest) returns (ListSkusResponse) {
- option (google.api.http) = {
- get: "/v1/{parent=products/*}/skus"
- };
- }
- // Lists the Offers the reseller can sell.
- //
- // Possible error codes:
- //
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- rpc ListOffers(ListOffersRequest) returns (ListOffersResponse) {
- option (google.api.http) = {
- get: "/v1/{parent=accounts/*}/offers"
- };
- }
- // Lists the following:
- //
- // * SKUs that you can purchase for a customer
- // * SKUs that you can upgrade or downgrade for an entitlement.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- rpc ListPurchasableSkus(ListPurchasableSkusRequest) returns (ListPurchasableSkusResponse) {
- option (google.api.http) = {
- get: "/v1/{customer=accounts/*/customers/*}:listPurchasableSkus"
- };
- }
- // Lists the following:
- //
- // * Offers that you can purchase for a customer.
- // * Offers that you can change for an entitlement.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The customer doesn't belong to the reseller
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- rpc ListPurchasableOffers(ListPurchasableOffersRequest) returns (ListPurchasableOffersResponse) {
- option (google.api.http) = {
- get: "/v1/{customer=accounts/*/customers/*}:listPurchasableOffers"
- };
- }
- // Registers a service account with subscriber privileges on the Cloud Pub/Sub
- // topic for this Channel Services account. After you create a
- // subscriber, you get the events through [SubscriberEvent][google.cloud.channel.v1.SubscriberEvent]
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request and the
- // provided reseller account are different, or the impersonated user
- // is not a super admin.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The topic name with the registered service email address.
- rpc RegisterSubscriber(RegisterSubscriberRequest) returns (RegisterSubscriberResponse) {
- option (google.api.http) = {
- post: "/v1/{account=accounts/*}:register"
- body: "*"
- };
- }
- // Unregisters a service account with subscriber privileges on the Cloud
- // Pub/Sub topic created for this Channel Services account. If there are no
- // service accounts left with subscriber privileges, this deletes the topic.
- // You can call ListSubscribers to check for these accounts.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request and the
- // provided reseller account are different, or the impersonated user
- // is not a super admin.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: The topic resource doesn't exist.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // The topic name that unregistered the service email address.
- // Returns a success response if the service email address wasn't registered
- // with the topic.
- rpc UnregisterSubscriber(UnregisterSubscriberRequest) returns (UnregisterSubscriberResponse) {
- option (google.api.http) = {
- post: "/v1/{account=accounts/*}:unregister"
- body: "*"
- };
- }
- // Lists service accounts with subscriber privileges on the Cloud Pub/Sub
- // topic created for this Channel Services account.
- //
- // Possible error codes:
- //
- // * PERMISSION_DENIED: The reseller account making the request and the
- // provided reseller account are different, or the impersonated user
- // is not a super admin.
- // * INVALID_ARGUMENT: Required request parameters are missing or invalid.
- // * NOT_FOUND: The topic resource doesn't exist.
- // * INTERNAL: Any non-user error related to a technical issue in the
- // backend. Contact Cloud Channel support.
- // * UNKNOWN: Any non-user error related to a technical issue in the backend.
- // Contact Cloud Channel support.
- //
- // Return value:
- // A list of service email addresses.
- rpc ListSubscribers(ListSubscribersRequest) returns (ListSubscribersResponse) {
- option (google.api.http) = {
- get: "/v1/{account=accounts/*}:listSubscribers"
- };
- }
- }
- // Request message for [CloudChannelService.CheckCloudIdentityAccountsExist][google.cloud.channel.v1.CloudChannelService.CheckCloudIdentityAccountsExist].
- message CheckCloudIdentityAccountsExistRequest {
- // Required. The reseller account's resource name.
- // Parent uses the format: accounts/{account_id}
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. Domain to fetch for Cloud Identity account customer.
- string domain = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Entity representing a Cloud Identity account that may be
- // associated with a Channel Services API partner.
- message CloudIdentityCustomerAccount {
- // Returns true if a Cloud Identity account exists for a specific domain.
- bool existing = 1;
- // Returns true if the Cloud Identity account is associated with a customer
- // of the Channel Services partner.
- bool owned = 2;
- // If owned = true, the name of the customer that owns the Cloud Identity
- // account.
- // Customer_name uses the format:
- // accounts/{account_id}/customers/{customer_id}
- string customer_name = 3;
- // If existing = true, the Cloud Identity ID of the customer.
- string customer_cloud_identity_id = 4;
- }
- // Response message for
- // [CloudChannelService.CheckCloudIdentityAccountsExist][google.cloud.channel.v1.CloudChannelService.CheckCloudIdentityAccountsExist].
- message CheckCloudIdentityAccountsExistResponse {
- // The Cloud Identity accounts associated with the domain.
- repeated CloudIdentityCustomerAccount cloud_identity_accounts = 1;
- }
- // Request message for [CloudChannelService.ListCustomers][google.cloud.channel.v1.CloudChannelService.ListCustomers]
- message ListCustomersRequest {
- // Required. The resource name of the reseller account to list customers from.
- // Parent uses the format: accounts/{account_id}.
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. The maximum number of customers to return. The service may return fewer
- // than this value. If unspecified, returns at most 10 customers. The
- // maximum value is 50.
- int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token identifying a page of results other than the first page.
- // Obtained through
- // [ListCustomersResponse.next_page_token][google.cloud.channel.v1.ListCustomersResponse.next_page_token] of the previous
- // [CloudChannelService.ListCustomers][google.cloud.channel.v1.CloudChannelService.ListCustomers] call.
- string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
- // Optional. Filters applied to the [CloudChannelService.ListCustomers] results. See
- // https://cloud.google.com/channel/docs/concepts/google-cloud/filter-customers
- // for more information.
- string filter = 4 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for [CloudChannelService.ListCustomers][google.cloud.channel.v1.CloudChannelService.ListCustomers].
- message ListCustomersResponse {
- // The customers belonging to a reseller or distributor.
- repeated Customer customers = 1;
- // A token to retrieve the next page of results.
- // Pass to [ListCustomersRequest.page_token][google.cloud.channel.v1.ListCustomersRequest.page_token] to obtain that page.
- string next_page_token = 2;
- }
- // Request message for [CloudChannelService.GetCustomer][google.cloud.channel.v1.CloudChannelService.GetCustomer].
- message GetCustomerRequest {
- // Required. The resource name of the customer to retrieve.
- // Name uses the format: accounts/{account_id}/customers/{customer_id}
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- }
- // Request message for [CloudChannelService.CreateCustomer][google.cloud.channel.v1.CloudChannelService.CreateCustomer]
- message CreateCustomerRequest {
- // Required. The resource name of reseller account in which to create the customer.
- // Parent uses the format: accounts/{account_id}
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. The customer to create.
- Customer customer = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for [CloudChannelService.UpdateCustomer][google.cloud.channel.v1.CloudChannelService.UpdateCustomer].
- message UpdateCustomerRequest {
- // Required. New contents of the customer.
- Customer customer = 2 [(google.api.field_behavior) = REQUIRED];
- // The update mask that applies to the resource.
- // Optional.
- google.protobuf.FieldMask update_mask = 3;
- }
- // Request message for [CloudChannelService.DeleteCustomer][google.cloud.channel.v1.CloudChannelService.DeleteCustomer].
- message DeleteCustomerRequest {
- // Required. The resource name of the customer to delete.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- }
- // Request message for [CloudChannelService.ImportCustomer][google.cloud.channel.v1.CloudChannelService.ImportCustomer]
- message ImportCustomerRequest {
- // Specifies the identity of the transfer customer.
- // A customer's cloud_identity_id or domain is required to look up the
- // customer's Cloud Identity. For Team customers, only the cloud_identity_id
- // option is valid.
- oneof customer_identity {
- // Required. Customer domain.
- string domain = 2 [(google.api.field_behavior) = REQUIRED];
- // Required. Customer's Cloud Identity ID
- string cloud_identity_id = 3 [(google.api.field_behavior) = REQUIRED];
- }
- // Required. The resource name of the reseller's account.
- // Parent takes the format: accounts/{account_id} or
- // accounts/{account_id}/channelPartnerLinks/{channel_partner_id}
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. The super admin of the resold customer generates this token to
- // authorize a reseller to access their Cloud Identity and purchase
- // entitlements on their behalf. You can omit this token after authorization.
- // See https://support.google.com/a/answer/7643790 for more details.
- string auth_token = 4 [(google.api.field_behavior) = OPTIONAL];
- // Required. Choose to overwrite an existing customer if found.
- // This must be set to true if there is an existing customer with a
- // conflicting region code or domain.
- bool overwrite_if_exists = 5 [(google.api.field_behavior) = REQUIRED];
- // Optional. Cloud Identity ID of a channel partner who will be the direct reseller for
- // the customer's order. This field is required for 2-tier transfer scenarios
- // and can be provided via the request Parent binding as well.
- string channel_partner_id = 6 [(google.api.field_behavior) = OPTIONAL];
- // Optional. Specifies the customer that will receive imported Cloud Identity
- // information.
- // Format: accounts/{account_id}/customers/{customer_id}
- string customer = 7 [
- (google.api.field_behavior) = OPTIONAL,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- }
- // Request message for [CloudChannelService.ProvisionCloudIdentity][google.cloud.channel.v1.CloudChannelService.ProvisionCloudIdentity]
- message ProvisionCloudIdentityRequest {
- // Required. Resource name of the customer.
- // Format: accounts/{account_id}/customers/{customer_id}
- string customer = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- // CloudIdentity-specific customer information.
- CloudIdentityInfo cloud_identity_info = 2;
- // Admin user information.
- AdminUser user = 3;
- // Validate the request and preview the review, but do not post it.
- bool validate_only = 4;
- }
- // Request message for [CloudChannelService.ListEntitlements][google.cloud.channel.v1.CloudChannelService.ListEntitlements]
- message ListEntitlementsRequest {
- // Required. The resource name of the reseller's customer account to list
- // entitlements for.
- // Parent uses the format: accounts/{account_id}/customers/{customer_id}
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- // Optional. Requested page size. Server might return fewer results than requested.
- // If unspecified, return at most 50 entitlements.
- // The maximum value is 100; the server will coerce values above 100.
- int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token for a page of results other than the first page.
- // Obtained using
- // [ListEntitlementsResponse.next_page_token][google.cloud.channel.v1.ListEntitlementsResponse.next_page_token] of the previous
- // [CloudChannelService.ListEntitlements][google.cloud.channel.v1.CloudChannelService.ListEntitlements] call.
- string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for [CloudChannelService.ListEntitlements][google.cloud.channel.v1.CloudChannelService.ListEntitlements].
- message ListEntitlementsResponse {
- // The reseller customer's entitlements.
- repeated Entitlement entitlements = 1;
- // A token to list the next page of results.
- // Pass to [ListEntitlementsRequest.page_token][google.cloud.channel.v1.ListEntitlementsRequest.page_token] to obtain that page.
- string next_page_token = 2;
- }
- // Request message for [CloudChannelService.ListTransferableSkus][google.cloud.channel.v1.CloudChannelService.ListTransferableSkus]
- message ListTransferableSkusRequest {
- // Specifies the identity of transferred customer.
- // Either a cloud_identity_id of the customer or the customer name is
- // required to look up transferable SKUs.
- oneof transferred_customer_identity {
- // Customer's Cloud Identity ID
- string cloud_identity_id = 4;
- // A reseller is required to create a customer and use the resource name of
- // the created customer here.
- // Customer_name uses the format:
- // accounts/{account_id}/customers/{customer_id}
- string customer_name = 7;
- }
- // Required. The reseller account's resource name.
- // Parent uses the format: accounts/{account_id}
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // The requested page size. Server might return fewer results than requested.
- // If unspecified, returns at most 100 SKUs.
- // The maximum value is 1000; the server will coerce values above 1000.
- // Optional.
- int32 page_size = 2;
- // A token for a page of results other than the first page.
- // Obtained using
- // [ListTransferableSkusResponse.next_page_token][google.cloud.channel.v1.ListTransferableSkusResponse.next_page_token] of the previous
- // [CloudChannelService.ListTransferableSkus][google.cloud.channel.v1.CloudChannelService.ListTransferableSkus] call.
- // Optional.
- string page_token = 3;
- // Optional. The super admin of the resold customer generates this token to
- // authorize a reseller to access their Cloud Identity and purchase
- // entitlements on their behalf. You can omit this token after authorization.
- // See https://support.google.com/a/answer/7643790 for more details.
- string auth_token = 5 [(google.api.field_behavior) = OPTIONAL];
- // The BCP-47 language code. For example, "en-US". The
- // response will localize in the corresponding language code, if specified.
- // The default value is "en-US".
- // Optional.
- string language_code = 6;
- }
- // Response message for [CloudChannelService.ListTransferableSkus][google.cloud.channel.v1.CloudChannelService.ListTransferableSkus].
- message ListTransferableSkusResponse {
- // Information about existing SKUs for a customer that needs a transfer.
- repeated TransferableSku transferable_skus = 1;
- // A token to retrieve the next page of results.
- // Pass to [ListTransferableSkusRequest.page_token][google.cloud.channel.v1.ListTransferableSkusRequest.page_token] to obtain
- // that page.
- string next_page_token = 2;
- }
- // Request message for [CloudChannelService.ListTransferableOffers][google.cloud.channel.v1.CloudChannelService.ListTransferableOffers]
- message ListTransferableOffersRequest {
- // Specifies the identity of transferred customer.
- // Either a cloud_identity_id of the customer or the customer name is
- // required to look up transferrable Offers.
- oneof transferred_customer_identity {
- // Customer's Cloud Identity ID
- string cloud_identity_id = 4;
- // A reseller should create a customer and use the resource name of
- // that customer here.
- string customer_name = 5;
- }
- // Required. The resource name of the reseller's account.
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Requested page size. Server might return fewer results than requested.
- // If unspecified, returns at most 100 offers.
- // The maximum value is 1000; the server will coerce values above 1000.
- int32 page_size = 2;
- // A token for a page of results other than the first page.
- // Obtained using
- // [ListTransferableOffersResponse.next_page_token][google.cloud.channel.v1.ListTransferableOffersResponse.next_page_token] of the previous
- // [CloudChannelService.ListTransferableOffers][google.cloud.channel.v1.CloudChannelService.ListTransferableOffers] call.
- string page_token = 3;
- // Required. The SKU to look up Offers for.
- string sku = 6 [(google.api.field_behavior) = REQUIRED];
- // Optional. The BCP-47 language code. For example, "en-US". The
- // response will localize in the corresponding language code, if specified.
- // The default value is "en-US".
- string language_code = 7 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for [CloudChannelService.ListTransferableOffers][google.cloud.channel.v1.CloudChannelService.ListTransferableOffers].
- message ListTransferableOffersResponse {
- // Information about Offers for a customer that can be used for
- // transfer.
- repeated TransferableOffer transferable_offers = 1;
- // A token to retrieve the next page of results.
- // Pass to [ListTransferableOffersRequest.page_token][google.cloud.channel.v1.ListTransferableOffersRequest.page_token] to obtain
- // that page.
- string next_page_token = 2;
- }
- // TransferableOffer represents an Offer that can be used in Transfer.
- // Read-only.
- message TransferableOffer {
- // Offer with parameter constraints updated to allow the Transfer.
- Offer offer = 1;
- }
- // Request message for [CloudChannelService.GetEntitlement][google.cloud.channel.v1.CloudChannelService.GetEntitlement].
- message GetEntitlementRequest {
- // Required. The resource name of the entitlement to retrieve.
- // Name uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Entitlement"
- }
- ];
- }
- // Request message for [CloudChannelService.ListChannelPartnerLinks][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerLinks]
- message ListChannelPartnerLinksRequest {
- // Required. The resource name of the reseller account for listing channel partner
- // links.
- // Parent uses the format: accounts/{account_id}
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. Requested page size. Server might return fewer results than requested.
- // If unspecified, server will pick a default size (25).
- // The maximum value is 200; the server will coerce values above 200.
- int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token for a page of results other than the first page.
- // Obtained using
- // [ListChannelPartnerLinksResponse.next_page_token][google.cloud.channel.v1.ListChannelPartnerLinksResponse.next_page_token] of the previous
- // [CloudChannelService.ListChannelPartnerLinks][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerLinks] call.
- string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
- // Optional. The level of granularity the ChannelPartnerLink will display.
- ChannelPartnerLinkView view = 4 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for [CloudChannelService.ListChannelPartnerLinks][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerLinks].
- message ListChannelPartnerLinksResponse {
- // The Channel partner links for a reseller.
- repeated ChannelPartnerLink channel_partner_links = 1;
- // A token to retrieve the next page of results.
- // Pass to [ListChannelPartnerLinksRequest.page_token][google.cloud.channel.v1.ListChannelPartnerLinksRequest.page_token] to obtain that page.
- string next_page_token = 2;
- }
- // Request message for [CloudChannelService.GetChannelPartnerLink][google.cloud.channel.v1.CloudChannelService.GetChannelPartnerLink].
- message GetChannelPartnerLinkRequest {
- // Required. The resource name of the channel partner link to retrieve.
- // Name uses the format: accounts/{account_id}/channelPartnerLinks/{id}
- // where {id} is the Cloud Identity ID of the partner.
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. The level of granularity the ChannelPartnerLink will display.
- ChannelPartnerLinkView view = 2 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.CreateChannelPartnerLink][google.cloud.channel.v1.CloudChannelService.CreateChannelPartnerLink]
- message CreateChannelPartnerLinkRequest {
- // Required. Create a channel partner link for the provided reseller account's
- // resource name.
- // Parent uses the format: accounts/{account_id}
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. The channel partner link to create.
- // Either channel_partner_link.reseller_cloud_identity_id or domain can be
- // used to create a link.
- ChannelPartnerLink channel_partner_link = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for [CloudChannelService.UpdateChannelPartnerLink][google.cloud.channel.v1.CloudChannelService.UpdateChannelPartnerLink]
- message UpdateChannelPartnerLinkRequest {
- // Required. The resource name of the channel partner link to cancel.
- // Name uses the format: accounts/{account_id}/channelPartnerLinks/{id}
- // where {id} is the Cloud Identity ID of the partner.
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. The channel partner link to update. Only channel_partner_link.link_state
- // is allowed for updates.
- ChannelPartnerLink channel_partner_link = 2 [(google.api.field_behavior) = REQUIRED];
- // Required. The update mask that applies to the resource.
- // The only allowable value for an update mask is
- // channel_partner_link.link_state.
- google.protobuf.FieldMask update_mask = 3 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for [CloudChannelService.GetCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.GetCustomerRepricingConfig].
- message GetCustomerRepricingConfigRequest {
- // Required. The resource name of the CustomerRepricingConfig.
- // Format:
- // accounts/{account_id}/customers/{customer_id}/customerRepricingConfigs/{id}.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/CustomerRepricingConfig"
- }
- ];
- }
- // Request message for [CloudChannelService.ListCustomerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListCustomerRepricingConfigs].
- message ListCustomerRepricingConfigsRequest {
- // Required. The resource name of the customer.
- // Parent uses the format: accounts/{account_id}/customers/{customer_id}.
- // Supports accounts/{account_id}/customers/- to retrieve configs for all
- // customers.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- // Optional. The maximum number of repricing configs to return. The service may return
- // fewer than this value. If unspecified, returns a maximum of 50 rules. The
- // maximum value is 100; values above 100 will be coerced to 100.
- int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token identifying a page of results beyond the first page.
- // Obtained through
- // [ListCustomerRepricingConfigsResponse.next_page_token][google.cloud.channel.v1.ListCustomerRepricingConfigsResponse.next_page_token] of the previous
- // [CloudChannelService.ListCustomerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListCustomerRepricingConfigs] call.
- string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A filter for [CloudChannelService.ListCustomerRepricingConfigs]
- // results (customer only). You can use this filter when you support
- // a BatchGet-like query.
- // To use the filter, you must set `parent=accounts/{account_id}/customers/-`.
- //
- // Example: customer = accounts/account_id/customers/c1 OR
- // customer = accounts/account_id/customers/c2.
- string filter = 4 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for [CloudChannelService.ListCustomerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListCustomerRepricingConfigs].
- message ListCustomerRepricingConfigsResponse {
- // The repricing configs for this channel partner.
- repeated CustomerRepricingConfig customer_repricing_configs = 1;
- // A token to retrieve the next page of results.
- // Pass to [ListCustomerRepricingConfigsRequest.page_token][google.cloud.channel.v1.ListCustomerRepricingConfigsRequest.page_token] to obtain that
- // page.
- string next_page_token = 2;
- }
- // Request message for [CloudChannelService.CreateCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.CreateCustomerRepricingConfig].
- message CreateCustomerRepricingConfigRequest {
- // Required. The resource name of the customer that will receive this repricing config.
- // Parent uses the format: accounts/{account_id}/customers/{customer_id}
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- // Required. The CustomerRepricingConfig object to update.
- CustomerRepricingConfig customer_repricing_config = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for [CloudChannelService.UpdateCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.UpdateCustomerRepricingConfig].
- message UpdateCustomerRepricingConfigRequest {
- // Required. The CustomerRepricingConfig object to update.
- CustomerRepricingConfig customer_repricing_config = 1 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for [CloudChannelService.DeleteCustomerRepricingConfig][google.cloud.channel.v1.CloudChannelService.DeleteCustomerRepricingConfig].
- message DeleteCustomerRepricingConfigRequest {
- // Required. The resource name of the customer repricing config rule to delete.
- // Format:
- // accounts/{account_id}/customers/{customer_id}/customerRepricingConfigs/{id}.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/CustomerRepricingConfig"
- }
- ];
- }
- // Request message for [CloudChannelService.GetChannelPartnerRepricingConfig][google.cloud.channel.v1.CloudChannelService.GetChannelPartnerRepricingConfig]
- message GetChannelPartnerRepricingConfigRequest {
- // Required. The resource name of the ChannelPartnerRepricingConfig
- // Format:
- // accounts/{account_id}/channelPartnerLinks/{channel_partner_id}/channelPartnerRepricingConfigs/{id}.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/ChannelPartnerRepricingConfig"
- }
- ];
- }
- // Request message for
- // [CloudChannelService.ListChannelPartnerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerRepricingConfigs].
- message ListChannelPartnerRepricingConfigsRequest {
- // Required. The resource name of the account's [ChannelPartnerLink][google.cloud.channel.v1.ChannelPartnerLink].
- // Parent uses the format:
- // accounts/{account_id}/channelPartnerLinks/{channel_partner_id}.
- // Supports accounts/{account_id}/channelPartnerLinks/- to retrieve configs
- // for all channel partners.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/ChannelPartnerLink"
- }
- ];
- // Optional. The maximum number of repricing configs to return. The service may return
- // fewer than this value. If unspecified, returns a maximum of 50 rules. The
- // maximum value is 100; values above 100 will be coerced to 100.
- int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token identifying a page of results beyond the first page.
- // Obtained through
- // [ListChannelPartnerRepricingConfigsResponse.next_page_token][google.cloud.channel.v1.ListChannelPartnerRepricingConfigsResponse.next_page_token] of the
- // previous [CloudChannelService.ListChannelPartnerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerRepricingConfigs] call.
- string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A filter for [CloudChannelService.ListChannelPartnerRepricingConfigs]
- // results (channel_partner_link only). You can use this filter when you
- // support a BatchGet-like query.
- // To use the filter, you must set
- // `parent=accounts/{account_id}/channelPartnerLinks/-`.
- //
- // Example: `channel_partner_link =
- // accounts/account_id/channelPartnerLinks/c1` OR `channel_partner_link =
- // accounts/account_id/channelPartnerLinks/c2`.
- string filter = 4 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for
- // [CloudChannelService.ListChannelPartnerRepricingConfigs][google.cloud.channel.v1.CloudChannelService.ListChannelPartnerRepricingConfigs].
- message ListChannelPartnerRepricingConfigsResponse {
- // The repricing configs for this channel partner.
- repeated ChannelPartnerRepricingConfig channel_partner_repricing_configs = 1;
- // A token to retrieve the next page of results.
- // Pass to [ListChannelPartnerRepricingConfigsRequest.page_token][google.cloud.channel.v1.ListChannelPartnerRepricingConfigsRequest.page_token] to obtain
- // that page.
- string next_page_token = 2;
- }
- // Request message for
- // [CloudChannelService.CreateChannelPartnerRepricingConfig][google.cloud.channel.v1.CloudChannelService.CreateChannelPartnerRepricingConfig].
- message CreateChannelPartnerRepricingConfigRequest {
- // Required. The resource name of the ChannelPartner that will receive the repricing
- // config. Parent uses the format:
- // accounts/{account_id}/channelPartnerLinks/{channel_partner_id}
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/ChannelPartnerLink"
- }
- ];
- // Required. The ChannelPartnerRepricingConfig object to update.
- ChannelPartnerRepricingConfig channel_partner_repricing_config = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for
- // [CloudChannelService.UpdateChannelPartnerRepricingConfig][google.cloud.channel.v1.CloudChannelService.UpdateChannelPartnerRepricingConfig].
- message UpdateChannelPartnerRepricingConfigRequest {
- // Required. The ChannelPartnerRepricingConfig object to update.
- ChannelPartnerRepricingConfig channel_partner_repricing_config = 1 [(google.api.field_behavior) = REQUIRED];
- }
- // Request message for DeleteChannelPartnerRepricingConfig.
- message DeleteChannelPartnerRepricingConfigRequest {
- // Required. The resource name of the channel partner repricing config rule to delete.
- string name = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/ChannelPartnerRepricingConfig"
- }
- ];
- }
- // Request message for [CloudChannelService.CreateEntitlement][google.cloud.channel.v1.CloudChannelService.CreateEntitlement]
- message CreateEntitlementRequest {
- // Required. The resource name of the reseller's customer account in which to create the
- // entitlement.
- // Parent uses the format: accounts/{account_id}/customers/{customer_id}
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- // Required. The entitlement to create.
- Entitlement entitlement = 2 [(google.api.field_behavior) = REQUIRED];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 5 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.TransferEntitlements][google.cloud.channel.v1.CloudChannelService.TransferEntitlements].
- message TransferEntitlementsRequest {
- // Required. The resource name of the reseller's customer account that will receive
- // transferred entitlements.
- // Parent uses the format: accounts/{account_id}/customers/{customer_id}
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. The new entitlements to create or transfer.
- repeated Entitlement entitlements = 2 [(google.api.field_behavior) = REQUIRED];
- // The super admin of the resold customer generates this token to
- // authorize a reseller to access their Cloud Identity and purchase
- // entitlements on their behalf. You can omit this token after authorization.
- // See https://support.google.com/a/answer/7643790 for more details.
- string auth_token = 4;
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 6 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for [CloudChannelService.TransferEntitlements][google.cloud.channel.v1.CloudChannelService.TransferEntitlements].
- // This is put in the response field of google.longrunning.Operation.
- message TransferEntitlementsResponse {
- // The transferred entitlements.
- repeated Entitlement entitlements = 1;
- }
- // Request message for [CloudChannelService.TransferEntitlementsToGoogle][google.cloud.channel.v1.CloudChannelService.TransferEntitlementsToGoogle].
- message TransferEntitlementsToGoogleRequest {
- // Required. The resource name of the reseller's customer account where the entitlements
- // transfer from.
- // Parent uses the format: accounts/{account_id}/customers/{customer_id}
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. The entitlements to transfer to Google.
- repeated Entitlement entitlements = 2 [(google.api.field_behavior) = REQUIRED];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.ChangeParametersRequest][].
- message ChangeParametersRequest {
- // Required. The name of the entitlement to update.
- // Name uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. Entitlement parameters to update. You can only change editable parameters.
- //
- // To view the available Parameters for a request, refer to the
- // [Offer.parameter_definitions][google.cloud.channel.v1.Offer.parameter_definitions] from the desired offer.
- repeated Parameter parameters = 2 [(google.api.field_behavior) = REQUIRED];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 4 [(google.api.field_behavior) = OPTIONAL];
- // Optional. Purchase order ID provided by the reseller.
- string purchase_order_id = 5 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.ChangeRenewalSettings][google.cloud.channel.v1.CloudChannelService.ChangeRenewalSettings].
- message ChangeRenewalSettingsRequest {
- // Required. The name of the entitlement to update.
- // Name uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. New renewal settings.
- RenewalSettings renewal_settings = 4 [(google.api.field_behavior) = REQUIRED];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 5 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.ChangeOffer][google.cloud.channel.v1.CloudChannelService.ChangeOffer].
- message ChangeOfferRequest {
- // Required. The resource name of the entitlement to update.
- // Name uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. New Offer.
- // Format: accounts/{account_id}/offers/{offer_id}.
- string offer = 2 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Offer"
- }
- ];
- // Optional. Parameters needed to purchase the Offer. To view the available Parameters
- // refer to the [Offer.parameter_definitions][google.cloud.channel.v1.Offer.parameter_definitions] from the desired offer.
- repeated Parameter parameters = 3 [(google.api.field_behavior) = OPTIONAL];
- // Optional. Purchase order id provided by the reseller.
- string purchase_order_id = 5 [(google.api.field_behavior) = OPTIONAL];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 6 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.StartPaidService][google.cloud.channel.v1.CloudChannelService.StartPaidService].
- message StartPaidServiceRequest {
- // Required. The name of the entitlement to start a paid service for.
- // Name uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.CancelEntitlement][google.cloud.channel.v1.CloudChannelService.CancelEntitlement].
- message CancelEntitlementRequest {
- // Required. The resource name of the entitlement to cancel.
- // Name uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.SuspendEntitlement][google.cloud.channel.v1.CloudChannelService.SuspendEntitlement].
- message SuspendEntitlementRequest {
- // Required. The resource name of the entitlement to suspend.
- // Name uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for [CloudChannelService.ActivateEntitlement][google.cloud.channel.v1.CloudChannelService.ActivateEntitlement].
- message ActivateEntitlementRequest {
- // Required. The resource name of the entitlement to activate.
- // Name uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string name = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. You can specify an optional unique request ID, and if you need to retry
- // your request, the server will know to ignore the request if it's complete.
- //
- // For example, you make an initial request and the request times out. If you
- // make the request again with the same request ID, the server can check if
- // it received the original operation with the same request ID. If it did, it
- // will ignore the second request.
- //
- // The request ID must be a valid [UUID](https://tools.ietf.org/html/rfc4122)
- // with the exception that zero UUID is not supported
- // (`00000000-0000-0000-0000-000000000000`).
- string request_id = 3 [(google.api.field_behavior) = OPTIONAL];
- }
- // Request message for LookupOffer.
- message LookupOfferRequest {
- // Required. The resource name of the entitlement to retrieve the Offer.
- // Entitlement uses the format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string entitlement = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Entitlement"
- }
- ];
- }
- // Request message for ListProducts.
- message ListProductsRequest {
- // Required. The resource name of the reseller account.
- // Format: accounts/{account_id}.
- string account = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. Requested page size. Server might return fewer results than requested.
- // If unspecified, returns at most 100 Products.
- // The maximum value is 1000; the server will coerce values above 1000.
- int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token for a page of results other than the first page.
- string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
- // Optional. The BCP-47 language code. For example, "en-US". The
- // response will localize in the corresponding language code, if specified.
- // The default value is "en-US".
- string language_code = 4 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for ListProducts.
- message ListProductsResponse {
- // List of Products requested.
- repeated Product products = 1;
- // A token to retrieve the next page of results.
- string next_page_token = 2;
- }
- // Request message for ListSkus.
- message ListSkusRequest {
- // Required. The resource name of the Product to list SKUs for.
- // Parent uses the format: products/{product_id}.
- // Supports products/- to retrieve SKUs for all products.
- string parent = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Product"
- }
- ];
- // Required. Resource name of the reseller.
- // Format: accounts/{account_id}.
- string account = 2 [(google.api.field_behavior) = REQUIRED];
- // Optional. Requested page size. Server might return fewer results than requested.
- // If unspecified, returns at most 100 SKUs.
- // The maximum value is 1000; the server will coerce values above 1000.
- int32 page_size = 3 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token for a page of results other than the first page.
- // Optional.
- string page_token = 4 [(google.api.field_behavior) = OPTIONAL];
- // Optional. The BCP-47 language code. For example, "en-US". The
- // response will localize in the corresponding language code, if specified.
- // The default value is "en-US".
- string language_code = 5 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for ListSkus.
- message ListSkusResponse {
- // The list of SKUs requested.
- repeated Sku skus = 1;
- // A token to retrieve the next page of results.
- string next_page_token = 2;
- }
- // Request message for ListOffers.
- message ListOffersRequest {
- // Required. The resource name of the reseller account from which to list Offers.
- // Parent uses the format: accounts/{account_id}.
- string parent = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. Requested page size. Server might return fewer results than requested.
- // If unspecified, returns at most 500 Offers.
- // The maximum value is 1000; the server will coerce values above 1000.
- int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token for a page of results other than the first page.
- string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
- // Optional. The expression to filter results by name (name of
- // the Offer), sku.name (name of the SKU), or sku.product.name (name of the
- // Product).
- // Example 1: sku.product.name=products/p1 AND sku.name!=products/p1/skus/s1
- // Example 2: name=accounts/a1/offers/o1
- string filter = 4 [(google.api.field_behavior) = OPTIONAL];
- // Optional. The BCP-47 language code. For example, "en-US". The
- // response will localize in the corresponding language code, if specified.
- // The default value is "en-US".
- string language_code = 5 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for ListOffers.
- message ListOffersResponse {
- // The list of Offers requested.
- repeated Offer offers = 1;
- // A token to retrieve the next page of results.
- string next_page_token = 2;
- }
- // Request message for ListPurchasableSkus.
- message ListPurchasableSkusRequest {
- // List SKUs for a new entitlement. Make the purchase using
- // [CloudChannelService.CreateEntitlement][google.cloud.channel.v1.CloudChannelService.CreateEntitlement].
- message CreateEntitlementPurchase {
- // Required. List SKUs belonging to this Product.
- // Format: products/{product_id}.
- // Supports products/- to retrieve SKUs for all products.
- string product = 1 [(google.api.field_behavior) = REQUIRED];
- }
- // List SKUs for upgrading or downgrading an entitlement. Make the purchase
- // using [CloudChannelService.ChangeOffer][google.cloud.channel.v1.CloudChannelService.ChangeOffer].
- message ChangeOfferPurchase {
- // Change Type enum.
- enum ChangeType {
- // Not used.
- CHANGE_TYPE_UNSPECIFIED = 0;
- // SKU is an upgrade on the current entitlement.
- UPGRADE = 1;
- // SKU is a downgrade on the current entitlement.
- DOWNGRADE = 2;
- }
- // Required. Resource name of the entitlement.
- // Format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string entitlement = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. Change Type for the entitlement.
- ChangeType change_type = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Defines the intended purchase.
- oneof purchase_option {
- // List SKUs for CreateEntitlement purchase.
- CreateEntitlementPurchase create_entitlement_purchase = 2;
- // List SKUs for ChangeOffer purchase with a new SKU.
- ChangeOfferPurchase change_offer_purchase = 3;
- }
- // Required. The resource name of the customer to list SKUs for.
- // Format: accounts/{account_id}/customers/{customer_id}.
- string customer = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- // Optional. Requested page size. Server might return fewer results than requested.
- // If unspecified, returns at most 100 SKUs.
- // The maximum value is 1000; the server will coerce values above 1000.
- int32 page_size = 4 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token for a page of results other than the first page.
- string page_token = 5 [(google.api.field_behavior) = OPTIONAL];
- // Optional. The BCP-47 language code. For example, "en-US". The
- // response will localize in the corresponding language code, if specified.
- // The default value is "en-US".
- string language_code = 6 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for ListPurchasableSkus.
- message ListPurchasableSkusResponse {
- // The list of SKUs requested.
- repeated PurchasableSku purchasable_skus = 1;
- // A token to retrieve the next page of results.
- string next_page_token = 2;
- }
- // SKU that you can purchase. This is used in ListPurchasableSku API
- // response.
- message PurchasableSku {
- // SKU
- Sku sku = 1;
- }
- // Request message for ListPurchasableOffers.
- message ListPurchasableOffersRequest {
- // List Offers for CreateEntitlement purchase.
- message CreateEntitlementPurchase {
- // Required. SKU that the result should be restricted to.
- // Format: products/{product_id}/skus/{sku_id}.
- string sku = 1 [(google.api.field_behavior) = REQUIRED];
- }
- // List Offers for ChangeOffer purchase.
- message ChangeOfferPurchase {
- // Required. Resource name of the entitlement.
- // Format:
- // accounts/{account_id}/customers/{customer_id}/entitlements/{entitlement_id}
- string entitlement = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. Resource name of the new target SKU. Provide this SKU when
- // upgrading or downgrading an entitlement. Format:
- // products/{product_id}/skus/{sku_id}
- string new_sku = 2 [(google.api.field_behavior) = OPTIONAL];
- }
- // Defines the intended purchase.
- oneof purchase_option {
- // List Offers for CreateEntitlement purchase.
- CreateEntitlementPurchase create_entitlement_purchase = 2;
- // List Offers for ChangeOffer purchase.
- ChangeOfferPurchase change_offer_purchase = 3;
- }
- // Required. The resource name of the customer to list Offers for.
- // Format: accounts/{account_id}/customers/{customer_id}.
- string customer = 1 [
- (google.api.field_behavior) = REQUIRED,
- (google.api.resource_reference) = {
- type: "cloudchannel.googleapis.com/Customer"
- }
- ];
- // Optional. Requested page size. Server might return fewer results than requested.
- // If unspecified, returns at most 100 Offers.
- // The maximum value is 1000; the server will coerce values above 1000.
- int32 page_size = 4 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A token for a page of results other than the first page.
- string page_token = 5 [(google.api.field_behavior) = OPTIONAL];
- // Optional. The BCP-47 language code. For example, "en-US". The
- // response will localize in the corresponding language code, if specified.
- // The default value is "en-US".
- string language_code = 6 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response message for ListPurchasableOffers.
- message ListPurchasableOffersResponse {
- // The list of Offers requested.
- repeated PurchasableOffer purchasable_offers = 1;
- // A token to retrieve the next page of results.
- string next_page_token = 2;
- }
- // Offer that you can purchase for a customer. This is used in the
- // ListPurchasableOffer API response.
- message PurchasableOffer {
- // Offer.
- Offer offer = 1;
- }
- // Request Message for RegisterSubscriber.
- message RegisterSubscriberRequest {
- // Required. Resource name of the account.
- string account = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. Service account that provides subscriber access to the registered topic.
- string service_account = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Response Message for RegisterSubscriber.
- message RegisterSubscriberResponse {
- // Name of the topic the subscriber will listen to.
- string topic = 1;
- }
- // Request Message for UnregisterSubscriber.
- message UnregisterSubscriberRequest {
- // Required. Resource name of the account.
- string account = 1 [(google.api.field_behavior) = REQUIRED];
- // Required. Service account to unregister from subscriber access to the topic.
- string service_account = 2 [(google.api.field_behavior) = REQUIRED];
- }
- // Response Message for UnregisterSubscriber.
- message UnregisterSubscriberResponse {
- // Name of the topic the service account subscriber access was removed from.
- string topic = 1;
- }
- // Request Message for ListSubscribers.
- message ListSubscribersRequest {
- // Required. Resource name of the account.
- string account = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. The maximum number of service accounts to return. The service may return
- // fewer than this value.
- // If unspecified, returns at most 100 service accounts.
- // The maximum value is 1000; the server will coerce values above 1000.
- int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
- // Optional. A page token, received from a previous `ListSubscribers` call.
- // Provide this to retrieve the subsequent page.
- //
- // When paginating, all other parameters provided to `ListSubscribers` must
- // match the call that provided the page token.
- string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
- }
- // Response Message for ListSubscribers.
- message ListSubscribersResponse {
- // Name of the topic registered with the reseller.
- string topic = 1;
- // List of service accounts which have subscriber access to the topic.
- repeated string service_accounts = 2;
- // A token that can be sent as `page_token` to retrieve the next page.
- // If this field is omitted, there are no subsequent pages.
- string next_page_token = 3;
- }
|