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

List

List customer contracts (v2)
post/v2/contracts/list

List all contracts for a customer in chronological order. New clients should use this endpoint rather than the v1 endpoint.

Body Parameters
customer_idstring
formatuuid
covering_datestring
optional

Optional RFC 3339 timestamp. Only include contracts active on the provided date. This cannot be provided if starting_at filter is provided.

formatdate-time
include_archivedboolean
optional

Include archived contracts in the response.

include_balanceboolean
optional

Include the balance of credits and commits in the response. Setting this flag may cause the response to be slower.

include_ledgersboolean
optional

Include commit/credit ledgers in the response. Setting this flag may cause the response to be slower.

starting_atstring
optional

Optional RFC 3339 timestamp. Only include contracts that started on or after this date. This cannot be provided if covering_date filter is provided.

formatdate-time
Returns
dataarray of object
Hide ParametersShow Parameters
idstring
formatuuid
commitsarray of object
Hide ParametersShow Parameters
idstring
formatuuid
productobject
Hide ParametersShow Parameters
idstring
formatuuid
namestring
typeenum
"PREPAID" OR "POSTPAID"
Hide ParametersShow Parameters
"PREPAID"
"POSTPAID"
access_scheduleschedule_itemsarray of objectcredit_typeCreditTypeDataScheduleDuration
optional

The schedule that the customer will gain access to the credits purposed with this commit.

applicable_contract_idsarray of string
optional
applicable_product_idsarray of string
optional
applicable_product_tagsarray of string
optional
archived_atstring
optional
formatdate-time
balancenumber
optional

The current balance of the credit or commit. This balance reflects the amount of credit or commit that the customer has access to use at this moment - thus, expired and upcoming credit or commit segments contribute 0 to the balance. The balance will match the sum of all ledger entries with the exception of the case where the sum of negative manual ledger entries exceeds the positive amount remaining on the credit or commit - in that case, the balance will be 0. All manual ledger entries associated with active credit or commit segments are included in the balance, including future-dated manual ledger entries.

contractobject
optional
Hide ParametersShow Parameters
idstring
formatuuid
custom_fieldsmap
optional
descriptionstring
optional
hierarchy_configurationobject
optional

Optional configuration for commit hierarchy access control

Hide ParametersShow Parameters
child_accessunion
One of the following 3 object variants:
Hide ParametersShow Parameters
CommitHierarchyChildAccessAllobject
Hide ParametersShow Parameters
typeenum
"ALL"
Hide ParametersShow Parameters
"ALL"
CommitHierarchyChildAccessNoneobject
Hide ParametersShow Parameters
typeenum
"NONE"
Hide ParametersShow Parameters
"NONE"
CommitHierarchyChildAccessContractIDsobject
Hide ParametersShow Parameters
contract_idsarray of string
typeenum
"CONTRACT_IDS"
Hide ParametersShow Parameters
"CONTRACT_IDS"
invoice_contractobject
optional

The contract that this commit will be billed on.

Hide ParametersShow Parameters
idstring
formatuuid
invoice_schedulecredit_typeCreditTypeDatado_not_invoicebooleanschedule_itemsarray of objectSchedulePointInTime
optional

The schedule that the customer will be invoiced for this commit.

ledgerarray of union
optional

A list of ordered events that impact the balance of a commit. For example, an invoice deduction or a rollover.

Hide ParametersShow Parameters
PrepaidCommitSegmentStartLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"PREPAID_COMMIT_SEGMENT_START"
Hide ParametersShow Parameters
"PREPAID_COMMIT_SEGMENT_START"
PrepaidCommitAutomatedInvoiceDeductionLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
invoice_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"PREPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION"
Hide ParametersShow Parameters
"PREPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION"
contract_idstring
optional
formatuuid
PrepaidCommitRolloverLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
new_contract_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"PREPAID_COMMIT_ROLLOVER"
Hide ParametersShow Parameters
"PREPAID_COMMIT_ROLLOVER"
PrepaidCommitExpirationLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"PREPAID_COMMIT_EXPIRATION"
Hide ParametersShow Parameters
"PREPAID_COMMIT_EXPIRATION"
PrepaidCommitCanceledLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
invoice_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"PREPAID_COMMIT_CANCELED"
Hide ParametersShow Parameters
"PREPAID_COMMIT_CANCELED"
contract_idstring
optional
formatuuid
PrepaidCommitCreditedLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
invoice_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"PREPAID_COMMIT_CREDITED"
Hide ParametersShow Parameters
"PREPAID_COMMIT_CREDITED"
contract_idstring
optional
formatuuid
PrepaidCommitSeatBasedAdjustmentLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"PREPAID_COMMIT_SEAT_BASED_ADJUSTMENT"
Hide ParametersShow Parameters
"PREPAID_COMMIT_SEAT_BASED_ADJUSTMENT"
PostpaidCommitInitialBalanceLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
timestampstring
formatdate-time
typeenum
"POSTPAID_COMMIT_INITIAL_BALANCE"
Hide ParametersShow Parameters
"POSTPAID_COMMIT_INITIAL_BALANCE"
PostpaidCommitAutomatedInvoiceDeductionLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
invoice_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"POSTPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION"
Hide ParametersShow Parameters
"POSTPAID_COMMIT_AUTOMATED_INVOICE_DEDUCTION"
contract_idstring
optional
formatuuid
PostpaidCommitRolloverLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
new_contract_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"POSTPAID_COMMIT_ROLLOVER"
Hide ParametersShow Parameters
"POSTPAID_COMMIT_ROLLOVER"
PostpaidCommitTrueupLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
invoice_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"POSTPAID_COMMIT_TRUEUP"
Hide ParametersShow Parameters
"POSTPAID_COMMIT_TRUEUP"
contract_idstring
optional
formatuuid
PrepaidCommitManualLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
reasonstring
timestampstring
formatdate-time
typeenum
"PREPAID_COMMIT_MANUAL"
Hide ParametersShow Parameters
"PREPAID_COMMIT_MANUAL"
PostpaidCommitManualLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
reasonstring
timestampstring
formatdate-time
typeenum
"POSTPAID_COMMIT_MANUAL"
Hide ParametersShow Parameters
"POSTPAID_COMMIT_MANUAL"
PostpaidCommitExpirationLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
timestampstring
formatdate-time
typeenum
"POSTPAID_COMMIT_EXPIRATION"
Hide ParametersShow Parameters
"POSTPAID_COMMIT_EXPIRATION"
namestring
optional
netsuite_sales_order_idstring
optional

