Skip to content

Commit 31d110d

Browse files
feat(api): api update
1 parent 4115a6b commit 31d110d

14 files changed

Lines changed: 3052 additions & 295 deletions

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 139
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb/orb-71d1ace393e7a2ded73e3c2ef9778c3dfefa88b0d4975f14f6c6d4cfd044e087.yml
3-
openapi_spec_hash: a5c295712ca7eef32912a1ec1dfd4019
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb/orb-45297c0f1067cd444a30371110c69f876accf55f303a3dce9a4f74863b59f18f.yml
3+
openapi_spec_hash: cd2f638b98c6e89342397fef860166b7
44
config_hash: c01c1191b1cd696c7ca855ff6d28a8df

src/orb/resources/customers/credits/ledger.py

Lines changed: 220 additions & 100 deletions
Large diffs are not rendered by default.

src/orb/resources/prices/prices.py

Lines changed: 214 additions & 0 deletions
Large diffs are not rendered by default.

src/orb/types/beta/external_plan_id_create_plan_version_params.py

Lines changed: 308 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,11 @@
5959
"AddPricePriceNewPlanBulkWithFiltersPriceBulkWithFiltersConfigFilter",
6060
"AddPricePriceNewPlanBulkWithFiltersPriceBulkWithFiltersConfigTier",
6161
"AddPricePriceNewPlanBulkWithFiltersPriceConversionRateConfig",
62+
"AddPricePriceNewPlanMatrixWithThresholdDiscountsPrice",
63+
"AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfig",
64+
"AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigMatrixValue",
65+
"AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigThresholdDiscountGroup",
66+
"AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceConversionRateConfig",
6267
"AddPricePriceNewPlanTieredWithProrationPrice",
6368
"AddPricePriceNewPlanTieredWithProrationPriceTieredWithProrationConfig",
6469
"AddPricePriceNewPlanTieredWithProrationPriceTieredWithProrationConfigTier",
@@ -96,6 +101,11 @@
96101
"ReplacePricePriceNewPlanBulkWithFiltersPriceBulkWithFiltersConfigFilter",
97102
"ReplacePricePriceNewPlanBulkWithFiltersPriceBulkWithFiltersConfigTier",
98103
"ReplacePricePriceNewPlanBulkWithFiltersPriceConversionRateConfig",
104+
"ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPrice",
105+
"ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfig",
106+
"ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigMatrixValue",
107+
"ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigThresholdDiscountGroup",
108+
"ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceConversionRateConfig",
99109
"ReplacePricePriceNewPlanTieredWithProrationPrice",
100110
"ReplacePricePriceNewPlanTieredWithProrationPriceTieredWithProrationConfig",
101111
"ReplacePricePriceNewPlanTieredWithProrationPriceTieredWithProrationConfigTier",
@@ -389,6 +399,153 @@ class AddPricePriceNewPlanBulkWithFiltersPrice(TypedDict, total=False):
389399
"""
390400

391401

402+
class AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigMatrixValue(
403+
TypedDict, total=False
404+
):
405+
first_dimension_value: Required[str]
406+
407+
unit_amount: Required[str]
408+
409+
second_dimension_value: Optional[str]
410+
411+
412+
class AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigThresholdDiscountGroup(
413+
TypedDict, total=False
414+
):
415+
above_threshold_discount_percentage: Required[str]
416+
"""Discount rate applied to spend above the threshold."""
417+
418+
below_threshold_discount_percentage: Required[str]
419+
"""Discount rate applied to spend at or below the threshold.
420+
421+
Set to 0 for no baseline discount.
422+
"""
423+
424+
cell_coordinates: Required[str]
425+
"""Semicolon-separated list of matrix cell coordinates targeted by this group.
426+
427+
Each coordinate is `first,second` when the matrix has two dimensions, or just
428+
`first` for a single-dimension matrix. Example: `blue,circle;green,triangle`.
429+
"""
430+
431+
threshold_amount: Required[str]
432+
433+
description: Optional[str]
434+
435+
436+
class AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfig(TypedDict, total=False):
437+
"""Configuration for matrix_with_threshold_discounts pricing"""
438+
439+
default_unit_amount: Required[str]
440+
"""Unit price used for usage that does not match any defined matrix cell."""
441+
442+
first_dimension: Required[str]
443+
"""First matrix dimension key."""
444+
445+
matrix_values: Required[
446+
Iterable[AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigMatrixValue]
447+
]
448+
"""Per-cell unit prices."""
449+
450+
second_dimension: Optional[str]
451+
"""Optional second matrix dimension key."""
452+
453+
threshold_discount_groups: Iterable[
454+
AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigThresholdDiscountGroup
455+
]
456+
457+
458+
AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceConversionRateConfig: TypeAlias = Union[
459+
UnitConversionRateConfig, TieredConversionRateConfig
460+
]
461+
462+
463+
class AddPricePriceNewPlanMatrixWithThresholdDiscountsPrice(TypedDict, total=False):
464+
cadence: Required[Literal["annual", "semi_annual", "monthly", "quarterly", "one_time", "custom"]]
465+
"""The cadence to bill for this price on."""
466+
467+
item_id: Required[str]
468+
"""The id of the item the price will be associated with."""
469+
470+
matrix_with_threshold_discounts_config: Required[
471+
AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfig
472+
]
473+
"""Configuration for matrix_with_threshold_discounts pricing"""
474+
475+
model_type: Required[Literal["matrix_with_threshold_discounts"]]
476+
"""The pricing model type"""
477+
478+
name: Required[str]
479+
"""The name of the price."""
480+
481+
billable_metric_id: Optional[str]
482+
"""The id of the billable metric for the price.
483+
484+
Only needed if the price is usage-based.
485+
"""
486+
487+
billed_in_advance: Optional[bool]
488+
"""
489+
If the Price represents a fixed cost, the price will be billed in-advance if
490+
this is true, and in-arrears if this is false.
491+
"""
492+
493+
billing_cycle_configuration: Optional[NewBillingCycleConfiguration]
494+
"""
495+
For custom cadence: specifies the duration of the billing period in days or
496+
months.
497+
"""
498+
499+
conversion_rate: Optional[float]
500+
"""The per unit conversion rate of the price currency to the invoicing currency."""
501+
502+
conversion_rate_config: Optional[AddPricePriceNewPlanMatrixWithThresholdDiscountsPriceConversionRateConfig]
503+
"""The configuration for the rate of the price currency to the invoicing currency."""
504+
505+
currency: Optional[str]
506+
"""
507+
An ISO 4217 currency string, or custom pricing unit identifier, in which this
508+
price is billed.
509+
"""
510+
511+
dimensional_price_configuration: Optional[NewDimensionalPriceConfiguration]
512+
"""For dimensional price: specifies a price group and dimension values"""
513+
514+
external_price_id: Optional[str]
515+
"""An alias for the price."""
516+
517+
fixed_price_quantity: Optional[float]
518+
"""
519+
If the Price represents a fixed cost, this represents the quantity of units
520+
applied.
521+
"""
522+
523+
invoice_grouping_key: Optional[str]
524+
"""The property used to group this price on an invoice"""
525+
526+
invoicing_cycle_configuration: Optional[NewBillingCycleConfiguration]
527+
"""Within each billing cycle, specifies the cadence at which invoices are produced.
528+
529+
If unspecified, a single invoice is produced per billing cycle.
530+
"""
531+
532+
license_type_id: Optional[str]
533+
"""The ID of the license type to associate with this price."""
534+
535+
metadata: Optional[Dict[str, Optional[str]]]
536+
"""User-specified key/value pairs for the resource.
537+
538+
Individual keys can be removed by setting the value to `null`, and the entire
539+
metadata mapping can be cleared by setting `metadata` to `null`.
540+
"""
541+
542+
reference_id: Optional[str]
543+
"""
544+
A transient ID that can be used to reference this price when adding adjustments
545+
in the same API call.
546+
"""
547+
548+
392549
class AddPricePriceNewPlanTieredWithProrationPriceTieredWithProrationConfigTier(TypedDict, total=False):
393550
"""Configuration for a single tiered with proration tier"""
394551

@@ -1185,6 +1342,7 @@ class AddPricePriceNewPlanEventOutputPrice(TypedDict, total=False):
11851342
NewPlanPackageWithAllocationPrice,
11861343
NewPlanUnitWithPercentPrice,
11871344
NewPlanMatrixWithAllocationPrice,
1345+
AddPricePriceNewPlanMatrixWithThresholdDiscountsPrice,
11881346
AddPricePriceNewPlanTieredWithProrationPrice,
11891347
NewPlanUnitWithProrationPrice,
11901348
NewPlanGroupedAllocationPrice,
@@ -1481,6 +1639,155 @@ class ReplacePricePriceNewPlanBulkWithFiltersPrice(TypedDict, total=False):
14811639
"""
14821640

