Cloud Billing API . services . skus

Instance Methods

list(parent=None, pageSize=None, currencyCode=None, startTime=None, pageToken=None, endTime=None, x__xgafv=None)

Lists all publicly available SKUs for a given cloud service.

list_next(previous_request=*, previous_response=*)

Retrieves the next page of results.

Method Details

list(parent=None, pageSize=None, currencyCode=None, startTime=None, pageToken=None, endTime=None, x__xgafv=None)
Lists all publicly available SKUs for a given cloud service.

Args:
  parent: string, Required. The name of the service.
Example: "services/DA34-426B-A397" (required)
  pageSize: integer, Requested page size. Defaults to 5000.
  currencyCode: string, The ISO 4217 currency code for the pricing info in the response proto.
Will use the conversion rate as of start_time.
Optional. If not specified USD will be used.
  startTime: string, Optional inclusive start time of the time range for which the pricing
versions will be returned. Timestamps in the future are not allowed.
The time range has to be within a single calendar month in
America/Los_Angeles timezone. Time range as a whole is optional. If not
specified, the latest pricing will be returned (up to 12 hours old at
most).
  pageToken: string, A token identifying a page of results to return. This should be a
`next_page_token` value returned from a previous `ListSkus`
call. If unspecified, the first page of results is returned.
  endTime: string, Optional exclusive end time of the time range for which the pricing
versions will be returned. Timestamps in the future are not allowed.
The time range has to be within a single calendar month in
America/Los_Angeles timezone. Time range as a whole is optional. If not
specified, the latest pricing will be returned (up to 12 hours old at
most).
  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 `ListSkus`.
    "nextPageToken": "A String", # A token to retrieve the next page of results. To retrieve the next page,
        # call `ListSkus` again with the `page_token` field set to this
        # value. This field is empty if there are no more results to retrieve.
    "skus": [ # The list of public SKUs of the given service.
      { # Encapsulates a single SKU in Google Cloud Platform
        "category": { # Represents the category hierarchy of a SKU. # The category hierarchy of this SKU, purely for organizational purpose.
          "resourceGroup": "A String", # A group classification for related SKUs.
              # Example: "RAM", "GPU", "Prediction", "Ops", "GoogleEgress" etc.
          "resourceFamily": "A String", # The type of product the SKU refers to.
              # Example: "Compute", "Storage", "Network", "ApplicationServices" etc.
          "usageType": "A String", # Represents how the SKU is consumed.
              # Example: "OnDemand", "Preemptible", "Commit1Mo", "Commit1Yr" etc.
          "serviceDisplayName": "A String", # The display name of the service this SKU belongs to.
        },
        "serviceProviderName": "A String", # Identifies the service provider.
            # This is 'Google' for first party services in Google Cloud Platform.
        "description": "A String", # A human readable description of the SKU, has a maximum length of 256
            # characters.
        "skuId": "A String", # The identifier for the SKU.
            # Example: "AA95-CD31-42FE"
        "serviceRegions": [ # List of service regions this SKU is offered at.
            # Example: "asia-east1"
            # Service regions can be found at https://cloud.google.com/about/locations/
          "A String",
        ],
        "pricingInfo": [ # A timeline of pricing info for this SKU in chronological order.
          { # Represents the pricing information for a SKU at a single point of time.
            "effectiveTime": "A String", # The timestamp from which this pricing was effective within the requested
                # time range. This is guaranteed to be greater than or equal to the
                # start_time field in the request and less than the end_time field in the
                # request. If a time range was not specified in the request this field will
                # be equivalent to a time within the last 12 hours, indicating the latest
                # pricing info.
            "aggregationInfo": { # Represents the aggregation level and interval for pricing of a single SKU. # Aggregation Info. This can be left unspecified if the pricing expression
                # doesn't require aggregation.
              "aggregationLevel": "A String",
              "aggregationCount": 42, # The number of intervals to aggregate over.
                  # Example: If aggregation_level is "DAILY" and aggregation_count is 14,
                  # aggregation will be over 14 days.
              "aggregationInterval": "A String",
            },
            "currencyConversionRate": 3.14, # Conversion rate used for currency conversion, from USD to the currency
                # specified in the request. This includes any surcharge collected for billing
                # in non USD currency. If a currency is not specified in the request this
                # defaults to 1.0.
                # Example: USD * currency_conversion_rate = JPY
            "pricingExpression": { # Expresses a mathematical pricing formula. For Example:- # Expresses the pricing formula. See `PricingExpression` for an example.
                #
                # `usage_unit: GBy`
                # `tiered_rates:`
                #    `[start_usage_amount: 20, unit_price: $10]`
                #    `[start_usage_amount: 100, unit_price: $5]`
                #
                # The above expresses a pricing formula where the first 20GB is free, the
                # next 80GB is priced at $10 per GB followed by $5 per GB for additional
                # usage.
              "displayQuantity": 3.14, # The recommended quantity of units for displaying pricing info. When
                  # displaying pricing info it is recommended to display:
                  # (unit_price * display_quantity) per display_quantity usage_unit.
                  # This field does not affect the pricing formula and is for display purposes
                  # only.
                  # Example: If the unit_price is "0.0001 USD", the usage_unit is "GB" and
                  # the display_quantity is "1000" then the recommended way of displaying the
                  # pricing info is "0.10 USD per 1000 GB"
              "baseUnit": "A String", # The base unit for the SKU which is the unit used in usage exports.
                  # Example: "By"
              "usageUnit": "A String", # The short hand for unit of usage this pricing is specified in.
                  # Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte".
              "baseUnitConversionFactor": 3.14, # Conversion factor for converting from price per usage_unit to price per
                  # base_unit, and start_usage_amount to start_usage_amount in base_unit.
                  # unit_price / base_unit_conversion_factor = price per base_unit.
                  # start_usage_amount * base_unit_conversion_factor = start_usage_amount in
                  # base_unit.
              "usageUnitDescription": "A String", # The unit of usage in human readable form.
                  # Example: "gibi byte".
              "baseUnitDescription": "A String", # The base unit in human readable form.
                  # Example: "byte".
              "tieredRates": [ # The list of tiered rates for this pricing. The total cost is computed by
                  # applying each of the tiered rates on usage. This repeated list is sorted
                  # by ascending order of start_usage_amount.
                { # The price rate indicating starting usage and its corresponding price.
                  "unitPrice": { # Represents an amount of money with its currency type. # The price per unit of usage.
                      # Example: unit_price of amount $10 indicates that each unit will cost $10.
                    "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.
                    "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
                  },
                  "startUsageAmount": 3.14, # Usage is priced at this rate only after this amount.
                      # Example: start_usage_amount of 10 indicates that the usage will be priced
                      # at the unit_price after the first 10 usage_units.
                },
              ],
            },
            "summary": "A String", # An optional human readable summary of the pricing information, has a
                # maximum length of 256 characters.
          },
        ],
        "name": "A String", # The resource name for the SKU.
            # Example: "services/DA34-426B-A397/skus/AA95-CD31-42FE"
      },
    ],
  }
list_next(previous_request=*, previous_response=*)
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.