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

Create

Create a contract
client.V1.Contracts.New(ctx, body) (*DataIDV1ContractNewResponse, error)
post/v1/contracts/create

Create a new contract

Parameters
bodyCustomerIDfieldStartingAtfieldBillingProviderConfigurationfieldCommitsfieldCreditsfieldCustomFieldsfieldDiscountsfieldEndingBeforefieldHierarchyConfigurationfieldMultiplierOverridePrioritizationfieldNamefieldNetPaymentTermsDaysfieldNetsuiteSalesOrderIDfieldOverridesfieldPrepaidBalanceThresholdConfigurationfieldPriorityfieldProfessionalServicesfieldRateCardAliasfieldRateCardIDfieldRecurringCommitsfieldRecurringCreditsfieldResellerRoyaltiesfieldSalesforceOpportunityIDfieldScheduledChargesfieldScheduledChargesOnUsageInvoicesfieldSpendThresholdConfigurationfieldSubscriptionsfieldTotalContractValuefieldTransitionfieldUniquenessKeyfieldUsageFilterfieldUsageStatementSchedulefieldV1ContractNewParams
Hide ParametersShow Parameters
CustomerIDfield
param.Field[string]
formatuuid
StartingAtfield
param.Field[Time]

inclusive contract start time

formatdate-time
BillingProviderConfigurationfield
optional

The billing provider configuration associated with a contract. Provide either an ID or the provider and delivery method.

Hide ParametersShow Parameters
BillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderAwsMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderAzureMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderGcpMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderStripeV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderNetsuiteV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProvider
optional

Do not specify if using billing_provider_configuration_id.

Hide ParametersShow Parameters
V1ContractNewParamsBillingProviderConfigurationBillingProviderAwsMarketplaceconst
V1ContractNewParamsBillingProviderConfigurationBillingProviderAwsMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderAzureMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderGcpMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderStripeV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderNetsuiteV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProvider
"aws_marketplace"
V1ContractNewParamsBillingProviderConfigurationBillingProviderAzureMarketplaceconst
V1ContractNewParamsBillingProviderConfigurationBillingProviderAwsMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderAzureMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderGcpMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderStripeV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderNetsuiteV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProvider
"azure_marketplace"
V1ContractNewParamsBillingProviderConfigurationBillingProviderGcpMarketplaceconst
V1ContractNewParamsBillingProviderConfigurationBillingProviderAwsMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderAzureMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderGcpMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderStripeV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderNetsuiteV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProvider
"gcp_marketplace"
V1ContractNewParamsBillingProviderConfigurationBillingProviderStripeconst
V1ContractNewParamsBillingProviderConfigurationBillingProviderAwsMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderAzureMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderGcpMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderStripeV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderNetsuiteV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProvider
"stripe"
V1ContractNewParamsBillingProviderConfigurationBillingProviderNetsuiteconst
V1ContractNewParamsBillingProviderConfigurationBillingProviderAwsMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderAzureMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderGcpMarketplaceV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderStripeV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProviderNetsuiteV1ContractNewParamsBillingProviderConfigurationBillingProviderV1ContractNewParamsBillingProviderConfigurationBillingProvider
"netsuite"
BillingProviderConfigurationIDstring
optional

The Metronome ID of the billing provider configuration. Use when a customer has multiple configurations with the same billing provider and delivery method. Otherwise, specify the billing_provider and delivery_method.

formatuuid
DeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodDirectToBillingProviderV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSqsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodTackleV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSnsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethod
optional

Do not specify if using billing_provider_configuration_id.

Hide ParametersShow Parameters
V1ContractNewParamsBillingProviderConfigurationDeliveryMethodDirectToBillingProviderconst
V1ContractNewParamsBillingProviderConfigurationDeliveryMethodDirectToBillingProviderV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSqsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodTackleV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSnsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethod
"direct_to_billing_provider"
V1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSqsconst
V1ContractNewParamsBillingProviderConfigurationDeliveryMethodDirectToBillingProviderV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSqsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodTackleV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSnsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethod
"aws_sqs"
V1ContractNewParamsBillingProviderConfigurationDeliveryMethodTackleconst
V1ContractNewParamsBillingProviderConfigurationDeliveryMethodDirectToBillingProviderV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSqsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodTackleV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSnsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethod
"tackle"
V1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSnsconst
V1ContractNewParamsBillingProviderConfigurationDeliveryMethodDirectToBillingProviderV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSqsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodTackleV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethodAwsSnsV1ContractNewParamsBillingProviderConfigurationDeliveryMethodV1ContractNewParamsBillingProviderConfigurationDeliveryMethod
"aws_sns"
Commitsfield
optional
Hide ParametersShow Parameters
ProductIDstring
formatuuid
TypeV1ContractNewParamsCommitsTypePrepaidV1ContractNewParamsCommitsTypeV1ContractNewParamsCommitsTypePostpaidV1ContractNewParamsCommitsTypeV1ContractNewParamsCommitsType
Hide ParametersShow Parameters
V1ContractNewParamsCommitsTypePrepaidconst
V1ContractNewParamsCommitsTypePrepaidV1ContractNewParamsCommitsTypeV1ContractNewParamsCommitsTypePostpaidV1ContractNewParamsCommitsTypeV1ContractNewParamsCommitsType
"PREPAID"
V1ContractNewParamsCommitsTypePostpaidconst
V1ContractNewParamsCommitsTypePrepaidV1ContractNewParamsCommitsTypeV1ContractNewParamsCommitsTypePostpaidV1ContractNewParamsCommitsTypeV1ContractNewParamsCommitsType
"POSTPAID"
AccessScheduleScheduleItemsarrayCreditTypeIDstringV1ContractNewParamsCommitsAccessSchedule
optional

Required: Schedule for distributing the commit to the customer. For "POSTPAID" commits only one schedule item is allowed and amount must match invoice_schedule total.

Hide ParametersShow Parameters
Hide ParametersShow Parameters
Amountfloat64
EndingBeforeTime

RFC 3339 timestamp (exclusive)

formatdate-time
StartingAtTime

RFC 3339 timestamp (inclusive)

formatdate-time
CreditTypeIDstring
optional

Defaults to USD (cents) if not passed

formatuuid
Amountfloat64
optional

(DEPRECATED) Use access_schedule and invoice_schedule instead.

ApplicableProductIDsarray
optional
[]string

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

ApplicableProductTagsarray
optional
[]string

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

CustomFieldsmap
optional
map[string, string]
Descriptionstring
optional

Used only in UI/API. It is not exposed to end customers.

Optional configuration for commit hierarchy access control

Hide ParametersShow Parameters
ChildAccessV1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllstruct{…}V1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNonestruct{…}V1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsstruct{…}V1ContractNewParamsCommitsHierarchyConfigurationChildAccess
Hide ParametersShow Parameters
V1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllstruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
V1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllTypeAllconst
"ALL"
V1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNonestruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
V1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNoneTypeNoneconst
"NONE"
V1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsstruct
Hide ParametersShow Parameters
ContractIDsarray
[]string
Hide ParametersShow Parameters
V1ContractNewParamsCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsTypeContractIDsconst
"CONTRACT_IDS"
InvoiceScheduleCreditTypeIDstringDoNotInvoiceboolRecurringScheduleV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleScheduleItemsarrayV1ContractNewParamsCommitsInvoiceSchedule
optional

Required for "POSTPAID" commits: the true up invoice will be generated at this time and only one schedule item is allowed; the total must match access_schedule amount. Optional for "PREPAID" commits: if not provided, this will be a "complimentary" commit with no invoice.

