Skip to content
  • Auto
  • Light
  • Dark
Talk to an expert

Retrieve Rate Schedule

Get the rate schedule for a contract
client.V1.Contracts.GetRateSchedule(ctx, params) (*DataarrayNextPagestringV1ContractGetRateScheduleResponse, error)
post/v1/contracts/getContractRateSchedule

Get the rate schedule for the rate card on a given contract.

Parameters
paramsContractIDfieldCustomerIDfieldLimitfieldNextPagefieldAtfieldSelectorsfieldV1ContractGetRateScheduleParams
Hide ParametersShow Parameters
ContractIDfield
param.Field[string]

Body param: ID of the contract to get the rate schedule for.

formatuuid
CustomerIDfield
param.Field[string]

Body param: ID of the customer for whose contract to get the rate schedule for.

formatuuid
Limitfield
optional
param.Field[int64]

Query param: Max number of results that should be returned

minimum1
maximum100
NextPagefield
optional
param.Field[string]

Query param: Cursor that indicates where the next page of results should start.

Atfield
optional
param.Field[Time]

Body param: optional timestamp which overlaps with the returned rate schedule segments. When not specified, the current timestamp will be used.

formatdate-time
Selectorsfield
optional

Body param: List of rate selectors, rates matching ANY of the selectors will be included in the response. Passing no selectors will result in all rates being returned.

Hide ParametersShow Parameters
BillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyMonthlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyQuarterlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyAnnualV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyWeeklyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequency
optional

Subscription rates matching the billing frequency will be included in the response.

Hide ParametersShow Parameters
V1ContractGetRateScheduleParamsSelectorsBillingFrequencyMonthlyconst
V1ContractGetRateScheduleParamsSelectorsBillingFrequencyMonthlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyQuarterlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyAnnualV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyWeeklyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequency
"MONTHLY"
V1ContractGetRateScheduleParamsSelectorsBillingFrequencyQuarterlyconst
V1ContractGetRateScheduleParamsSelectorsBillingFrequencyMonthlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyQuarterlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyAnnualV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyWeeklyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequency
"QUARTERLY"
V1ContractGetRateScheduleParamsSelectorsBillingFrequencyAnnualconst
V1ContractGetRateScheduleParamsSelectorsBillingFrequencyMonthlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyQuarterlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyAnnualV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyWeeklyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequency
"ANNUAL"
V1ContractGetRateScheduleParamsSelectorsBillingFrequencyWeeklyconst
V1ContractGetRateScheduleParamsSelectorsBillingFrequencyMonthlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyQuarterlyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyAnnualV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyWeeklyV1ContractGetRateScheduleParamsSelectorsBillingFrequencyV1ContractGetRateScheduleParamsSelectorsBillingFrequency
"WEEKLY"
PartialPricingGroupValuesmap
optional
map[string, string]

List of pricing group key value pairs, rates containing the matching key / value pairs will be included in the response.

PricingGroupValuesmap
optional
map[string, string]

List of pricing group key value pairs, rates matching all of the key / value pairs will be included in the response.

ProductIDstring
optional

Rates matching the product id will be included in the response.

formatuuid
ProductTagsarray
optional
[]string

List of product tags, rates matching any of the tags will be included in the response.

Returns
V1ContractGetRateScheduleResponsestruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
Entitledbool
ListRateRateTypeRateRateTypeCreditTypeCreditTypeDataCustomRatemapIsProratedboolPricefloat64PricingGroupValuesmapQuantityfloat64TiersarrayUseListPricesboolRate
ProductCustomFieldsmap
map[string, string]
ProductIDstring
formatuuid
ProductNamestring
ProductTagsarray
[]string
RateCardIDstring
formatuuid
StartingAtTime
formatdate-time
BillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyMonthlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyQuarterlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyAnnualV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyWeeklyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequency
optional
Hide ParametersShow Parameters
V1ContractGetRateScheduleResponseDataBillingFrequencyMonthlyconst
V1ContractGetRateScheduleResponseDataBillingFrequencyMonthlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyQuarterlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyAnnualV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyWeeklyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequency
"MONTHLY"
V1ContractGetRateScheduleResponseDataBillingFrequencyQuarterlyconst
V1ContractGetRateScheduleResponseDataBillingFrequencyMonthlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyQuarterlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyAnnualV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyWeeklyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequency
"QUARTERLY"
V1ContractGetRateScheduleResponseDataBillingFrequencyAnnualconst
V1ContractGetRateScheduleResponseDataBillingFrequencyMonthlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyQuarterlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyAnnualV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyWeeklyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequency
"ANNUAL"
V1ContractGetRateScheduleResponseDataBillingFrequencyWeeklyconst
V1ContractGetRateScheduleResponseDataBillingFrequencyMonthlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyQuarterlyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyAnnualV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequencyWeeklyV1ContractGetRateScheduleResponseDataBillingFrequencyV1ContractGetRateScheduleResponseDataBillingFrequency
"WEEKLY"

A distinct rate on the rate card. You can choose to use this rate rather than list rate when consuming a credit or commit.

