1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634
|
<html><body>
<style>
body, h1, h2, h3, div, span, p, pre, a {
margin: 0;
padding: 0;
border: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
font-size: 13px;
padding: 1em;
}
h1 {
font-size: 26px;
margin-bottom: 1em;
}
h2 {
font-size: 24px;
margin-bottom: 1em;
}
h3 {
font-size: 20px;
margin-bottom: 1em;
margin-top: 1em;
}
pre, code {
line-height: 1.5;
font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}
pre {
margin-top: 0.5em;
}
h1, h2, h3, p {
font-family: Arial, sans serif;
}
h1, h2, h3 {
border-bottom: solid #CCC 1px;
}
.toc_element {
margin-top: 0.5em;
}
.firstline {
margin-left: 2 em;
}
.method {
margin-top: 1em;
border: solid 1px #CCC;
padding: 1em;
background: #EEE;
}
.details {
font-weight: bold;
font-size: 14px;
}
</style>
<h1><a href="cloudchannel_v1.html">Cloud Channel API</a> . <a href="cloudchannel_v1.accounts.html">accounts</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="cloudchannel_v1.accounts.channelPartnerLinks.html">channelPartnerLinks()</a></code>
</p>
<p class="firstline">Returns the channelPartnerLinks Resource.</p>
<p class="toc_element">
<code><a href="cloudchannel_v1.accounts.customers.html">customers()</a></code>
</p>
<p class="firstline">Returns the customers Resource.</p>
<p class="toc_element">
<code><a href="cloudchannel_v1.accounts.offers.html">offers()</a></code>
</p>
<p class="firstline">Returns the offers Resource.</p>
<p class="toc_element">
<code><a href="cloudchannel_v1.accounts.reportJobs.html">reportJobs()</a></code>
</p>
<p class="firstline">Returns the reportJobs Resource.</p>
<p class="toc_element">
<code><a href="cloudchannel_v1.accounts.reports.html">reports()</a></code>
</p>
<p class="firstline">Returns the reports Resource.</p>
<p class="toc_element">
<code><a href="cloudchannel_v1.accounts.skuGroups.html">skuGroups()</a></code>
</p>
<p class="firstline">Returns the skuGroups Resource.</p>
<p class="toc_element">
<code><a href="#checkCloudIdentityAccountsExist">checkCloudIdentityAccountsExist(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">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 resources for the domain (may be empty) Note: in the v1alpha1 version of the API, a NOT_FOUND error returns if no CloudIdentityCustomerAccount resources match the domain.</p>
<p class="toc_element">
<code><a href="#close">close()</a></code></p>
<p class="firstline">Close httplib2 connections.</p>
<p class="toc_element">
<code><a href="#listSubscribers">listSubscribers(account, integrator=None, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
<p class="firstline">Lists service accounts with subscriber privileges on the Pub/Sub topic created for this Channel Services account or integrator. 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.</p>
<p class="toc_element">
<code><a href="#listSubscribers_next">listSubscribers_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
<code><a href="#listTransferableOffers">listTransferableOffers(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">List TransferableOffers 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. * The reseller is not authorized to transact on this Product. See https://support.google.com/channelservices/answer/9759265 * INVALID_ARGUMENT: Required request parameters are missing or invalid. Return value: List of TransferableOffer for the given customer and SKU.</p>
<p class="toc_element">
<code><a href="#listTransferableOffers_next">listTransferableOffers_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
<code><a href="#listTransferableSkus">listTransferableSkus(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">List TransferableSkus 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.</p>
<p class="toc_element">
<code><a href="#listTransferableSkus_next">listTransferableSkus_next()</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
<code><a href="#register">register(account, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Registers a service account with subscriber privileges on the Pub/Sub topic for this Channel Services account or integrator. After you create a subscriber, you get the events through 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.</p>
<p class="toc_element">
<code><a href="#unregister">unregister(account, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Unregisters a service account with subscriber privileges on the Pub/Sub topic created for this Channel Services account or integrator. 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.</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="checkCloudIdentityAccountsExist">checkCloudIdentityAccountsExist(parent, body=None, x__xgafv=None)</code>
<pre>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 resources for the domain (may be empty) Note: in the v1alpha1 version of the API, a NOT_FOUND error returns if no CloudIdentityCustomerAccount resources match the domain.
Args:
parent: string, Required. The reseller account's resource name. Parent uses the format: accounts/{account_id} (required)
body: object, The request body.
The object takes the form of:
{ # Request message for CloudChannelService.CheckCloudIdentityAccountsExist.
"domain": "A String", # Required. Domain to fetch for Cloud Identity account customers, including domain and team customers. For team customers, please use the domain for their emails.
"primaryAdminEmail": "A String", # Optional. Primary admin email to fetch for Cloud Identity account team customer.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response message for CloudChannelService.CheckCloudIdentityAccountsExist.
"cloudIdentityAccounts": [ # The Cloud Identity accounts associated with the domain.
{ # Entity representing a Cloud Identity account that may be associated with a Channel Services API partner.
"channelPartnerCloudIdentityId": "A String", # If existing = true, and is 2-tier customer, the channel partner of the customer.
"customerCloudIdentityId": "A String", # If existing = true, the Cloud Identity ID of the customer.
"customerName": "A String", # 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}
"customerType": "A String", # If existing = true, the type of the customer.
"existing": True or False, # Returns true if a Cloud Identity account exists for a specific domain.
"owned": True or False, # Returns true if the Cloud Identity account is associated with a customer of the Channel Services partner (with active subscriptions or purchase consents).
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="close">close()</code>
<pre>Close httplib2 connections.</pre>
</div>
<div class="method">
<code class="details" id="listSubscribers">listSubscribers(account, integrator=None, pageSize=None, pageToken=None, x__xgafv=None)</code>
<pre>Lists service accounts with subscriber privileges on the Pub/Sub topic created for this Channel Services account or integrator. 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.
Args:
account: string, Optional. Resource name of the account. Required if integrator is not provided. Otherwise, leave this field empty/unset. (required)
integrator: string, Optional. Resource name of the integrator. Required if account is not provided. Otherwise, leave this field empty/unset.
pageSize: integer, 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.
pageToken: string, 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.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response Message for ListSubscribers.
"nextPageToken": "A String", # A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
"serviceAccounts": [ # List of service accounts which have subscriber access to the topic.
"A String",
],
"topic": "A String", # Name of the topic registered with the reseller.
}</pre>
</div>
<div class="method">
<code class="details" id="listSubscribers_next">listSubscribers_next()</code>
<pre>Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call 'execute()' on to request the next
page. Returns None if there are no more items in the collection.
</pre>
</div>
<div class="method">
<code class="details" id="listTransferableOffers">listTransferableOffers(parent, body=None, x__xgafv=None)</code>
<pre>List TransferableOffers 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. * The reseller is not authorized to transact on this Product. See https://support.google.com/channelservices/answer/9759265 * INVALID_ARGUMENT: Required request parameters are missing or invalid. Return value: List of TransferableOffer for the given customer and SKU.
Args:
parent: string, Required. The resource name of the reseller's account. (required)
body: object, The request body.
The object takes the form of:
{ # Request message for CloudChannelService.ListTransferableOffers
"billingAccount": "A String", # Optional. The Billing Account to look up Offers for. Format: accounts/{account_id}/billingAccounts/{billing_account_id}. This field is only relevant for multi-currency accounts. It should be left empty for single currency accounts.
"cloudIdentityId": "A String", # Customer's Cloud Identity ID
"customerName": "A String", # A reseller should create a customer and use the resource name of that customer here.
"languageCode": "A String", # 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".
"pageSize": 42, # 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.
"pageToken": "A String", # A token for a page of results other than the first page. Obtained using ListTransferableOffersResponse.next_page_token of the previous CloudChannelService.ListTransferableOffers call.
"sku": "A String", # Required. The SKU to look up Offers for.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response message for CloudChannelService.ListTransferableOffers.
"nextPageToken": "A String", # A token to retrieve the next page of results. Pass to ListTransferableOffersRequest.page_token to obtain that page.
"transferableOffers": [ # Information about Offers for a customer that can be used for transfer.
{ # TransferableOffer represents an Offer that can be used in Transfer. Read-only.
"offer": { # Represents an offer made to resellers for purchase. An offer is associated with a Sku, has a plan for payment, a price, and defines the constraints for buying. # Offer with parameter constraints updated to allow the Transfer.
"constraints": { # Represents the constraints for buying the Offer. # Constraints on transacting the Offer.
"customerConstraints": { # Represents constraints required to purchase the Offer for a customer. # Represents constraints required to purchase the Offer for a customer.
"allowedCustomerTypes": [ # Allowed Customer Type.
"A String",
],
"allowedRegions": [ # Allowed geographical regions of the customer.
"A String",
],
"promotionalOrderTypes": [ # Allowed Promotional Order Type. Present for Promotional offers.
"A String",
],
},
},
"dealCode": "A String", # The deal code of the offer to get a special promotion or discount.
"endTime": "A String", # Output only. End of the Offer validity time.
"marketingInfo": { # Represents the marketing information for a Product, SKU or Offer. # Marketing information for the Offer.
"defaultLogo": { # Represents media information. # Default logo.
"content": "A String", # URL of the media.
"title": "A String", # Title of the media.
"type": "A String", # Type of the media.
},
"description": "A String", # Human readable description. Description can contain HTML.
"displayName": "A String", # Human readable name.
},
"name": "A String", # Resource Name of the Offer. Format: accounts/{account_id}/offers/{offer_id}
"parameterDefinitions": [ # Parameters required to use current Offer to purchase.
{ # Parameter's definition. Specifies what parameter is required to use the current Offer to purchase.
"allowedValues": [ # If not empty, parameter values must be drawn from this list. For example, [us-west1, us-west2, ...] Applicable to STRING parameter type.
{ # Data type and value of a parameter.
"boolValue": True or False, # Represents a boolean value.
"doubleValue": 3.14, # Represents a double value.
"int64Value": "A String", # Represents an int64 value.
"protoValue": { # Represents an 'Any' proto value.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
"stringValue": "A String", # Represents a string value.
},
],
"maxValue": { # Data type and value of a parameter. # Maximum value of the parameter, if applicable. Inclusive. For example, maximum seats when purchasing Google Workspace Business Standard. Applicable to INT64 and DOUBLE parameter types.
"boolValue": True or False, # Represents a boolean value.
"doubleValue": 3.14, # Represents a double value.
"int64Value": "A String", # Represents an int64 value.
"protoValue": { # Represents an 'Any' proto value.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
"stringValue": "A String", # Represents a string value.
},
"minValue": { # Data type and value of a parameter. # Minimal value of the parameter, if applicable. Inclusive. For example, minimal commitment when purchasing Anthos is 0.01. Applicable to INT64 and DOUBLE parameter types.
"boolValue": True or False, # Represents a boolean value.
"doubleValue": 3.14, # Represents a double value.
"int64Value": "A String", # Represents an int64 value.
"protoValue": { # Represents an 'Any' proto value.
"a_key": "", # Properties of the object. Contains field @type with type URL.
},
"stringValue": "A String", # Represents a string value.
},
"name": "A String", # Name of the parameter.
"optional": True or False, # If set to true, parameter is optional to purchase this Offer.
"parameterType": "A String", # Data type of the parameter. Minimal value, Maximum value and allowed values will use specified data type here.
},
],
"plan": { # The payment plan for the Offer. Describes how to make a payment. # Describes the payment plan for the Offer.
"billingAccount": "A String", # Reseller Billing account to charge after an offer transaction. Only present for Google Cloud offers.
"paymentCycle": { # Represents period in days/months/years. # Describes how frequently the reseller will be billed, such as once per month.
"duration": 42, # Total duration of Period Type defined.
"periodType": "A String", # Period Type.
},
"paymentPlan": "A String", # Describes how a reseller will be billed.
"paymentType": "A String", # Specifies when the payment needs to happen.
"trialPeriod": { # Represents period in days/months/years. # Present for Offers with a trial period. For trial-only Offers, a paid service needs to start before the trial period ends for continued service. For Regular Offers with a trial period, the regular pricing goes into effect when trial period ends, or if paid service is started before the end of the trial period.
"duration": 42, # Total duration of Period Type defined.
"periodType": "A String", # Period Type.
},
},
"priceByResources": [ # Price for each monetizable resource type.
{ # Represents price by resource type.
"price": { # Represents the price of the Offer. # Price of the Offer. Present if there are no price phases.
"basePrice": { # Represents an amount of money with its currency type. # Base price.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"discount": 3.14, # Discount percentage, represented as decimal. For example, a 20% discount will be represent as 0.2.
"discountComponents": [ # Breakdown of the discount into its components. This will be empty if there is no discount present.
{ # Represents a single component of the total discount applicable on a Price.
"discountAbsolute": { # Represents an amount of money with its currency type. # Fixed value discount.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"discountPercentage": 3.14, # Discount percentage, represented as decimal. For example, a 20% discount will be represented as 0.2.
"discountType": "A String", # Type of the discount.
},
],
"effectivePrice": { # Represents an amount of money with its currency type. # Effective Price after applying the discounts.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"externalPriceUri": "A String", # Link to external price list, such as link to Google Voice rate card.
"pricePeriod": { # Represents period in days/months/years. # The time period with respect to which base and effective prices are defined. Example: 1 month, 6 months, 1 year, etc.
"duration": 42, # Total duration of Period Type defined.
"periodType": "A String", # Period Type.
},
},
"pricePhases": [ # Specifies the price by time range.
{ # Specifies the price by the duration of months. For example, a 20% discount for the first six months, then a 10% discount starting on the seventh month.
"firstPeriod": 42, # Defines first period for the phase.
"lastPeriod": 42, # Defines first period for the phase.
"periodType": "A String", # Defines the phase period type.
"price": { # Represents the price of the Offer. # Price of the phase. Present if there are no price tiers.
"basePrice": { # Represents an amount of money with its currency type. # Base price.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"discount": 3.14, # Discount percentage, represented as decimal. For example, a 20% discount will be represent as 0.2.
"discountComponents": [ # Breakdown of the discount into its components. This will be empty if there is no discount present.
{ # Represents a single component of the total discount applicable on a Price.
"discountAbsolute": { # Represents an amount of money with its currency type. # Fixed value discount.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"discountPercentage": 3.14, # Discount percentage, represented as decimal. For example, a 20% discount will be represented as 0.2.
"discountType": "A String", # Type of the discount.
},
],
"effectivePrice": { # Represents an amount of money with its currency type. # Effective Price after applying the discounts.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"externalPriceUri": "A String", # Link to external price list, such as link to Google Voice rate card.
"pricePeriod": { # Represents period in days/months/years. # The time period with respect to which base and effective prices are defined. Example: 1 month, 6 months, 1 year, etc.
"duration": 42, # Total duration of Period Type defined.
"periodType": "A String", # Period Type.
},
},
"priceTiers": [ # Price by the resource tiers.
{ # Defines price at resource tier level. For example, an offer with following definition : * Tier 1: Provide 25% discount for all seats between 1 and 25. * Tier 2: Provide 10% discount for all seats between 26 and 100. * Tier 3: Provide flat 15% discount for all seats above 100. Each of these tiers is represented as a PriceTier.
"firstResource": 42, # First resource for which the tier price applies.
"lastResource": 42, # Last resource for which the tier price applies.
"price": { # Represents the price of the Offer. # Price of the tier.
"basePrice": { # Represents an amount of money with its currency type. # Base price.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"discount": 3.14, # Discount percentage, represented as decimal. For example, a 20% discount will be represent as 0.2.
"discountComponents": [ # Breakdown of the discount into its components. This will be empty if there is no discount present.
{ # Represents a single component of the total discount applicable on a Price.
"discountAbsolute": { # Represents an amount of money with its currency type. # Fixed value discount.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"discountPercentage": 3.14, # Discount percentage, represented as decimal. For example, a 20% discount will be represented as 0.2.
"discountType": "A String", # Type of the discount.
},
],
"effectivePrice": { # Represents an amount of money with its currency type. # Effective Price after applying the discounts.
"currencyCode": "A String", # The three-letter currency code defined in ISO 4217.
"nanos": 42, # Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If `units` is positive, `nanos` must be positive or zero. If `units` is zero, `nanos` can be positive, zero, or negative. If `units` is negative, `nanos` must be negative or zero. For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
"units": "A String", # The whole units of the amount. For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
},
"externalPriceUri": "A String", # Link to external price list, such as link to Google Voice rate card.
"pricePeriod": { # Represents period in days/months/years. # The time period with respect to which base and effective prices are defined. Example: 1 month, 6 months, 1 year, etc.
"duration": 42, # Total duration of Period Type defined.
"periodType": "A String", # Period Type.
},
},
},
],
},
],
"resourceType": "A String", # Resource Type. Example: SEAT
},
],
"sku": { # Represents a product's purchasable Stock Keeping Unit (SKU). SKUs represent the different variations of the product. For example, Google Workspace Business Standard and Google Workspace Business Plus are Google Workspace product SKUs. # SKU the offer is associated with.
"marketingInfo": { # Represents the marketing information for a Product, SKU or Offer. # Marketing information for the SKU.
"defaultLogo": { # Represents media information. # Default logo.
"content": "A String", # URL of the media.
"title": "A String", # Title of the media.
"type": "A String", # Type of the media.
},
"description": "A String", # Human readable description. Description can contain HTML.
"displayName": "A String", # Human readable name.
},
"name": "A String", # Resource Name of the SKU. Format: products/{product_id}/skus/{sku_id}
"product": { # A Product is the entity a customer uses when placing an order. For example, Google Workspace, Google Voice, etc. # Product the SKU is associated with.
"marketingInfo": { # Represents the marketing information for a Product, SKU or Offer. # Marketing information for the product.
"defaultLogo": { # Represents media information. # Default logo.
"content": "A String", # URL of the media.
"title": "A String", # Title of the media.
"type": "A String", # Type of the media.
},
"description": "A String", # Human readable description. Description can contain HTML.
"displayName": "A String", # Human readable name.
},
"name": "A String", # Resource Name of the Product. Format: products/{product_id}
},
},
"startTime": "A String", # Start of the Offer validity time.
},
"priceReferenceId": "A String", # Optional. Price reference ID for the offer. Only for offers that require additional price information. Used to guarantee that the pricing is consistent between quoting the offer and placing the order.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="listTransferableOffers_next">listTransferableOffers_next()</code>
<pre>Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call 'execute()' on to request the next
page. Returns None if there are no more items in the collection.
</pre>
</div>
<div class="method">
<code class="details" id="listTransferableSkus">listTransferableSkus(parent, body=None, x__xgafv=None)</code>
<pre>List TransferableSkus 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.
Args:
parent: string, Required. The reseller account's resource name. Parent uses the format: accounts/{account_id} (required)
body: object, The request body.
The object takes the form of:
{ # Request message for CloudChannelService.ListTransferableSkus
"authToken": "A String", # 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.
"cloudIdentityId": "A String", # Customer's Cloud Identity ID
"customerName": "A String", # 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}
"languageCode": "A String", # 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.
"pageSize": 42, # 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.
"pageToken": "A String", # A token for a page of results other than the first page. Obtained using ListTransferableSkusResponse.next_page_token of the previous CloudChannelService.ListTransferableSkus call. Optional.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response message for CloudChannelService.ListTransferableSkus.
"nextPageToken": "A String", # A token to retrieve the next page of results. Pass to ListTransferableSkusRequest.page_token to obtain that page.
"transferableSkus": [ # Information about existing SKUs for a customer that needs a transfer.
{ # TransferableSku represents information a reseller needs to view existing provisioned services for a customer that they do not own. Read-only.
"legacySku": { # Represents a product's purchasable Stock Keeping Unit (SKU). SKUs represent the different variations of the product. For example, Google Workspace Business Standard and Google Workspace Business Plus are Google Workspace product SKUs. # Optional. The customer to transfer has an entitlement with the populated legacy SKU.
"marketingInfo": { # Represents the marketing information for a Product, SKU or Offer. # Marketing information for the SKU.
"defaultLogo": { # Represents media information. # Default logo.
"content": "A String", # URL of the media.
"title": "A String", # Title of the media.
"type": "A String", # Type of the media.
},
"description": "A String", # Human readable description. Description can contain HTML.
"displayName": "A String", # Human readable name.
},
"name": "A String", # Resource Name of the SKU. Format: products/{product_id}/skus/{sku_id}
"product": { # A Product is the entity a customer uses when placing an order. For example, Google Workspace, Google Voice, etc. # Product the SKU is associated with.
"marketingInfo": { # Represents the marketing information for a Product, SKU or Offer. # Marketing information for the product.
"defaultLogo": { # Represents media information. # Default logo.
"content": "A String", # URL of the media.
"title": "A String", # Title of the media.
"type": "A String", # Type of the media.
},
"description": "A String", # Human readable description. Description can contain HTML.
"displayName": "A String", # Human readable name.
},
"name": "A String", # Resource Name of the Product. Format: products/{product_id}
},
},
"sku": { # Represents a product's purchasable Stock Keeping Unit (SKU). SKUs represent the different variations of the product. For example, Google Workspace Business Standard and Google Workspace Business Plus are Google Workspace product SKUs. # The SKU pertaining to the provisioning resource as specified in the Offer.
"marketingInfo": { # Represents the marketing information for a Product, SKU or Offer. # Marketing information for the SKU.
"defaultLogo": { # Represents media information. # Default logo.
"content": "A String", # URL of the media.
"title": "A String", # Title of the media.
"type": "A String", # Type of the media.
},
"description": "A String", # Human readable description. Description can contain HTML.
"displayName": "A String", # Human readable name.
},
"name": "A String", # Resource Name of the SKU. Format: products/{product_id}/skus/{sku_id}
"product": { # A Product is the entity a customer uses when placing an order. For example, Google Workspace, Google Voice, etc. # Product the SKU is associated with.
"marketingInfo": { # Represents the marketing information for a Product, SKU or Offer. # Marketing information for the product.
"defaultLogo": { # Represents media information. # Default logo.
"content": "A String", # URL of the media.
"title": "A String", # Title of the media.
"type": "A String", # Type of the media.
},
"description": "A String", # Human readable description. Description can contain HTML.
"displayName": "A String", # Human readable name.
},
"name": "A String", # Resource Name of the Product. Format: products/{product_id}
},
},
"transferEligibility": { # Specifies transfer eligibility of a SKU. # Describes the transfer eligibility of a SKU.
"description": "A String", # Localized description if reseller is not eligible to transfer the SKU.
"ineligibilityReason": "A String", # Specified the reason for ineligibility.
"isEligible": True or False, # Whether reseller is eligible to transfer the SKU.
},
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="listTransferableSkus_next">listTransferableSkus_next()</code>
<pre>Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call 'execute()' on to request the next
page. Returns None if there are no more items in the collection.
</pre>
</div>
<div class="method">
<code class="details" id="register">register(account, body=None, x__xgafv=None)</code>
<pre>Registers a service account with subscriber privileges on the Pub/Sub topic for this Channel Services account or integrator. After you create a subscriber, you get the events through 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.
Args:
account: string, Optional. Resource name of the account. Required if integrator is not provided. Otherwise, leave this field empty/unset. (required)
body: object, The request body.
The object takes the form of:
{ # Request Message for RegisterSubscriber.
"account": "A String", # Optional. Resource name of the account. Required if integrator is not provided. Otherwise, leave this field empty/unset.
"integrator": "A String", # Optional. Resource name of the integrator. Required if account is not provided. Otherwise, leave this field empty/unset.
"serviceAccount": "A String", # Required. Service account that provides subscriber access to the registered topic.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response Message for RegisterSubscriber.
"topic": "A String", # Name of the topic the subscriber will listen to.
}</pre>
</div>
<div class="method">
<code class="details" id="unregister">unregister(account, body=None, x__xgafv=None)</code>
<pre>Unregisters a service account with subscriber privileges on the Pub/Sub topic created for this Channel Services account or integrator. 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.
Args:
account: string, Optional. Resource name of the account. Required if integrator is not provided. Otherwise, leave this field empty/unset. (required)
body: object, The request body.
The object takes the form of:
{ # Request Message for UnregisterSubscriber.
"account": "A String", # Optional. Resource name of the account. Required if integrator is not provided. Otherwise, leave this field empty/unset.
"integrator": "A String", # Optional. Resource name of the integrator. Required if account is not provided. Otherwise, leave this field empty/unset.
"serviceAccount": "A String", # Required. Service account to unregister from subscriber access to the topic.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response Message for UnregisterSubscriber.
"topic": "A String", # Name of the topic the service account subscriber access was removed from.
}</pre>
</div>
</body></html>
|