Hide ParametersShow Parameters
CreditTypeIDstring
optional

Defaults to USD (cents) if not passed.

formatuuid
DoNotInvoicebool
optional

This field is only applicable to commit invoice schedules. If true, this schedule will not generate an invoice.

Enter the unit price and quantity for the charge or instead only send the amount. If amount is sent, the unit price is assumed to be the amount and quantity is inferred to be 1.

Hide ParametersShow Parameters
AmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistribution
Hide ParametersShow Parameters
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedconst
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistribution
"DIVIDED"
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedRoundedconst
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistribution
"DIVIDED_ROUNDED"
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionEachconst
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistributionV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleAmountDistribution
"EACH"
EndingBeforeTime

RFC 3339 timestamp (exclusive).

formatdate-time
FrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequency
Hide ParametersShow Parameters
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyMonthlyconst
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequency
"MONTHLY"
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyQuarterlyconst
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequency
"QUARTERLY"
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencySemiAnnualconst
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequency
"SEMI_ANNUAL"
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyAnnualconst
V1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequencyV1ContractNewParamsCommitsInvoiceScheduleRecurringScheduleFrequency
"ANNUAL"
StartingAtTime

RFC 3339 timestamp (inclusive).

formatdate-time
Amountfloat64
optional

Amount for the charge. Can be provided instead of unit_price and quantity. If amount is sent, the unit_price is assumed to be the amount and quantity is inferred to be 1.

Quantityfloat64
optional

Quantity for the charge. Will be multiplied by unit_price to determine the amount and must be specified with unit_price. If specified amount cannot be provided.

UnitPricefloat64
optional

Unit price for the charge. Will be multiplied by quantity to determine the amount and must be specified with quantity. If specified amount cannot be provided.

ScheduleItemsarray
optional

Either provide amount or provide both unit_price and quantity.

Hide ParametersShow Parameters
TimestampTime

timestamp of the scheduled event

formatdate-time
Amountfloat64
optional

Amount for the charge. Can be provided instead of unit_price and quantity. If amount is sent, the unit_price is assumed to be the amount and quantity is inferred to be 1.

Quantityfloat64
optional

Quantity for the charge. Will be multiplied by unit_price to determine the amount and must be specified with unit_price. If specified amount cannot be provided.

UnitPricefloat64
optional

Unit price for the charge. Will be multiplied by quantity to determine the amount and must be specified with quantity. If specified amount cannot be provided.

Namestring
optional

displayed on invoices

minLength1
NetsuiteSalesOrderIDstring
optional

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

Hide ParametersShow Parameters
PaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateType

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
V1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeNoneconst
V1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateType
"NONE"
V1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeStripeconst
V1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateType
"STRIPE"
V1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeExternalconst
V1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsCommitsPaymentGateConfigPaymentGateTypeV1ContractNewParamsCommitsPaymentGateConfigPaymentGateType
"EXTERNAL"
PrecalculatedTaxConfigTaxAmountfloat64TaxNamestringV1ContractNewParamsCommitsPaymentGateConfigPrecalculatedTaxConfig
optional

Only applicable if using PRECALCULATED as your tax type.

Hide ParametersShow Parameters
TaxAmountfloat64

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

TaxNamestring
optional

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

Only applicable if using STRIPE as your payment gate type.

Hide ParametersShow Parameters
PaymentTypeV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentType

If left blank, will default to INVOICE

Hide ParametersShow Parameters
V1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeInvoiceconst
V1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentType
"INVOICE"
V1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypePaymentIntentconst
V1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsCommitsPaymentGateConfigStripeConfigPaymentType
"PAYMENT_INTENT"
InvoiceMetadatamap
optional
map[string, string]

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

TaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeNoneV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeStripeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeAnrokV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxType
optional

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
V1ContractNewParamsCommitsPaymentGateConfigTaxTypeNoneconst
V1ContractNewParamsCommitsPaymentGateConfigTaxTypeNoneV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeStripeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeAnrokV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxType
"NONE"
V1ContractNewParamsCommitsPaymentGateConfigTaxTypeStripeconst
V1ContractNewParamsCommitsPaymentGateConfigTaxTypeNoneV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeStripeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeAnrokV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxType
"STRIPE"
V1ContractNewParamsCommitsPaymentGateConfigTaxTypeAnrokconst
V1ContractNewParamsCommitsPaymentGateConfigTaxTypeNoneV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeStripeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeAnrokV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxType
"ANROK"
V1ContractNewParamsCommitsPaymentGateConfigTaxTypePrecalculatedconst
V1ContractNewParamsCommitsPaymentGateConfigTaxTypeNoneV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeStripeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypeAnrokV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsCommitsPaymentGateConfigTaxTypeV1ContractNewParamsCommitsPaymentGateConfigTaxType
"PRECALCULATED"
Priorityfloat64
optional

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

RateTypeV1ContractNewParamsCommitsRateTypeCommitRateV1ContractNewParamsCommitsRateTypeV1ContractNewParamsCommitsRateTypeListRateV1ContractNewParamsCommitsRateTypeV1ContractNewParamsCommitsRateType
optional
Hide ParametersShow Parameters
V1ContractNewParamsCommitsRateTypeCommitRateconst
V1ContractNewParamsCommitsRateTypeCommitRateV1ContractNewParamsCommitsRateTypeV1ContractNewParamsCommitsRateTypeListRateV1ContractNewParamsCommitsRateTypeV1ContractNewParamsCommitsRateType
"COMMIT_RATE"
V1ContractNewParamsCommitsRateTypeListRateconst
V1ContractNewParamsCommitsRateTypeCommitRateV1ContractNewParamsCommitsRateTypeV1ContractNewParamsCommitsRateTypeListRateV1ContractNewParamsCommitsRateTypeV1ContractNewParamsCommitsRateType
"LIST_RATE"
RolloverFractionfloat64
optional

Fraction of unused segments that will be rolled over. Must be between 0 and 1.

Specifiersarray
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.

Hide ParametersShow Parameters
PresentationGroupValuesmap
optional
map[string, string]
PricingGroupValuesmap
optional
map[string, string]
ProductIDstring
optional

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

formatuuid
ProductTagsarray
optional
[]string

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

TemporaryIDstring
optional

A temporary ID for the commit that can be used to reference the commit for commit specific overrides.

Creditsfield
optional
Hide ParametersShow Parameters
AccessScheduleScheduleItemsarrayCreditTypeIDstringV1ContractNewParamsCreditsAccessSchedule

Schedule for distributing the credit to the customer.

Hide ParametersShow Parameters
Hide ParametersShow Parameters
Amountfloat64
EndingBeforeTime

RFC 3339 timestamp (exclusive)

formatdate-time
StartingAtTime

RFC 3339 timestamp (inclusive)

formatdate-time
CreditTypeIDstring
optional

Defaults to USD (cents) if not passed

formatuuid
ProductIDstring
formatuuid
ApplicableProductIDsarray
optional
[]string

Which products the credit applies to. If both applicable_product_ids and applicable_product_tags are not provided, the credit applies to all products.

ApplicableProductTagsarray
optional
[]string

Which tags the credit applies to. If both applicable_product_ids and applicable_product_tags are not provided, the credit applies to all products.

CustomFieldsmap
optional
map[string, string]
Descriptionstring
optional

Used only in UI/API. It is not exposed to end customers.

Optional configuration for credit hierarchy access control