This field's availability is dependent on your client's configuration.

prioritynumber
optional

If multiple credits or commits are applicable, the one with the lower priority will apply first.

rate_typeenum
optional
"COMMIT_RATE" OR "LIST_RATE"
Hide ParametersShow Parameters
"COMMIT_RATE"
"LIST_RATE"
rolled_over_fromobject
optional
Hide ParametersShow Parameters
commit_idstring
formatuuid
contract_idstring
formatuuid
rollover_fractionnumber
optional
salesforce_opportunity_idstring
optional

This field's availability is dependent on your client's configuration.

specifiersarray of object
optional

List of filters that determine what kind of customer usage draws down a commit or credit. A customer's usage needs to meet the condition of at least one of the specifiers to contribute to a commit's or credit's drawdown.

Hide ParametersShow Parameters
presentation_group_valuesmap
optional
pricing_group_valuesmap
optional
product_idstring
optional

If provided, the specifier will only apply to the product with the specified ID.

formatuuid
product_tagsarray of string
optional

If provided, the specifier will only apply to products with all the specified tags.

created_atstring
formatdate-time
created_bystring
customer_idstring
formatuuid
overridesarray of object
Hide ParametersShow Parameters
idstring
formatuuid
starting_atstring
formatdate-time
applicable_product_tagsarray of string
optional
ending_beforestring
optional
formatdate-time
entitledboolean
optional
is_commit_specificboolean
optional
multipliernumber
optional
override_specifiersarray of object
optional
Hide ParametersShow Parameters
billing_frequencyenum
optional
"MONTHLY" OR "QUARTERLY" OR "ANNUAL" OR "WEEKLY"
Hide ParametersShow Parameters
"MONTHLY"
"QUARTERLY"
"ANNUAL"
"WEEKLY"
commit_idsarray of string
optional
presentation_group_valuesmap
optional
pricing_group_valuesmap
optional
product_idstring
optional
formatuuid
product_tagsarray of string
optional
recurring_commit_idsarray of string
optional
recurring_credit_idsarray of string
optional
override_tiersarray of object
optional
Hide ParametersShow Parameters
multipliernumber
sizenumber
optional
overwrite_rateobject
optional
Hide ParametersShow Parameters
rate_typeenum
"FLAT" OR "PERCENTAGE" OR "SUBSCRIPTION" OR 2 more
Hide ParametersShow Parameters
"FLAT"
"PERCENTAGE"
"SUBSCRIPTION"
"TIERED"
"CUSTOM"
credit_typeidstringnamestringCreditTypeData
optional
custom_ratemap
optional

Only set for CUSTOM rate_type. This field is interpreted by custom rate processors.

is_proratedboolean
optional

Default proration configuration. Only valid for SUBSCRIPTION rate_type. Must be set to true.

pricenumber
optional

Default price. For FLAT rate_type, this must be >=0. For PERCENTAGE rate_type, this is a decimal fraction, e.g. use 0.1 for 10%; this must be >=0 and <=1.

quantitynumber
optional

Default quantity. For SUBSCRIPTION rate_type, this must be >=0.

tiersarray of pricenumbersizenumberTier
optional

Only set for TIERED rate_type.

prioritynumber
optional
productobject
optional
Hide ParametersShow Parameters
idstring
formatuuid
namestring
targetenum
optional
"COMMIT_RATE" OR "LIST_RATE"
Hide ParametersShow Parameters
"COMMIT_RATE"
"LIST_RATE"
typeenum
optional
"OVERWRITE" OR "MULTIPLIER" OR "TIERED"
Hide ParametersShow Parameters
"OVERWRITE"
"MULTIPLIER"
"TIERED"
scheduled_chargesarray of idstringproductobjectscheduleSchedulePointInTimearchived_atstringcustom_fieldsmapnamestringnetsuite_sales_order_idstringScheduledCharge
starting_atstring
formatdate-time
transitionsarray of object
Hide ParametersShow Parameters
from_contract_idstring
formatuuid
to_contract_idstring
formatuuid
typeenum
"SUPERSEDE" OR "RENEWAL"
Hide ParametersShow Parameters
"SUPERSEDE"
"RENEWAL"
usage_filterarray of object
Hide ParametersShow Parameters
group_keystring
group_valuesarray of string
starting_atstring

This will match contract starting_at value if usage filter is active from the beginning of the contract.

formatdate-time
ending_beforestring
optional

This will match contract ending_before value if usage filter is active until the end of the contract. It will be undefined if the contract is open-ended.

formatdate-time
usage_statement_scheduleobject
Hide ParametersShow Parameters
billing_anchor_datestring

Contract usage statements follow a selected cadence based on this date.

formatdate-time
frequencyenum
"MONTHLY" OR "QUARTERLY" OR "ANNUAL" OR "WEEKLY"
Hide ParametersShow Parameters
"MONTHLY"
"QUARTERLY"
"ANNUAL"
"WEEKLY"
archived_atstring
optional
formatdate-time
creditsarray of object
optional
Hide ParametersShow Parameters
idstring
formatuuid
productobject
Hide ParametersShow Parameters
idstring
formatuuid
namestring
typeenum
"CREDIT"
Hide ParametersShow Parameters
"CREDIT"
access_scheduleschedule_itemsarray of objectcredit_typeCreditTypeDataScheduleDuration
optional

The schedule that the customer will gain access to the credits.

applicable_contract_idsarray of string
optional
applicable_product_idsarray of string
optional
applicable_product_tagsarray of string
optional
balancenumber
optional

The current balance of the credit or commit. This balance reflects the amount of credit or commit that the customer has access to use at this moment - thus, expired and upcoming credit or commit segments contribute 0 to the balance. The balance will match the sum of all ledger entries with the exception of the case where the sum of negative manual ledger entries exceeds the positive amount remaining on the credit or commit - in that case, the balance will be 0. All manual ledger entries associated with active credit or commit segments are included in the balance, including future-dated manual ledger entries.

