From 1b47a44d2ea441032c761797a0373e2651485ad1 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 16 Oct 2025 18:31:15 +0000 Subject: [PATCH 1/3] codegen metadata --- .stats.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.stats.yml b/.stats.yml index d2bd16b2..c97965bc 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 118 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-2b5eeb4a60cbec92f80b4a54f33c2d17b36cbac4739886f737108f2ad74ff12d.yml -openapi_spec_hash: ebbe8419f5831506de5b4c0b4eb56acf +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-cc3ad3383dd73a4bf35b91b19baf855439ec29635ee500163e0bd972faef7bea.yml +openapi_spec_hash: 671698714962b7a17f2f1fc308ad9434 config_hash: 1f73a949b649ecfe6ec68ba1bb459dc2 From bd4bae9cb7618950c7f1d6e1d9d33cd6ccddac6f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 17 Oct 2025 20:31:18 +0000 Subject: [PATCH 2/3] feat(api): api update --- .stats.yml | 4 +- api.md | 1 - src/index.ts | 1 - src/resources/beta/beta.ts | 14 + src/resources/beta/external-plan-id.ts | 14 + src/resources/customers/credits/ledger.ts | 21 + src/resources/plans/plans.ts | 7 + src/resources/prices/prices.ts | 21 + src/resources/shared.ts | 1158 +++++++++++++++++++-- src/resources/subscriptions.ts | 35 + 10 files changed, 1196 insertions(+), 80 deletions(-) diff --git a/.stats.yml b/.stats.yml index c97965bc..320998e1 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 118 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-cc3ad3383dd73a4bf35b91b19baf855439ec29635ee500163e0bd972faef7bea.yml -openapi_spec_hash: 671698714962b7a17f2f1fc308ad9434 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-828c91953d2351040fdd4d90a3d9eafd09f9d240c4f6ce0441b7a10c06c1c722.yml +openapi_spec_hash: c82bc88563f80f600e59e22014d4cec4 config_hash: 1f73a949b649ecfe6ec68ba1bb459dc2 diff --git a/api.md b/api.md index 5c2bb7d3..e031d974 100644 --- a/api.md +++ b/api.md @@ -127,7 +127,6 @@ Types: - TierSubLineItem - TieredConfig - TieredConversionRateConfig -- TransformPriceFilter - TrialDiscount - UnitConfig - UnitConversionRateConfig diff --git a/src/index.ts b/src/index.ts index 950ab25e..78309250 100644 --- a/src/index.ts +++ b/src/index.ts @@ -736,7 +736,6 @@ export declare namespace Orb { export type TierSubLineItem = API.TierSubLineItem; export type TieredConfig = API.TieredConfig; export type TieredConversionRateConfig = API.TieredConversionRateConfig; - export type TransformPriceFilter = API.TransformPriceFilter; export type TrialDiscount = API.TrialDiscount; export type UnitConfig = API.UnitConfig; export type UnitConversionRateConfig = API.UnitConversionRateConfig; diff --git a/src/resources/beta/beta.ts b/src/resources/beta/beta.ts index d3b2a09f..a7491a30 100644 --- a/src/resources/beta/beta.ts +++ b/src/resources/beta/beta.ts @@ -848,6 +848,13 @@ export namespace BetaCreatePlanVersionParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -1590,6 +1597,13 @@ export namespace BetaCreatePlanVersionParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. diff --git a/src/resources/beta/external-plan-id.ts b/src/resources/beta/external-plan-id.ts index 4ed102b9..a0d6a393 100644 --- a/src/resources/beta/external-plan-id.ts +++ b/src/resources/beta/external-plan-id.ts @@ -793,6 +793,13 @@ export namespace ExternalPlanIDCreatePlanVersionParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -1535,6 +1542,13 @@ export namespace ExternalPlanIDCreatePlanVersionParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. diff --git a/src/resources/customers/credits/ledger.ts b/src/resources/customers/credits/ledger.ts index dd61fe46..f9fdf402 100644 --- a/src/resources/customers/credits/ledger.ts +++ b/src/resources/customers/credits/ledger.ts @@ -471,11 +471,32 @@ export class LedgerListByExternalIDResponsesPage extends Page | null; + expiry_date: string | null; per_unit_cost_basis: string | null; } +export namespace AffectedBlock { + export interface BlockFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface AmendmentLedgerEntry { id: string; diff --git a/src/resources/plans/plans.ts b/src/resources/plans/plans.ts index 28808306..d0483499 100644 --- a/src/resources/plans/plans.ts +++ b/src/resources/plans/plans.ts @@ -990,6 +990,13 @@ export namespace PlanCreateParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. diff --git a/src/resources/prices/prices.ts b/src/resources/prices/prices.ts index 39d326d8..b19cbe96 100644 --- a/src/resources/prices/prices.ts +++ b/src/resources/prices/prices.ts @@ -3913,6 +3913,13 @@ export declare namespace PriceCreateParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -4534,6 +4541,13 @@ export namespace PriceEvaluateMultipleParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -5145,6 +5159,13 @@ export namespace PriceEvaluatePreviewEventsParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. diff --git a/src/resources/shared.ts b/src/resources/shared.ts index e5ecd15a..36e570e6 100644 --- a/src/resources/shared.ts +++ b/src/resources/shared.ts @@ -86,11 +86,30 @@ export interface AmountDiscount { /** * The filters that determine which prices to apply this discount to. */ - filters?: Array | null; + filters?: Array | null; reason?: string | null; } +export namespace AmountDiscount { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface AmountDiscountInterval { /** * Only available if discount_type is `amount`. @@ -112,7 +131,7 @@ export interface AmountDiscountInterval { /** * The filters that determine which prices this discount interval applies to. */ - filters: Array; + filters: Array; /** * The start date of the discount interval. @@ -120,6 +139,25 @@ export interface AmountDiscountInterval { start_date: string; } +export namespace AmountDiscountInterval { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface BillableMetricTiny { id: string; } @@ -2224,7 +2262,7 @@ export interface Maximum { /** * The filters that determine which prices to apply this maximum to. */ - filters: Array; + filters: Array; /** * Maximum amount applied @@ -2232,6 +2270,25 @@ export interface Maximum { maximum_amount: string; } +export namespace Maximum { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface MaximumInterval { /** * The price interval ids that this maximum interval applies to. @@ -2246,7 +2303,7 @@ export interface MaximumInterval { /** * The filters that determine which prices this maximum interval applies to. */ - filters: Array; + filters: Array; /** * The maximum amount to charge in a given billing period for the price intervals @@ -2260,6 +2317,25 @@ export interface MaximumInterval { start_date: string; } +export namespace MaximumInterval { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface Minimum { /** * @deprecated List of price_ids that this minimum amount applies to. For plan/plan @@ -2270,7 +2346,7 @@ export interface Minimum { /** * The filters that determine which prices to apply this minimum to. */ - filters: Array; + filters: Array; /** * Minimum amount applied @@ -2278,6 +2354,25 @@ export interface Minimum { minimum_amount: string; } +export namespace Minimum { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface MinimumInterval { /** * The price interval ids that this minimum interval applies to. @@ -2292,7 +2387,7 @@ export interface MinimumInterval { /** * The filters that determine which prices this minimum interval applies to. */ - filters: Array; + filters: Array; /** * The minimum amount to charge in a given billing period for the price intervals @@ -2306,6 +2401,25 @@ export interface MinimumInterval { start_date: string; } +export namespace MinimumInterval { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface MonetaryAmountDiscountAdjustment { id: string; @@ -2330,7 +2444,7 @@ export interface MonetaryAmountDiscountAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -2350,6 +2464,25 @@ export interface MonetaryAmountDiscountAdjustment { replaces_adjustment_id: string | null; } +export namespace MonetaryAmountDiscountAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface MonetaryMaximumAdjustment { id: string; @@ -2368,7 +2501,7 @@ export interface MonetaryMaximumAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -2394,6 +2527,25 @@ export interface MonetaryMaximumAdjustment { replaces_adjustment_id: string | null; } +export namespace MonetaryMaximumAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface MonetaryMinimumAdjustment { id: string; @@ -2412,7 +2564,7 @@ export interface MonetaryMinimumAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -2443,6 +2595,25 @@ export interface MonetaryMinimumAdjustment { replaces_adjustment_id: string | null; } +export namespace MonetaryMinimumAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface MonetaryPercentageDiscountAdjustment { id: string; @@ -2461,7 +2632,7 @@ export interface MonetaryPercentageDiscountAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -2487,6 +2658,25 @@ export interface MonetaryPercentageDiscountAdjustment { replaces_adjustment_id: string | null; } +export namespace MonetaryPercentageDiscountAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface MonetaryUsageDiscountAdjustment { id: string; @@ -2505,7 +2695,7 @@ export interface MonetaryUsageDiscountAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -2531,6 +2721,25 @@ export interface MonetaryUsageDiscountAdjustment { usage_discount: number; } +export namespace MonetaryUsageDiscountAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface NewAllocationPrice { /** * An amount of the currency to allocate to the customer at the specified cadence. @@ -2588,7 +2797,7 @@ export interface NewAmountDiscount { /** * A list of filters that determine which prices this adjustment will apply to. */ - filters?: Array | null; + filters?: Array | null; /** * When false, this adjustment will be applied to a single price. Otherwise, it @@ -2602,6 +2811,25 @@ export interface NewAmountDiscount { price_type?: 'usage' | 'fixed_in_advance' | 'fixed_in_arrears' | 'fixed' | 'in_arrears' | null; } +export namespace NewAmountDiscount { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface NewBillingCycleConfiguration { /** * The duration of the billing period. @@ -5813,7 +6041,7 @@ export interface NewMaximum { /** * A list of filters that determine which prices this adjustment will apply to. */ - filters?: Array | null; + filters?: Array | null; /** * When false, this adjustment will be applied to a single price. Otherwise, it @@ -5827,6 +6055,25 @@ export interface NewMaximum { price_type?: 'usage' | 'fixed_in_advance' | 'fixed_in_arrears' | 'fixed' | 'in_arrears' | null; } +export namespace NewMaximum { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface NewMinimum { adjustment_type: 'minimum'; @@ -5860,7 +6107,7 @@ export interface NewMinimum { /** * A list of filters that determine which prices this adjustment will apply to. */ - filters?: Array | null; + filters?: Array | null; /** * When false, this adjustment will be applied to a single price. Otherwise, it @@ -5874,6 +6121,25 @@ export interface NewMinimum { price_type?: 'usage' | 'fixed_in_advance' | 'fixed_in_arrears' | 'fixed' | 'in_arrears' | null; } +export namespace NewMinimum { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface NewPercentageDiscount { adjustment_type: 'percentage_discount'; @@ -5902,7 +6168,7 @@ export interface NewPercentageDiscount { /** * A list of filters that determine which prices this adjustment will apply to. */ - filters?: Array | null; + filters?: Array | null; /** * When false, this adjustment will be applied to a single price. Otherwise, it @@ -5916,6 +6182,25 @@ export interface NewPercentageDiscount { price_type?: 'usage' | 'fixed_in_advance' | 'fixed_in_arrears' | 'fixed' | 'in_arrears' | null; } +export namespace NewPercentageDiscount { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface NewPlanBulkPrice { /** * Configuration for bulk pricing @@ -9148,7 +9433,7 @@ export interface NewUsageDiscount { /** * A list of filters that determine which prices this adjustment will apply to. */ - filters?: Array | null; + filters?: Array | null; /** * When false, this adjustment will be applied to a single price. Otherwise, it @@ -9162,6 +9447,25 @@ export interface NewUsageDiscount { price_type?: 'usage' | 'fixed_in_advance' | 'fixed_in_arrears' | 'fixed' | 'in_arrears' | null; } +export namespace NewUsageDiscount { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface OtherSubLineItem { /** * The total amount for this sub line item. @@ -9244,11 +9548,30 @@ export interface PercentageDiscount { /** * The filters that determine which prices to apply this discount to. */ - filters?: Array | null; + filters?: Array | null; reason?: string | null; } +export namespace PercentageDiscount { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface PercentageDiscountInterval { /** * The price interval ids that this discount interval applies to. @@ -9265,7 +9588,7 @@ export interface PercentageDiscountInterval { /** * The filters that determine which prices this discount interval applies to. */ - filters: Array; + filters: Array; /** * Only available if discount_type is `percentage`.This is a number between 0 @@ -9279,6 +9602,25 @@ export interface PercentageDiscountInterval { start_date: string; } +export namespace PercentageDiscountInterval { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface PlanPhaseAmountDiscountAdjustment { id: string; @@ -9298,7 +9640,7 @@ export interface PlanPhaseAmountDiscountAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -9323,6 +9665,25 @@ export interface PlanPhaseAmountDiscountAdjustment { replaces_adjustment_id: string | null; } +export namespace PlanPhaseAmountDiscountAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface PlanPhaseMaximumAdjustment { id: string; @@ -9336,7 +9697,7 @@ export interface PlanPhaseMaximumAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -9367,6 +9728,25 @@ export interface PlanPhaseMaximumAdjustment { replaces_adjustment_id: string | null; } +export namespace PlanPhaseMaximumAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface PlanPhaseMinimumAdjustment { id: string; @@ -9380,7 +9760,7 @@ export interface PlanPhaseMinimumAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -9416,6 +9796,25 @@ export interface PlanPhaseMinimumAdjustment { replaces_adjustment_id: string | null; } +export namespace PlanPhaseMinimumAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface PlanPhasePercentageDiscountAdjustment { id: string; @@ -9429,7 +9828,7 @@ export interface PlanPhasePercentageDiscountAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -9460,6 +9859,25 @@ export interface PlanPhasePercentageDiscountAdjustment { replaces_adjustment_id: string | null; } +export namespace PlanPhasePercentageDiscountAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface PlanPhaseUsageDiscountAdjustment { id: string; @@ -9473,7 +9891,7 @@ export interface PlanPhaseUsageDiscountAdjustment { /** * The filters that determine which prices to apply this adjustment to. */ - filters: Array; + filters: Array; /** * True for adjustments that apply to an entire invoice, false for adjustments that @@ -9504,6 +9922,25 @@ export interface PlanPhaseUsageDiscountAdjustment { usage_discount: number; } +export namespace PlanPhaseUsageDiscountAdjustment { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + /** * The Price resource represents a price that can be billed on a subscription, * resulting in a charge on an invoice in the form of an invoice line item. Prices @@ -9560,7 +9997,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -9642,9 +10079,28 @@ export namespace Price { dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null; } - export interface TieredPrice { - id: string; - + export namespace UnitPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + } + + export interface TieredPrice { + id: string; + billable_metric: Shared.BillableMetricTiny | null; billing_cycle_configuration: Shared.BillingCycleConfiguration; @@ -9653,7 +10109,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -9735,6 +10191,25 @@ export namespace Price { dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null; } + export namespace TieredPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + } + export interface BulkPrice { id: string; @@ -9751,7 +10226,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -9828,6 +10303,25 @@ export namespace Price { dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null; } + export namespace BulkPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + } + export interface BulkWithFiltersPrice { id: string; @@ -9844,7 +10338,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -9968,6 +10462,23 @@ export namespace Price { tier_lower_bound?: string | null; } } + + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } } export interface PackagePrice { @@ -9981,7 +10492,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -10063,6 +10574,25 @@ export namespace Price { dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null; } + export namespace PackagePrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + } + export interface MatrixPrice { id: string; @@ -10074,7 +10604,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -10156,6 +10686,25 @@ export namespace Price { dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null; } + export namespace MatrixPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + } + export interface ThresholdTotalAmountPrice { id: string; @@ -10167,7 +10716,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -10250,6 +10799,23 @@ export namespace Price { } export namespace ThresholdTotalAmountPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for threshold_total_amount pricing */ @@ -10295,7 +10861,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -10378,6 +10944,23 @@ export namespace Price { } export namespace TieredPackagePrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for tiered_package pricing */ @@ -10425,7 +11008,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -10508,6 +11091,23 @@ export namespace Price { } export namespace TieredWithMinimumPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for tiered_with_minimum pricing */ @@ -10563,7 +11163,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -10646,6 +11246,23 @@ export namespace Price { } export namespace GroupedTieredPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for grouped_tiered pricing */ @@ -10691,7 +11308,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -10774,6 +11391,23 @@ export namespace Price { } export namespace TieredPackageWithMinimumPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for tiered_package_with_minimum pricing */ @@ -10824,7 +11458,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -10907,6 +11541,23 @@ export namespace Price { } export namespace PackageWithAllocationPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for package_with_allocation pricing */ @@ -10939,7 +11590,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11022,6 +11673,23 @@ export namespace Price { } export namespace UnitWithPercentPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for unit_with_percent pricing */ @@ -11049,7 +11717,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11131,6 +11799,25 @@ export namespace Price { dimensional_price_configuration?: Shared.DimensionalPriceConfiguration | null; } + export namespace MatrixWithAllocationPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + } + export interface TieredWithProrationPrice { id: string; @@ -11142,7 +11829,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11225,6 +11912,23 @@ export namespace Price { } export namespace TieredWithProrationPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for tiered_with_proration pricing */ @@ -11265,7 +11969,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11348,6 +12052,23 @@ export namespace Price { } export namespace UnitWithProrationPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for unit_with_proration pricing */ @@ -11370,7 +12091,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11453,6 +12174,23 @@ export namespace Price { } export namespace GroupedAllocationPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for grouped_allocation pricing */ @@ -11490,7 +12228,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11594,6 +12332,23 @@ export namespace Price { tier_lower_bound?: string | null; } } + + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } } export interface GroupedWithProratedMinimumPrice { @@ -11607,7 +12362,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11690,6 +12445,23 @@ export namespace Price { } export namespace GroupedWithProratedMinimumPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for grouped_with_prorated_minimum pricing */ @@ -11722,7 +12494,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11805,6 +12577,23 @@ export namespace Price { } export namespace GroupedWithMeteredMinimumPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for grouped_with_metered_minimum pricing */ @@ -11886,7 +12675,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -11969,6 +12758,23 @@ export namespace Price { } export namespace GroupedWithMinMaxThresholdsPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for grouped_with_min_max_thresholds pricing */ @@ -12006,7 +12812,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -12089,6 +12895,23 @@ export namespace Price { } export namespace MatrixWithDisplayNamePrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for matrix_with_display_name pricing */ @@ -12138,7 +12961,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -12221,6 +13044,23 @@ export namespace Price { } export namespace GroupedTieredPackagePrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for grouped_tiered_package pricing */ @@ -12271,7 +13111,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -12354,6 +13194,23 @@ export namespace Price { } export namespace MaxGroupTieredPackagePrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for max_group_tiered_package pricing */ @@ -12403,7 +13260,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -12486,6 +13343,23 @@ export namespace Price { } export namespace ScalableMatrixWithUnitPricingPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for scalable_matrix_with_unit_pricing pricing */ @@ -12550,7 +13424,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -12633,6 +13507,23 @@ export namespace Price { } export namespace ScalableMatrixWithTieredPricingPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for scalable_matrix_with_tiered_pricing pricing */ @@ -12707,7 +13598,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -12790,6 +13681,23 @@ export namespace Price { } export namespace CumulativeGroupedBulkPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for cumulative_grouped_bulk pricing */ @@ -12839,7 +13747,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -12922,6 +13830,23 @@ export namespace Price { } export namespace MinimumCompositePrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for minimum pricing */ @@ -12949,7 +13874,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -13032,6 +13957,23 @@ export namespace Price { } export namespace PercentCompositePrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for percent pricing */ @@ -13054,7 +13996,7 @@ export namespace Price { cadence: 'one_time' | 'monthly' | 'quarterly' | 'semi_annual' | 'annual' | 'custom'; - composite_price_filters: Array | null; + composite_price_filters: Array | null; conversion_rate: number | null; @@ -13137,6 +14079,23 @@ export namespace Price { } export namespace EventOutputPrice { + export interface CompositePriceFilter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } + /** * Configuration for event_output pricing */ @@ -13146,6 +14105,13 @@ export namespace Price { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -13335,23 +14301,6 @@ export interface TieredConversionRateConfig { tiered_config: ConversionRateTieredConfig; } -export interface TransformPriceFilter { - /** - * The property of the price to filter on. - */ - field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; - - /** - * Should prices that match the filter be included or excluded. - */ - operator: 'includes' | 'excludes'; - - /** - * The IDs or values that match this filter. - */ - values: Array; -} - export interface TrialDiscount { discount_type: 'trial'; @@ -13364,7 +14313,7 @@ export interface TrialDiscount { /** * The filters that determine which prices to apply this discount to. */ - filters?: Array | null; + filters?: Array | null; reason?: string | null; @@ -13379,6 +14328,25 @@ export interface TrialDiscount { trial_percentage_discount?: number | null; } +export namespace TrialDiscount { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + /** * Configuration for unit pricing */ @@ -13413,11 +14381,30 @@ export interface UsageDiscount { /** * The filters that determine which prices to apply this discount to. */ - filters?: Array | null; + filters?: Array | null; reason?: string | null; } +export namespace UsageDiscount { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export interface UsageDiscountInterval { /** * The price interval ids that this discount interval applies to. @@ -13434,7 +14421,7 @@ export interface UsageDiscountInterval { /** * The filters that determine which prices this discount interval applies to. */ - filters: Array; + filters: Array; /** * The start date of the discount interval. @@ -13448,6 +14435,25 @@ export interface UsageDiscountInterval { usage_discount: number; } +export namespace UsageDiscountInterval { + export interface Filter { + /** + * The property of the price to filter on. + */ + field: 'price_id' | 'item_id' | 'price_type' | 'currency' | 'pricing_unit_id'; + + /** + * Should prices that match the filter be included or excluded. + */ + operator: 'includes' | 'excludes'; + + /** + * The IDs or values that match this filter. + */ + values: Array; + } +} + export class CreditNotesPage extends Page {} export class InvoicesPage extends Page {} diff --git a/src/resources/subscriptions.ts b/src/resources/subscriptions.ts index 97e220c5..86ca4b30 100644 --- a/src/resources/subscriptions.ts +++ b/src/resources/subscriptions.ts @@ -5521,6 +5521,13 @@ export namespace SubscriptionCreateParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -6281,6 +6288,13 @@ export namespace SubscriptionCreateParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -7103,6 +7117,13 @@ export namespace SubscriptionPriceIntervalsParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -8175,6 +8196,13 @@ export namespace SubscriptionSchedulePlanChangeParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. @@ -8935,6 +8963,13 @@ export namespace SubscriptionSchedulePlanChangeParams { */ unit_rating_key: string; + /** + * If provided, this amount will be used as the unit rate when an event does not + * have a value for the `unit_rating_key`. If not provided, events missing a unit + * rate will be ignored. + */ + default_unit_rate?: string | null; + /** * An optional key in the event data to group by (e.g., event ID). All events will * also be grouped by their unit rate. From f46ab4a8e012454cc674cd05987b99d2dfc79b5f Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Fri, 17 Oct 2025 20:31:40 +0000 Subject: [PATCH 3/3] release: 5.20.0 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ package.json | 2 +- src/version.ts | 2 +- 4 files changed, 11 insertions(+), 3 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 63a3704d..dec47960 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "5.19.0" + ".": "5.20.0" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 6206b496..e7bc51ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 5.20.0 (2025-10-17) + +Full Changelog: [v5.19.0...v5.20.0](https://github.com/orbcorp/orb-node/compare/v5.19.0...v5.20.0) + +### Features + +* **api:** api update ([bd4bae9](https://github.com/orbcorp/orb-node/commit/bd4bae9cb7618950c7f1d6e1d9d33cd6ccddac6f)) + ## 5.19.0 (2025-10-15) Full Changelog: [v5.18.0...v5.19.0](https://github.com/orbcorp/orb-node/compare/v5.18.0...v5.19.0) diff --git a/package.json b/package.json index 52c103d4..f3ed5437 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "orb-billing", - "version": "5.19.0", + "version": "5.20.0", "description": "The official TypeScript library for the Orb API", "author": "Orb ", "types": "dist/index.d.ts", diff --git a/src/version.ts b/src/version.ts index 6bd23c18..36168d9b 100644 --- a/src/version.ts +++ b/src/version.ts @@ -1 +1 @@ -export const VERSION = '5.19.0'; // x-release-please-version +export const VERSION = '5.20.0'; // x-release-please-version