diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 263d47d2..5304d0ac 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "4.32.0" + ".": "4.33.0" } \ No newline at end of file diff --git a/.stats.yml b/.stats.yml index 3fc5d44c..62604532 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-79664fa0b4ea00c978ae2516087d0ee591b0ef92ca8db29557a0424bde520e10.yml -openapi_spec_hash: 1ff6eee9184312a3a0fd21eb589132f9 +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/orb%2Forb-d1abf71a1a70a43bdcc4da7104dabcbd67aa7e2d3e6cf21e33f50904b6997bb2.yml +openapi_spec_hash: 28b0b31a997588cf3692458889321e1b config_hash: dd4343ce95871032ef6e0735a4ca038c diff --git a/CHANGELOG.md b/CHANGELOG.md index e1d7dfac..bbafe53d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 4.33.0 (2025-10-31) + +Full Changelog: [v4.32.0...v4.33.0](https://github.com/orbcorp/orb-python/compare/v4.32.0...v4.33.0) + +### Features + +* **api:** api update ([b666010](https://github.com/orbcorp/orb-python/commit/b6660101bad4fec7375463ce218f0b4b6364490b)) + ## 4.32.0 (2025-10-31) Full Changelog: [v4.31.0...v4.32.0](https://github.com/orbcorp/orb-python/compare/v4.31.0...v4.32.0) diff --git a/pyproject.toml b/pyproject.toml index 09297b44..a1f6f251 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "orb-billing" -version = "4.32.0" +version = "4.33.0" description = "The official Python library for the orb API" dynamic = ["readme"] license = "Apache-2.0" diff --git a/src/orb/_version.py b/src/orb/_version.py index 07ad4bb4..7ac11b47 100644 --- a/src/orb/_version.py +++ b/src/orb/_version.py @@ -1,4 +1,4 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. __title__ = "orb" -__version__ = "4.32.0" # x-release-please-version +__version__ = "4.33.0" # x-release-please-version diff --git a/src/orb/resources/customers/credits/ledger.py b/src/orb/resources/customers/credits/ledger.py index 1f7991b5..2434b9da 100644 --- a/src/orb/resources/customers/credits/ledger.py +++ b/src/orb/resources/customers/credits/ledger.py @@ -2,7 +2,7 @@ from __future__ import annotations -from typing import Any, Dict, Union, Optional, cast +from typing import Any, Dict, Union, Iterable, Optional, cast from datetime import date, datetime from typing_extensions import Literal, overload @@ -223,6 +223,8 @@ def create_entry( description: Optional[str] | Omit = omit, effective_date: Union[str, datetime, None] | Omit = omit, expiry_date: Union[str, datetime, None] | Omit = omit, + filters: Optional[Iterable[ledger_create_entry_params.AddIncrementCreditLedgerEntryRequestParamsFilter]] + | Omit = omit, invoice_settings: Optional[ledger_create_entry_params.AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings] | Omit = omit, metadata: Optional[Dict[str, Optional[str]]] | Omit = omit, @@ -363,6 +365,9 @@ def create_entry( expiry_date: An ISO 8601 format date that denotes when this credit balance should expire. + filters: Optional filter to specify which items this credit block applies to. If not + specified, the block will apply to all items for the pricing unit. + invoice_settings: Passing `invoice_settings` automatically generates an invoice for the newly added credits. If `invoice_settings` is passed, you must specify per_unit_cost_basis, as the calculation of the invoice total is done on that @@ -1051,6 +1056,8 @@ def create_entry( description: Optional[str] | Omit = omit, effective_date: Union[str, datetime, None] | Omit = omit, expiry_date: Union[str, datetime, None] | Omit = omit, + filters: Optional[Iterable[ledger_create_entry_params.AddIncrementCreditLedgerEntryRequestParamsFilter]] + | Omit = omit, invoice_settings: Optional[ledger_create_entry_params.AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings] | Omit = omit, metadata: Optional[Dict[str, Optional[str]]] | Omit = omit, @@ -1080,6 +1087,7 @@ def create_entry( "description": description, "effective_date": effective_date, "expiry_date": expiry_date, + "filters": filters, "invoice_settings": invoice_settings, "metadata": metadata, "per_unit_cost_basis": per_unit_cost_basis, @@ -1113,6 +1121,10 @@ def create_entry_by_external_id( description: Optional[str] | Omit = omit, effective_date: Union[str, datetime, None] | Omit = omit, expiry_date: Union[str, datetime, None] | Omit = omit, + filters: Optional[ + Iterable[ledger_create_entry_by_external_id_params.AddIncrementCreditLedgerEntryRequestParamsFilter] + ] + | Omit = omit, invoice_settings: Optional[ ledger_create_entry_by_external_id_params.AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings ] @@ -1255,6 +1267,9 @@ def create_entry_by_external_id( expiry_date: An ISO 8601 format date that denotes when this credit balance should expire. + filters: Optional filter to specify which items this credit block applies to. If not + specified, the block will apply to all items for the pricing unit. + invoice_settings: Passing `invoice_settings` automatically generates an invoice for the newly added credits. If `invoice_settings` is passed, you must specify per_unit_cost_basis, as the calculation of the invoice total is done on that @@ -1943,6 +1958,10 @@ def create_entry_by_external_id( description: Optional[str] | Omit = omit, effective_date: Union[str, datetime, None] | Omit = omit, expiry_date: Union[str, datetime, None] | Omit = omit, + filters: Optional[ + Iterable[ledger_create_entry_by_external_id_params.AddIncrementCreditLedgerEntryRequestParamsFilter] + ] + | Omit = omit, invoice_settings: Optional[ ledger_create_entry_by_external_id_params.AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings ] @@ -1976,6 +1995,7 @@ def create_entry_by_external_id( "description": description, "effective_date": effective_date, "expiry_date": expiry_date, + "filters": filters, "invoice_settings": invoice_settings, "metadata": metadata, "per_unit_cost_basis": per_unit_cost_basis, @@ -2354,6 +2374,8 @@ async def create_entry( description: Optional[str] | Omit = omit, effective_date: Union[str, datetime, None] | Omit = omit, expiry_date: Union[str, datetime, None] | Omit = omit, + filters: Optional[Iterable[ledger_create_entry_params.AddIncrementCreditLedgerEntryRequestParamsFilter]] + | Omit = omit, invoice_settings: Optional[ledger_create_entry_params.AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings] | Omit = omit, metadata: Optional[Dict[str, Optional[str]]] | Omit = omit, @@ -2494,6 +2516,9 @@ async def create_entry( expiry_date: An ISO 8601 format date that denotes when this credit balance should expire. + filters: Optional filter to specify which items this credit block applies to. If not + specified, the block will apply to all items for the pricing unit. + invoice_settings: Passing `invoice_settings` automatically generates an invoice for the newly added credits. If `invoice_settings` is passed, you must specify per_unit_cost_basis, as the calculation of the invoice total is done on that @@ -3182,6 +3207,8 @@ async def create_entry( description: Optional[str] | Omit = omit, effective_date: Union[str, datetime, None] | Omit = omit, expiry_date: Union[str, datetime, None] | Omit = omit, + filters: Optional[Iterable[ledger_create_entry_params.AddIncrementCreditLedgerEntryRequestParamsFilter]] + | Omit = omit, invoice_settings: Optional[ledger_create_entry_params.AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings] | Omit = omit, metadata: Optional[Dict[str, Optional[str]]] | Omit = omit, @@ -3211,6 +3238,7 @@ async def create_entry( "description": description, "effective_date": effective_date, "expiry_date": expiry_date, + "filters": filters, "invoice_settings": invoice_settings, "metadata": metadata, "per_unit_cost_basis": per_unit_cost_basis, @@ -3244,6 +3272,10 @@ async def create_entry_by_external_id( description: Optional[str] | Omit = omit, effective_date: Union[str, datetime, None] | Omit = omit, expiry_date: Union[str, datetime, None] | Omit = omit, + filters: Optional[ + Iterable[ledger_create_entry_by_external_id_params.AddIncrementCreditLedgerEntryRequestParamsFilter] + ] + | Omit = omit, invoice_settings: Optional[ ledger_create_entry_by_external_id_params.AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings ] @@ -3386,6 +3418,9 @@ async def create_entry_by_external_id( expiry_date: An ISO 8601 format date that denotes when this credit balance should expire. + filters: Optional filter to specify which items this credit block applies to. If not + specified, the block will apply to all items for the pricing unit. + invoice_settings: Passing `invoice_settings` automatically generates an invoice for the newly added credits. If `invoice_settings` is passed, you must specify per_unit_cost_basis, as the calculation of the invoice total is done on that @@ -4074,6 +4109,10 @@ async def create_entry_by_external_id( description: Optional[str] | Omit = omit, effective_date: Union[str, datetime, None] | Omit = omit, expiry_date: Union[str, datetime, None] | Omit = omit, + filters: Optional[ + Iterable[ledger_create_entry_by_external_id_params.AddIncrementCreditLedgerEntryRequestParamsFilter] + ] + | Omit = omit, invoice_settings: Optional[ ledger_create_entry_by_external_id_params.AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings ] @@ -4107,6 +4146,7 @@ async def create_entry_by_external_id( "description": description, "effective_date": effective_date, "expiry_date": expiry_date, + "filters": filters, "invoice_settings": invoice_settings, "metadata": metadata, "per_unit_cost_basis": per_unit_cost_basis, diff --git a/src/orb/types/customers/credits/ledger_create_entry_by_external_id_params.py b/src/orb/types/customers/credits/ledger_create_entry_by_external_id_params.py index 302e6456..7352286f 100644 --- a/src/orb/types/customers/credits/ledger_create_entry_by_external_id_params.py +++ b/src/orb/types/customers/credits/ledger_create_entry_by_external_id_params.py @@ -2,15 +2,17 @@ from __future__ import annotations -from typing import Dict, Union, Optional +from typing import Dict, Union, Iterable, Optional from datetime import date, datetime from typing_extensions import Literal, Required, Annotated, TypeAlias, TypedDict +from ...._types import SequenceNotStr from ...._utils import PropertyInfo __all__ = [ "LedgerCreateEntryByExternalIDParams", "AddIncrementCreditLedgerEntryRequestParams", + "AddIncrementCreditLedgerEntryRequestParamsFilter", "AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings", "AddDecrementCreditLedgerEntryRequestParams", "AddExpirationChangeCreditLedgerEntryRequestParams", @@ -51,6 +53,12 @@ class AddIncrementCreditLedgerEntryRequestParams(TypedDict, total=False): expiry_date: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")] """An ISO 8601 format date that denotes when this credit balance should expire.""" + filters: Optional[Iterable[AddIncrementCreditLedgerEntryRequestParamsFilter]] + """Optional filter to specify which items this credit block applies to. + + If not specified, the block will apply to all items for the pricing unit. + """ + invoice_settings: Optional[AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings] """ Passing `invoice_settings` automatically generates an invoice for the newly @@ -74,6 +82,17 @@ class AddIncrementCreditLedgerEntryRequestParams(TypedDict, total=False): """ +class AddIncrementCreditLedgerEntryRequestParamsFilter(TypedDict, total=False): + field: Required[Literal["item_id"]] + """The property of the price the block applies to. Only item_id is supported.""" + + operator: Required[Literal["includes", "excludes"]] + """Should prices that match the filter be included or excluded.""" + + values: Required[SequenceNotStr[str]] + """The IDs or values that match this filter.""" + + class AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings(TypedDict, total=False): auto_collection: Required[bool] """ diff --git a/src/orb/types/customers/credits/ledger_create_entry_params.py b/src/orb/types/customers/credits/ledger_create_entry_params.py index a81fd3fc..6aacb4df 100644 --- a/src/orb/types/customers/credits/ledger_create_entry_params.py +++ b/src/orb/types/customers/credits/ledger_create_entry_params.py @@ -2,15 +2,17 @@ from __future__ import annotations -from typing import Dict, Union, Optional +from typing import Dict, Union, Iterable, Optional from datetime import date, datetime from typing_extensions import Literal, Required, Annotated, TypeAlias, TypedDict +from ...._types import SequenceNotStr from ...._utils import PropertyInfo __all__ = [ "LedgerCreateEntryParams", "AddIncrementCreditLedgerEntryRequestParams", + "AddIncrementCreditLedgerEntryRequestParamsFilter", "AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings", "AddDecrementCreditLedgerEntryRequestParams", "AddExpirationChangeCreditLedgerEntryRequestParams", @@ -51,6 +53,12 @@ class AddIncrementCreditLedgerEntryRequestParams(TypedDict, total=False): expiry_date: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")] """An ISO 8601 format date that denotes when this credit balance should expire.""" + filters: Optional[Iterable[AddIncrementCreditLedgerEntryRequestParamsFilter]] + """Optional filter to specify which items this credit block applies to. + + If not specified, the block will apply to all items for the pricing unit. + """ + invoice_settings: Optional[AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings] """ Passing `invoice_settings` automatically generates an invoice for the newly @@ -74,6 +82,17 @@ class AddIncrementCreditLedgerEntryRequestParams(TypedDict, total=False): """ +class AddIncrementCreditLedgerEntryRequestParamsFilter(TypedDict, total=False): + field: Required[Literal["item_id"]] + """The property of the price the block applies to. Only item_id is supported.""" + + operator: Required[Literal["includes", "excludes"]] + """Should prices that match the filter be included or excluded.""" + + values: Required[SequenceNotStr[str]] + """The IDs or values that match this filter.""" + + class AddIncrementCreditLedgerEntryRequestParamsInvoiceSettings(TypedDict, total=False): auto_collection: Required[bool] """ diff --git a/src/orb/types/shared/new_allocation_price.py b/src/orb/types/shared/new_allocation_price.py index 8ddb175e..7f0b019d 100644 --- a/src/orb/types/shared/new_allocation_price.py +++ b/src/orb/types/shared/new_allocation_price.py @@ -1,12 +1,23 @@ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. -from typing import Optional +from typing import List, Optional from typing_extensions import Literal from ..._models import BaseModel from .custom_expiration import CustomExpiration -__all__ = ["NewAllocationPrice"] +__all__ = ["NewAllocationPrice", "Filter"] + + +class Filter(BaseModel): + field: Literal["item_id"] + """The property of the price the block applies to. Only item_id is supported.""" + + operator: Literal["includes", "excludes"] + """Should prices that match the filter be included or excluded.""" + + values: List[str] + """The IDs or values that match this filter.""" class NewAllocationPrice(BaseModel): @@ -30,3 +41,6 @@ class NewAllocationPrice(BaseModel): Whether the allocated amount should expire at the end of the cadence or roll over to the next period. Set to null if using custom_expiration. """ + + filters: Optional[List[Filter]] = None + """The filters that determine which items the allocation applies to.""" diff --git a/src/orb/types/shared_params/new_allocation_price.py b/src/orb/types/shared_params/new_allocation_price.py index 0d78d15a..155c85df 100644 --- a/src/orb/types/shared_params/new_allocation_price.py +++ b/src/orb/types/shared_params/new_allocation_price.py @@ -2,12 +2,24 @@ from __future__ import annotations -from typing import Optional +from typing import Iterable, Optional from typing_extensions import Literal, Required, TypedDict +from ..._types import SequenceNotStr from .custom_expiration import CustomExpiration -__all__ = ["NewAllocationPrice"] +__all__ = ["NewAllocationPrice", "Filter"] + + +class Filter(TypedDict, total=False): + field: Required[Literal["item_id"]] + """The property of the price the block applies to. Only item_id is supported.""" + + operator: Required[Literal["includes", "excludes"]] + """Should prices that match the filter be included or excluded.""" + + values: Required[SequenceNotStr[str]] + """The IDs or values that match this filter.""" class NewAllocationPrice(TypedDict, total=False): @@ -31,3 +43,6 @@ class NewAllocationPrice(TypedDict, total=False): Whether the allocated amount should expire at the end of the cadence or roll over to the next period. Set to null if using custom_expiration. """ + + filters: Optional[Iterable[Filter]] + """The filters that determine which items the allocation applies to.""" diff --git a/tests/api_resources/beta/test_external_plan_id.py b/tests/api_resources/beta/test_external_plan_id.py index 920332bf..8c574032 100644 --- a/tests/api_resources/beta/test_external_plan_id.py +++ b/tests/api_resources/beta/test_external_plan_id.py @@ -63,6 +63,13 @@ def test_method_create_plan_version_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { @@ -147,6 +154,13 @@ def test_method_create_plan_version_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { @@ -364,6 +378,13 @@ async def test_method_create_plan_version_with_all_params(self, async_client: As "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { @@ -448,6 +469,13 @@ async def test_method_create_plan_version_with_all_params(self, async_client: As "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { diff --git a/tests/api_resources/customers/credits/test_ledger.py b/tests/api_resources/customers/credits/test_ledger.py index cbab5758..c5f0af21 100644 --- a/tests/api_resources/customers/credits/test_ledger.py +++ b/tests/api_resources/customers/credits/test_ledger.py @@ -98,6 +98,13 @@ def test_method_create_entry_with_all_params_overload_1(self, client: Orb) -> No description="description", effective_date=parse_datetime("2019-12-27T18:11:19.117Z"), expiry_date=parse_datetime("2019-12-27T18:11:19.117Z"), + filters=[ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], invoice_settings={ "auto_collection": True, "net_terms": 0, @@ -414,6 +421,13 @@ def test_method_create_entry_by_external_id_with_all_params_overload_1(self, cli description="description", effective_date=parse_datetime("2019-12-27T18:11:19.117Z"), expiry_date=parse_datetime("2019-12-27T18:11:19.117Z"), + filters=[ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], invoice_settings={ "auto_collection": True, "net_terms": 0, @@ -846,6 +860,13 @@ async def test_method_create_entry_with_all_params_overload_1(self, async_client description="description", effective_date=parse_datetime("2019-12-27T18:11:19.117Z"), expiry_date=parse_datetime("2019-12-27T18:11:19.117Z"), + filters=[ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], invoice_settings={ "auto_collection": True, "net_terms": 0, @@ -1162,6 +1183,13 @@ async def test_method_create_entry_by_external_id_with_all_params_overload_1(sel description="description", effective_date=parse_datetime("2019-12-27T18:11:19.117Z"), expiry_date=parse_datetime("2019-12-27T18:11:19.117Z"), + filters=[ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], invoice_settings={ "auto_collection": True, "net_terms": 0, diff --git a/tests/api_resources/test_beta.py b/tests/api_resources/test_beta.py index 5b2987f2..87ffc66d 100644 --- a/tests/api_resources/test_beta.py +++ b/tests/api_resources/test_beta.py @@ -63,6 +63,13 @@ def test_method_create_plan_version_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { @@ -147,6 +154,13 @@ def test_method_create_plan_version_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { @@ -364,6 +378,13 @@ async def test_method_create_plan_version_with_all_params(self, async_client: As "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { @@ -448,6 +469,13 @@ async def test_method_create_plan_version_with_all_params(self, async_client: As "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { diff --git a/tests/api_resources/test_plans.py b/tests/api_resources/test_plans.py index 590f1e77..26bacdbe 100644 --- a/tests/api_resources/test_plans.py +++ b/tests/api_resources/test_plans.py @@ -44,6 +44,13 @@ def test_method_create_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { @@ -301,6 +308,13 @@ async def test_method_create_with_all_params(self, async_client: AsyncOrb) -> No "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "plan_phase_order": 0, "price": { diff --git a/tests/api_resources/test_subscriptions.py b/tests/api_resources/test_subscriptions.py index 66facd61..7270ed6e 100644 --- a/tests/api_resources/test_subscriptions.py +++ b/tests/api_resources/test_subscriptions.py @@ -68,6 +68,13 @@ def test_method_create_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -188,6 +195,13 @@ def test_method_create_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -630,6 +644,13 @@ def test_method_price_intervals_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -871,6 +892,13 @@ def test_method_schedule_plan_change_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -984,6 +1012,13 @@ def test_method_schedule_plan_change_with_all_params(self, client: Orb) -> None: "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -1395,6 +1430,13 @@ async def test_method_create_with_all_params(self, async_client: AsyncOrb) -> No "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -1515,6 +1557,13 @@ async def test_method_create_with_all_params(self, async_client: AsyncOrb) -> No "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -1957,6 +2006,13 @@ async def test_method_price_intervals_with_all_params(self, async_client: AsyncO "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -2198,6 +2254,13 @@ async def test_method_schedule_plan_change_with_all_params(self, async_client: A "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ { @@ -2311,6 +2374,13 @@ async def test_method_schedule_plan_change_with_all_params(self, async_client: A "duration_unit": "day", }, "expires_at_end_of_cadence": True, + "filters": [ + { + "field": "item_id", + "operator": "includes", + "values": ["string"], + } + ], }, "discounts": [ {