Hide ParametersShow Parameters
ChildAccessV1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllstruct{…}V1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNonestruct{…}V1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsstruct{…}V1ContractNewParamsCreditsHierarchyConfigurationChildAccess
Hide ParametersShow Parameters
V1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllstruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
V1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllTypeAllconst
"ALL"
V1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNonestruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
V1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNoneTypeNoneconst
"NONE"
V1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsstruct
Hide ParametersShow Parameters
ContractIDsarray
[]string
Hide ParametersShow Parameters
V1ContractNewParamsCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsTypeContractIDsconst
"CONTRACT_IDS"
Namestring
optional

displayed on invoices

minLength1
NetsuiteSalesOrderIDstring
optional

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

Priorityfloat64
optional

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

RateTypeV1ContractNewParamsCreditsRateTypeCommitRateV1ContractNewParamsCreditsRateTypeV1ContractNewParamsCreditsRateTypeListRateV1ContractNewParamsCreditsRateTypeV1ContractNewParamsCreditsRateType
optional
Hide ParametersShow Parameters
V1ContractNewParamsCreditsRateTypeCommitRateconst
V1ContractNewParamsCreditsRateTypeCommitRateV1ContractNewParamsCreditsRateTypeV1ContractNewParamsCreditsRateTypeListRateV1ContractNewParamsCreditsRateTypeV1ContractNewParamsCreditsRateType
"COMMIT_RATE"
V1ContractNewParamsCreditsRateTypeListRateconst
V1ContractNewParamsCreditsRateTypeCommitRateV1ContractNewParamsCreditsRateTypeV1ContractNewParamsCreditsRateTypeListRateV1ContractNewParamsCreditsRateTypeV1ContractNewParamsCreditsRateType
"LIST_RATE"
Specifiersarray
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.

Hide ParametersShow Parameters
PresentationGroupValuesmap
optional
map[string, string]
PricingGroupValuesmap
optional
map[string, string]
ProductIDstring
optional

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

formatuuid
ProductTagsarray
optional
[]string

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

CustomFieldsfield
optional
param.Field[map[string, string]]
Discountsfield
optional

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

Hide ParametersShow Parameters
ProductIDstring
formatuuid
ScheduleCreditTypeIDstringDoNotInvoiceboolRecurringScheduleV1ContractNewParamsDiscountsScheduleRecurringScheduleScheduleItemsarrayV1ContractNewParamsDiscountsSchedule

Must provide either schedule_items or recurring_schedule.

Hide ParametersShow Parameters
CreditTypeIDstring
optional

Defaults to USD (cents) if not passed.

formatuuid
DoNotInvoicebool
optional

This field is only applicable to commit invoice schedules. If true, this schedule will not generate an invoice.

Enter the unit price and quantity for the charge or instead only send the amount. If amount is sent, the unit price is assumed to be the amount and quantity is inferred to be 1.

Hide ParametersShow Parameters
AmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistribution
Hide ParametersShow Parameters
V1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedconst
V1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistribution
"DIVIDED"
V1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedRoundedconst
V1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistribution
"DIVIDED_ROUNDED"
V1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionEachconst
V1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistributionV1ContractNewParamsDiscountsScheduleRecurringScheduleAmountDistribution
"EACH"
EndingBeforeTime

RFC 3339 timestamp (exclusive).

formatdate-time
FrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequency
Hide ParametersShow Parameters
V1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyMonthlyconst
V1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequency
"MONTHLY"
V1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyQuarterlyconst
V1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequency
"QUARTERLY"
V1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencySemiAnnualconst
V1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequency
"SEMI_ANNUAL"
V1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyAnnualconst
V1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequencyV1ContractNewParamsDiscountsScheduleRecurringScheduleFrequency
"ANNUAL"
StartingAtTime

RFC 3339 timestamp (inclusive).

formatdate-time
Amountfloat64
optional

Amount for the charge. Can be provided instead of unit_price and quantity. If amount is sent, the unit_price is assumed to be the amount and quantity is inferred to be 1.

Quantityfloat64
optional

Quantity for the charge. Will be multiplied by unit_price to determine the amount and must be specified with unit_price. If specified amount cannot be provided.

UnitPricefloat64
optional

Unit price for the charge. Will be multiplied by quantity to determine the amount and must be specified with quantity. If specified amount cannot be provided.

ScheduleItemsarray
optional

Either provide amount or provide both unit_price and quantity.

Hide ParametersShow Parameters
TimestampTime

timestamp of the scheduled event

formatdate-time
Amountfloat64
optional

Amount for the charge. Can be provided instead of unit_price and quantity. If amount is sent, the unit_price is assumed to be the amount and quantity is inferred to be 1.

Quantityfloat64
optional

Quantity for the charge. Will be multiplied by unit_price to determine the amount and must be specified with unit_price. If specified amount cannot be provided.

UnitPricefloat64
optional

Unit price for the charge. Will be multiplied by quantity to determine the amount and must be specified with quantity. If specified amount cannot be provided.

CustomFieldsmap
optional
map[string, string]
Namestring
optional

displayed on invoices

minLength1
NetsuiteSalesOrderIDstring
optional

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

EndingBeforefield
optional
param.Field[Time]

exclusive contract end time

formatdate-time
HierarchyConfigurationfield
optional
Hide ParametersShow Parameters
ParentContractIDstringCustomerIDstringV1ContractNewParamsHierarchyConfigurationParent
Hide ParametersShow Parameters
ContractIDstring
formatuuid
CustomerIDstring
formatuuid
MultiplierOverridePrioritizationfield
optional

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. If tiered overrides are used, prioritization must be explicit.

Hide ParametersShow Parameters
V1ContractNewParamsMultiplierOverridePrioritizationLowestMultiplierconst
"LOWEST_MULTIPLIER"
V1ContractNewParamsMultiplierOverridePrioritizationExplicitconst
"EXPLICIT"
Namefield
optional
param.Field[string]
NetPaymentTermsDaysfield
optional
param.Field[float64]
NetsuiteSalesOrderIDfield
optional
param.Field[string]

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

Overridesfield
optional
Hide ParametersShow Parameters
StartingAtTime

RFC 3339 timestamp indicating when the override will start applying (inclusive)

formatdate-time
ApplicableProductTagsarray
optional
[]string

tags identifying products whose rates are being overridden. Cannot be used in conjunction with override_specifiers.

EndingBeforeTime
optional

RFC 3339 timestamp indicating when the override will stop applying (exclusive)

formatdate-time
Entitledbool
optional
IsCommitSpecificbool
optional

Indicates whether the override should only apply to commits. Defaults to false. If true, you can specify relevant commits in override_specifiers by passing commit_ids. if you do not specify commit_ids, then the override will apply when consuming any prepaid or postpaid commit.

Multiplierfloat64
optional

Required for MULTIPLIER type. Must be >=0.

OverrideSpecifiersarray
optional

Cannot be used in conjunction with product_id or applicable_product_tags. If provided, the override will apply to all products with the specified specifiers.

Hide ParametersShow Parameters
BillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyMonthlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyQuarterlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyAnnualV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyWeeklyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequency
optional
Hide ParametersShow Parameters
V1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyMonthlyconst
V1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyMonthlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyQuarterlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyAnnualV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyWeeklyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequency
"MONTHLY"
V1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyQuarterlyconst
V1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyMonthlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyQuarterlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyAnnualV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyWeeklyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequency
"QUARTERLY"
V1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyAnnualconst
V1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyMonthlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyQuarterlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyAnnualV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyWeeklyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequency
"ANNUAL"
V1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyWeeklyconst
V1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyMonthlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyQuarterlyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyAnnualV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyWeeklyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequencyV1ContractNewParamsOverridesOverrideSpecifiersBillingFrequency
"WEEKLY"
CommitIDsarray
optional
[]string