14831641

1642+
class ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigMatrixValue(
1643+
TypedDict, total=False
1644+
):
1645+
first_dimension_value: Required[str]
1646+
1647+
unit_amount: Required[str]
1648+
1649+
second_dimension_value: Optional[str]
1650+
1651+
1652+
class ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigThresholdDiscountGroup(
1653+
TypedDict, total=False
1654+
):
1655+
above_threshold_discount_percentage: Required[str]
1656+
"""Discount rate applied to spend above the threshold."""
1657+
1658+
below_threshold_discount_percentage: Required[str]
1659+
"""Discount rate applied to spend at or below the threshold.
1660+
1661+
Set to 0 for no baseline discount.
1662+
"""
1663+
1664+
cell_coordinates: Required[str]
1665+
"""Semicolon-separated list of matrix cell coordinates targeted by this group.
1666+
1667+
Each coordinate is `first,second` when the matrix has two dimensions, or just
1668+
`first` for a single-dimension matrix. Example: `blue,circle;green,triangle`.
1669+
"""
1670+
1671+
threshold_amount: Required[str]
1672+
1673+
description: Optional[str]
1674+
1675+
1676+
class ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfig(
1677+
TypedDict, total=False
1678+
):
1679+
"""Configuration for matrix_with_threshold_discounts pricing"""
1680+
1681+
default_unit_amount: Required[str]
1682+
"""Unit price used for usage that does not match any defined matrix cell."""
1683+
1684+
first_dimension: Required[str]
1685+
"""First matrix dimension key."""
1686+
1687+
matrix_values: Required[
1688+
Iterable[ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigMatrixValue]
1689+
]
1690+
"""Per-cell unit prices."""
1691+
1692+
second_dimension: Optional[str]
1693+
"""Optional second matrix dimension key."""
1694+
1695+
threshold_discount_groups: Iterable[
1696+
ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfigThresholdDiscountGroup
1697+
]
1698+
1699+
1700+
ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceConversionRateConfig: TypeAlias = Union[
1701+
UnitConversionRateConfig, TieredConversionRateConfig
1702+
]
1703+
1704+
1705+
class ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPrice(TypedDict, total=False):
1706+
cadence: Required[Literal["annual", "semi_annual", "monthly", "quarterly", "one_time", "custom"]]
1707+
"""The cadence to bill for this price on."""
1708+
1709+
item_id: Required[str]
1710+
"""The id of the item the price will be associated with."""
1711+
1712+
matrix_with_threshold_discounts_config: Required[
1713+
ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceMatrixWithThresholdDiscountsConfig
1714+
]
1715+
"""Configuration for matrix_with_threshold_discounts pricing"""
1716+
1717+
model_type: Required[Literal["matrix_with_threshold_discounts"]]
1718+
"""The pricing model type"""
1719+
1720+
name: Required[str]
1721+
"""The name of the price."""
1722+
1723+
billable_metric_id: Optional[str]
1724+
"""The id of the billable metric for the price.
1725+
1726+
Only needed if the price is usage-based.
1727+
"""
1728+
1729+
billed_in_advance: Optional[bool]
1730+
"""
1731+
If the Price represents a fixed cost, the price will be billed in-advance if
1732+
this is true, and in-arrears if this is false.
1733+
"""
1734+
1735+
billing_cycle_configuration: Optional[NewBillingCycleConfiguration]
1736+
"""
1737+
For custom cadence: specifies the duration of the billing period in days or
1738+
months.
1739+
"""
1740+
1741+
conversion_rate: Optional[float]
1742+
"""The per unit conversion rate of the price currency to the invoicing currency."""
1743+
1744+
conversion_rate_config: Optional[ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPriceConversionRateConfig]
1745+
"""The configuration for the rate of the price currency to the invoicing currency."""
1746+
1747+
currency: Optional[str]
1748+
"""
1749+
An ISO 4217 currency string, or custom pricing unit identifier, in which this
1750+
price is billed.
1751+
"""
1752+
1753+
dimensional_price_configuration: Optional[NewDimensionalPriceConfiguration]
1754+
"""For dimensional price: specifies a price group and dimension values"""
1755+
1756+
external_price_id: Optional[str]
1757+
"""An alias for the price."""
1758+
1759+
fixed_price_quantity: Optional[float]
1760+
"""
1761+
If the Price represents a fixed cost, this represents the quantity of units
1762+
applied.
1763+
"""
1764+
1765+
invoice_grouping_key: Optional[str]
1766+
"""The property used to group this price on an invoice"""
1767+
1768+
invoicing_cycle_configuration: Optional[NewBillingCycleConfiguration]
1769+
"""Within each billing cycle, specifies the cadence at which invoices are produced.
1770+
1771+
If unspecified, a single invoice is produced per billing cycle.
1772+
"""
1773+
1774+
license_type_id: Optional[str]
1775+
"""The ID of the license type to associate with this price."""
1776+
1777+
metadata: Optional[Dict[str, Optional[str]]]
1778+
"""User-specified key/value pairs for the resource.
1779+
1780+
Individual keys can be removed by setting the value to `null`, and the entire
1781+
metadata mapping can be cleared by setting `metadata` to `null`.
1782+
"""
1783+
1784+
reference_id: Optional[str]
1785+
"""
1786+
A transient ID that can be used to reference this price when adding adjustments
1787+
in the same API call.
1788+
"""
1789+
1790+
14841791
class ReplacePricePriceNewPlanTieredWithProrationPriceTieredWithProrationConfigTier(TypedDict, total=False):
14851792
"""Configuration for a single tiered with proration tier"""
14861793

@@ -2277,6 +2584,7 @@ class ReplacePricePriceNewPlanEventOutputPrice(TypedDict, total=False):
22772584
NewPlanPackageWithAllocationPrice,
22782585
NewPlanUnitWithPercentPrice,
22792586
NewPlanMatrixWithAllocationPrice,
2587+
ReplacePricePriceNewPlanMatrixWithThresholdDiscountsPrice,
22802588
ReplacePricePriceNewPlanTieredWithProrationPrice,
22812589
NewPlanUnitWithProrationPrice,
22822590
NewPlanGroupedAllocationPrice,

0 commit comments

Comments
 (0)