contractobject
optional
Hide ParametersShow Parameters
idstring
formatuuid
custom_fieldsmap
optional
descriptionstring
optional
hierarchy_configurationobject
optional

Optional configuration for credit hierarchy access control

Hide ParametersShow Parameters
child_accessunion
One of the following 3 object variants:
Hide ParametersShow Parameters
CommitHierarchyChildAccessAllobject
Hide ParametersShow Parameters
typeenum
"ALL"
Hide ParametersShow Parameters
"ALL"
CommitHierarchyChildAccessNoneobject
Hide ParametersShow Parameters
typeenum
"NONE"
Hide ParametersShow Parameters
"NONE"
CommitHierarchyChildAccessContractIDsobject
Hide ParametersShow Parameters
contract_idsarray of string
typeenum
"CONTRACT_IDS"
Hide ParametersShow Parameters
"CONTRACT_IDS"
ledgerarray of union
optional

A list of ordered events that impact the balance of a credit. For example, an invoice deduction or an expiration.

Hide ParametersShow Parameters
CreditSegmentStartLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"CREDIT_SEGMENT_START"
Hide ParametersShow Parameters
"CREDIT_SEGMENT_START"
CreditAutomatedInvoiceDeductionLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
invoice_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"CREDIT_AUTOMATED_INVOICE_DEDUCTION"
Hide ParametersShow Parameters
"CREDIT_AUTOMATED_INVOICE_DEDUCTION"
contract_idstring
optional
formatuuid
CreditExpirationLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"CREDIT_EXPIRATION"
Hide ParametersShow Parameters
"CREDIT_EXPIRATION"
CreditCanceledLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
invoice_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"CREDIT_CANCELED"
Hide ParametersShow Parameters
"CREDIT_CANCELED"
contract_idstring
optional
formatuuid
CreditCreditedLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
invoice_idstring
formatuuid
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"CREDIT_CREDITED"
Hide ParametersShow Parameters
"CREDIT_CREDITED"
contract_idstring
optional
formatuuid
CreditManualLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
reasonstring
timestampstring
formatdate-time
typeenum
"CREDIT_MANUAL"
Hide ParametersShow Parameters
"CREDIT_MANUAL"
CreditSeatBasedAdjustmentLedgerEntryobject
Hide ParametersShow Parameters
amountnumber
segment_idstring
formatuuid
timestampstring
formatdate-time
typeenum
"CREDIT_SEAT_BASED_ADJUSTMENT"
Hide ParametersShow Parameters
"CREDIT_SEAT_BASED_ADJUSTMENT"
namestring
optional
netsuite_sales_order_idstring
optional

This field's availability is dependent on your client's configuration.

prioritynumber
optional

If multiple credits or commits are applicable, the one with the lower priority will apply first.

salesforce_opportunity_idstring
optional

This field's availability is dependent on your client's configuration.

specifiersarray of object
optional

List of filters that determine what kind of customer usage draws down a commit or credit. A customer's usage needs to meet the condition of at least one of the specifiers to contribute to a commit's or credit's drawdown.

Hide ParametersShow Parameters
presentation_group_valuesmap
optional
pricing_group_valuesmap
optional
product_idstring
optional

If provided, the specifier will only apply to the product with the specified ID.

formatuuid
product_tagsarray of string
optional

If provided, the specifier will only apply to products with all the specified tags.

custom_fieldsmap
optional
customer_billing_provider_configurationobject
optional

This field's availability is dependent on your client's configuration.

Hide ParametersShow Parameters
idstring

ID of Customer's billing provider configuration.

formatuuid
billing_providerenum
"aws_marketplace" OR "stripe" OR "netsuite" OR 5 more
Hide ParametersShow Parameters
"aws_marketplace"
"stripe"
"netsuite"
"custom"
"azure_marketplace"
"quickbooks_online"
"workday"
"gcp_marketplace"
delivery_methodenum
"direct_to_billing_provider" OR "aws_sqs" OR "tackle" OR "aws_sns"
Hide ParametersShow Parameters
"direct_to_billing_provider"
"aws_sqs"
"tackle"
"aws_sns"
discountsarray of idstringproductobjectscheduleSchedulePointInTimecustom_fieldsmapnamestringnetsuite_sales_order_idstringDiscount
optional

This field's availability is dependent on your client's configuration.

ending_beforestring
optional
formatdate-time
has_moreobject
optional

Indicates whether there are more items than the limit for this endpoint. Use the respective list endpoints to get the full lists.

Hide ParametersShow Parameters
commitsboolean

Whether there are more commits on this contract than the limit for this endpoint. Use the /contracts/customerCommits/list endpoint to get the full list of commits.

creditsboolean

Whether there are more credits on this contract than the limit for this endpoint. Use the /contracts/customerCredits/list endpoint to get the full list of credits.

hierarchy_configurationunion
optional

Either a parent configuration with a list of children or a child configuration with a single parent.

One of the following 2 object variants:
Hide ParametersShow Parameters
ParentHierarchyConfigurationobject
Hide ParametersShow Parameters
childrenarray of object

List of contracts that belong to this parent.

Hide ParametersShow Parameters
contract_idstring
formatuuid
customer_idstring
formatuuid
ChildHierarchyConfigurationobject
Hide ParametersShow Parameters
parentobject

The single parent contract/customer for this child.

Hide ParametersShow Parameters
contract_idstring
formatuuid
customer_idstring
formatuuid
multiplier_override_prioritizationenum
optional
"LOWEST_MULTIPLIER" OR "EXPLICIT"

Defaults to LOWEST_MULTIPLIER, which applies the greatest discount to list prices automatically. EXPLICIT prioritization requires specifying priorities for each multiplier; the one with the lowest priority value will be prioritized first.

Hide ParametersShow Parameters
"LOWEST_MULTIPLIER"
"EXPLICIT"
namestring
optional
net_payment_terms_daysnumber
optional
netsuite_sales_order_idstring
optional

This field's availability is dependent on your client's configuration.

prepaid_balance_threshold_configurationobject
optional
Hide ParametersShow Parameters
commitobject
Hide ParametersShow Parameters
product_idstring

The commit product that will be used to generate the line item for commit payment.

applicable_product_idsarray of string
optional

Which products the threshold commit applies to. If applicable_product_ids, applicable_product_tags or specifiers are not provided, the commit applies to all products.