Can only be used for commit specific overrides. Must be used in conjunction with one of product_id, product_tags, pricing_group_values, or presentation_group_values. If provided, the override will only apply to the specified commits. If not provided, the override will apply to all commits.

PresentationGroupValuesmap
optional
map[string, string]

A map of group names to values. The override will only apply to line items with the specified presentation group values.

PricingGroupValuesmap
optional
map[string, string]

A map of pricing group names to values. The override will only apply to products with the specified pricing group values.

ProductIDstring
optional

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

formatuuid
ProductTagsarray
optional
[]string

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

RecurringCommitIDsarray
optional
[]string

Can only be used for commit specific overrides. Must be used in conjunction with one of product_id, product_tags, pricing_group_values, or presentation_group_values. If provided, the override will only apply to commits created by the specified recurring commit ids.

RecurringCreditIDsarray
optional
[]string

Can only be used for commit specific overrides. Must be used in conjunction with one of product_id, product_tags, pricing_group_values, or presentation_group_values. If provided, the override will only apply to credits created by the specified recurring credit ids.

OverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeCreditTypeIDstringCustomRatemapIsProratedboolPricefloat64Quantityfloat64TiersarrayV1ContractNewParamsOverridesOverwriteRate
optional

Required for OVERWRITE type.

Hide ParametersShow Parameters
RateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeFlatV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypePercentageV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeSubscriptionV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeTieredV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeCustomV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateType
Hide ParametersShow Parameters
V1ContractNewParamsOverridesOverwriteRateRateTypeFlatconst
V1ContractNewParamsOverridesOverwriteRateRateTypeFlatV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypePercentageV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeSubscriptionV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeTieredV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeCustomV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateType
"FLAT"
V1ContractNewParamsOverridesOverwriteRateRateTypePercentageconst
V1ContractNewParamsOverridesOverwriteRateRateTypeFlatV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypePercentageV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeSubscriptionV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeTieredV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeCustomV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateType
"PERCENTAGE"
V1ContractNewParamsOverridesOverwriteRateRateTypeSubscriptionconst
V1ContractNewParamsOverridesOverwriteRateRateTypeFlatV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypePercentageV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeSubscriptionV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeTieredV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeCustomV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateType
"SUBSCRIPTION"
V1ContractNewParamsOverridesOverwriteRateRateTypeTieredconst
V1ContractNewParamsOverridesOverwriteRateRateTypeFlatV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypePercentageV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeSubscriptionV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeTieredV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeCustomV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateType
"TIERED"
V1ContractNewParamsOverridesOverwriteRateRateTypeCustomconst
V1ContractNewParamsOverridesOverwriteRateRateTypeFlatV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypePercentageV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeSubscriptionV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeTieredV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateTypeCustomV1ContractNewParamsOverridesOverwriteRateRateTypeV1ContractNewParamsOverridesOverwriteRateRateType
"CUSTOM"
CreditTypeIDstring
optional
formatuuid
CustomRatemap
optional
map[string, unknown]

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

IsProratedbool
optional

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

Pricefloat64
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.

Quantityfloat64
optional

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

Tiersarray
optional
[]Pricefloat64Sizefloat64Tier

Only set for TIERED rate_type.

Hide ParametersShow Parameters
Pricefloat64
Sizefloat64
optional
Priorityfloat64
optional

Required for EXPLICIT multiplier prioritization scheme and all TIERED overrides. Under EXPLICIT prioritization, overwrites are prioritized first, and then tiered and multiplier overrides are prioritized by their priority value (lowest first). Must be > 0.

ProductIDstring
optional

ID of the product whose rate is being overridden. Cannot be used in conjunction with override_specifiers.

formatuuid
TargetV1ContractNewParamsOverridesTargetCommitRateV1ContractNewParamsOverridesTargetV1ContractNewParamsOverridesTargetListRateV1ContractNewParamsOverridesTargetV1ContractNewParamsOverridesTarget
optional

Indicates whether the override applies to commit rates or list rates. Can only be used for overrides that have is_commit_specific set to true. Defaults to "LIST_RATE".

Hide ParametersShow Parameters
V1ContractNewParamsOverridesTargetCommitRateconst
V1ContractNewParamsOverridesTargetCommitRateV1ContractNewParamsOverridesTargetV1ContractNewParamsOverridesTargetListRateV1ContractNewParamsOverridesTargetV1ContractNewParamsOverridesTarget
"COMMIT_RATE"
V1ContractNewParamsOverridesTargetListRateconst
V1ContractNewParamsOverridesTargetCommitRateV1ContractNewParamsOverridesTargetV1ContractNewParamsOverridesTargetListRateV1ContractNewParamsOverridesTargetV1ContractNewParamsOverridesTarget
"LIST_RATE"
Tiersarray
optional

Required for TIERED type. Must have at least one tier.

Hide ParametersShow Parameters
Multiplierfloat64
Sizefloat64
optional
TypeV1ContractNewParamsOverridesTypeOverwriteV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesTypeMultiplierV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesTypeTieredV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesType
optional

Overwrites are prioritized over multipliers and tiered overrides.

Hide ParametersShow Parameters
V1ContractNewParamsOverridesTypeOverwriteconst
V1ContractNewParamsOverridesTypeOverwriteV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesTypeMultiplierV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesTypeTieredV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesType
"OVERWRITE"
V1ContractNewParamsOverridesTypeMultiplierconst
V1ContractNewParamsOverridesTypeOverwriteV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesTypeMultiplierV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesTypeTieredV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesType
"MULTIPLIER"
V1ContractNewParamsOverridesTypeTieredconst
V1ContractNewParamsOverridesTypeOverwriteV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesTypeMultiplierV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesTypeTieredV1ContractNewParamsOverridesTypeV1ContractNewParamsOverridesType
"TIERED"
PrepaidBalanceThresholdConfigurationfield
optional
Hide ParametersShow Parameters
CommitProductIDstringApplicableProductIDsarrayApplicableProductTagsarrayDescriptionstringNamestringSpecifiersarrayV1ContractNewParamsPrepaidBalanceThresholdConfigurationCommit
Hide ParametersShow Parameters
ProductIDstring

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

ApplicableProductIDsarray
optional
[]string

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.

ApplicableProductTagsarray
optional
[]string

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
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.

Hide ParametersShow Parameters
PresentationGroupValuesmap
optional
map[string, string]
PricingGroupValuesmap
optional
map[string, string]
ProductIDstring
optional

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

formatuuid
ProductTagsarray
optional
[]string

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

IsEnabledbool

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.

Hide ParametersShow Parameters
PaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateType

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
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateType
"NONE"
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateType
"STRIPE"
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigPaymentGateType
"EXTERNAL"

Only applicable if using PRECALCULATED as your tax type.

Hide ParametersShow Parameters
TaxAmountfloat64

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

TaxNamestring
optional

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

Hide ParametersShow Parameters
PaymentTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentType

If left blank, will default to INVOICE

Hide ParametersShow Parameters
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeInvoiceconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentType
"INVOICE"
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypePaymentIntentconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigStripeConfigPaymentType
"PAYMENT_INTENT"
InvoiceMetadatamap
optional
map[string, string]

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

TaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxType
optional

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
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeNoneconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxType
"NONE"
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeStripeconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxType
"STRIPE"
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeAnrokconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxType
"ANROK"
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedconst
V1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsPrepaidBalanceThresholdConfigurationPaymentGateConfigTaxType
"PRECALCULATED"
RechargeToAmountfloat64

Specify the amount the balance should be recharged to.

ThresholdAmountfloat64

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

CustomCreditTypeIDstring
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
Priorityfield
optional
param.Field[float64]

