paid-python 0.5.0__tar.gz → 0.6.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {paid_python-0.5.0 → paid_python-0.6.0}/PKG-INFO +1 -1
- {paid_python-0.5.0 → paid_python-0.6.0}/pyproject.toml +1 -1
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/__init__.py +2 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/client_wrapper.py +1 -1
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/orders/client.py +10 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/orders/raw_client.py +10 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/plans/client.py +71 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/plans/raw_client.py +119 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/__init__.py +2 -0
- paid_python-0.6.0/src/paid/types/plan_group.py +60 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/LICENSE +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/README.md +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/agents/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/agents/client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/agents/raw_client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/contacts/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/contacts/client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/contacts/raw_client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/api_error.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/datetime_utils.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/file.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/force_multipart.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/http_client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/http_response.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/jsonable_encoder.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/pydantic_utilities.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/query_encoder.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/remove_none_from_dict.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/request_options.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/core/serialization.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/customers/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/customers/client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/customers/raw_client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/environment.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/errors/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/errors/bad_request_error.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/errors/forbidden_error.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/errors/internal_server_error.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/errors/not_found_error.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/logger.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/orders/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/orders/lines/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/orders/lines/client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/orders/lines/raw_client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/plans/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/products/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/products/client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/products/raw_client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/products/types/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/products/types/product_create_type.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/py.typed +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/traces/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/traces/client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/traces/raw_client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/autoinstrumentation.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/context_data.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/context_manager.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/distributed_tracing.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/signal.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/tracing.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/anthropic/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/anthropic/anthropicWrapper.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/bedrock/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/bedrock/bedrockWrapper.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/gemini/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/gemini/geminiWrapper.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/langchain/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/langchain/paidLangChainCallback.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/llamaindex/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/llamaindex/llamaIndexWrapper.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/mistral/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/mistral/mistralWrapper.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/openai/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/openai/openAiWrapper.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/openai_agents/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/openai_agents/openaiAgentsHook.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/utils.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/address.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/agent.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/agent_attribute.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/agent_price_point.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/agent_price_point_tiers.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/agent_update.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/api_error.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/billing_frequency.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/charge_type.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/contact.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/cost_amount.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/cost_trace.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/cost_traces_response.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/creation_source.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/creation_state.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/customer.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/customer_update.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/entitlement_usage.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/error.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/order.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/order_line.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/order_line_attribute.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/order_line_attribute_create_one.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/order_line_attribute_pricing.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/order_line_create.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/pagination_meta.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/plan.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/plan_plan_products_item.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/plan_plan_products_item_plan_product_attribute_item.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/price_point.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/pricing.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/pricing_model_type.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/product.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/product_type.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/product_update.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/product_update_type.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/salutation.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/signal.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/signal_v_2.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/tax_exempt_status.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/tier.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/trace.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/traces_response.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/usage_pagination_meta.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/usage_summaries_response.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/usage_summary.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/usage_summary_order.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/types/usage_summary_order_line.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/usage/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/usage/client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/usage/raw_client.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/usage/types/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/usage/types/usage_check_usage_response.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/src/paid/version.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/audio_wrappers.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/chat_wrappers.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/completion_wrappers.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/config.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/embeddings_wrappers.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/event_emitter.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/event_models.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/image_gen_wrappers.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/shared/span_utils.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/utils.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/v0/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/v1/__init__.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/v1/assistant_wrappers.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/v1/event_handler_wrapper.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/v1/responses_wrappers.py +0 -0
- {paid_python-0.5.0 → paid_python-0.6.0}/vendor/patched-instrumentation-openllmetry/packages/opentelemetry-instrumentation-openai/opentelemetry/instrumentation/openai/version.py +0 -0
|
@@ -30,6 +30,7 @@ from .types import (
|
|
|
30
30
|
OrderLineCreate,
|
|
31
31
|
PaginationMeta,
|
|
32
32
|
Plan,
|
|
33
|
+
PlanGroup,
|
|
33
34
|
PlanPlanProductsItem,
|
|
34
35
|
PlanPlanProductsItemPlanProductAttributeItem,
|
|
35
36
|
PricePoint,
|
|
@@ -95,6 +96,7 @@ __all__ = [
|
|
|
95
96
|
"Paid",
|
|
96
97
|
"PaidEnvironment",
|
|
97
98
|
"Plan",
|
|
99
|
+
"PlanGroup",
|
|
98
100
|
"PlanPlanProductsItem",
|
|
99
101
|
"PlanPlanProductsItemPlanProductAttributeItem",
|
|
100
102
|
"PricePoint",
|
|
@@ -64,6 +64,7 @@ class OrdersClient:
|
|
|
64
64
|
billing_contact_id: typing.Optional[str] = OMIT,
|
|
65
65
|
description: typing.Optional[str] = OMIT,
|
|
66
66
|
end_date: typing.Optional[str] = OMIT,
|
|
67
|
+
plan_id: typing.Optional[str] = OMIT,
|
|
67
68
|
order_lines: typing.Optional[typing.Sequence[OrderLineCreate]] = OMIT,
|
|
68
69
|
request_options: typing.Optional[RequestOptions] = None,
|
|
69
70
|
) -> Order:
|
|
@@ -86,6 +87,9 @@ class OrdersClient:
|
|
|
86
87
|
|
|
87
88
|
end_date : typing.Optional[str]
|
|
88
89
|
|
|
90
|
+
plan_id : typing.Optional[str]
|
|
91
|
+
Optional plan ID to associate with this order
|
|
92
|
+
|
|
89
93
|
order_lines : typing.Optional[typing.Sequence[OrderLineCreate]]
|
|
90
94
|
|
|
91
95
|
request_options : typing.Optional[RequestOptions]
|
|
@@ -121,6 +125,7 @@ class OrdersClient:
|
|
|
121
125
|
billing_contact_id=billing_contact_id,
|
|
122
126
|
description=description,
|
|
123
127
|
end_date=end_date,
|
|
128
|
+
plan_id=plan_id,
|
|
124
129
|
order_lines=order_lines,
|
|
125
130
|
request_options=request_options,
|
|
126
131
|
)
|
|
@@ -269,6 +274,7 @@ class AsyncOrdersClient:
|
|
|
269
274
|
billing_contact_id: typing.Optional[str] = OMIT,
|
|
270
275
|
description: typing.Optional[str] = OMIT,
|
|
271
276
|
end_date: typing.Optional[str] = OMIT,
|
|
277
|
+
plan_id: typing.Optional[str] = OMIT,
|
|
272
278
|
order_lines: typing.Optional[typing.Sequence[OrderLineCreate]] = OMIT,
|
|
273
279
|
request_options: typing.Optional[RequestOptions] = None,
|
|
274
280
|
) -> Order:
|
|
@@ -291,6 +297,9 @@ class AsyncOrdersClient:
|
|
|
291
297
|
|
|
292
298
|
end_date : typing.Optional[str]
|
|
293
299
|
|
|
300
|
+
plan_id : typing.Optional[str]
|
|
301
|
+
Optional plan ID to associate with this order
|
|
302
|
+
|
|
294
303
|
order_lines : typing.Optional[typing.Sequence[OrderLineCreate]]
|
|
295
304
|
|
|
296
305
|
request_options : typing.Optional[RequestOptions]
|
|
@@ -334,6 +343,7 @@ class AsyncOrdersClient:
|
|
|
334
343
|
billing_contact_id=billing_contact_id,
|
|
335
344
|
description=description,
|
|
336
345
|
end_date=end_date,
|
|
346
|
+
plan_id=plan_id,
|
|
337
347
|
order_lines=order_lines,
|
|
338
348
|
request_options=request_options,
|
|
339
349
|
)
|
|
@@ -64,6 +64,7 @@ class RawOrdersClient:
|
|
|
64
64
|
billing_contact_id: typing.Optional[str] = OMIT,
|
|
65
65
|
description: typing.Optional[str] = OMIT,
|
|
66
66
|
end_date: typing.Optional[str] = OMIT,
|
|
67
|
+
plan_id: typing.Optional[str] = OMIT,
|
|
67
68
|
order_lines: typing.Optional[typing.Sequence[OrderLineCreate]] = OMIT,
|
|
68
69
|
request_options: typing.Optional[RequestOptions] = None,
|
|
69
70
|
) -> HttpResponse[Order]:
|
|
@@ -86,6 +87,9 @@ class RawOrdersClient:
|
|
|
86
87
|
|
|
87
88
|
end_date : typing.Optional[str]
|
|
88
89
|
|
|
90
|
+
plan_id : typing.Optional[str]
|
|
91
|
+
Optional plan ID to associate with this order
|
|
92
|
+
|
|
89
93
|
order_lines : typing.Optional[typing.Sequence[OrderLineCreate]]
|
|
90
94
|
|
|
91
95
|
request_options : typing.Optional[RequestOptions]
|
|
@@ -108,6 +112,7 @@ class RawOrdersClient:
|
|
|
108
112
|
"startDate": start_date,
|
|
109
113
|
"endDate": end_date,
|
|
110
114
|
"currency": currency,
|
|
115
|
+
"planId": plan_id,
|
|
111
116
|
"orderLines": convert_and_respect_annotation_metadata(
|
|
112
117
|
object_=order_lines, annotation=typing.Sequence[OrderLineCreate], direction="write"
|
|
113
118
|
),
|
|
@@ -279,6 +284,7 @@ class AsyncRawOrdersClient:
|
|
|
279
284
|
billing_contact_id: typing.Optional[str] = OMIT,
|
|
280
285
|
description: typing.Optional[str] = OMIT,
|
|
281
286
|
end_date: typing.Optional[str] = OMIT,
|
|
287
|
+
plan_id: typing.Optional[str] = OMIT,
|
|
282
288
|
order_lines: typing.Optional[typing.Sequence[OrderLineCreate]] = OMIT,
|
|
283
289
|
request_options: typing.Optional[RequestOptions] = None,
|
|
284
290
|
) -> AsyncHttpResponse[Order]:
|
|
@@ -301,6 +307,9 @@ class AsyncRawOrdersClient:
|
|
|
301
307
|
|
|
302
308
|
end_date : typing.Optional[str]
|
|
303
309
|
|
|
310
|
+
plan_id : typing.Optional[str]
|
|
311
|
+
Optional plan ID to associate with this order
|
|
312
|
+
|
|
304
313
|
order_lines : typing.Optional[typing.Sequence[OrderLineCreate]]
|
|
305
314
|
|
|
306
315
|
request_options : typing.Optional[RequestOptions]
|
|
@@ -323,6 +332,7 @@ class AsyncRawOrdersClient:
|
|
|
323
332
|
"startDate": start_date,
|
|
324
333
|
"endDate": end_date,
|
|
325
334
|
"currency": currency,
|
|
335
|
+
"planId": plan_id,
|
|
326
336
|
"orderLines": convert_and_respect_annotation_metadata(
|
|
327
337
|
object_=order_lines, annotation=typing.Sequence[OrderLineCreate], direction="write"
|
|
328
338
|
),
|
|
@@ -6,6 +6,7 @@ import typing
|
|
|
6
6
|
from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper
|
|
7
7
|
from ..core.request_options import RequestOptions
|
|
8
8
|
from ..types.plan import Plan
|
|
9
|
+
from ..types.plan_group import PlanGroup
|
|
9
10
|
from ..types.usage_summaries_response import UsageSummariesResponse
|
|
10
11
|
from .raw_client import AsyncRawPlansClient, RawPlansClient
|
|
11
12
|
|
|
@@ -127,6 +128,37 @@ class PlansClient:
|
|
|
127
128
|
)
|
|
128
129
|
return _response.data
|
|
129
130
|
|
|
131
|
+
def get_group_by_id(
|
|
132
|
+
self, plan_group_id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
133
|
+
) -> PlanGroup:
|
|
134
|
+
"""
|
|
135
|
+
Parameters
|
|
136
|
+
----------
|
|
137
|
+
plan_group_id : str
|
|
138
|
+
The ID of the plan group
|
|
139
|
+
|
|
140
|
+
request_options : typing.Optional[RequestOptions]
|
|
141
|
+
Request-specific configuration.
|
|
142
|
+
|
|
143
|
+
Returns
|
|
144
|
+
-------
|
|
145
|
+
PlanGroup
|
|
146
|
+
Success response
|
|
147
|
+
|
|
148
|
+
Examples
|
|
149
|
+
--------
|
|
150
|
+
from paid import Paid
|
|
151
|
+
|
|
152
|
+
client = Paid(
|
|
153
|
+
token="YOUR_TOKEN",
|
|
154
|
+
)
|
|
155
|
+
client.plans.get_group_by_id(
|
|
156
|
+
plan_group_id="planGroupId",
|
|
157
|
+
)
|
|
158
|
+
"""
|
|
159
|
+
_response = self._raw_client.get_group_by_id(plan_group_id, request_options=request_options)
|
|
160
|
+
return _response.data
|
|
161
|
+
|
|
130
162
|
|
|
131
163
|
class AsyncPlansClient:
|
|
132
164
|
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
@@ -259,3 +291,42 @@ class AsyncPlansClient:
|
|
|
259
291
|
request_options=request_options,
|
|
260
292
|
)
|
|
261
293
|
return _response.data
|
|
294
|
+
|
|
295
|
+
async def get_group_by_id(
|
|
296
|
+
self, plan_group_id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
297
|
+
) -> PlanGroup:
|
|
298
|
+
"""
|
|
299
|
+
Parameters
|
|
300
|
+
----------
|
|
301
|
+
plan_group_id : str
|
|
302
|
+
The ID of the plan group
|
|
303
|
+
|
|
304
|
+
request_options : typing.Optional[RequestOptions]
|
|
305
|
+
Request-specific configuration.
|
|
306
|
+
|
|
307
|
+
Returns
|
|
308
|
+
-------
|
|
309
|
+
PlanGroup
|
|
310
|
+
Success response
|
|
311
|
+
|
|
312
|
+
Examples
|
|
313
|
+
--------
|
|
314
|
+
import asyncio
|
|
315
|
+
|
|
316
|
+
from paid import AsyncPaid
|
|
317
|
+
|
|
318
|
+
client = AsyncPaid(
|
|
319
|
+
token="YOUR_TOKEN",
|
|
320
|
+
)
|
|
321
|
+
|
|
322
|
+
|
|
323
|
+
async def main() -> None:
|
|
324
|
+
await client.plans.get_group_by_id(
|
|
325
|
+
plan_group_id="planGroupId",
|
|
326
|
+
)
|
|
327
|
+
|
|
328
|
+
|
|
329
|
+
asyncio.run(main())
|
|
330
|
+
"""
|
|
331
|
+
_response = await self._raw_client.get_group_by_id(plan_group_id, request_options=request_options)
|
|
332
|
+
return _response.data
|
|
@@ -16,6 +16,7 @@ from ..errors.forbidden_error import ForbiddenError
|
|
|
16
16
|
from ..errors.not_found_error import NotFoundError
|
|
17
17
|
from ..types.error import Error
|
|
18
18
|
from ..types.plan import Plan
|
|
19
|
+
from ..types.plan_group import PlanGroup
|
|
19
20
|
from ..types.usage_summaries_response import UsageSummariesResponse
|
|
20
21
|
|
|
21
22
|
|
|
@@ -180,6 +181,65 @@ class RawPlansClient:
|
|
|
180
181
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
181
182
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
182
183
|
|
|
184
|
+
def get_group_by_id(
|
|
185
|
+
self, plan_group_id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
186
|
+
) -> HttpResponse[PlanGroup]:
|
|
187
|
+
"""
|
|
188
|
+
Parameters
|
|
189
|
+
----------
|
|
190
|
+
plan_group_id : str
|
|
191
|
+
The ID of the plan group
|
|
192
|
+
|
|
193
|
+
request_options : typing.Optional[RequestOptions]
|
|
194
|
+
Request-specific configuration.
|
|
195
|
+
|
|
196
|
+
Returns
|
|
197
|
+
-------
|
|
198
|
+
HttpResponse[PlanGroup]
|
|
199
|
+
Success response
|
|
200
|
+
"""
|
|
201
|
+
_response = self._client_wrapper.httpx_client.request(
|
|
202
|
+
f"plans/group/{jsonable_encoder(plan_group_id)}",
|
|
203
|
+
method="GET",
|
|
204
|
+
request_options=request_options,
|
|
205
|
+
)
|
|
206
|
+
try:
|
|
207
|
+
if 200 <= _response.status_code < 300:
|
|
208
|
+
_data = typing.cast(
|
|
209
|
+
PlanGroup,
|
|
210
|
+
parse_obj_as(
|
|
211
|
+
type_=PlanGroup, # type: ignore
|
|
212
|
+
object_=_response.json(),
|
|
213
|
+
),
|
|
214
|
+
)
|
|
215
|
+
return HttpResponse(response=_response, data=_data)
|
|
216
|
+
if _response.status_code == 403:
|
|
217
|
+
raise ForbiddenError(
|
|
218
|
+
headers=dict(_response.headers),
|
|
219
|
+
body=typing.cast(
|
|
220
|
+
Error,
|
|
221
|
+
parse_obj_as(
|
|
222
|
+
type_=Error, # type: ignore
|
|
223
|
+
object_=_response.json(),
|
|
224
|
+
),
|
|
225
|
+
),
|
|
226
|
+
)
|
|
227
|
+
if _response.status_code == 404:
|
|
228
|
+
raise NotFoundError(
|
|
229
|
+
headers=dict(_response.headers),
|
|
230
|
+
body=typing.cast(
|
|
231
|
+
Error,
|
|
232
|
+
parse_obj_as(
|
|
233
|
+
type_=Error, # type: ignore
|
|
234
|
+
object_=_response.json(),
|
|
235
|
+
),
|
|
236
|
+
),
|
|
237
|
+
)
|
|
238
|
+
_response_json = _response.json()
|
|
239
|
+
except JSONDecodeError:
|
|
240
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
241
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
242
|
+
|
|
183
243
|
|
|
184
244
|
class AsyncRawPlansClient:
|
|
185
245
|
def __init__(self, *, client_wrapper: AsyncClientWrapper):
|
|
@@ -343,3 +403,62 @@ class AsyncRawPlansClient:
|
|
|
343
403
|
except JSONDecodeError:
|
|
344
404
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
345
405
|
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
406
|
+
|
|
407
|
+
async def get_group_by_id(
|
|
408
|
+
self, plan_group_id: str, *, request_options: typing.Optional[RequestOptions] = None
|
|
409
|
+
) -> AsyncHttpResponse[PlanGroup]:
|
|
410
|
+
"""
|
|
411
|
+
Parameters
|
|
412
|
+
----------
|
|
413
|
+
plan_group_id : str
|
|
414
|
+
The ID of the plan group
|
|
415
|
+
|
|
416
|
+
request_options : typing.Optional[RequestOptions]
|
|
417
|
+
Request-specific configuration.
|
|
418
|
+
|
|
419
|
+
Returns
|
|
420
|
+
-------
|
|
421
|
+
AsyncHttpResponse[PlanGroup]
|
|
422
|
+
Success response
|
|
423
|
+
"""
|
|
424
|
+
_response = await self._client_wrapper.httpx_client.request(
|
|
425
|
+
f"plans/group/{jsonable_encoder(plan_group_id)}",
|
|
426
|
+
method="GET",
|
|
427
|
+
request_options=request_options,
|
|
428
|
+
)
|
|
429
|
+
try:
|
|
430
|
+
if 200 <= _response.status_code < 300:
|
|
431
|
+
_data = typing.cast(
|
|
432
|
+
PlanGroup,
|
|
433
|
+
parse_obj_as(
|
|
434
|
+
type_=PlanGroup, # type: ignore
|
|
435
|
+
object_=_response.json(),
|
|
436
|
+
),
|
|
437
|
+
)
|
|
438
|
+
return AsyncHttpResponse(response=_response, data=_data)
|
|
439
|
+
if _response.status_code == 403:
|
|
440
|
+
raise ForbiddenError(
|
|
441
|
+
headers=dict(_response.headers),
|
|
442
|
+
body=typing.cast(
|
|
443
|
+
Error,
|
|
444
|
+
parse_obj_as(
|
|
445
|
+
type_=Error, # type: ignore
|
|
446
|
+
object_=_response.json(),
|
|
447
|
+
),
|
|
448
|
+
),
|
|
449
|
+
)
|
|
450
|
+
if _response.status_code == 404:
|
|
451
|
+
raise NotFoundError(
|
|
452
|
+
headers=dict(_response.headers),
|
|
453
|
+
body=typing.cast(
|
|
454
|
+
Error,
|
|
455
|
+
parse_obj_as(
|
|
456
|
+
type_=Error, # type: ignore
|
|
457
|
+
object_=_response.json(),
|
|
458
|
+
),
|
|
459
|
+
),
|
|
460
|
+
)
|
|
461
|
+
_response_json = _response.json()
|
|
462
|
+
except JSONDecodeError:
|
|
463
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response.text)
|
|
464
|
+
raise ApiError(status_code=_response.status_code, headers=dict(_response.headers), body=_response_json)
|
|
@@ -29,6 +29,7 @@ from .order_line_attribute_pricing import OrderLineAttributePricing
|
|
|
29
29
|
from .order_line_create import OrderLineCreate
|
|
30
30
|
from .pagination_meta import PaginationMeta
|
|
31
31
|
from .plan import Plan
|
|
32
|
+
from .plan_group import PlanGroup
|
|
32
33
|
from .plan_plan_products_item import PlanPlanProductsItem
|
|
33
34
|
from .plan_plan_products_item_plan_product_attribute_item import PlanPlanProductsItemPlanProductAttributeItem
|
|
34
35
|
from .price_point import PricePoint
|
|
@@ -79,6 +80,7 @@ __all__ = [
|
|
|
79
80
|
"OrderLineCreate",
|
|
80
81
|
"PaginationMeta",
|
|
81
82
|
"Plan",
|
|
83
|
+
"PlanGroup",
|
|
82
84
|
"PlanPlanProductsItem",
|
|
83
85
|
"PlanPlanProductsItemPlanProductAttributeItem",
|
|
84
86
|
"PricePoint",
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# This file was auto-generated by Fern from our API Definition.
|
|
2
|
+
|
|
3
|
+
import datetime as dt
|
|
4
|
+
import typing
|
|
5
|
+
|
|
6
|
+
import pydantic
|
|
7
|
+
import typing_extensions
|
|
8
|
+
from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel
|
|
9
|
+
from ..core.serialization import FieldMetadata
|
|
10
|
+
from .plan import Plan
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class PlanGroup(UniversalBaseModel):
|
|
14
|
+
"""
|
|
15
|
+
A plan group containing multiple plans
|
|
16
|
+
"""
|
|
17
|
+
|
|
18
|
+
id: str = pydantic.Field()
|
|
19
|
+
"""
|
|
20
|
+
The unique identifier of the plan group
|
|
21
|
+
"""
|
|
22
|
+
|
|
23
|
+
organization_id: typing_extensions.Annotated[str, FieldMetadata(alias="organizationId")] = pydantic.Field()
|
|
24
|
+
"""
|
|
25
|
+
The organization ID that owns this plan group
|
|
26
|
+
"""
|
|
27
|
+
|
|
28
|
+
name: str = pydantic.Field()
|
|
29
|
+
"""
|
|
30
|
+
The name of the plan group
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
description: typing.Optional[str] = pydantic.Field(default=None)
|
|
34
|
+
"""
|
|
35
|
+
The description of the plan group
|
|
36
|
+
"""
|
|
37
|
+
|
|
38
|
+
created_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="createdAt")] = pydantic.Field()
|
|
39
|
+
"""
|
|
40
|
+
When the plan group was created
|
|
41
|
+
"""
|
|
42
|
+
|
|
43
|
+
updated_at: typing_extensions.Annotated[dt.datetime, FieldMetadata(alias="updatedAt")] = pydantic.Field()
|
|
44
|
+
"""
|
|
45
|
+
When the plan group was last updated
|
|
46
|
+
"""
|
|
47
|
+
|
|
48
|
+
plans: typing.Optional[typing.List[Plan]] = pydantic.Field(default=None)
|
|
49
|
+
"""
|
|
50
|
+
The plans included in this plan group
|
|
51
|
+
"""
|
|
52
|
+
|
|
53
|
+
if IS_PYDANTIC_V2:
|
|
54
|
+
model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2
|
|
55
|
+
else:
|
|
56
|
+
|
|
57
|
+
class Config:
|
|
58
|
+
frozen = True
|
|
59
|
+
smart_union = True
|
|
60
|
+
extra = pydantic.Extra.allow
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/anthropic/anthropicWrapper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/langchain/paidLangChainCallback.py
RENAMED
|
File without changes
|
|
File without changes
|
{paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/llamaindex/llamaIndexWrapper.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{paid_python-0.5.0 → paid_python-0.6.0}/src/paid/tracing/wrappers/openai_agents/openaiAgentsHook.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|