applicable_product_tagsarray of string
optional

Which tags the threshold commit applies to. If applicable_product_ids, applicable_product_tags or specifiers are not provided, the commit applies to all products.

descriptionstring
optional
namestring
optional

Specify the name of the line item for the threshold charge. If left blank, it will default to the commit product name.

specifiersarray of object
optional

List of filters that determine what kind of customer usage draws down a commit or credit. A customer's usage needs to meet the condition of at least one of the specifiers to contribute to a commit's or credit's drawdown. This field cannot be used together with applicable_product_ids or applicable_product_tags. Instead, to target usage by product or product tag, pass those values in the body of specifiers.

Hide ParametersShow Parameters
presentation_group_valuesmap
optional
pricing_group_valuesmap
optional
product_idstring
optional

If provided, the specifier will only apply to the product with the specified ID.

formatuuid
product_tagsarray of string
optional

If provided, the specifier will only apply to products with all the specified tags.

is_enabledboolean

When set to false, the contract will not be evaluated against the threshold_amount. Toggling to true will result an immediate evaluation, regardless of prior state.

payment_gate_configobject
Hide ParametersShow Parameters
payment_gate_typeenum
"NONE" OR "STRIPE" OR "EXTERNAL"

Gate access to the commit balance based on successful collection of payment. Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to facilitate payment using your own payment integration. Select NONE if you do not wish to payment gate the commit balance.

Hide ParametersShow Parameters
"NONE"
"STRIPE"
"EXTERNAL"
precalculated_tax_configobject
optional

Only applicable if using PRECALCULATED as your tax type.

Hide ParametersShow Parameters
tax_amountnumber

Amount of tax to be applied. This should be in the same currency and denomination as the commit's invoice schedule

tax_namestring
optional

Name of the tax to be applied. This may be used in an invoice line item description.

stripe_configobject
optional

Only applicable if using STRIPE as your payment gateway type.

Hide ParametersShow Parameters
payment_typeenum
"INVOICE" OR "PAYMENT_INTENT"

If left blank, will default to INVOICE

Hide ParametersShow Parameters
"INVOICE"
"PAYMENT_INTENT"
invoice_metadatamap
optional

Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as your payment type.

tax_typeenum
optional
"NONE" OR "STRIPE" OR "ANROK" OR "PRECALCULATED"

Stripe tax is only supported for Stripe payment gateway. Select NONE if you do not wish Metronome to calculate tax on your behalf. Leaving this field blank will default to NONE.

Hide ParametersShow Parameters
"NONE"
"STRIPE"
"ANROK"
"PRECALCULATED"
recharge_to_amountnumber

Specify the amount the balance should be recharged to.

threshold_amountnumber

Specify the threshold amount for the contract. Each time the contract's balance lowers to this amount, a threshold charge will be initiated.

custom_credit_type_idstring
optional

If provided, the threshold, recharge-to amount, and the resulting threshold commit amount will be in terms of this credit type instead of the fiat currency.

formatuuid
prioritynumber
optional

Priority of the contract.

professional_servicesarray of idstringmax_amountnumberproduct_idstringquantitynumberunit_pricenumbercustom_fieldsmapdescriptionstringnetsuite_sales_order_idstringProService
optional

This field's availability is dependent on your client's configuration.

rate_card_idstring
optional
formatuuid
recurring_commitsarray of object
optional
Hide ParametersShow Parameters
idstring
formatuuid
access_amountobject

The amount of commit to grant.

Hide ParametersShow Parameters
credit_type_idstring
formatuuid
unit_pricenumber
quantitynumber
optional
commit_durationobject

The amount of time the created commits will be valid for

Hide ParametersShow Parameters
valuenumber
unitenum
optional
"PERIODS"
Hide ParametersShow Parameters
"PERIODS"
prioritynumber

Will be passed down to the individual commits

productobject
Hide ParametersShow Parameters
idstring
formatuuid
namestring
rate_typeenum
"COMMIT_RATE" OR "LIST_RATE"

Whether the created commits will use the commit rate or list rate

Hide ParametersShow Parameters
"COMMIT_RATE"
"LIST_RATE"
starting_atstring

Determines the start time for the first commit

formatdate-time
applicable_product_idsarray of string
optional

Will be passed down to the individual commits

applicable_product_tagsarray of string
optional

Will be passed down to the individual commits

contractobject
optional
Hide ParametersShow Parameters
idstring
formatuuid
descriptionstring
optional

Will be passed down to the individual commits

ending_beforestring
optional

Determines when the contract will stop creating recurring commits. Optional

formatdate-time
hierarchy_configurationobject
optional

Optional configuration for recurring credit hierarchy access control

Hide ParametersShow Parameters
child_accessunion
One of the following 3 object variants:
Hide ParametersShow Parameters
CommitHierarchyChildAccessAllobject
Hide ParametersShow Parameters
typeenum
"ALL"
Hide ParametersShow Parameters
"ALL"
CommitHierarchyChildAccessNoneobject
Hide ParametersShow Parameters
typeenum
"NONE"
Hide ParametersShow Parameters
"NONE"
CommitHierarchyChildAccessContractIDsobject
Hide ParametersShow Parameters
contract_idsarray of string
typeenum
"CONTRACT_IDS"
Hide ParametersShow Parameters
"CONTRACT_IDS"
invoice_amountobject
optional

The amount the customer should be billed for the commit. Not required.

Hide ParametersShow Parameters
credit_type_idstring
formatuuid
quantitynumber
unit_pricenumber
namestring
optional

Displayed on invoices. Will be passed through to the individual commits

netsuite_sales_order_idstring
optional

Will be passed down to the individual commits

prorationenum
optional
"NONE" OR "FIRST" OR "LAST" OR "FIRST_AND_LAST"

Determines whether the first and last commit will be prorated. If not provided, the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).

Hide ParametersShow Parameters
"NONE"
"FIRST"
"LAST"
"FIRST_AND_LAST"
recurrence_frequencyenum
optional
"MONTHLY" OR "QUARTERLY" OR "ANNUAL" OR "WEEKLY"

The frequency at which the recurring commits will be created. If not provided: - The commits will be created on the usage invoice frequency. If provided: - The period defined in the duration will correspond to this frequency. - Commits will be created aligned with the recurring commit's starting_at rather than the usage invoice dates.