Hide ParametersShow Parameters
RateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeFlatV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypePercentageV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeSubscriptionV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeTieredV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeCustomV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateType
Hide ParametersShow Parameters
V1ContractGetRateScheduleResponseDataCommitRateRateTypeFlatconst
V1ContractGetRateScheduleResponseDataCommitRateRateTypeFlatV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypePercentageV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeSubscriptionV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeTieredV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeCustomV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateType
"FLAT"
V1ContractGetRateScheduleResponseDataCommitRateRateTypePercentageconst
V1ContractGetRateScheduleResponseDataCommitRateRateTypeFlatV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypePercentageV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeSubscriptionV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeTieredV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeCustomV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateType
"PERCENTAGE"
V1ContractGetRateScheduleResponseDataCommitRateRateTypeSubscriptionconst
V1ContractGetRateScheduleResponseDataCommitRateRateTypeFlatV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypePercentageV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeSubscriptionV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeTieredV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeCustomV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateType
"SUBSCRIPTION"
V1ContractGetRateScheduleResponseDataCommitRateRateTypeTieredconst
V1ContractGetRateScheduleResponseDataCommitRateRateTypeFlatV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypePercentageV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeSubscriptionV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeTieredV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeCustomV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateType
"TIERED"
V1ContractGetRateScheduleResponseDataCommitRateRateTypeCustomconst
V1ContractGetRateScheduleResponseDataCommitRateRateTypeFlatV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypePercentageV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeSubscriptionV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeTieredV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateTypeCustomV1ContractGetRateScheduleResponseDataCommitRateRateTypeV1ContractGetRateScheduleResponseDataCommitRateRateType
"CUSTOM"
Pricefloat64
optional

Commit rate price. For FLAT rate_type, this must be >=0.

Tiersarray
optional
[]Pricefloat64Sizefloat64Tier

Only set for TIERED rate_type.

Hide ParametersShow Parameters
Pricefloat64
Sizefloat64
optional
EndingBeforeTime
optional
formatdate-time
OverrideRateRateTypeRateRateTypeCreditTypeCreditTypeDataCustomRatemapIsProratedboolPricefloat64PricingGroupValuesmapQuantityfloat64TiersarrayUseListPricesboolRate
optional
PricingGroupValuesmap
optional
map[string, string]
NextPagestring
optional
package main

import (
  "context"
  "fmt"
  "time"

  "github.com/Metronome-Industries/metronome-go"
  "github.com/Metronome-Industries/metronome-go/option"
)

func main() {
  client := metronome.NewClient(
    option.WithBearerToken("My Bearer Token"),
  )
  response, err := client.V1.Contracts.GetRateSchedule(context.TODO(), metronome.V1ContractGetRateScheduleParams{
    ContractID: metronome.F("d7abd0cd-4ae9-4db7-8676-e986a4ebd8dc"),
    CustomerID: metronome.F("13117714-3f05-48e5-a6e9-a66093f13b4d"),
    At: metronome.F(time.Now()),
    Selectors: metronome.F([]metronome.V1ContractGetRateScheduleParamsSelector{metronome.V1ContractGetRateScheduleParamsSelector{
      ProductID: metronome.F("d6300dbb-882e-4d2d-8dec-5125d16b65d0"),
      PartialPricingGroupValues: metronome.F(map[string]string{
      "region": "us-west-2",
      "cloud": "aws",
      }),
    }}),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", response.Data)
}
200 Example
{
  "data": [
    {
      "entitled": true,
      "list_rate": {
        "rate_type": "FLAT",
        "credit_type": {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "name": "name"
        },
        "custom_rate": {
          "foo": "bar"
        },
        "is_prorated": true,
        "price": 0,
        "pricing_group_values": {
          "foo": "string"
        },
        "quantity": 0,
        "tiers": [
          {
            "price": 0,
            "size": 0
          }
        ],
        "use_list_prices": true
      },
      "product_custom_fields": {
        "foo": "string"
      },
      "product_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "product_name": "product_name",
      "product_tags": [
        "string"
      ],
      "rate_card_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "starting_at": "2019-12-27T18:11:19.117Z",
      "billing_frequency": "MONTHLY",
      "commit_rate": {
        "rate_type": "FLAT",
        "price": 0,
        "tiers": [
          {
            "price": 0,
            "size": 0
          }
        ]
      },
      "ending_before": "2019-12-27T18:11:19.117Z",
      "override_rate": {
        "rate_type": "FLAT",
        "credit_type": {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "name": "name"
        },
        "custom_rate": {
          "foo": "bar"
        },
        "is_prorated": true,
        "price": 0,
        "pricing_group_values": {
          "foo": "string"
        },
        "quantity": 0,
        "tiers": [
          {
            "price": 0,
            "size": 0
          }
        ],
        "use_list_prices": true
      },
      "pricing_group_values": {
        "foo": "string"
      }
    }
  ],
  "next_page": "next_page"
}