Priority of the contract.

ProfessionalServicesfield
optional

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

Hide ParametersShow Parameters
MaxAmountfloat64

Maximum amount for the term.

ProductIDstring
formatuuid
Quantityfloat64

Quantity for the charge. Will be multiplied by unit_price to determine the amount.

UnitPricefloat64

Unit price for the charge. Will be multiplied by quantity to determine the amount and must be specified.

CustomFieldsmap
optional
map[string, string]
Descriptionstring
optional
NetsuiteSalesOrderIDstring
optional

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

RateCardAliasfield
optional
param.Field[string]

Selects the rate card linked to the specified alias as of the contract's start date.

RateCardIDfield
optional
param.Field[string]
formatuuid
RecurringCommitsfield
optional
Hide ParametersShow Parameters
AccessAmountCreditTypeIDstringUnitPricefloat64Quantityfloat64V1ContractNewParamsRecurringCommitsAccessAmount

The amount of commit to grant.

Hide ParametersShow Parameters
CreditTypeIDstring
formatuuid
UnitPricefloat64
Quantityfloat64
optional

This field is required unless a subscription is attached via subscription_config.

Defines the length of the access schedule for each created commit/credit. The value represents the number of units. Unit defaults to "PERIODS", where the length of a period is determined by the recurrence_frequency.

Hide ParametersShow Parameters
Valuefloat64
UnitV1ContractNewParamsRecurringCommitsCommitDurationUnitPeriodsV1ContractNewParamsRecurringCommitsCommitDurationUnitV1ContractNewParamsRecurringCommitsCommitDurationUnit
optional
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCommitsCommitDurationUnitPeriodsconst
"PERIODS"
Priorityfloat64

Will be passed down to the individual commits

ProductIDstring
formatuuid
StartingAtTime

determines the start time for the first commit

formatdate-time
ApplicableProductIDsarray
optional
[]string

Will be passed down to the individual commits

ApplicableProductTagsarray
optional
[]string

Will be passed down to the individual commits

Descriptionstring
optional

Will be passed down to the individual commits

EndingBeforeTime
optional

Determines when the contract will stop creating recurring commits. optional

formatdate-time

Optional configuration for recurring commit/credit hierarchy access control

Hide ParametersShow Parameters
ChildAccessV1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllstruct{…}V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNonestruct{…}V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsstruct{…}V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccess
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllstruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllTypeAllconst
"ALL"
V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNonestruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNoneTypeNoneconst
"NONE"
V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsstruct
Hide ParametersShow Parameters
ContractIDsarray
[]string
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCommitsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsTypeContractIDsconst
"CONTRACT_IDS"
InvoiceAmountCreditTypeIDstringQuantityfloat64UnitPricefloat64V1ContractNewParamsRecurringCommitsInvoiceAmount
optional

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

Hide ParametersShow Parameters
CreditTypeIDstring
formatuuid
Quantityfloat64
UnitPricefloat64
Namestring
optional

displayed on invoices. will be passed through to the individual commits

minLength1
NetsuiteSalesOrderIDstring
optional

Will be passed down to the individual commits

ProrationV1ContractNewParamsRecurringCommitsProrationNoneV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstAndLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProration
optional

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
V1ContractNewParamsRecurringCommitsProrationNoneconst
V1ContractNewParamsRecurringCommitsProrationNoneV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstAndLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProration
"NONE"
V1ContractNewParamsRecurringCommitsProrationFirstconst
V1ContractNewParamsRecurringCommitsProrationNoneV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstAndLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProration
"FIRST"
V1ContractNewParamsRecurringCommitsProrationLastconst
V1ContractNewParamsRecurringCommitsProrationNoneV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstAndLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProration
"LAST"
V1ContractNewParamsRecurringCommitsProrationFirstAndLastconst
V1ContractNewParamsRecurringCommitsProrationNoneV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProrationFirstAndLastV1ContractNewParamsRecurringCommitsProrationV1ContractNewParamsRecurringCommitsProration
"FIRST_AND_LAST"
RateTypeV1ContractNewParamsRecurringCommitsRateTypeCommitRateV1ContractNewParamsRecurringCommitsRateTypeV1ContractNewParamsRecurringCommitsRateTypeListRateV1ContractNewParamsRecurringCommitsRateTypeV1ContractNewParamsRecurringCommitsRateType
optional

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

Hide ParametersShow Parameters
V1ContractNewParamsRecurringCommitsRateTypeCommitRateconst
V1ContractNewParamsRecurringCommitsRateTypeCommitRateV1ContractNewParamsRecurringCommitsRateTypeV1ContractNewParamsRecurringCommitsRateTypeListRateV1ContractNewParamsRecurringCommitsRateTypeV1ContractNewParamsRecurringCommitsRateType
"COMMIT_RATE"
V1ContractNewParamsRecurringCommitsRateTypeListRateconst
V1ContractNewParamsRecurringCommitsRateTypeCommitRateV1ContractNewParamsRecurringCommitsRateTypeV1ContractNewParamsRecurringCommitsRateTypeListRateV1ContractNewParamsRecurringCommitsRateTypeV1ContractNewParamsRecurringCommitsRateType
"LIST_RATE"
RecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequency
optional

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
V1ContractNewParamsRecurringCommitsRecurrenceFrequencyMonthlyconst
V1ContractNewParamsRecurringCommitsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequency
"MONTHLY"
V1ContractNewParamsRecurringCommitsRecurrenceFrequencyQuarterlyconst
V1ContractNewParamsRecurringCommitsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequency
"QUARTERLY"
V1ContractNewParamsRecurringCommitsRecurrenceFrequencyAnnualconst
V1ContractNewParamsRecurringCommitsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequency
"ANNUAL"
V1ContractNewParamsRecurringCommitsRecurrenceFrequencyWeeklyconst
V1ContractNewParamsRecurringCommitsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCommitsRecurrenceFrequencyV1ContractNewParamsRecurringCommitsRecurrenceFrequency
"WEEKLY"
RolloverFractionfloat64
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
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.

Hide ParametersShow Parameters
PresentationGroupValuesmap
optional
map[string, string]
PricingGroupValuesmap
optional
map[string, string]
ProductIDstring
optional

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

formatuuid
ProductTagsarray
optional
[]string

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

Attach a subscription to the recurring commit/credit.

Hide ParametersShow Parameters
Hide ParametersShow Parameters
IsProratedbool

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

SubscriptionIDstring

ID of the subscription to configure on the recurring commit/credit.

AllocationV1ContractNewParamsRecurringCommitsSubscriptionConfigAllocationPooledV1ContractNewParamsRecurringCommitsSubscriptionConfigAllocationV1ContractNewParamsRecurringCommitsSubscriptionConfigAllocation
optional

If set to POOLED, allocation added per seat is pooled across the account.

Hide ParametersShow Parameters
V1ContractNewParamsRecurringCommitsSubscriptionConfigAllocationPooledconst
"POOLED"
TemporaryIDstring
optional

A temporary ID that can be used to reference the recurring commit for commit specific overrides.

RecurringCreditsfield
optional
Hide ParametersShow Parameters
AccessAmountCreditTypeIDstringUnitPricefloat64Quantityfloat64V1ContractNewParamsRecurringCreditsAccessAmount

The amount of commit to grant.

Hide ParametersShow Parameters
CreditTypeIDstring
formatuuid
UnitPricefloat64
Quantityfloat64
optional

This field is required unless a subscription is attached via subscription_config.

Defines the length of the access schedule for each created commit/credit. The value represents the number of units. Unit defaults to "PERIODS", where the length of a period is determined by the recurrence_frequency.