Hide ParametersShow Parameters
"MONTHLY"
"QUARTERLY"
"ANNUAL"
"WEEKLY"
rollover_fractionnumber
optional

Will be passed down to the individual commits. This controls how much of an individual unexpired commit will roll over upon contract transition. Must be between 0 and 1.

specifiersarray of object
optional

List of filters that determine what kind of customer usage draws down a commit or credit. A customer's usage needs to meet the condition of at least one of the specifiers to contribute to a commit's or credit's drawdown.

Hide ParametersShow Parameters
presentation_group_valuesmap
optional
pricing_group_valuesmap
optional
product_idstring
optional

If provided, the specifier will only apply to the product with the specified ID.

formatuuid
product_tagsarray of string
optional

If provided, the specifier will only apply to products with all the specified tags.

subscription_configobject
optional

Attach a subscription to the recurring commit/credit.

Hide ParametersShow Parameters
allocationenum
"INDIVIDUAL" OR "POOLED"
Hide ParametersShow Parameters
"INDIVIDUAL"
"POOLED"
apply_seat_increase_configobject
Hide ParametersShow Parameters
is_proratedboolean

Indicates whether a mid-period seat increase should be prorated.

subscription_idstring
formatuuid
recurring_creditsarray of object
optional
Hide ParametersShow Parameters
idstring
formatuuid
access_amountobject

The amount of commit to grant.

Hide ParametersShow Parameters
credit_type_idstring
formatuuid
unit_pricenumber
quantitynumber
optional
commit_durationobject

The amount of time the created commits will be valid for

Hide ParametersShow Parameters
valuenumber
unitenum
optional
"PERIODS"
Hide ParametersShow Parameters
"PERIODS"
prioritynumber

Will be passed down to the individual commits

productobject
Hide ParametersShow Parameters
idstring
formatuuid
namestring
rate_typeenum
"COMMIT_RATE" OR "LIST_RATE"

Whether the created commits will use the commit rate or list rate

Hide ParametersShow Parameters
"COMMIT_RATE"
"LIST_RATE"
starting_atstring

Determines the start time for the first commit

formatdate-time
applicable_product_idsarray of string
optional

Will be passed down to the individual commits

applicable_product_tagsarray of string
optional

Will be passed down to the individual commits

contractobject
optional
Hide ParametersShow Parameters
idstring
formatuuid
descriptionstring
optional

Will be passed down to the individual commits

ending_beforestring
optional

Determines when the contract will stop creating recurring commits. Optional

formatdate-time
hierarchy_configurationobject
optional

Optional configuration for recurring credit hierarchy access control

Hide ParametersShow Parameters
child_accessunion
One of the following 3 object variants:
Hide ParametersShow Parameters
CommitHierarchyChildAccessAllobject
Hide ParametersShow Parameters
typeenum
"ALL"
Hide ParametersShow Parameters
"ALL"
CommitHierarchyChildAccessNoneobject
Hide ParametersShow Parameters
typeenum
"NONE"
Hide ParametersShow Parameters
"NONE"
CommitHierarchyChildAccessContractIDsobject
Hide ParametersShow Parameters
contract_idsarray of string
typeenum
"CONTRACT_IDS"
Hide ParametersShow Parameters
"CONTRACT_IDS"
namestring
optional

Displayed on invoices. Will be passed through to the individual commits

netsuite_sales_order_idstring
optional

Will be passed down to the individual commits

prorationenum
optional
"NONE" OR "FIRST" OR "LAST" OR "FIRST_AND_LAST"

Determines whether the first and last commit will be prorated. If not provided, the default is FIRST_AND_LAST (i.e. prorate both the first and last commits).

Hide ParametersShow Parameters
"NONE"
"FIRST"
"LAST"
"FIRST_AND_LAST"
recurrence_frequencyenum
optional
"MONTHLY" OR "QUARTERLY" OR "ANNUAL" OR "WEEKLY"

The frequency at which the recurring commits will be created. If not provided: - The commits will be created on the usage invoice frequency. If provided: - The period defined in the duration will correspond to this frequency. - Commits will be created aligned with the recurring commit's starting_at rather than the usage invoice dates.

Hide ParametersShow Parameters
"MONTHLY"
"QUARTERLY"
"ANNUAL"
"WEEKLY"
rollover_fractionnumber
optional

Will be passed down to the individual commits. This controls how much of an individual unexpired commit will roll over upon contract transition. Must be between 0 and 1.

specifiersarray of object
optional

List of filters that determine what kind of customer usage draws down a commit or credit. A customer's usage needs to meet the condition of at least one of the specifiers to contribute to a commit's or credit's drawdown.

Hide ParametersShow Parameters
presentation_group_valuesmap
optional
pricing_group_valuesmap
optional
product_idstring
optional

If provided, the specifier will only apply to the product with the specified ID.

formatuuid
product_tagsarray of string
optional

If provided, the specifier will only apply to products with all the specified tags.

subscription_configobject
optional

Attach a subscription to the recurring commit/credit.

Hide ParametersShow Parameters
allocationenum
"INDIVIDUAL" OR "POOLED"
Hide ParametersShow Parameters
"INDIVIDUAL"
"POOLED"
apply_seat_increase_configobject
Hide ParametersShow Parameters
is_proratedboolean

Indicates whether a mid-period seat increase should be prorated.

subscription_idstring
formatuuid
reseller_royaltiesarray of object
optional

This field's availability is dependent on your client's configuration.

Hide ParametersShow Parameters
reseller_typeenum
"AWS" OR "AWS_PRO_SERVICE" OR "GCP" OR "GCP_PRO_SERVICE"
Hide ParametersShow Parameters
"AWS"
"AWS_PRO_SERVICE"
"GCP"
"GCP_PRO_SERVICE"
segmentsarray of object
Hide ParametersShow Parameters
fractionnumber
netsuite_reseller_idstring
reseller_typeenum
"AWS" OR "AWS_PRO_SERVICE" OR "GCP" OR "GCP_PRO_SERVICE"
Hide ParametersShow Parameters
"AWS"
"AWS_PRO_SERVICE"
"GCP"
"GCP_PRO_SERVICE"
starting_atstring
formatdate-time
applicable_product_idsarray of string
optional
applicable_product_tagsarray of string
optional
aws_account_numberstring
optional
aws_offer_idstring
optional
aws_payer_reference_idstring
optional
ending_beforestring
optional
formatdate-time
gcp_account_idstring
optional
gcp_offer_idstring
optional
reseller_contract_valuenumber
optional
salesforce_opportunity_idstring
optional

This field's availability is dependent on your client's configuration.

scheduled_charges_on_usage_invoicesenum
optional
"ALL"

Determines which scheduled and commit charges to consolidate onto the Contract's usage invoice. The charge's timestamp must match the usage invoice's ending_before date for consolidation to occur. This field cannot be modified after a Contract has been created. If this field is omitted, charges will appear on a separate invoice from usage charges.

Hide ParametersShow Parameters
"ALL"
spend_threshold_configurationobject
optional
Hide ParametersShow Parameters
commitobject
Hide ParametersShow Parameters
product_idstring

The commit product that will be used to generate the line item for commit payment.

descriptionstring
optional
namestring
optional

Specify the name of the line item for the threshold charge. If left blank, it will default to the commit product name.

is_enabledboolean

When set to false, the contract will not be evaluated against the threshold_amount. Toggling to true will result an immediate evaluation, regardless of prior state.

payment_gate_configobject
Hide ParametersShow Parameters
payment_gate_typeenum
"NONE" OR "STRIPE" OR "EXTERNAL"

Gate access to the commit balance based on successful collection of payment. Select STRIPE for Metronome to facilitate payment via Stripe. Select EXTERNAL to facilitate payment using your own payment integration. Select NONE if you do not wish to payment gate the commit balance.

Hide ParametersShow Parameters
"NONE"
"STRIPE"
"EXTERNAL"
precalculated_tax_configobject
optional

Only applicable if using PRECALCULATED as your tax type.

Hide ParametersShow Parameters
tax_amountnumber

Amount of tax to be applied. This should be in the same currency and denomination as the commit's invoice schedule

tax_namestring
optional

Name of the tax to be applied. This may be used in an invoice line item description.

stripe_configobject
optional

Only applicable if using STRIPE as your payment gateway type.

Hide ParametersShow Parameters
payment_typeenum
"INVOICE" OR "PAYMENT_INTENT"

If left blank, will default to INVOICE

Hide ParametersShow Parameters
"INVOICE"
"PAYMENT_INTENT"
invoice_metadatamap
optional

Metadata to be added to the Stripe invoice. Only applicable if using INVOICE as your payment type.

tax_typeenum
optional
"NONE" OR "STRIPE" OR "ANROK" OR "PRECALCULATED"

Stripe tax is only supported for Stripe payment gateway. Select NONE if you do not wish Metronome to calculate tax on your behalf. Leaving this field blank will default to NONE.

Hide ParametersShow Parameters
"NONE"
"STRIPE"
"ANROK"
"PRECALCULATED"
threshold_amountnumber

Specify the threshold amount for the contract. Each time the contract's usage hits this amount, a threshold charge will be initiated.

subscriptionsarray of object
optional

List of subscriptions on the contract.

Hide ParametersShow Parameters
collection_scheduleenum
"ADVANCE" OR "ARREARS"
Hide ParametersShow Parameters
"ADVANCE"
"ARREARS"
prorationobject
Hide ParametersShow Parameters
invoice_behaviorenum
"BILL_IMMEDIATELY" OR "BILL_ON_NEXT_COLLECTION_DATE"
Hide ParametersShow Parameters
"BILL_IMMEDIATELY"
"BILL_ON_NEXT_COLLECTION_DATE"
is_proratedboolean
quantity_schedulearray of object

List of quantity schedule items for the subscription. Only includes the current quantity and future quantity changes.

Hide ParametersShow Parameters
quantitynumber
starting_atstring
formatdate-time
ending_beforestring
optional
formatdate-time
starting_atstring
formatdate-time
subscription_rateobject
Hide ParametersShow Parameters
billing_frequencyenum
"MONTHLY" OR "QUARTERLY" OR "ANNUAL" OR "WEEKLY"
Hide ParametersShow Parameters
"MONTHLY"
"QUARTERLY"
"ANNUAL"
"WEEKLY"
productobject
Hide ParametersShow Parameters
idstring
formatuuid
namestring
idstring
optional
formatuuid
custom_fieldsmap
optional
descriptionstring
optional
ending_beforestring
optional
formatdate-time
fiat_credit_type_idstring
optional
formatuuid
namestring
optional
total_contract_valuenumber
optional
uniqueness_keystring
optional

Prevents the creation of duplicates. If a request to create a record is made with a previously used uniqueness key, a new record will not be created and the request will fail with a 409 error.

minLength1
maxLength128
curl https://api.metronome.com/v2/contracts/list \
    -H 'Content-Type: application/json' \
    -H "Authorization: Bearer $METRONOME_BEARER_TOKEN" \
    -d '{
          "customer_id": "13117714-3f05-48e5-a6e9-a66093f13b4d"
        }'