Hide ParametersShow Parameters
Valuefloat64
UnitV1ContractNewParamsRecurringCreditsCommitDurationUnitPeriodsV1ContractNewParamsRecurringCreditsCommitDurationUnitV1ContractNewParamsRecurringCreditsCommitDurationUnit
optional
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCreditsCommitDurationUnitPeriodsconst
"PERIODS"
Priorityfloat64

Will be passed down to the individual commits

ProductIDstring
formatuuid
StartingAtTime

determines the start time for the first commit

formatdate-time
ApplicableProductIDsarray
optional
[]string

Will be passed down to the individual commits

ApplicableProductTagsarray
optional
[]string

Will be passed down to the individual commits

Descriptionstring
optional

Will be passed down to the individual commits

EndingBeforeTime
optional

Determines when the contract will stop creating recurring commits. optional

formatdate-time

Optional configuration for recurring commit/credit hierarchy access control

Hide ParametersShow Parameters
ChildAccessV1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllstruct{…}V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNonestruct{…}V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsstruct{…}V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccess
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllstruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessAllTypeAllconst
"ALL"
V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNonestruct
Hide ParametersShow Parameters
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessNoneTypeNoneconst
"NONE"
V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsstruct
Hide ParametersShow Parameters
ContractIDsarray
[]string
Hide ParametersShow Parameters
V1ContractNewParamsRecurringCreditsHierarchyConfigurationChildAccessCommitHierarchyChildAccessContractIDsTypeContractIDsconst
"CONTRACT_IDS"
Namestring
optional

displayed on invoices. will be passed through to the individual commits

minLength1
NetsuiteSalesOrderIDstring
optional

Will be passed down to the individual commits

ProrationV1ContractNewParamsRecurringCreditsProrationNoneV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstAndLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProration
optional

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
V1ContractNewParamsRecurringCreditsProrationNoneconst
V1ContractNewParamsRecurringCreditsProrationNoneV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstAndLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProration
"NONE"
V1ContractNewParamsRecurringCreditsProrationFirstconst
V1ContractNewParamsRecurringCreditsProrationNoneV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstAndLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProration
"FIRST"
V1ContractNewParamsRecurringCreditsProrationLastconst
V1ContractNewParamsRecurringCreditsProrationNoneV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstAndLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProration
"LAST"
V1ContractNewParamsRecurringCreditsProrationFirstAndLastconst
V1ContractNewParamsRecurringCreditsProrationNoneV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProrationFirstAndLastV1ContractNewParamsRecurringCreditsProrationV1ContractNewParamsRecurringCreditsProration
"FIRST_AND_LAST"
RateTypeV1ContractNewParamsRecurringCreditsRateTypeCommitRateV1ContractNewParamsRecurringCreditsRateTypeV1ContractNewParamsRecurringCreditsRateTypeListRateV1ContractNewParamsRecurringCreditsRateTypeV1ContractNewParamsRecurringCreditsRateType
optional

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

Hide ParametersShow Parameters
V1ContractNewParamsRecurringCreditsRateTypeCommitRateconst
V1ContractNewParamsRecurringCreditsRateTypeCommitRateV1ContractNewParamsRecurringCreditsRateTypeV1ContractNewParamsRecurringCreditsRateTypeListRateV1ContractNewParamsRecurringCreditsRateTypeV1ContractNewParamsRecurringCreditsRateType
"COMMIT_RATE"
V1ContractNewParamsRecurringCreditsRateTypeListRateconst
V1ContractNewParamsRecurringCreditsRateTypeCommitRateV1ContractNewParamsRecurringCreditsRateTypeV1ContractNewParamsRecurringCreditsRateTypeListRateV1ContractNewParamsRecurringCreditsRateTypeV1ContractNewParamsRecurringCreditsRateType
"LIST_RATE"
RecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequency
optional

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
V1ContractNewParamsRecurringCreditsRecurrenceFrequencyMonthlyconst
V1ContractNewParamsRecurringCreditsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequency
"MONTHLY"
V1ContractNewParamsRecurringCreditsRecurrenceFrequencyQuarterlyconst
V1ContractNewParamsRecurringCreditsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequency
"QUARTERLY"
V1ContractNewParamsRecurringCreditsRecurrenceFrequencyAnnualconst
V1ContractNewParamsRecurringCreditsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequency
"ANNUAL"
V1ContractNewParamsRecurringCreditsRecurrenceFrequencyWeeklyconst
V1ContractNewParamsRecurringCreditsRecurrenceFrequencyMonthlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyQuarterlyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyAnnualV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyWeeklyV1ContractNewParamsRecurringCreditsRecurrenceFrequencyV1ContractNewParamsRecurringCreditsRecurrenceFrequency
"WEEKLY"
RolloverFractionfloat64
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
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.

Hide ParametersShow Parameters
PresentationGroupValuesmap
optional
map[string, string]
PricingGroupValuesmap
optional
map[string, string]
ProductIDstring
optional

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

formatuuid
ProductTagsarray
optional
[]string

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

Attach a subscription to the recurring commit/credit.

Hide ParametersShow Parameters
Hide ParametersShow Parameters
IsProratedbool

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

SubscriptionIDstring

ID of the subscription to configure on the recurring commit/credit.

AllocationV1ContractNewParamsRecurringCreditsSubscriptionConfigAllocationPooledV1ContractNewParamsRecurringCreditsSubscriptionConfigAllocationV1ContractNewParamsRecurringCreditsSubscriptionConfigAllocation
optional

If set to POOLED, allocation added per seat is pooled across the account.

Hide ParametersShow Parameters
V1ContractNewParamsRecurringCreditsSubscriptionConfigAllocationPooledconst
"POOLED"
TemporaryIDstring
optional

A temporary ID that can be used to reference the recurring commit for commit specific overrides.

ResellerRoyaltiesfield
optional

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

Hide ParametersShow Parameters
Fractionfloat64
NetsuiteResellerIDstring
ResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeAwsV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeAwsProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerType
Hide ParametersShow Parameters
V1ContractNewParamsResellerRoyaltiesResellerTypeAwsconst
V1ContractNewParamsResellerRoyaltiesResellerTypeAwsV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeAwsProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerType
"AWS"
V1ContractNewParamsResellerRoyaltiesResellerTypeAwsProServiceconst
V1ContractNewParamsResellerRoyaltiesResellerTypeAwsV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeAwsProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerType
"AWS_PRO_SERVICE"
V1ContractNewParamsResellerRoyaltiesResellerTypeGcpconst
V1ContractNewParamsResellerRoyaltiesResellerTypeAwsV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeAwsProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerType
"GCP"
V1ContractNewParamsResellerRoyaltiesResellerTypeGcpProServiceconst
V1ContractNewParamsResellerRoyaltiesResellerTypeAwsV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeAwsProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerTypeGcpProServiceV1ContractNewParamsResellerRoyaltiesResellerTypeV1ContractNewParamsResellerRoyaltiesResellerType
"GCP_PRO_SERVICE"
StartingAtTime
formatdate-time
ApplicableProductIDsarray
optional
[]string

Must provide at least one of applicable_product_ids or applicable_product_tags.

ApplicableProductTagsarray
optional
[]string

Must provide at least one of applicable_product_ids or applicable_product_tags.

AwsOptionsAwsAccountNumberstringAwsOfferIDstringAwsPayerReferenceIDstringV1ContractNewParamsResellerRoyaltiesAwsOptions
optional
Hide ParametersShow Parameters
AwsAccountNumberstring
optional
AwsOfferIDstring
optional
AwsPayerReferenceIDstring
optional
EndingBeforeTime
optional
formatdate-time
GcpOptionsGcpAccountIDstringGcpOfferIDstringV1ContractNewParamsResellerRoyaltiesGcpOptions
optional
Hide ParametersShow Parameters
GcpAccountIDstring
optional
GcpOfferIDstring
optional
ResellerContractValuefloat64
optional
SalesforceOpportunityIDfield
optional
param.Field[string]

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

ScheduledChargesfield
optional
Hide ParametersShow Parameters
ProductIDstring
formatuuid
ScheduleCreditTypeIDstringDoNotInvoiceboolRecurringScheduleV1ContractNewParamsScheduledChargesScheduleRecurringScheduleScheduleItemsarrayV1ContractNewParamsScheduledChargesSchedule

Must provide either schedule_items or recurring_schedule.

Hide ParametersShow Parameters
CreditTypeIDstring
optional

Defaults to USD (cents) if not passed.

formatuuid
DoNotInvoicebool
optional

This field is only applicable to commit invoice schedules. If true, this schedule will not generate an invoice.

Enter the unit price and quantity for the charge or instead only send the amount. If amount is sent, the unit price is assumed to be the amount and quantity is inferred to be 1.

Hide ParametersShow Parameters
AmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistribution
Hide ParametersShow Parameters
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedconst
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistribution
"DIVIDED"
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedRoundedconst
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistribution
"DIVIDED_ROUNDED"
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionEachconst
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionDividedRoundedV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionEachV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistributionV1ContractNewParamsScheduledChargesScheduleRecurringScheduleAmountDistribution
"EACH"
EndingBeforeTime

RFC 3339 timestamp (exclusive).

formatdate-time
FrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequency
Hide ParametersShow Parameters
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyMonthlyconst
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequency
"MONTHLY"
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyQuarterlyconst
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequency
"QUARTERLY"
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencySemiAnnualconst
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequency
"SEMI_ANNUAL"
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyAnnualconst
V1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyMonthlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyQuarterlyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencySemiAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyAnnualV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequencyV1ContractNewParamsScheduledChargesScheduleRecurringScheduleFrequency
"ANNUAL"
StartingAtTime

RFC 3339 timestamp (inclusive).

formatdate-time
Amountfloat64
optional

Amount for the charge. Can be provided instead of unit_price and quantity. If amount is sent, the unit_price is assumed to be the amount and quantity is inferred to be 1.

Quantityfloat64
optional

Quantity for the charge. Will be multiplied by unit_price to determine the amount and must be specified with unit_price. If specified amount cannot be provided.

UnitPricefloat64
optional

Unit price for the charge. Will be multiplied by quantity to determine the amount and must be specified with quantity. If specified amount cannot be provided.

ScheduleItemsarray
optional

Either provide amount or provide both unit_price and quantity.

Hide ParametersShow Parameters
TimestampTime

timestamp of the scheduled event

formatdate-time
Amountfloat64
optional

Amount for the charge. Can be provided instead of unit_price and quantity. If amount is sent, the unit_price is assumed to be the amount and quantity is inferred to be 1.

Quantityfloat64
optional

Quantity for the charge. Will be multiplied by unit_price to determine the amount and must be specified with unit_price. If specified amount cannot be provided.

UnitPricefloat64
optional

Unit price for the charge. Will be multiplied by quantity to determine the amount and must be specified with quantity. If specified amount cannot be provided.

Namestring
optional

displayed on invoices

minLength1
NetsuiteSalesOrderIDstring
optional

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

ScheduledChargesOnUsageInvoicesfield
optional

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
V1ContractNewParamsScheduledChargesOnUsageInvoicesAllconst
"ALL"
SpendThresholdConfigurationfield
optional
Hide ParametersShow Parameters
CommitProductIDstringDescriptionstringNamestringV1ContractNewParamsSpendThresholdConfigurationCommit
Hide ParametersShow Parameters
ProductIDstring

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.

IsEnabledbool

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.

Hide ParametersShow Parameters
PaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateType

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
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateType
"NONE"
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateType
"STRIPE"
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeExternalV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPaymentGateType
"EXTERNAL"
PrecalculatedTaxConfigTaxAmountfloat64TaxNamestringV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigPrecalculatedTaxConfig
optional

Only applicable if using PRECALCULATED as your tax type.

Hide ParametersShow Parameters
TaxAmountfloat64

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

TaxNamestring
optional

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

Only applicable if using STRIPE as your payment gate type.

Hide ParametersShow Parameters
PaymentTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentType

If left blank, will default to INVOICE

Hide ParametersShow Parameters
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeInvoiceconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentType
"INVOICE"
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypePaymentIntentconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeInvoiceV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypePaymentIntentV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigStripeConfigPaymentType
"PAYMENT_INTENT"
InvoiceMetadatamap
optional
map[string, string]

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

TaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxType
optional

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
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeNoneconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxType
"NONE"
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeStripeconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxType
"STRIPE"
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeAnrokconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxType
"ANROK"
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedconst
V1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeNoneV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeStripeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeAnrokV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypePrecalculatedV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxTypeV1ContractNewParamsSpendThresholdConfigurationPaymentGateConfigTaxType
"PRECALCULATED"
ThresholdAmountfloat64

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

Subscriptionsfield
optional

Optional list of subscriptions to add to the contract.

Hide ParametersShow Parameters
CollectionScheduleV1ContractNewParamsSubscriptionsCollectionScheduleAdvanceV1ContractNewParamsSubscriptionsCollectionScheduleV1ContractNewParamsSubscriptionsCollectionScheduleArrearsV1ContractNewParamsSubscriptionsCollectionScheduleV1ContractNewParamsSubscriptionsCollectionSchedule
Hide ParametersShow Parameters
V1ContractNewParamsSubscriptionsCollectionScheduleAdvanceconst
V1ContractNewParamsSubscriptionsCollectionScheduleAdvanceV1ContractNewParamsSubscriptionsCollectionScheduleV1ContractNewParamsSubscriptionsCollectionScheduleArrearsV1ContractNewParamsSubscriptionsCollectionScheduleV1ContractNewParamsSubscriptionsCollectionSchedule
"ADVANCE"
V1ContractNewParamsSubscriptionsCollectionScheduleArrearsconst
V1ContractNewParamsSubscriptionsCollectionScheduleAdvanceV1ContractNewParamsSubscriptionsCollectionScheduleV1ContractNewParamsSubscriptionsCollectionScheduleArrearsV1ContractNewParamsSubscriptionsCollectionScheduleV1ContractNewParamsSubscriptionsCollectionSchedule
"ARREARS"
InitialQuantityfloat64

The initial quantity for the subscription. It must be non-negative value.

Hide ParametersShow Parameters
InvoiceBehaviorV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorBillImmediatelyV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorBillOnNextCollectionDateV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorV1ContractNewParamsSubscriptionsProrationInvoiceBehavior
optional

Indicates how mid-period quantity adjustments are invoiced. BILL_IMMEDIATELY: Only available when collection schedule is ADVANCE. The quantity increase will be billed immediately on the scheduled date. BILL_ON_NEXT_COLLECTION_DATE: The quantity increase will be billed for in-arrears at the end of the period.