200 Example
{
  "data": [
    {
      "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "commits": [
        {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "product": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "name": "name"
          },
          "type": "PREPAID",
          "access_schedule": {
            "schedule_items": [
              {
                "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
                "amount": 0,
                "ending_before": "2019-12-27T18:11:19.117Z",
                "starting_at": "2019-12-27T18:11:19.117Z"
              }
            ],
            "credit_type": {
              "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "name": "name"
            }
          },
          "applicable_contract_ids": [
            "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          ],
          "applicable_product_ids": [
            "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          ],
          "applicable_product_tags": [
            "string"
          ],
          "archived_at": "2019-12-27T18:11:19.117Z",
          "balance": 0,
          "contract": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          },
          "custom_fields": {
            "foo": "string"
          },
          "description": "description",
          "hierarchy_configuration": {
            "child_access": {
              "type": "ALL"
            }
          },
          "invoice_contract": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          },
          "invoice_schedule": {
            "credit_type": {
              "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "name": "name"
            },
            "do_not_invoice": true,
            "schedule_items": [
              {
                "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
                "amount": 0,
                "quantity": 0,
                "timestamp": "2019-12-27T18:11:19.117Z",
                "unit_price": 0,
                "invoice_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
              }
            ]
          },
          "ledger": [
            {
              "amount": 0,
              "segment_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "timestamp": "2019-12-27T18:11:19.117Z",
              "type": "PREPAID_COMMIT_SEGMENT_START"
            }
          ],
          "name": "name",
          "netsuite_sales_order_id": "netsuite_sales_order_id",
          "priority": 0,
          "rate_type": "COMMIT_RATE",
          "rolled_over_from": {
            "commit_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "contract_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          },
          "rollover_fraction": 0,
          "salesforce_opportunity_id": "salesforce_opportunity_id",
          "specifiers": [
            {
              "presentation_group_values": {
                "foo": "string"
              },
              "pricing_group_values": {
                "foo": "string"
              },
              "product_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "product_tags": [
                "string"
              ]
            }
          ]
        }
      ],
      "created_at": "2019-12-27T18:11:19.117Z",
      "created_by": "created_by",
      "customer_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "overrides": [
        {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "starting_at": "2019-12-27T18:11:19.117Z",
          "applicable_product_tags": [
            "string"
          ],
          "ending_before": "2019-12-27T18:11:19.117Z",
          "entitled": true,
          "is_commit_specific": true,
          "multiplier": 0,
          "override_specifiers": [
            {
              "billing_frequency": "MONTHLY",
              "commit_ids": [
                "string"
              ],
              "presentation_group_values": {
                "foo": "string"
              },
              "pricing_group_values": {
                "foo": "string"
              },
              "product_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "product_tags": [
                "string"
              ],
              "recurring_commit_ids": [
                "string"
              ],
              "recurring_credit_ids": [
                "string"
              ]
            }
          ],
          "override_tiers": [
            {
              "multiplier": 0,
              "size": 0
            }
          ],
          "overwrite_rate": {
            "rate_type": "FLAT",
            "credit_type": {
              "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "name": "name"
            },
            "custom_rate": {
              "foo": "bar"
            },
            "is_prorated": true,
            "price": 0,
            "quantity": 0,
            "tiers": [
              {
                "price": 0,
                "size": 0
              }
            ]
          },
          "priority": 0,
          "product": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "name": "name"
          },
          "target": "COMMIT_RATE",
          "type": "OVERWRITE"
        }
      ],
      "scheduled_charges": [
        {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "product": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "name": "name"
          },
          "schedule": {
            "credit_type": {
              "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "name": "name"
            },
            "do_not_invoice": true,
            "schedule_items": [
              {
                "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
                "amount": 0,
                "quantity": 0,
                "timestamp": "2019-12-27T18:11:19.117Z",
                "unit_price": 0,
                "invoice_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
              }
            ]
          },
          "archived_at": "2019-12-27T18:11:19.117Z",
          "custom_fields": {
            "foo": "string"
          },
          "name": "x",
          "netsuite_sales_order_id": "netsuite_sales_order_id"
        }
      ],
      "starting_at": "2019-12-27T18:11:19.117Z",
      "transitions": [
        {
          "from_contract_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "to_contract_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "type": "SUPERSEDE"
        }
      ],
      "usage_filter": [
        {
          "group_key": "group_key",
          "group_values": [
            "string"
          ],
          "starting_at": "2019-12-27T18:11:19.117Z",
          "ending_before": "2019-12-27T18:11:19.117Z"
        }
      ],
      "usage_statement_schedule": {
        "billing_anchor_date": "2019-12-27T18:11:19.117Z",
        "frequency": "MONTHLY"
      },
      "archived_at": "2019-12-27T18:11:19.117Z",
      "credits": [
        {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "product": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "name": "name"
          },
          "type": "CREDIT",
          "access_schedule": {
            "schedule_items": [
              {
                "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
                "amount": 0,
                "ending_before": "2019-12-27T18:11:19.117Z",
                "starting_at": "2019-12-27T18:11:19.117Z"
              }
            ],
            "credit_type": {
              "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "name": "name"
            }
          },
          "applicable_contract_ids": [
            "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          ],
          "applicable_product_ids": [
            "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          ],
          "applicable_product_tags": [
            "string"
          ],
          "balance": 0,
          "contract": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          },
          "custom_fields": {
            "foo": "string"
          },
          "description": "description",
          "hierarchy_configuration": {
            "child_access": {
              "type": "ALL"
            }
          },
          "ledger": [
            {
              "amount": 0,
              "segment_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "timestamp": "2019-12-27T18:11:19.117Z",
              "type": "CREDIT_SEGMENT_START"
            }
          ],
          "name": "name",
          "netsuite_sales_order_id": "netsuite_sales_order_id",
          "priority": 0,
          "salesforce_opportunity_id": "salesforce_opportunity_id",
          "specifiers": [
            {
              "presentation_group_values": {
                "foo": "string"
              },
              "pricing_group_values": {
                "foo": "string"
              },
              "product_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "product_tags": [
                "string"
              ]
            }
          ]
        }
      ],
      "custom_fields": {
        "foo": "string"
      },
      "customer_billing_provider_configuration": {
        "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "billing_provider": "aws_marketplace",
        "delivery_method": "direct_to_billing_provider"
      },
      "discounts": [
        {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "product": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "name": "name"
          },
          "schedule": {
            "credit_type": {
              "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "name": "name"
            },
            "do_not_invoice": true,
            "schedule_items": [
              {
                "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
                "amount": 0,
                "quantity": 0,
                "timestamp": "2019-12-27T18:11:19.117Z",
                "unit_price": 0,
                "invoice_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
              }
            ]
          },
          "custom_fields": {
            "foo": "string"
          },
          "name": "x",
          "netsuite_sales_order_id": "netsuite_sales_order_id"
        }
      ],
      "ending_before": "2019-12-27T18:11:19.117Z",
      "has_more": {
        "commits": true,
        "credits": true
      },
      "hierarchy_configuration": {
        "children": [
          {
            "contract_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "customer_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          }
        ]
      },
      "multiplier_override_prioritization": "LOWEST_MULTIPLIER",
      "name": "name",
      "net_payment_terms_days": 0,
      "netsuite_sales_order_id": "netsuite_sales_order_id",
      "prepaid_balance_threshold_configuration": {
        "commit": {
          "product_id": "product_id",
          "applicable_product_ids": [
            "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          ],
          "applicable_product_tags": [
            "string"
          ],
          "description": "description",
          "name": "name",
          "specifiers": [
            {
              "presentation_group_values": {
                "foo": "string"
              },
              "pricing_group_values": {
                "foo": "string"
              },
              "product_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "product_tags": [
                "string"
              ]
            }
          ]
        },
        "is_enabled": true,
        "payment_gate_config": {
          "payment_gate_type": "NONE",
          "precalculated_tax_config": {
            "tax_amount": 0,
            "tax_name": "tax_name"
          },
          "stripe_config": {
            "payment_type": "INVOICE",
            "invoice_metadata": {
              "foo": "string"
            }
          },
          "tax_type": "NONE"
        },
        "recharge_to_amount": 0,
        "threshold_amount": 0,
        "custom_credit_type_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
      },
      "priority": 0,
      "professional_services": [
        {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "max_amount": 0,
          "product_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "quantity": 0,
          "unit_price": 0,
          "custom_fields": {
            "foo": "string"
          },
          "description": "description",
          "netsuite_sales_order_id": "netsuite_sales_order_id"
        }
      ],
      "rate_card_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "recurring_commits": [
        {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "access_amount": {
            "credit_type_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "unit_price": 0,
            "quantity": 0
          },
          "commit_duration": {
            "value": 0,
            "unit": "PERIODS"
          },
          "priority": 0,
          "product": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "name": "name"
          },
          "rate_type": "COMMIT_RATE",
          "starting_at": "2019-12-27T18:11:19.117Z",
          "applicable_product_ids": [
            "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          ],
          "applicable_product_tags": [
            "string"
          ],
          "contract": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          },
          "description": "description",
          "ending_before": "2019-12-27T18:11:19.117Z",
          "hierarchy_configuration": {
            "child_access": {
              "type": "ALL"
            }
          },
          "invoice_amount": {
            "credit_type_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "quantity": 0,
            "unit_price": 0
          },
          "name": "name",
          "netsuite_sales_order_id": "netsuite_sales_order_id",
          "proration": "NONE",
          "recurrence_frequency": "MONTHLY",
          "rollover_fraction": 0,
          "specifiers": [
            {
              "presentation_group_values": {
                "foo": "string"
              },
              "pricing_group_values": {
                "foo": "string"
              },
              "product_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "product_tags": [
                "string"
              ]
            }
          ],
          "subscription_config": {
            "allocation": "INDIVIDUAL",
            "apply_seat_increase_config": {
              "is_prorated": true
            },
            "subscription_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          }
        }
      ],
      "recurring_credits": [
        {
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "access_amount": {
            "credit_type_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "unit_price": 0,
            "quantity": 0
          },
          "commit_duration": {
            "value": 0,
            "unit": "PERIODS"
          },
          "priority": 0,
          "product": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
            "name": "name"
          },
          "rate_type": "COMMIT_RATE",
          "starting_at": "2019-12-27T18:11:19.117Z",
          "applicable_product_ids": [
            "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          ],
          "applicable_product_tags": [
            "string"
          ],
          "contract": {
            "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          },
          "description": "description",
          "ending_before": "2019-12-27T18:11:19.117Z",
          "hierarchy_configuration": {
            "child_access": {
              "type": "ALL"
            }
          },
          "name": "name",
          "netsuite_sales_order_id": "netsuite_sales_order_id",
          "proration": "NONE",
          "recurrence_frequency": "MONTHLY",
          "rollover_fraction": 0,
          "specifiers": [
            {
              "presentation_group_values": {
                "foo": "string"
              },
              "pricing_group_values": {
                "foo": "string"
              },
              "product_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "product_tags": [
                "string"
              ]
            }
          ],
          "subscription_config": {
            "allocation": "INDIVIDUAL",
            "apply_seat_increase_config": {
              "is_prorated": true
            },
            "subscription_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
          }
        }
      ],
      "reseller_royalties": [
        {
          "reseller_type": "AWS",
          "segments": [
            {
              "fraction": 0,
              "netsuite_reseller_id": "netsuite_reseller_id",
              "reseller_type": "AWS",
              "starting_at": "2019-12-27T18:11:19.117Z",
              "applicable_product_ids": [
                "string"
              ],
              "applicable_product_tags": [
                "string"
              ],
              "aws_account_number": "aws_account_number",
              "aws_offer_id": "aws_offer_id",
              "aws_payer_reference_id": "aws_payer_reference_id",
              "ending_before": "2019-12-27T18:11:19.117Z",
              "gcp_account_id": "gcp_account_id",
              "gcp_offer_id": "gcp_offer_id",
              "reseller_contract_value": 0
            }
          ]
        }
      ],
      "salesforce_opportunity_id": "salesforce_opportunity_id",
      "scheduled_charges_on_usage_invoices": "ALL",
      "spend_threshold_configuration": {
        "commit": {
          "product_id": "product_id",
          "description": "description",
          "name": "name"
        },
        "is_enabled": true,
        "payment_gate_config": {
          "payment_gate_type": "NONE",
          "precalculated_tax_config": {
            "tax_amount": 0,
            "tax_name": "tax_name"
          },
          "stripe_config": {
            "payment_type": "INVOICE",
            "invoice_metadata": {
              "foo": "string"
            }
          },
          "tax_type": "NONE"
        },
        "threshold_amount": 0
      },
      "subscriptions": [
        {
          "collection_schedule": "ADVANCE",
          "proration": {
            "invoice_behavior": "BILL_IMMEDIATELY",
            "is_prorated": true
          },
          "quantity_schedule": [
            {
              "quantity": 0,
              "starting_at": "2019-12-27T18:11:19.117Z",
              "ending_before": "2019-12-27T18:11:19.117Z"
            }
          ],
          "starting_at": "2019-12-27T18:11:19.117Z",
          "subscription_rate": {
            "billing_frequency": "MONTHLY",
            "product": {
              "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
              "name": "name"
            }
          },
          "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "custom_fields": {
            "foo": "string"
          },
          "description": "description",
          "ending_before": "2019-12-27T18:11:19.117Z",
          "fiat_credit_type_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
          "name": "name"
        }
      ],
      "total_contract_value": 0,
      "uniqueness_key": "x"
    }
  ]
}