Hide ParametersShow Parameters
V1ContractNewParamsSubscriptionsProrationInvoiceBehaviorBillImmediatelyconst
V1ContractNewParamsSubscriptionsProrationInvoiceBehaviorBillImmediatelyV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorBillOnNextCollectionDateV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorV1ContractNewParamsSubscriptionsProrationInvoiceBehavior
"BILL_IMMEDIATELY"
V1ContractNewParamsSubscriptionsProrationInvoiceBehaviorBillOnNextCollectionDateconst
V1ContractNewParamsSubscriptionsProrationInvoiceBehaviorBillImmediatelyV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorBillOnNextCollectionDateV1ContractNewParamsSubscriptionsProrationInvoiceBehaviorV1ContractNewParamsSubscriptionsProrationInvoiceBehavior
"BILL_ON_NEXT_COLLECTION_DATE"
IsProratedbool
optional

Indicates if the partial period will be prorated or charged a full amount.

Hide ParametersShow Parameters
BillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyMonthlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyQuarterlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyAnnualV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyWeeklyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequency

Frequency to bill subscription with. Together with product_id, must match existing rate on the rate card.

Hide ParametersShow Parameters
V1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyMonthlyconst
V1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyMonthlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyQuarterlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyAnnualV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyWeeklyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequency
"MONTHLY"
V1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyQuarterlyconst
V1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyMonthlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyQuarterlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyAnnualV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyWeeklyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequency
"QUARTERLY"
V1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyAnnualconst
V1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyMonthlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyQuarterlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyAnnualV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyWeeklyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequency
"ANNUAL"
V1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyWeeklyconst
V1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyMonthlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyQuarterlyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyAnnualV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyWeeklyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequencyV1ContractNewParamsSubscriptionsSubscriptionRateBillingFrequency
"WEEKLY"
ProductIDstring

Must be subscription type product

formatuuid
CustomFieldsmap
optional
map[string, string]
Descriptionstring
optional
EndingBeforeTime
optional

Exclusive end time for the subscription. If not provided, subscription inherits contract end date.

formatdate-time
Namestring
optional
StartingAtTime
optional

Inclusive start time for the subscription. If not provided, defaults to contract start date

formatdate-time
TemporaryIDstring
optional

A temporary ID used to reference the subscription in recurring commit/credit subscription configs created within the same payload.

TotalContractValuefield
optional
param.Field[float64]

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

Transitionfield
optional
Hide ParametersShow Parameters
FromContractIDstring
formatuuid
TypeV1ContractNewParamsTransitionTypeSupersedeV1ContractNewParamsTransitionTypeV1ContractNewParamsTransitionTypeRenewalV1ContractNewParamsTransitionTypeV1ContractNewParamsTransitionType

This field's available values may vary based on your client's configuration.

Hide ParametersShow Parameters
V1ContractNewParamsTransitionTypeSupersedeconst
V1ContractNewParamsTransitionTypeSupersedeV1ContractNewParamsTransitionTypeV1ContractNewParamsTransitionTypeRenewalV1ContractNewParamsTransitionTypeV1ContractNewParamsTransitionType
"SUPERSEDE"
V1ContractNewParamsTransitionTypeRenewalconst
V1ContractNewParamsTransitionTypeSupersedeV1ContractNewParamsTransitionTypeV1ContractNewParamsTransitionTypeRenewalV1ContractNewParamsTransitionTypeV1ContractNewParamsTransitionType
"RENEWAL"
Hide ParametersShow Parameters
TrueupV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupRemoveV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupAsIsV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueup
optional

Controls whether future trueup invoices are billed or removed. Default behavior is AS_IS if not specified.

Hide ParametersShow Parameters
V1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupRemoveconst
V1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupRemoveV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupAsIsV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueup
"REMOVE"
V1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupAsIsconst
V1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupRemoveV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupAsIsV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueupV1ContractNewParamsTransitionFutureInvoiceBehaviorTrueup
"AS_IS"
UniquenessKeyfield
optional
param.Field[string]

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
UsageFilterfield
optional
param.Field[GroupKeystringGroupValuesarrayStartingAtTimeBaseUsageFilter]
UsageStatementSchedulefield
optional
Hide ParametersShow Parameters
FrequencyV1ContractNewParamsUsageStatementScheduleFrequencyMonthlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyQuarterlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyAnnualV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyWeeklyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequency
Hide ParametersShow Parameters
V1ContractNewParamsUsageStatementScheduleFrequencyMonthlyconst
V1ContractNewParamsUsageStatementScheduleFrequencyMonthlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyQuarterlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyAnnualV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyWeeklyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequency
"MONTHLY"
V1ContractNewParamsUsageStatementScheduleFrequencyQuarterlyconst
V1ContractNewParamsUsageStatementScheduleFrequencyMonthlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyQuarterlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyAnnualV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyWeeklyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequency
"QUARTERLY"
V1ContractNewParamsUsageStatementScheduleFrequencyAnnualconst
V1ContractNewParamsUsageStatementScheduleFrequencyMonthlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyQuarterlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyAnnualV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyWeeklyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequency
"ANNUAL"
V1ContractNewParamsUsageStatementScheduleFrequencyWeeklyconst
V1ContractNewParamsUsageStatementScheduleFrequencyMonthlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyQuarterlyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyAnnualV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequencyWeeklyV1ContractNewParamsUsageStatementScheduleFrequencyV1ContractNewParamsUsageStatementScheduleFrequency
"WEEKLY"
BillingAnchorDateTime
optional

Required when using CUSTOM_DATE. This option lets you set a historical billing anchor date, aligning future billing cycles with a chosen cadence. For example, if a contract starts on 2024-09-15 and you set the anchor date to 2024-09-10 with a MONTHLY frequency, the first usage statement will cover 09-15 to 10-10. Subsequent statements will follow the 10th of each month.

formatdate-time
DayV1ContractNewParamsUsageStatementScheduleDayFirstOfMonthV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDayContractStartV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDayCustomDateV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDay
optional

If not provided, defaults to the first day of the month.

Hide ParametersShow Parameters
V1ContractNewParamsUsageStatementScheduleDayFirstOfMonthconst
V1ContractNewParamsUsageStatementScheduleDayFirstOfMonthV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDayContractStartV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDayCustomDateV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDay
"FIRST_OF_MONTH"
V1ContractNewParamsUsageStatementScheduleDayContractStartconst
V1ContractNewParamsUsageStatementScheduleDayFirstOfMonthV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDayContractStartV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDayCustomDateV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDay
"CONTRACT_START"
V1ContractNewParamsUsageStatementScheduleDayCustomDateconst
V1ContractNewParamsUsageStatementScheduleDayFirstOfMonthV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDayContractStartV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDayCustomDateV1ContractNewParamsUsageStatementScheduleDayV1ContractNewParamsUsageStatementScheduleDay
"CUSTOM_DATE"
InvoiceGenerationStartingAtTime
optional

The date Metronome should start generating usage invoices. If unspecified, contract start date will be used. This is useful to set if you want to import historical invoices via our 'Create Historical Invoices' API rather than having Metronome automatically generate them.

formatdate-time
Returns
V1ContractNewResponsestruct
Hide ParametersShow Parameters
DataIDstringID
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"),
  )
  contract, err := client.V1.Contracts.New(context.TODO(), metronome.V1ContractNewParams{
    CustomerID: metronome.F("13117714-3f05-48e5-a6e9-a66093f13b4d"),
    StartingAt: metronome.F(time.Now()),
    BillingProviderConfiguration: metronome.F(metronome.V1ContractNewParamsBillingProviderConfiguration{
      BillingProvider: metronome.F(metronome.V1ContractNewParamsBillingProviderConfigurationBillingProviderStripe),
      DeliveryMethod: metronome.F(metronome.V1ContractNewParamsBillingProviderConfigurationDeliveryMethodDirectToBillingProvider),
    }),
    RateCardID: metronome.F("d7abd0cd-4ae9-4db7-8676-e986a4ebd8dc"),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", contract.Data)
}
200 Example
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
  }
}