From c103c42a76c50587997fac5292b14c975abb3f2e Mon Sep 17 00:00:00 2001 From: "fern-api[bot]" <115122769+fern-api[bot]@users.noreply.github.com> Date: Fri, 12 Dec 2025 18:17:12 +0000 Subject: [PATCH] SDK regeneration --- poetry.lock | 12 +- pyproject.toml | 2 +- reference.md | 846 ++++++++++++++---- src/schematic/__init__.py | 621 ++++++------- src/schematic/accounts/__init__.py | 6 - src/schematic/accounts/client.py | 27 +- src/schematic/accounts/raw_client.py | 27 +- src/schematic/accounts/types/__init__.py | 6 - ...vironment_request_body_environment_type.py | 7 - ...vironment_request_body_environment_type.py | 7 - src/schematic/billing/__init__.py | 66 +- src/schematic/billing/client.py | 357 ++++---- src/schematic/billing/raw_client.py | 311 ++++--- src/schematic/billing/types/__init__.py | 70 +- .../types/count_billing_products_params.py | 4 +- ...lling_products_request_price_usage_type.py | 5 - ...oducts_response_params_price_usage_type.py | 5 - ...lling_price_request_body_billing_scheme.py | 5 - ...e_billing_price_request_body_tiers_mode.py | 5 - ...e_billing_price_request_body_usage_type.py | 5 - ...cription_request_body_trial_end_setting.py | 5 - ...arams.py => list_billing_prices_params.py} | 21 +- ...nse.py => list_billing_prices_response.py} | 6 +- ... => list_billing_product_prices_params.py} | 44 +- .../list_billing_product_prices_response.py | 25 + .../types/list_billing_products_params.py | 4 +- ...lling_products_request_price_usage_type.py | 5 - ...oducts_response_params_price_usage_type.py | 5 - ...product_prices_request_price_usage_type.py | 5 - ...prices_response_params_price_usage_type.py | 5 - ...earch_billing_prices_request_tiers_mode.py | 5 - ...earch_billing_prices_request_usage_type.py | 5 - ...lling_prices_response_params_tiers_mode.py | 5 - ...lling_prices_response_params_usage_type.py | 5 - src/schematic/checkout/__init__.py | 3 + src/schematic/checkout/client.py | 157 ++++ src/schematic/checkout/raw_client.py | 287 ++++++ src/schematic/checkout/types/__init__.py | 3 + .../types/cancel_subscription_response.py} | 9 +- src/schematic/companies/__init__.py | 57 -- src/schematic/companies/client.py | 188 ++-- src/schematic/companies/raw_client.py | 178 ++-- src/schematic/companies/types/__init__.py | 79 -- ...nt_companies_for_advanced_filter_params.py | 18 +- ...ced_filter_request_sort_order_direction.py | 5 - ...er_response_params_sort_order_direction.py | 7 - .../count_entity_key_definitions_params.py | 4 +- ...ity_key_definitions_request_entity_type.py | 5 - ...definitions_response_params_entity_type.py | 5 - .../count_entity_trait_definitions_params.py | 13 +- ...y_trait_definitions_request_entity_type.py | 5 - ...ty_trait_definitions_request_trait_type.py | 7 - ...definitions_response_params_entity_type.py | 5 - ..._definitions_response_params_trait_type.py | 7 - ...ait_definition_request_body_entity_type.py | 5 - ...rait_definition_request_body_trait_type.py | 7 - ...st_companies_for_advanced_filter_params.py | 18 +- ...ced_filter_request_sort_order_direction.py | 5 - ...er_response_params_sort_order_direction.py | 5 - .../list_entity_key_definitions_params.py | 4 +- ...ity_key_definitions_request_entity_type.py | 5 - ...definitions_response_params_entity_type.py | 5 - .../list_entity_trait_definitions_params.py | 11 +- ...y_trait_definitions_request_entity_type.py | 5 - ...ty_trait_definitions_request_trait_type.py | 7 - ...definitions_response_params_entity_type.py | 5 - ..._definitions_response_params_trait_type.py | 7 - ...rait_definition_request_body_trait_type.py | 7 - src/schematic/components/__init__.py | 9 - src/schematic/components/client.py | 33 +- src/schematic/components/raw_client.py | 29 +- src/schematic/components/types/__init__.py | 9 - ...eate_component_request_body_entity_type.py | 5 - ...date_component_request_body_entity_type.py | 5 - .../update_component_request_body_state.py | 5 - src/schematic/core/client_wrapper.py | 4 +- src/schematic/credits/__init__.py | 105 --- src/schematic/credits/client.py | 488 ++++++---- src/schematic/credits/raw_client.py | 476 ++++++---- src/schematic/credits/types/__init__.py | 129 --- .../types/count_credit_bundles_params.py | 7 +- .../count_credit_bundles_request_status.py | 5 - ...t_credit_bundles_response_params_status.py | 5 - .../types/count_credit_ledger_params.py | 4 +- .../count_credit_ledger_request_period.py | 5 - ...nt_credit_ledger_response_params_period.py | 5 - ...it_request_body_default_rollover_policy.py | 7 - ...n_credit_grant_request_body_expiry_type.py | 8 - ...n_credit_grant_request_body_expiry_unit.py | 5 - ...credit_grant_request_body_reset_cadence.py | 7 - ...n_credit_grant_request_body_reset_start.py | 7 - ...an_credit_grant_request_body_reset_type.py | 5 - ...create_company_credit_grant_expiry_type.py | 8 - ...create_company_credit_grant_expiry_unit.py | 5 - ..._credit_bundle_request_body_expiry_type.py | 8 - ..._credit_bundle_request_body_expiry_unit.py | 5 - ...reate_credit_bundle_request_body_status.py | 5 - .../get_enriched_credit_ledger_params.py | 4 +- ...t_enriched_credit_ledger_request_period.py | 5 - ...ed_credit_ledger_response_params_period.py | 7 - .../types/list_company_grants_params.py | 8 +- .../types/list_company_grants_request_dir.py | 5 - ...list_company_grants_response_params_dir.py | 5 - ...st_company_grants_response_params_order.py | 7 - .../types/list_credit_bundles_params.py | 7 +- .../list_credit_bundles_request_status.py | 5 - ...t_credit_bundles_response_params_status.py | 5 - ...lling_credit_request_body_burn_strategy.py | 13 - ...it_request_body_default_rollover_policy.py | 7 - ...n_credit_grant_request_body_expiry_type.py | 8 - ...n_credit_grant_request_body_expiry_unit.py | 5 - ...credit_grant_request_body_reset_cadence.py | 7 - ...n_credit_grant_request_body_reset_start.py | 7 - ...an_credit_grant_request_body_reset_type.py | 5 - ...bundle_details_request_body_expiry_type.py | 8 - ...bundle_details_request_body_expiry_unit.py | 5 - ...edit_bundle_details_request_body_status.py | 5 - .../zero_out_grant_request_body_reason.py | 7 - src/schematic/entitlements/__init__.py | 21 +- src/schematic/entitlements/client.py | 152 +++- src/schematic/entitlements/raw_client.py | 284 +++++- src/schematic/entitlements/types/__init__.py | 21 +- ...ompany_override_request_body_value_type.py | 7 - ...entitlement_request_body_price_behavior.py | 7 - ...lan_entitlement_request_body_value_type.py | 7 - .../duplicate_plan_entitlements_response.py | 24 + ...ompany_override_request_body_value_type.py | 7 - ...entitlement_request_body_price_behavior.py | 7 - ...lan_entitlement_request_body_value_type.py | 7 - src/schematic/events/__init__.py | 6 - src/schematic/events/client.py | 33 +- src/schematic/events/raw_client.py | 25 +- src/schematic/events/types/__init__.py | 6 - .../events/types/list_events_params.py | 4 +- .../list_events_request_event_types_item.py | 5 - ...events_response_params_event_types_item.py | 5 - src/schematic/features/__init__.py | 15 +- src/schematic/features/client.py | 130 ++- src/schematic/features/raw_client.py | 270 +++++- src/schematic/features/types/__init__.py | 15 +- .../types/check_flags_bulk_response.py | 24 + .../features/types/count_features_params.py | 3 +- ...reate_feature_request_body_feature_type.py | 5 - ...te_feature_request_body_lifecycle_phase.py | 8 - .../features/types/list_features_params.py | 3 +- ...pdate_feature_request_body_feature_type.py | 5 - src/schematic/plangroups/client.py | 125 ++- src/schematic/plangroups/raw_client.py | 105 ++- src/schematic/plans/__init__.py | 18 - src/schematic/plans/client.py | 90 +- src/schematic/plans/raw_client.py | 78 +- src/schematic/plans/types/__init__.py | 18 - .../plans/types/count_plans_params.py | 18 +- .../types/count_plans_request_plan_type.py | 5 - .../count_plans_response_params_plan_type.py | 5 - .../create_plan_request_body_plan_type.py | 5 - .../plans/types/list_plans_params.py | 18 +- .../types/list_plans_request_plan_type.py | 5 - .../list_plans_response_params_plan_type.py | 5 - ...illing_product_request_body_charge_type.py | 5 - src/schematic/types/__init__.py | 306 +++++-- .../types/api_key_create_response_data.py | 3 +- src/schematic/types/api_key_response_data.py | 3 +- src/schematic/types/api_key_scope.py | 5 + .../billing_credit_bundle_response_data.py | 12 +- .../types/billing_credit_bundle_status.py | 5 + .../types/billing_credit_bundle_type.py | 5 + .../types/billing_credit_bundle_view.py | 12 +- .../billing_credit_burn_strategy.py} | 6 +- .../types/billing_credit_expiry_type.py | 8 + .../types/billing_credit_expiry_unit.py | 5 + .../types/billing_credit_grant_reason.py | 7 + .../billing_credit_grant_response_data.py | 6 +- .../billing_credit_grant_zeroed_out_reason.py | 7 + .../types/billing_credit_response_data.py | 9 +- .../types/billing_credit_rollover_policy.py | 5 + ...billing_plan_credit_grant_reset_cadence.py | 5 + .../billing_plan_credit_grant_reset_start.py | 5 + .../billing_plan_credit_grant_reset_type.py | 5 + ...billing_plan_credit_grant_response_data.py | 22 +- .../types/billing_price_response_data.py | 6 +- src/schematic/types/billing_price_scheme.py | 5 + .../types/billing_price_usage_type.py | 5 + src/schematic/types/billing_price_view.py | 12 +- ..._product_for_subscription_response_data.py | 6 +- .../billing_product_plan_response_data.py | 6 +- .../types/billing_product_price_interval.py | 5 + .../billing_product_price_response_data.py | 12 +- .../types/billing_product_pricing.py | 4 +- .../billing_product_pricing_usage_type.py | 5 - .../billing_subscription_response_data.py | 4 +- .../billing_subscription_trial_end_setting.py | 5 + .../types/billing_subscription_view.py | 4 +- src/schematic/types/billing_tiers_mode.py | 5 + src/schematic/types/charge_type.py | 5 + .../types/check_flags_bulk_response_data.py | 20 + src/schematic/types/checkout_subscription.py | 4 +- .../types/company_override_response_data.py | 3 +- .../company_plan_detail_response_data.py | 11 +- .../types/company_plan_invalid_reason.py | 5 + .../company_plan_with_billing_sub_view.py | 2 + .../types/component_display_settings.py | 22 + src/schematic/types/component_entity_type.py | 5 + .../types/component_hydrate_response_data.py | 6 + .../types/component_preview_response_data.py | 6 + .../types/component_response_data.py | 6 +- .../types/component_settings_response_data.py | 22 + src/schematic/types/component_state.py | 5 + .../types/create_entitlement_req_common.py | 4 +- ...reate_entitlement_req_common_value_type.py | 7 - .../types/create_event_request_body.py | 8 +- .../create_event_request_body_event_type.py | 5 - .../types/create_flag_request_body.py | 3 +- .../create_or_update_flag_request_body.py | 3 +- .../types/credit_auto_topup_amount_type.py | 5 + .../types/credit_company_grant_view.py | 13 +- src/schematic/types/credit_grant_detail.py | 4 +- .../types/credit_grant_detail_grant_reason.py | 5 - .../types/credit_grant_expiry_request_body.py | 20 +- ...t_grant_expiry_request_body_expiry_type.py | 8 - ...t_grant_expiry_request_body_expiry_unit.py | 5 - ...grant_expiry_request_body_reset_cadence.py | 7 - ...t_grant_expiry_request_body_reset_start.py | 5 - ...it_grant_expiry_request_body_reset_type.py | 5 - .../credit_grant_sort_order.py} | 2 +- ...dit_ledger_enriched_entry_response_data.py | 1 + src/schematic/types/credit_ledger_period.py | 5 + .../types/data_export_output_file_type.py | 5 + .../types/data_export_response_data.py | 9 +- src/schematic/types/data_export_status.py | 5 + src/schematic/types/data_export_type.py | 5 + ...lan_entitlements_response_response_data.py | 22 + .../types/entitlement_price_behavior.py | 7 + src/schematic/types/entitlement_type.py | 5 + src/schematic/types/entitlement_value_type.py | 7 + .../entity_key_definition_response_data.py | 3 +- .../types/entity_key_detail_response_data.py | 3 +- .../types/entity_key_response_data.py | 3 +- .../entity_trait_definition_response_data.py | 6 +- src/schematic/types/entity_type.py | 5 + .../types/environment_detail_response_data.py | 3 +- .../types/environment_response_data.py | 3 +- src/schematic/types/environment_type.py | 5 + .../types/event_detail_response_data.py | 6 +- src/schematic/types/event_response_data.py | 6 +- src/schematic/types/event_status.py | 5 + src/schematic/types/event_type.py | 5 + .../types/feature_company_response_data.py | 22 +- ...e_company_response_data_allocation_type.py | 7 - ...mpany_response_data_credit_grant_reason.py | 5 - .../feature_company_user_response_data.py | 11 +- ...pany_user_response_data_allocation_type.py | 7 - .../types/feature_detail_response_data.py | 6 +- .../feature_lifecycle_phase.py} | 4 +- src/schematic/types/feature_response_data.py | 6 +- src/schematic/types/feature_type.py | 5 + .../types/feature_usage_data_response_data.py | 3 +- .../types/feature_usage_response_data.py | 22 +- ...ure_usage_response_data_allocation_type.py | 7 - ...usage_response_data_credit_grant_reason.py | 5 - .../types/flag_detail_response_data.py | 3 +- src/schematic/types/flag_response_data.py | 3 +- src/schematic/types/flag_type.py | 5 + ...ue_temporary_access_token_response_data.py | 3 +- src/schematic/types/manage_plan_request.py | 12 + ...e_data_action.py => plan_change_action.py} | 3 +- src/schematic/types/plan_change_actor_type.py | 7 + .../types/plan_change_base_plan_action.py | 5 + .../types/plan_change_response_data.py | 26 +- .../plan_change_response_data_actor_type.py | 7 - ...n_change_response_data_base_plan_action.py | 7 - ....py => plan_change_subscription_action.py} | 2 +- .../types/plan_controlled_by_type.py | 5 + src/schematic/types/plan_credit_grant_view.py | 22 +- .../types/plan_detail_response_data.py | 9 +- .../types/plan_entitlement_response_data.py | 6 +- .../types/plan_group_detail_response_data.py | 15 +- .../plan_group_plan_detail_response_data.py | 9 +- .../types/plan_group_response_data.py | 9 +- src/schematic/types/plan_response_data.py | 3 +- src/schematic/types/plan_type.py | 5 + ...view_subscription_finance_response_data.py | 1 + src/schematic/types/proration_behavior.py | 5 + .../rule_condition_detail_response_data.py | 3 +- .../types/rule_condition_response_data.py | 3 +- .../types/rules_engine_schema_version.py | 5 + .../types/rulesengine_check_flag_result.py | 35 + ..._check_flag_result_feature_usage_period.py | 7 + ...rulesengine_check_flag_result_rule_type.py | 16 + src/schematic/types/rulesengine_company.py | 35 + .../types/rulesengine_company_metric.py | 30 + .../rulesengine_company_metric_month_reset.py | 5 + .../rulesengine_company_metric_period.py | 7 + src/schematic/types/rulesengine_condition.py | 38 + .../rulesengine_condition_condition_type.py | 10 + .../types/rulesengine_condition_group.py | 20 + .../rulesengine_condition_metric_period.py | 7 + ...ine_condition_metric_period_month_reset.py | 5 + .../types/rulesengine_condition_operator.py | 7 + .../types/rulesengine_entity_type.py | 5 + src/schematic/types/rulesengine_flag.py | 25 + src/schematic/types/rulesengine_rule.py | 31 + .../types/rulesengine_rule_rule_type.py | 16 + .../types/rulesengine_subscription.py | 22 + src/schematic/types/rulesengine_trait.py | 21 + .../types/rulesengine_trait_definition.py | 23 + ...engine_trait_definition_comparable_type.py | 5 + src/schematic/types/rulesengine_user.py | 26 + ...skipped_entitlement_error_response_data.py | 19 + .../skipped_entitlement_response_data.py | 23 + src/schematic/types/sort_direction.py | 5 + src/schematic/types/subscription_status.py | 10 + .../types/subscription_trait_update.py | 3 +- src/schematic/types/subscription_type.py | 5 + .../temporary_access_token_resource_type.py | 5 + .../temporary_access_token_response_data.py | 3 +- src/schematic/types/trait_definition.py | 4 +- .../types/trait_definition_entity_type.py | 5 - src/schematic/types/trait_type.py | 5 + .../types/update_entitlement_req_common.py | 4 +- ...pdate_entitlement_req_common_value_type.py | 7 - .../usage_based_entitlement_request_body.py | 7 +- ...entitlement_request_body_price_behavior.py | 7 - .../usage_based_entitlement_response_data.py | 6 +- .../webhook_event_detail_response_data.py | 6 +- .../types/webhook_event_response_data.py | 6 +- src/schematic/types/webhook_event_status.py | 5 + .../webhook_request_type.py} | 56 +- src/schematic/types/webhook_response_data.py | 6 +- src/schematic/types/webhook_status.py | 5 + src/schematic/webhooks/__init__.py | 9 - src/schematic/webhooks/client.py | 33 +- src/schematic/webhooks/raw_client.py | 29 +- src/schematic/webhooks/types/__init__.py | 9 - ...webhook_request_body_request_types_item.py | 42 - .../update_webhook_request_body_status.py | 5 - 336 files changed, 5171 insertions(+), 3543 deletions(-) delete mode 100644 src/schematic/accounts/types/create_environment_request_body_environment_type.py delete mode 100644 src/schematic/accounts/types/update_environment_request_body_environment_type.py delete mode 100644 src/schematic/billing/types/count_billing_products_request_price_usage_type.py delete mode 100644 src/schematic/billing/types/count_billing_products_response_params_price_usage_type.py delete mode 100644 src/schematic/billing/types/create_billing_price_request_body_billing_scheme.py delete mode 100644 src/schematic/billing/types/create_billing_price_request_body_tiers_mode.py delete mode 100644 src/schematic/billing/types/create_billing_price_request_body_usage_type.py delete mode 100644 src/schematic/billing/types/create_billing_subscription_request_body_trial_end_setting.py rename src/schematic/billing/types/{search_billing_prices_params.py => list_billing_prices_params.py} (67%) rename src/schematic/billing/types/{search_billing_prices_response.py => list_billing_prices_response.py} (76%) rename src/schematic/billing/types/{list_product_prices_params.py => list_billing_product_prices_params.py} (51%) create mode 100644 src/schematic/billing/types/list_billing_product_prices_response.py delete mode 100644 src/schematic/billing/types/list_billing_products_request_price_usage_type.py delete mode 100644 src/schematic/billing/types/list_billing_products_response_params_price_usage_type.py delete mode 100644 src/schematic/billing/types/list_product_prices_request_price_usage_type.py delete mode 100644 src/schematic/billing/types/list_product_prices_response_params_price_usage_type.py delete mode 100644 src/schematic/billing/types/search_billing_prices_request_tiers_mode.py delete mode 100644 src/schematic/billing/types/search_billing_prices_request_usage_type.py delete mode 100644 src/schematic/billing/types/search_billing_prices_response_params_tiers_mode.py delete mode 100644 src/schematic/billing/types/search_billing_prices_response_params_usage_type.py rename src/schematic/{billing/types/list_product_prices_response.py => checkout/types/cancel_subscription_response.py} (63%) delete mode 100644 src/schematic/companies/types/count_companies_for_advanced_filter_request_sort_order_direction.py delete mode 100644 src/schematic/companies/types/count_companies_for_advanced_filter_response_params_sort_order_direction.py delete mode 100644 src/schematic/companies/types/count_entity_key_definitions_request_entity_type.py delete mode 100644 src/schematic/companies/types/count_entity_key_definitions_response_params_entity_type.py delete mode 100644 src/schematic/companies/types/count_entity_trait_definitions_request_entity_type.py delete mode 100644 src/schematic/companies/types/count_entity_trait_definitions_request_trait_type.py delete mode 100644 src/schematic/companies/types/count_entity_trait_definitions_response_params_entity_type.py delete mode 100644 src/schematic/companies/types/count_entity_trait_definitions_response_params_trait_type.py delete mode 100644 src/schematic/companies/types/create_entity_trait_definition_request_body_entity_type.py delete mode 100644 src/schematic/companies/types/create_entity_trait_definition_request_body_trait_type.py delete mode 100644 src/schematic/companies/types/list_companies_for_advanced_filter_request_sort_order_direction.py delete mode 100644 src/schematic/companies/types/list_companies_for_advanced_filter_response_params_sort_order_direction.py delete mode 100644 src/schematic/companies/types/list_entity_key_definitions_request_entity_type.py delete mode 100644 src/schematic/companies/types/list_entity_key_definitions_response_params_entity_type.py delete mode 100644 src/schematic/companies/types/list_entity_trait_definitions_request_entity_type.py delete mode 100644 src/schematic/companies/types/list_entity_trait_definitions_request_trait_type.py delete mode 100644 src/schematic/companies/types/list_entity_trait_definitions_response_params_entity_type.py delete mode 100644 src/schematic/companies/types/list_entity_trait_definitions_response_params_trait_type.py delete mode 100644 src/schematic/companies/types/update_entity_trait_definition_request_body_trait_type.py delete mode 100644 src/schematic/components/types/create_component_request_body_entity_type.py delete mode 100644 src/schematic/components/types/update_component_request_body_entity_type.py delete mode 100644 src/schematic/components/types/update_component_request_body_state.py delete mode 100644 src/schematic/credits/types/count_credit_bundles_request_status.py delete mode 100644 src/schematic/credits/types/count_credit_bundles_response_params_status.py delete mode 100644 src/schematic/credits/types/count_credit_ledger_request_period.py delete mode 100644 src/schematic/credits/types/count_credit_ledger_response_params_period.py delete mode 100644 src/schematic/credits/types/create_billing_credit_request_body_default_rollover_policy.py delete mode 100644 src/schematic/credits/types/create_billing_plan_credit_grant_request_body_expiry_type.py delete mode 100644 src/schematic/credits/types/create_billing_plan_credit_grant_request_body_expiry_unit.py delete mode 100644 src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_cadence.py delete mode 100644 src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_start.py delete mode 100644 src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_type.py delete mode 100644 src/schematic/credits/types/create_company_credit_grant_expiry_type.py delete mode 100644 src/schematic/credits/types/create_company_credit_grant_expiry_unit.py delete mode 100644 src/schematic/credits/types/create_credit_bundle_request_body_expiry_type.py delete mode 100644 src/schematic/credits/types/create_credit_bundle_request_body_expiry_unit.py delete mode 100644 src/schematic/credits/types/create_credit_bundle_request_body_status.py delete mode 100644 src/schematic/credits/types/get_enriched_credit_ledger_request_period.py delete mode 100644 src/schematic/credits/types/get_enriched_credit_ledger_response_params_period.py delete mode 100644 src/schematic/credits/types/list_company_grants_request_dir.py delete mode 100644 src/schematic/credits/types/list_company_grants_response_params_dir.py delete mode 100644 src/schematic/credits/types/list_company_grants_response_params_order.py delete mode 100644 src/schematic/credits/types/list_credit_bundles_request_status.py delete mode 100644 src/schematic/credits/types/list_credit_bundles_response_params_status.py delete mode 100644 src/schematic/credits/types/update_billing_credit_request_body_burn_strategy.py delete mode 100644 src/schematic/credits/types/update_billing_credit_request_body_default_rollover_policy.py delete mode 100644 src/schematic/credits/types/update_billing_plan_credit_grant_request_body_expiry_type.py delete mode 100644 src/schematic/credits/types/update_billing_plan_credit_grant_request_body_expiry_unit.py delete mode 100644 src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_cadence.py delete mode 100644 src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_start.py delete mode 100644 src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_type.py delete mode 100644 src/schematic/credits/types/update_credit_bundle_details_request_body_expiry_type.py delete mode 100644 src/schematic/credits/types/update_credit_bundle_details_request_body_expiry_unit.py delete mode 100644 src/schematic/credits/types/update_credit_bundle_details_request_body_status.py delete mode 100644 src/schematic/credits/types/zero_out_grant_request_body_reason.py delete mode 100644 src/schematic/entitlements/types/create_company_override_request_body_value_type.py delete mode 100644 src/schematic/entitlements/types/create_plan_entitlement_request_body_price_behavior.py delete mode 100644 src/schematic/entitlements/types/create_plan_entitlement_request_body_value_type.py create mode 100644 src/schematic/entitlements/types/duplicate_plan_entitlements_response.py delete mode 100644 src/schematic/entitlements/types/update_company_override_request_body_value_type.py delete mode 100644 src/schematic/entitlements/types/update_plan_entitlement_request_body_price_behavior.py delete mode 100644 src/schematic/entitlements/types/update_plan_entitlement_request_body_value_type.py delete mode 100644 src/schematic/events/types/list_events_request_event_types_item.py delete mode 100644 src/schematic/events/types/list_events_response_params_event_types_item.py create mode 100644 src/schematic/features/types/check_flags_bulk_response.py delete mode 100644 src/schematic/features/types/create_feature_request_body_feature_type.py delete mode 100644 src/schematic/features/types/create_feature_request_body_lifecycle_phase.py delete mode 100644 src/schematic/features/types/update_feature_request_body_feature_type.py delete mode 100644 src/schematic/plans/types/count_plans_request_plan_type.py delete mode 100644 src/schematic/plans/types/count_plans_response_params_plan_type.py delete mode 100644 src/schematic/plans/types/create_plan_request_body_plan_type.py delete mode 100644 src/schematic/plans/types/list_plans_request_plan_type.py delete mode 100644 src/schematic/plans/types/list_plans_response_params_plan_type.py delete mode 100644 src/schematic/plans/types/upsert_billing_product_request_body_charge_type.py create mode 100644 src/schematic/types/api_key_scope.py create mode 100644 src/schematic/types/billing_credit_bundle_status.py create mode 100644 src/schematic/types/billing_credit_bundle_type.py rename src/schematic/{credits/types/create_billing_credit_request_body_burn_strategy.py => types/billing_credit_burn_strategy.py} (82%) create mode 100644 src/schematic/types/billing_credit_expiry_type.py create mode 100644 src/schematic/types/billing_credit_expiry_unit.py create mode 100644 src/schematic/types/billing_credit_grant_reason.py create mode 100644 src/schematic/types/billing_credit_grant_zeroed_out_reason.py create mode 100644 src/schematic/types/billing_credit_rollover_policy.py create mode 100644 src/schematic/types/billing_plan_credit_grant_reset_cadence.py create mode 100644 src/schematic/types/billing_plan_credit_grant_reset_start.py create mode 100644 src/schematic/types/billing_plan_credit_grant_reset_type.py create mode 100644 src/schematic/types/billing_price_scheme.py create mode 100644 src/schematic/types/billing_price_usage_type.py create mode 100644 src/schematic/types/billing_product_price_interval.py delete mode 100644 src/schematic/types/billing_product_pricing_usage_type.py create mode 100644 src/schematic/types/billing_subscription_trial_end_setting.py create mode 100644 src/schematic/types/billing_tiers_mode.py create mode 100644 src/schematic/types/charge_type.py create mode 100644 src/schematic/types/check_flags_bulk_response_data.py create mode 100644 src/schematic/types/company_plan_invalid_reason.py create mode 100644 src/schematic/types/component_display_settings.py create mode 100644 src/schematic/types/component_entity_type.py create mode 100644 src/schematic/types/component_settings_response_data.py create mode 100644 src/schematic/types/component_state.py delete mode 100644 src/schematic/types/create_entitlement_req_common_value_type.py delete mode 100644 src/schematic/types/create_event_request_body_event_type.py create mode 100644 src/schematic/types/credit_auto_topup_amount_type.py delete mode 100644 src/schematic/types/credit_grant_detail_grant_reason.py delete mode 100644 src/schematic/types/credit_grant_expiry_request_body_expiry_type.py delete mode 100644 src/schematic/types/credit_grant_expiry_request_body_expiry_unit.py delete mode 100644 src/schematic/types/credit_grant_expiry_request_body_reset_cadence.py delete mode 100644 src/schematic/types/credit_grant_expiry_request_body_reset_start.py delete mode 100644 src/schematic/types/credit_grant_expiry_request_body_reset_type.py rename src/schematic/{credits/types/list_company_grants_request_order.py => types/credit_grant_sort_order.py} (79%) create mode 100644 src/schematic/types/credit_ledger_period.py create mode 100644 src/schematic/types/data_export_output_file_type.py create mode 100644 src/schematic/types/data_export_status.py create mode 100644 src/schematic/types/data_export_type.py create mode 100644 src/schematic/types/duplicate_plan_entitlements_response_response_data.py create mode 100644 src/schematic/types/entitlement_price_behavior.py create mode 100644 src/schematic/types/entitlement_type.py create mode 100644 src/schematic/types/entitlement_value_type.py create mode 100644 src/schematic/types/entity_type.py create mode 100644 src/schematic/types/environment_type.py create mode 100644 src/schematic/types/event_status.py create mode 100644 src/schematic/types/event_type.py delete mode 100644 src/schematic/types/feature_company_response_data_allocation_type.py delete mode 100644 src/schematic/types/feature_company_response_data_credit_grant_reason.py delete mode 100644 src/schematic/types/feature_company_user_response_data_allocation_type.py rename src/schematic/{features/types/update_feature_request_body_lifecycle_phase.py => types/feature_lifecycle_phase.py} (59%) create mode 100644 src/schematic/types/feature_type.py delete mode 100644 src/schematic/types/feature_usage_response_data_allocation_type.py delete mode 100644 src/schematic/types/feature_usage_response_data_credit_grant_reason.py create mode 100644 src/schematic/types/flag_type.py rename src/schematic/types/{plan_change_response_data_action.py => plan_change_action.py} (85%) create mode 100644 src/schematic/types/plan_change_actor_type.py create mode 100644 src/schematic/types/plan_change_base_plan_action.py delete mode 100644 src/schematic/types/plan_change_response_data_actor_type.py delete mode 100644 src/schematic/types/plan_change_response_data_base_plan_action.py rename src/schematic/types/{plan_change_response_data_subscription_change_action.py => plan_change_subscription_action.py} (75%) create mode 100644 src/schematic/types/plan_controlled_by_type.py create mode 100644 src/schematic/types/plan_type.py create mode 100644 src/schematic/types/proration_behavior.py create mode 100644 src/schematic/types/rules_engine_schema_version.py create mode 100644 src/schematic/types/rulesengine_check_flag_result.py create mode 100644 src/schematic/types/rulesengine_check_flag_result_feature_usage_period.py create mode 100644 src/schematic/types/rulesengine_check_flag_result_rule_type.py create mode 100644 src/schematic/types/rulesengine_company.py create mode 100644 src/schematic/types/rulesengine_company_metric.py create mode 100644 src/schematic/types/rulesengine_company_metric_month_reset.py create mode 100644 src/schematic/types/rulesengine_company_metric_period.py create mode 100644 src/schematic/types/rulesengine_condition.py create mode 100644 src/schematic/types/rulesengine_condition_condition_type.py create mode 100644 src/schematic/types/rulesengine_condition_group.py create mode 100644 src/schematic/types/rulesengine_condition_metric_period.py create mode 100644 src/schematic/types/rulesengine_condition_metric_period_month_reset.py create mode 100644 src/schematic/types/rulesengine_condition_operator.py create mode 100644 src/schematic/types/rulesengine_entity_type.py create mode 100644 src/schematic/types/rulesengine_flag.py create mode 100644 src/schematic/types/rulesengine_rule.py create mode 100644 src/schematic/types/rulesengine_rule_rule_type.py create mode 100644 src/schematic/types/rulesengine_subscription.py create mode 100644 src/schematic/types/rulesengine_trait.py create mode 100644 src/schematic/types/rulesengine_trait_definition.py create mode 100644 src/schematic/types/rulesengine_trait_definition_comparable_type.py create mode 100644 src/schematic/types/rulesengine_user.py create mode 100644 src/schematic/types/skipped_entitlement_error_response_data.py create mode 100644 src/schematic/types/skipped_entitlement_response_data.py create mode 100644 src/schematic/types/sort_direction.py create mode 100644 src/schematic/types/subscription_status.py create mode 100644 src/schematic/types/subscription_type.py create mode 100644 src/schematic/types/temporary_access_token_resource_type.py delete mode 100644 src/schematic/types/trait_definition_entity_type.py create mode 100644 src/schematic/types/trait_type.py delete mode 100644 src/schematic/types/update_entitlement_req_common_value_type.py delete mode 100644 src/schematic/types/usage_based_entitlement_request_body_price_behavior.py create mode 100644 src/schematic/types/webhook_event_status.py rename src/schematic/{webhooks/types/update_webhook_request_body_request_types_item.py => types/webhook_request_type.py} (89%) create mode 100644 src/schematic/types/webhook_status.py delete mode 100644 src/schematic/webhooks/types/create_webhook_request_body_request_types_item.py delete mode 100644 src/schematic/webhooks/types/update_webhook_request_body_status.py diff --git a/poetry.lock b/poetry.lock index fef3795..a19d7e2 100644 --- a/poetry.lock +++ b/poetry.lock @@ -38,13 +38,13 @@ trio = ["trio (>=0.26.1)"] [[package]] name = "certifi" -version = "2025.10.5" +version = "2025.11.12" description = "Python package for providing Mozilla's CA Bundle." optional = false python-versions = ">=3.7" files = [ - {file = "certifi-2025.10.5-py3-none-any.whl", hash = "sha256:0f212c2744a9bb6de0c56639a6f68afe01ecd92d91f14ae897c4fe7bbeeef0de"}, - {file = "certifi-2025.10.5.tar.gz", hash = "sha256:47c09d31ccf2acf0be3f701ea53595ee7e0b8fa08801c6624be771df09ae7b43"}, + {file = "certifi-2025.11.12-py3-none-any.whl", hash = "sha256:97de8790030bbd5c2d96b7ec782fc2f7820ef8dba6db909ccf95449f2d062d4b"}, + {file = "certifi-2025.11.12.tar.gz", hash = "sha256:d8ab5478f2ecd78af242878415affce761ca6bc54a22a27e026d7c25357c3316"}, ] [[package]] @@ -60,13 +60,13 @@ files = [ [[package]] name = "exceptiongroup" -version = "1.3.0" +version = "1.3.1" description = "Backport of PEP 654 (exception groups)" optional = false python-versions = ">=3.7" files = [ - {file = "exceptiongroup-1.3.0-py3-none-any.whl", hash = "sha256:4d111e6e0c13d0644cad6ddaa7ed0261a0b36971f6d23e7ec9b4b9097da78a10"}, - {file = "exceptiongroup-1.3.0.tar.gz", hash = "sha256:b241f5885f560bc56a59ee63ca4c6a8bfa46ae4ad651af316d4e81817bb9fd88"}, + {file = "exceptiongroup-1.3.1-py3-none-any.whl", hash = "sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577f82c773598"}, + {file = "exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219"}, ] [package.dependencies] diff --git a/pyproject.toml b/pyproject.toml index ba23d96..9099bd4 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ name = "schematichq" [tool.poetry] name = "schematichq" -version = "1.1.3" +version = "1.1.4" description = "" readme = "README.md" authors = [] diff --git a/reference.md b/reference.md index 55a5ac7..d6b6202 100644 --- a/reference.md +++ b/reference.md @@ -884,7 +884,7 @@ client.accounts.create_environment(
-**environment_type:** `CreateEnvironmentRequestBodyEnvironmentType` +**environment_type:** `EnvironmentType`
@@ -1012,7 +1012,7 @@ client.accounts.update_environment(
-**environment_type:** `typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType]` +**environment_type:** `typing.Optional[EnvironmentType]`
@@ -2289,7 +2289,7 @@ client.billing.upsert_payment_method( -
client.billing.search_billing_prices(...) +
client.billing.list_billing_prices(...)
@@ -2307,16 +2307,17 @@ from schematic import Schematic client = Schematic( api_key="YOUR_API_KEY", ) -client.billing.search_billing_prices( +client.billing.list_billing_prices( for_initial_plan=True, for_trial_expiry_plan=True, - product_id="product_id", interval="interval", + is_active=True, price=1, + product_id="product_id", q="q", - requires_payment_method=True, - tiers_mode="volume", + tiers_mode="graduated", usage_type="licensed", + with_meter=True, limit=1, offset=1, ) @@ -2359,7 +2360,7 @@ client.billing.search_billing_prices(
-**product_id:** `typing.Optional[str]` +**interval:** `typing.Optional[str]`
@@ -2367,7 +2368,7 @@ client.billing.search_billing_prices(
-**interval:** `typing.Optional[str]` +**is_active:** `typing.Optional[bool]` — Filter for active prices on active products (defaults to true if not specified)
@@ -2383,6 +2384,22 @@ client.billing.search_billing_prices(
+**product_id:** `typing.Optional[str]` + +
+
+ +
+
+ +**product_ids:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` + +
+
+ +
+
+ **q:** `typing.Optional[str]`
@@ -2391,7 +2408,7 @@ client.billing.search_billing_prices(
-**requires_payment_method:** `typing.Optional[bool]` — Filter for prices that require a payment method (inverse of ForInitialPlan) +**tiers_mode:** `typing.Optional[BillingTiersMode]`
@@ -2399,7 +2416,7 @@ client.billing.search_billing_prices(
-**tiers_mode:** `typing.Optional[SearchBillingPricesRequestTiersMode]` +**usage_type:** `typing.Optional[BillingPriceUsageType]`
@@ -2407,7 +2424,7 @@ client.billing.search_billing_prices(
-**usage_type:** `typing.Optional[SearchBillingPricesRequestUsageType]` +**with_meter:** `typing.Optional[bool]` — Filter for prices with a meter
@@ -2492,7 +2509,7 @@ client.billing.upsert_billing_price(
-**billing_scheme:** `CreateBillingPriceRequestBodyBillingScheme` +**billing_scheme:** `BillingPriceScheme`
@@ -2564,7 +2581,7 @@ client.billing.upsert_billing_price(
-**usage_type:** `CreateBillingPriceRequestBodyUsageType` +**usage_type:** `BillingPriceUsageType`
@@ -2596,7 +2613,7 @@ client.billing.upsert_billing_price(
-**tiers_mode:** `typing.Optional[CreateBillingPriceRequestBodyTiersMode]` +**tiers_mode:** `typing.Optional[BillingTiersMode]`
@@ -2672,7 +2689,7 @@ client.billing.delete_billing_product(
-
client.billing.list_product_prices(...) +
client.billing.list_billing_product_prices(...)
@@ -2690,15 +2707,17 @@ from schematic import Schematic client = Schematic( api_key="YOUR_API_KEY", ) -client.billing.list_product_prices( - name="name", - q="q", - price_usage_type="licensed", - without_linked_to_plan=True, - with_one_time_charges=True, - with_zero_price=True, - with_prices_only=True, +client.billing.list_billing_product_prices( + for_initial_plan=True, + for_trial_expiry_plan=True, + interval="interval", is_active=True, + price=1, + product_id="product_id", + q="q", + tiers_mode="graduated", + usage_type="licensed", + with_meter=True, limit=1, offset=1, ) @@ -2717,6 +2736,22 @@ client.billing.list_product_prices(
+**for_initial_plan:** `typing.Optional[bool]` — Filter for prices valid for initial plans (free prices only) + +
+
+ +
+
+ +**for_trial_expiry_plan:** `typing.Optional[bool]` — Filter for prices valid for trial expiry plans (free prices only) + +
+
+ +
+
+ **ids:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]`
@@ -2725,7 +2760,7 @@ client.billing.list_product_prices(
-**name:** `typing.Optional[str]` +**interval:** `typing.Optional[str]`
@@ -2733,7 +2768,7 @@ client.billing.list_product_prices(
-**q:** `typing.Optional[str]` +**is_active:** `typing.Optional[bool]` — Filter for active prices on active products (defaults to true if not specified)
@@ -2741,7 +2776,7 @@ client.billing.list_product_prices(
-**price_usage_type:** `typing.Optional[ListProductPricesRequestPriceUsageType]` +**price:** `typing.Optional[int]`
@@ -2749,7 +2784,7 @@ client.billing.list_product_prices(
-**without_linked_to_plan:** `typing.Optional[bool]` — Filter products that are not linked to any plan +**product_id:** `typing.Optional[str]`
@@ -2757,7 +2792,7 @@ client.billing.list_product_prices(
-**with_one_time_charges:** `typing.Optional[bool]` — Filter products that are one time charges +**product_ids:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]`
@@ -2765,7 +2800,7 @@ client.billing.list_product_prices(
-**with_zero_price:** `typing.Optional[bool]` — Filter products that have zero price for free subscription type +**q:** `typing.Optional[str]`
@@ -2773,7 +2808,7 @@ client.billing.list_product_prices(
-**with_prices_only:** `typing.Optional[bool]` — Filter products that have prices +**tiers_mode:** `typing.Optional[BillingTiersMode]`
@@ -2781,7 +2816,15 @@ client.billing.list_product_prices(
-**is_active:** `typing.Optional[bool]` — Filter products that are active +**usage_type:** `typing.Optional[BillingPriceUsageType]` + +
+
+ +
+
+ +**with_meter:** `typing.Optional[bool]` — Filter for prices with a meter
@@ -3024,7 +3067,7 @@ client.billing.list_billing_products(
-**price_usage_type:** `typing.Optional[ListBillingProductsRequestPriceUsageType]` +**price_usage_type:** `typing.Optional[BillingPriceUsageType]`
@@ -3169,7 +3212,7 @@ client.billing.count_billing_products(
-**price_usage_type:** `typing.Optional[CountBillingProductsRequestPriceUsageType]` +**price_usage_type:** `typing.Optional[BillingPriceUsageType]`
@@ -3379,6 +3422,14 @@ client.billing.upsert_billing_subscription(
+**application_id:** `typing.Optional[str]` + +
+
+ +
+
+ **cancel_at:** `typing.Optional[int]`
@@ -3451,7 +3502,7 @@ client.billing.upsert_billing_subscription(
-**trial_end_setting:** `typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting]` +**trial_end_setting:** `typing.Optional[BillingSubscriptionTrialEndSetting]`
@@ -3616,7 +3667,7 @@ client.credits.create_billing_credit(
-**burn_strategy:** `typing.Optional[CreateBillingCreditRequestBodyBurnStrategy]` +**burn_strategy:** `typing.Optional[BillingCreditBurnStrategy]`
@@ -3624,7 +3675,7 @@ client.credits.create_billing_credit(
-**default_expiry_unit:** `typing.Optional[str]` +**default_expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]`
@@ -3640,7 +3691,7 @@ client.credits.create_billing_credit(
-**default_rollover_policy:** `typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy]` +**default_rollover_policy:** `typing.Optional[BillingCreditRolloverPolicy]`
@@ -3818,7 +3869,7 @@ client.credits.update_billing_credit(
-**burn_strategy:** `typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy]` +**burn_strategy:** `typing.Optional[BillingCreditBurnStrategy]`
@@ -3826,7 +3877,7 @@ client.credits.update_billing_credit(
-**default_expiry_unit:** `typing.Optional[typing.Literal["days"]]` +**default_expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]`
@@ -3842,7 +3893,7 @@ client.credits.update_billing_credit(
-**default_rollover_policy:** `typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy]` +**default_rollover_policy:** `typing.Optional[BillingCreditRolloverPolicy]`
@@ -4013,7 +4064,7 @@ client.credits.list_credit_bundles(
-**status:** `typing.Optional[ListCreditBundlesRequestStatus]` +**status:** `typing.Optional[BillingCreditBundleStatus]`
@@ -4021,7 +4072,7 @@ client.credits.list_credit_bundles(
-**bundle_type:** `typing.Optional[typing.Literal["fixed"]]` +**bundle_type:** `typing.Optional[BillingCreditBundleType]`
@@ -4128,7 +4179,7 @@ client.credits.create_credit_bundle(
-**bundle_type:** `typing.Optional[typing.Literal["fixed"]]` +**bundle_type:** `typing.Optional[BillingCreditBundleType]`
@@ -4136,7 +4187,7 @@ client.credits.create_credit_bundle(
-**expiry_type:** `typing.Optional[CreateCreditBundleRequestBodyExpiryType]` +**expiry_type:** `typing.Optional[BillingCreditExpiryType]`
@@ -4144,7 +4195,7 @@ client.credits.create_credit_bundle(
-**expiry_unit:** `typing.Optional[CreateCreditBundleRequestBodyExpiryUnit]` +**expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]`
@@ -4176,7 +4227,7 @@ client.credits.create_credit_bundle(
-**status:** `typing.Optional[CreateCreditBundleRequestBodyStatus]` +**status:** `typing.Optional[BillingCreditBundleStatus]`
@@ -4314,7 +4365,7 @@ client.credits.update_credit_bundle_details(
-**expiry_type:** `typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType]` +**expiry_type:** `typing.Optional[BillingCreditExpiryType]`
@@ -4322,7 +4373,7 @@ client.credits.update_credit_bundle_details(
-**expiry_unit:** `typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit]` +**expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]`
@@ -4354,7 +4405,7 @@ client.credits.update_credit_bundle_details(
-**status:** `typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus]` +**status:** `typing.Optional[BillingCreditBundleStatus]`
@@ -4485,7 +4536,7 @@ client.credits.count_credit_bundles(
-**status:** `typing.Optional[CountCreditBundlesRequestStatus]` +**status:** `typing.Optional[BillingCreditBundleStatus]`
@@ -4493,7 +4544,7 @@ client.credits.count_credit_bundles(
-**bundle_type:** `typing.Optional[typing.Literal["fixed"]]` +**bundle_type:** `typing.Optional[BillingCreditBundleType]`
@@ -4655,7 +4706,7 @@ client.credits.zero_out_grant(
-**reason:** `typing.Optional[ZeroOutGrantRequestBodyReason]` +**reason:** `typing.Optional[BillingCreditGrantZeroedOutReason]`
@@ -4697,7 +4748,7 @@ client.credits.grant_billing_credits_to_company( company_id="company_id", credit_id="credit_id", quantity=1, - reason="reason", + reason="billing_credit_auto_topup", ) ``` @@ -4738,7 +4789,7 @@ client.credits.grant_billing_credits_to_company(
-**reason:** `str` +**reason:** `BillingCreditGrantReason`
@@ -4762,7 +4813,7 @@ client.credits.grant_billing_credits_to_company(
-**expiry_type:** `typing.Optional[CreateCompanyCreditGrantExpiryType]` +**expiry_type:** `typing.Optional[BillingCreditExpiryType]`
@@ -4770,7 +4821,7 @@ client.credits.grant_billing_credits_to_company(
-**expiry_unit:** `typing.Optional[CreateCompanyCreditGrantExpiryUnit]` +**expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]`
@@ -4786,6 +4837,22 @@ client.credits.grant_billing_credits_to_company(
+**renewal_enabled:** `typing.Optional[bool]` + +
+
+ +
+
+ +**renewal_period:** `typing.Optional[BillingPlanCreditGrantResetStart]` + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -4846,7 +4913,7 @@ client.credits.list_company_grants(
-**order:** `typing.Optional[ListCompanyGrantsRequestOrder]` +**order:** `typing.Optional[CreditGrantSortOrder]`
@@ -4854,7 +4921,7 @@ client.credits.list_company_grants(
-**dir:** `typing.Optional[ListCompanyGrantsRequestDir]` +**dir:** `typing.Optional[SortDirection]`
@@ -5105,7 +5172,7 @@ client.credits.get_enriched_credit_ledger(
-**period:** `GetEnrichedCreditLedgerRequestPeriod` +**period:** `CreditLedgerPeriod`
@@ -5224,7 +5291,7 @@ client.credits.count_credit_ledger(
-**period:** `CountCreditLedgerRequestPeriod` +**period:** `CreditLedgerPeriod`
@@ -5413,7 +5480,7 @@ client.credits.create_billing_plan_credit_grant( credit_amount=1, credit_id="credit_id", plan_id="plan_id", - reset_cadence="monthly", + reset_cadence="daily", reset_start="billing_period", ) @@ -5455,7 +5522,7 @@ client.credits.create_billing_plan_credit_grant(
-**reset_cadence:** `CreateBillingPlanCreditGrantRequestBodyResetCadence` +**reset_cadence:** `BillingPlanCreditGrantResetCadence`
@@ -5463,7 +5530,7 @@ client.credits.create_billing_plan_credit_grant(
-**reset_start:** `CreateBillingPlanCreditGrantRequestBodyResetStart` +**reset_start:** `BillingPlanCreditGrantResetStart`
@@ -5479,7 +5546,31 @@ client.credits.create_billing_plan_credit_grant(
-**expiry_type:** `typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType]` +**auto_topup_amount:** `typing.Optional[int]` + +
+
+ +
+
+ +**auto_topup_amount_type:** `typing.Optional[CreditAutoTopupAmountType]` + +
+
+ +
+
+ +**auto_topup_enabled:** `typing.Optional[bool]` + +
+
+ +
+
+ +**auto_topup_expiry_type:** `typing.Optional[BillingCreditExpiryType]`
@@ -5487,7 +5578,39 @@ client.credits.create_billing_plan_credit_grant(
-**expiry_unit:** `typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit]` +**auto_topup_expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]` + +
+
+ +
+
+ +**auto_topup_expiry_unit_count:** `typing.Optional[int]` + +
+
+ +
+
+ +**auto_topup_threshold_percent:** `typing.Optional[int]` + +
+
+ +
+
+ +**expiry_type:** `typing.Optional[BillingCreditExpiryType]` + +
+
+ +
+
+ +**expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]`
@@ -5503,7 +5626,7 @@ client.credits.create_billing_plan_credit_grant(
-**reset_type:** `typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType]` +**reset_type:** `typing.Optional[BillingPlanCreditGrantResetType]`
@@ -5543,7 +5666,7 @@ client = Schematic( ) client.credits.update_billing_plan_credit_grant( plan_grant_id="plan_grant_id", - reset_cadence="monthly", + reset_cadence="daily", reset_start="billing_period", ) @@ -5569,7 +5692,7 @@ client.credits.update_billing_plan_credit_grant(
-**reset_cadence:** `UpdateBillingPlanCreditGrantRequestBodyResetCadence` +**reset_cadence:** `BillingPlanCreditGrantResetCadence`
@@ -5577,7 +5700,7 @@ client.credits.update_billing_plan_credit_grant(
-**reset_start:** `UpdateBillingPlanCreditGrantRequestBodyResetStart` +**reset_start:** `BillingPlanCreditGrantResetStart`
@@ -5593,6 +5716,62 @@ client.credits.update_billing_plan_credit_grant(
+**auto_topup_amount:** `typing.Optional[int]` + +
+
+ +
+
+ +**auto_topup_amount_type:** `typing.Optional[CreditAutoTopupAmountType]` + +
+
+ +
+
+ +**auto_topup_enabled:** `typing.Optional[bool]` + +
+
+ +
+
+ +**auto_topup_expiry_type:** `typing.Optional[BillingCreditExpiryType]` + +
+
+ +
+
+ +**auto_topup_expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]` + +
+
+ +
+
+ +**auto_topup_expiry_unit_count:** `typing.Optional[int]` + +
+
+ +
+
+ +**auto_topup_threshold_percent:** `typing.Optional[int]` + +
+
+ +
+
+ **credit_amount:** `typing.Optional[int]`
@@ -5601,7 +5780,7 @@ client.credits.update_billing_plan_credit_grant(
-**expiry_type:** `typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType]` +**expiry_type:** `typing.Optional[BillingCreditExpiryType]`
@@ -5609,7 +5788,7 @@ client.credits.update_billing_plan_credit_grant(
-**expiry_unit:** `typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit]` +**expiry_unit:** `typing.Optional[BillingCreditExpiryUnit]`
@@ -5625,7 +5804,7 @@ client.credits.update_billing_plan_credit_grant(
-**reset_type:** `typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType]` +**reset_type:** `typing.Optional[BillingPlanCreditGrantResetType]`
@@ -6288,6 +6467,14 @@ client.checkout.manage_plan(
+**cancel_immediately:** `typing.Optional[bool]` — If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + +
+
+ +
+
+ **coupon_external_id:** `typing.Optional[str]`
@@ -6312,6 +6499,22 @@ client.checkout.manage_plan(
+**prorate:** `typing.Optional[bool]` — If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + +
+
+ +
+
+ +**trial_end:** `typing.Optional[dt.datetime]` + +
+
+ +
+
+ **request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration.
@@ -6414,23 +6617,119 @@ client.checkout.preview_manage_plan(
-**base_plan_id:** `typing.Optional[str]` - +**base_plan_id:** `typing.Optional[str]` + +
+
+ +
+
+ +**base_plan_price_id:** `typing.Optional[str]` + +
+
+ +
+
+ +**cancel_immediately:** `typing.Optional[bool]` — If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + +
+
+ +
+
+ +**coupon_external_id:** `typing.Optional[str]` + +
+
+ +
+
+ +**payment_method_external_id:** `typing.Optional[str]` + +
+
+ +
+
+ +**promo_code:** `typing.Optional[str]` + +
+
+ +
+
+ +**prorate:** `typing.Optional[bool]` — If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + +
+
+ +
+
+ +**trial_end:** `typing.Optional[dt.datetime]` + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ + + + +
+ +
client.checkout.cancel_subscription(...) +
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from schematic import Schematic + +client = Schematic( + api_key="YOUR_API_KEY", +) +client.checkout.cancel_subscription( + company_id="company_id", +) + +``` +
+
+#### ⚙️ Parameters +
-**base_plan_price_id:** `typing.Optional[str]` - -
-
-
-**coupon_external_id:** `typing.Optional[str]` +**company_id:** `str`
@@ -6438,7 +6737,7 @@ client.checkout.preview_manage_plan(
-**payment_method_external_id:** `typing.Optional[str]` +**cancel_immediately:** `typing.Optional[bool]` — If false, subscription cancels at period end. Defaults to true.
@@ -6446,7 +6745,7 @@ client.checkout.preview_manage_plan(
-**promo_code:** `typing.Optional[str]` +**prorate:** `typing.Optional[bool]` — If true and cancel_immediately is true, issue prorated credit. Defaults to true.
@@ -7068,7 +7367,9 @@ client.companies.count_companies_for_advanced_filter(
-**subscription_statuses:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` — Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) +**subscription_statuses:** `typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] +]` — Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid)
@@ -7076,7 +7377,9 @@ client.companies.count_companies_for_advanced_filter(
-**subscription_types:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` — Filter companies by one or more subscription types (paid, free, trial) +**subscription_types:** `typing.Optional[ + typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]] +]` — Filter companies by one or more subscription types (paid, free, trial)
@@ -7124,7 +7427,7 @@ client.companies.count_companies_for_advanced_filter(
-**sort_order_direction:** `typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection]` — Direction to sort by (asc or desc) +**sort_order_direction:** `typing.Optional[SortDirection]` — Direction to sort by (asc or desc)
@@ -7395,7 +7698,9 @@ client.companies.list_companies_for_advanced_filter(
-**subscription_statuses:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` — Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) +**subscription_statuses:** `typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] +]` — Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid)
@@ -7403,7 +7708,9 @@ client.companies.list_companies_for_advanced_filter(
-**subscription_types:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` — Filter companies by one or more subscription types (paid, free, trial) +**subscription_types:** `typing.Optional[ + typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]] +]` — Filter companies by one or more subscription types (paid, free, trial)
@@ -7451,7 +7758,7 @@ client.companies.list_companies_for_advanced_filter(
-**sort_order_direction:** `typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection]` — Direction to sort by (asc or desc) +**sort_order_direction:** `typing.Optional[SortDirection]` — Direction to sort by (asc or desc)
@@ -8048,7 +8355,7 @@ client.companies.list_entity_key_definitions(
-**entity_type:** `typing.Optional[ListEntityKeyDefinitionsRequestEntityType]` +**entity_type:** `typing.Optional[EntityType]`
@@ -8139,7 +8446,7 @@ client.companies.count_entity_key_definitions(
-**entity_type:** `typing.Optional[CountEntityKeyDefinitionsRequestEntityType]` +**entity_type:** `typing.Optional[EntityType]`
@@ -8231,7 +8538,7 @@ client.companies.list_entity_trait_definitions(
-**entity_type:** `typing.Optional[ListEntityTraitDefinitionsRequestEntityType]` +**entity_type:** `typing.Optional[EntityType]`
@@ -8255,7 +8562,15 @@ client.companies.list_entity_trait_definitions(
-**trait_type:** `typing.Optional[ListEntityTraitDefinitionsRequestTraitType]` +**trait_type:** `typing.Optional[TraitType]` + +
+
+ +
+
+ +**trait_types:** `typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]]`
@@ -8329,7 +8644,7 @@ client.companies.get_or_create_entity_trait_definition(
-**entity_type:** `CreateEntityTraitDefinitionRequestBodyEntityType` +**entity_type:** `EntityType`
@@ -8345,7 +8660,7 @@ client.companies.get_or_create_entity_trait_definition(
-**trait_type:** `CreateEntityTraitDefinitionRequestBodyTraitType` +**trait_type:** `TraitType`
@@ -8474,7 +8789,7 @@ client.companies.update_entity_trait_definition(
-**trait_type:** `UpdateEntityTraitDefinitionRequestBodyTraitType` +**trait_type:** `TraitType`
@@ -8542,7 +8857,7 @@ client.companies.count_entity_trait_definitions(
-**entity_type:** `typing.Optional[CountEntityTraitDefinitionsRequestEntityType]` +**entity_type:** `typing.Optional[EntityType]`
@@ -8566,7 +8881,15 @@ client.companies.count_entity_trait_definitions(
-**trait_type:** `typing.Optional[CountEntityTraitDefinitionsRequestTraitType]` +**trait_type:** `typing.Optional[TraitType]` + +
+
+ +
+
+ +**trait_types:** `typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]]`
@@ -9227,6 +9550,7 @@ client = Schematic( api_key="YOUR_API_KEY", ) client.companies.update_plan_traits_bulk( + apply_to_existing_companies=True, plan_id="plan_id", traits=[ UpdatePlanTraitTraitRequestBody( @@ -9250,6 +9574,14 @@ client.companies.update_plan_traits_bulk(
+**apply_to_existing_companies:** `bool` + +
+
+ +
+
+ **plan_id:** `str`
@@ -10326,7 +10658,7 @@ client.entitlements.create_company_override(
-**value_type:** `CreateCompanyOverrideRequestBodyValueType` +**value_type:** `EntitlementValueType`
@@ -10519,7 +10851,7 @@ client.entitlements.update_company_override(
-**value_type:** `UpdateCompanyOverrideRequestBodyValueType` +**value_type:** `EntitlementValueType`
@@ -11519,7 +11851,7 @@ client.entitlements.create_plan_entitlement(
-**value_type:** `CreatePlanEntitlementRequestBodyValueType` +**value_type:** `EntitlementValueType`
@@ -11615,7 +11947,7 @@ client.entitlements.create_plan_entitlement(
-**price_behavior:** `typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior]` +**price_behavior:** `typing.Optional[EntitlementPriceBehavior]`
@@ -11639,7 +11971,7 @@ client.entitlements.create_plan_entitlement(
-**tier_mode:** `typing.Optional[str]` +**tier_mode:** `typing.Optional[BillingTiersMode]`
@@ -11824,7 +12156,7 @@ client.entitlements.update_plan_entitlement(
-**value_type:** `UpdatePlanEntitlementRequestBodyValueType` +**value_type:** `EntitlementValueType`
@@ -11920,7 +12252,7 @@ client.entitlements.update_plan_entitlement(
-**price_behavior:** `typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior]` +**price_behavior:** `typing.Optional[EntitlementPriceBehavior]`
@@ -11944,7 +12276,7 @@ client.entitlements.update_plan_entitlement(
-**tier_mode:** `typing.Optional[str]` +**tier_mode:** `typing.Optional[BillingTiersMode]`
@@ -12205,6 +12537,71 @@ client.entitlements.count_plan_entitlements(
+
+
+
+ +
client.entitlements.duplicate_plan_entitlements(...) +
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from schematic import Schematic + +client = Schematic( + api_key="YOUR_API_KEY", +) +client.entitlements.duplicate_plan_entitlements( + source_plan_id="source_plan_id", + target_plan_id="target_plan_id", +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**source_plan_id:** `str` + +
+
+ +
+
+ +**target_plan_id:** `str` + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ +
@@ -12365,9 +12762,7 @@ client.plans.list_plans( has_product_id=True, plan_type="plan", q="q", - requires_payment_method=True, without_entitlement_for="without_entitlement_for", - without_product_id=True, without_paid_product_id=True, limit=1, offset=1, @@ -12435,7 +12830,7 @@ client.plans.list_plans(
-**plan_type:** `typing.Optional[ListPlansRequestPlanType]` — Filter by plan type +**plan_type:** `typing.Optional[PlanType]` — Filter by plan type
@@ -12451,14 +12846,6 @@ client.plans.list_plans(
-**requires_payment_method:** `typing.Optional[bool]` — Filter for plans that require a payment method (inverse of ForInitialPlan) - -
-
- -
-
- **without_entitlement_for:** `typing.Optional[str]` — Filter out plans that already have a plan entitlement for the specified feature ID
@@ -12467,14 +12854,6 @@ client.plans.list_plans(
-**without_product_id:** `typing.Optional[bool]` — Filter out plans that have a billing product ID - -
-
- -
-
- **without_paid_product_id:** `typing.Optional[bool]` — Filter out plans that have a paid billing product ID
@@ -12565,7 +12944,7 @@ client.plans.create_plan(
-**plan_type:** `CreatePlanRequestBodyPlanType` +**plan_type:** `PlanType`
@@ -12806,7 +13185,7 @@ client = Schematic( ) client.plans.upsert_billing_product_plan( plan_id="plan_id", - charge_type="one_time", + charge_type="free", is_trialable=True, ) @@ -12832,7 +13211,7 @@ client.plans.upsert_billing_product_plan(
-**charge_type:** `UpsertBillingProductRequestBodyChargeType` +**charge_type:** `ChargeType`
@@ -12958,9 +13337,7 @@ client.plans.count_plans( has_product_id=True, plan_type="plan", q="q", - requires_payment_method=True, without_entitlement_for="without_entitlement_for", - without_product_id=True, without_paid_product_id=True, limit=1, offset=1, @@ -13028,7 +13405,7 @@ client.plans.count_plans(
-**plan_type:** `typing.Optional[CountPlansRequestPlanType]` — Filter by plan type +**plan_type:** `typing.Optional[PlanType]` — Filter by plan type
@@ -13044,14 +13421,6 @@ client.plans.count_plans(
-**requires_payment_method:** `typing.Optional[bool]` — Filter for plans that require a payment method (inverse of ForInitialPlan) - -
-
- -
-
- **without_entitlement_for:** `typing.Optional[str]` — Filter out plans that already have a plan entitlement for the specified feature ID
@@ -13060,14 +13429,6 @@ client.plans.count_plans(
-**without_product_id:** `typing.Optional[bool]` — Filter out plans that have a billing product ID - -
-
- -
-
- **without_paid_product_id:** `typing.Optional[bool]` — Filter out plans that have a paid billing product ID
@@ -13254,7 +13615,7 @@ client = Schematic( api_key="YOUR_API_KEY", ) client.components.create_component( - entity_type="entitlement", + entity_type="billing", name="name", ) @@ -13272,7 +13633,7 @@ client.components.create_component(
-**entity_type:** `CreateComponentRequestBodyEntityType` +**entity_type:** `ComponentEntityType`
@@ -13416,7 +13777,7 @@ client.components.update_component(
-**entity_type:** `typing.Optional[UpdateComponentRequestBodyEntityType]` +**entity_type:** `typing.Optional[ComponentEntityType]`
@@ -13432,7 +13793,7 @@ client.components.update_component(
-**state:** `typing.Optional[UpdateComponentRequestBodyState]` +**state:** `typing.Optional[ComponentState]`
@@ -14287,7 +14648,7 @@ client = Schematic( client.events.create_event_batch( events=[ CreateEventRequestBody( - event_type="identify", + event_type="flag_check", ) ], ) @@ -14465,12 +14826,7 @@ client.events.list_events(
-**event_types:** `typing.Optional[ - typing.Union[ - ListEventsRequestEventTypesItem, - typing.Sequence[ListEventsRequestEventTypesItem], - ] -]` +**event_types:** `typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]]`
@@ -14541,7 +14897,7 @@ client = Schematic( api_key="YOUR_API_KEY", ) client.events.create_event( - event_type="identify", + event_type="flag_check", ) ``` @@ -14558,7 +14914,7 @@ client.events.create_event(
-**event_type:** `CreateEventRequestBodyEventType` — Either 'identify' or 'track' +**event_type:** `EventType`
@@ -14770,7 +15126,7 @@ client.features.list_features(
-**feature_type:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` — Filter by one or more feature types (boolean, event, trait) +**feature_type:** `typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]]` — Filter by one or more feature types (boolean, event, trait)
@@ -14860,7 +15216,7 @@ client.features.create_feature(
-**feature_type:** `CreateFeatureRequestBodyFeatureType` +**feature_type:** `FeatureType`
@@ -14900,7 +15256,7 @@ client.features.create_feature(
-**lifecycle_phase:** `typing.Optional[CreateFeatureRequestBodyLifecyclePhase]` +**lifecycle_phase:** `typing.Optional[FeatureLifecyclePhase]`
@@ -15068,7 +15424,7 @@ client.features.update_feature(
-**feature_type:** `typing.Optional[UpdateFeatureRequestBodyFeatureType]` +**feature_type:** `typing.Optional[FeatureType]`
@@ -15092,7 +15448,7 @@ client.features.update_feature(
-**lifecycle_phase:** `typing.Optional[UpdateFeatureRequestBodyLifecyclePhase]` +**lifecycle_phase:** `typing.Optional[FeatureLifecyclePhase]`
@@ -15281,7 +15637,7 @@ client.features.count_features(
-**feature_type:** `typing.Optional[typing.Union[str, typing.Sequence[str]]]` — Filter by one or more feature types (boolean, event, trait) +**feature_type:** `typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]]` — Filter by one or more feature types (boolean, event, trait)
@@ -15959,6 +16315,62 @@ client.features.check_flags()
+ +
+
+ +
client.features.check_flags_bulk(...) +
+
+ +#### 🔌 Usage + +
+
+ +
+
+ +```python +from schematic import CheckFlagRequestBody, Schematic + +client = Schematic( + api_key="YOUR_API_KEY", +) +client.features.check_flags_bulk( + contexts=[CheckFlagRequestBody()], +) + +``` +
+
+
+
+ +#### ⚙️ Parameters + +
+
+ +
+
+ +**contexts:** `typing.Sequence[CheckFlagRequestBody]` + +
+
+ +
+
+ +**request_options:** `typing.Optional[RequestOptions]` — Request-specific configuration. + +
+
+
+
+ +
@@ -16141,10 +16553,13 @@ client.plangroups.create_plan_group( ) ], prevent_downgrades_when_over_limit=True, + prevent_self_service_downgrade=True, + proration_behavior="create_prorations", + show_as_monthly_prices=True, show_credits=True, show_period_toggle=True, show_zero_price_as_free=True, - sync_customer_billing_details_for_tax=True, + sync_customer_billing_details=True, ) ``` @@ -16233,6 +16648,30 @@ client.plangroups.create_plan_group(
+**prevent_self_service_downgrade:** `bool` + +
+
+ +
+
+ +**proration_behavior:** `ProrationBehavior` + +
+
+ +
+
+ +**show_as_monthly_prices:** `bool` + +
+
+ +
+
+ **show_credits:** `bool`
@@ -16257,7 +16696,7 @@ client.plangroups.create_plan_group(
-**sync_customer_billing_details_for_tax:** `bool` +**sync_customer_billing_details:** `bool`
@@ -16313,6 +16752,22 @@ client.plangroups.create_plan_group(
+**prevent_self_service_downgrade_button_text:** `typing.Optional[str]` + +
+
+ +
+
+ +**prevent_self_service_downgrade_url:** `typing.Optional[str]` + +
+
+ +
+
+ **trial_days:** `typing.Optional[int]`
@@ -16398,10 +16853,13 @@ client.plangroups.update_plan_group( ) ], prevent_downgrades_when_over_limit=True, + prevent_self_service_downgrade=True, + proration_behavior="create_prorations", + show_as_monthly_prices=True, show_credits=True, show_period_toggle=True, show_zero_price_as_free=True, - sync_customer_billing_details_for_tax=True, + sync_customer_billing_details=True, ) ``` @@ -16498,6 +16956,30 @@ client.plangroups.update_plan_group(
+**prevent_self_service_downgrade:** `bool` + +
+
+ +
+
+ +**proration_behavior:** `ProrationBehavior` + +
+
+ +
+
+ +**show_as_monthly_prices:** `bool` + +
+
+ +
+
+ **show_credits:** `bool`
@@ -16522,7 +17004,7 @@ client.plangroups.update_plan_group(
-**sync_customer_billing_details_for_tax:** `bool` +**sync_customer_billing_details:** `bool`
@@ -16578,6 +17060,22 @@ client.plangroups.update_plan_group(
+**prevent_self_service_downgrade_button_text:** `typing.Optional[str]` + +
+
+ +
+
+ +**prevent_self_service_downgrade_url:** `typing.Optional[str]` + +
+
+ +
+
+ **trial_days:** `typing.Optional[int]`
@@ -17012,7 +17510,7 @@ client = Schematic( ) client.webhooks.create_webhook( name="name", - request_types=["company.updated"], + request_types=["subscription.trial.ended"], url="url", ) @@ -17038,7 +17536,7 @@ client.webhooks.create_webhook(
-**request_types:** `typing.Sequence[CreateWebhookRequestBodyRequestTypesItem]` +**request_types:** `typing.Sequence[WebhookRequestType]`
@@ -17206,7 +17704,7 @@ client.webhooks.update_webhook(
-**request_types:** `typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]]` +**request_types:** `typing.Optional[typing.Sequence[WebhookRequestType]]`
@@ -17214,7 +17712,7 @@ client.webhooks.update_webhook(
-**status:** `typing.Optional[UpdateWebhookRequestBodyStatus]` +**status:** `typing.Optional[WebhookStatus]`
diff --git a/src/schematic/__init__.py b/src/schematic/__init__.py index ab74291..a7e989b 100644 --- a/src/schematic/__init__.py +++ b/src/schematic/__init__.py @@ -12,35 +12,53 @@ ApiKeyRequestListResponseData, ApiKeyRequestResponseData, ApiKeyResponseData, + ApiKeyScope, BillingCouponResponseData, BillingCreditBundleResponseData, + BillingCreditBundleStatus, + BillingCreditBundleType, BillingCreditBundleView, + BillingCreditBurnStrategy, + BillingCreditExpiryType, + BillingCreditExpiryUnit, + BillingCreditGrantReason, BillingCreditGrantResponseData, + BillingCreditGrantZeroedOutReason, BillingCreditLedgerResponseData, BillingCreditResponseData, + BillingCreditRolloverPolicy, BillingCustomerResponseData, BillingCustomerSubscription, BillingCustomerWithSubscriptionsResponseData, BillingMeterResponseData, + BillingPlanCreditGrantResetCadence, + BillingPlanCreditGrantResetStart, + BillingPlanCreditGrantResetType, BillingPlanCreditGrantResponseData, BillingPriceResponseData, + BillingPriceScheme, + BillingPriceUsageType, BillingPriceView, BillingProductDetailResponseData, BillingProductForSubscriptionResponseData, BillingProductPlanResponseData, + BillingProductPriceInterval, BillingProductPriceResponseData, BillingProductPriceTierResponseData, BillingProductPricing, - BillingProductPricingUsageType, BillingProductResponseData, BillingSubscriptionDiscount, BillingSubscriptionDiscountView, BillingSubscriptionResponseData, + BillingSubscriptionTrialEndSetting, BillingSubscriptionView, + BillingTiersMode, ChangeSubscriptionInternalRequestBody, ChangeSubscriptionRequestBody, + ChargeType, CheckFlagRequestBody, CheckFlagResponseData, + CheckFlagsBulkResponseData, CheckFlagsResponseData, CheckoutDataResponseData, CheckoutSettingsResponseData, @@ -54,6 +72,7 @@ CompanyOverrideNoteResponseData, CompanyOverrideResponseData, CompanyPlanDetailResponseData, + CompanyPlanInvalidReason, CompanyPlanWithBillingSubView, CompanyResponseData, CompanySubscriptionResponseData, @@ -62,9 +81,13 @@ CompatiblePlansResponseData, ComponentCapabilities, ComponentCheckoutSettings, + ComponentDisplaySettings, + ComponentEntityType, ComponentHydrateResponseData, ComponentPreviewResponseData, ComponentResponseData, + ComponentSettingsResponseData, + ComponentState, Condition, ConditionConditionType, ConditionGroup, @@ -77,9 +100,7 @@ CreateEntitlementReqCommon, CreateEntitlementReqCommonMetricPeriod, CreateEntitlementReqCommonMetricPeriodMonthReset, - CreateEntitlementReqCommonValueType, CreateEventRequestBody, - CreateEventRequestBodyEventType, CreateFlagRequestBody, CreateOrUpdateConditionGroupRequestBody, CreateOrUpdateConditionRequestBody, @@ -91,17 +112,14 @@ CreateOrUpdateRuleRequestBody, CreateOrUpdateRuleRequestBodyRuleType, CreatePriceTierRequestBody, + CreditAutoTopupAmountType, CreditBundlePurchaseResponseData, CreditCompanyGrantView, CreditGrantDetail, - CreditGrantDetailGrantReason, CreditGrantExpiryRequestBody, - CreditGrantExpiryRequestBodyExpiryType, - CreditGrantExpiryRequestBodyExpiryUnit, - CreditGrantExpiryRequestBodyResetCadence, - CreditGrantExpiryRequestBodyResetStart, - CreditGrantExpiryRequestBodyResetType, + CreditGrantSortOrder, CreditLedgerEnrichedEntryResponseData, + CreditLedgerPeriod, CreditTriggerConfig, CreditUsage, CreditUsageResponseData, @@ -111,10 +129,17 @@ CrmProductResponseData, CustomPlanConfig, CustomPlanViewConfigResponseData, + DataExportOutputFileType, DataExportResponseData, + DataExportStatus, + DataExportType, Decimal, DeleteResponse, + DuplicatePlanEntitlementsResponseResponseData, + EntitlementPriceBehavior, EntitlementTriggerConfig, + EntitlementType, + EntitlementValueType, EntitlementsInPlan, EntityKeyDefinitionResponseData, EntityKeyDetailResponseData, @@ -123,8 +148,10 @@ EntityTraitDetailResponseData, EntityTraitResponseData, EntityTraitValue, + EntityType, EnvironmentDetailResponseData, EnvironmentResponseData, + EnvironmentType, EventBody, EventBodyFlagCheck, EventBodyIdentify, @@ -132,22 +159,22 @@ EventBodyTrack, EventDetailResponseData, EventResponseData, + EventStatus, EventSummaryResponseData, + EventType, FeatureCompanyResponseData, - FeatureCompanyResponseDataAllocationType, - FeatureCompanyResponseDataCreditGrantReason, FeatureCompanyUserResponseData, - FeatureCompanyUserResponseDataAllocationType, FeatureDetailResponseData, FeatureLedgerResponseData, + FeatureLifecyclePhase, FeatureResponseData, + FeatureType, FeatureUsageDataResponseData, FeatureUsageDetailResponseData, FeatureUsageResponseData, - FeatureUsageResponseDataAllocationType, - FeatureUsageResponseDataCreditGrantReason, FlagDetailResponseData, FlagResponseData, + FlagType, GenericPreviewObject, InvoiceRequestBody, InvoiceResponseData, @@ -160,11 +187,12 @@ OrderedPlansInGroup, PaymentMethodRequestBody, PaymentMethodResponseData, + PlanChangeAction, + PlanChangeActorType, + PlanChangeBasePlanAction, PlanChangeResponseData, - PlanChangeResponseDataAction, - PlanChangeResponseDataActorType, - PlanChangeResponseDataBasePlanAction, - PlanChangeResponseDataSubscriptionChangeAction, + PlanChangeSubscriptionAction, + PlanControlledByType, PlanCreditGrantView, PlanDetailResponseData, PlanEntitlementResponseData, @@ -179,11 +207,13 @@ PlanSelection, PlanSnapshotView, PlanTraitResponseData, + PlanType, PreviewObject, PreviewObjectResponseData, PreviewSubscriptionChangeResponseData, PreviewSubscriptionFinanceResponseData, PreviewSubscriptionUpcomingInvoiceLineItems, + ProrationBehavior, QuickstartResp, RawEventBatchResponseData, RawEventResponseData, @@ -196,19 +226,47 @@ RuleResponseData, RuleRuleType, RulesDetailResponseData, + RulesEngineSchemaVersion, + RulesengineCheckFlagResult, + RulesengineCheckFlagResultFeatureUsagePeriod, + RulesengineCheckFlagResultRuleType, + RulesengineCompany, + RulesengineCompanyMetric, + RulesengineCompanyMetricMonthReset, + RulesengineCompanyMetricPeriod, + RulesengineCondition, + RulesengineConditionConditionType, + RulesengineConditionGroup, + RulesengineConditionMetricPeriod, + RulesengineConditionMetricPeriodMonthReset, + RulesengineConditionOperator, + RulesengineEntityType, + RulesengineFlag, + RulesengineRule, + RulesengineRuleRuleType, + RulesengineSubscription, + RulesengineTrait, + RulesengineTraitDefinition, + RulesengineTraitDefinitionComparableType, + RulesengineUser, SegmentStatusResp, + SkippedEntitlementErrorResponseData, + SkippedEntitlementResponseData, + SortDirection, StripeEmbedInfo, + SubscriptionStatus, SubscriptionTraitUpdate, + SubscriptionType, + TemporaryAccessTokenResourceType, TemporaryAccessTokenResponseData, TraitDefinition, TraitDefinitionComparableType, - TraitDefinitionEntityType, + TraitType, UpdateAddOnRequestBody, UpdateCreditBundleRequestBody, UpdateEntitlementReqCommon, UpdateEntitlementReqCommonMetricPeriod, UpdateEntitlementReqCommonMetricPeriodMonthReset, - UpdateEntitlementReqCommonValueType, UpdatePayInAdvanceRequestBody, UpdatePlanTraitTraitRequestBody, UpdateRuleRequestBody, @@ -217,13 +275,15 @@ UpsertUserRequestBody, UpsertUserSubRequestBody, UsageBasedEntitlementRequestBody, - UsageBasedEntitlementRequestBodyPriceBehavior, UsageBasedEntitlementResponseData, UserDetailResponseData, UserResponseData, WebhookEventDetailResponseData, WebhookEventResponseData, + WebhookEventStatus, + WebhookRequestType, WebhookResponseData, + WebhookStatus, ) from .errors import BadRequestError, ForbiddenError, InternalServerError, NotFoundError, UnauthorizedError from . import ( @@ -250,7 +310,6 @@ CountApiRequestsParams, CountApiRequestsResponse, CreateApiKeyResponse, - CreateEnvironmentRequestBodyEnvironmentType, CreateEnvironmentResponse, DeleteApiKeyResponse, DeleteEnvironmentResponse, @@ -265,26 +324,21 @@ ListEnvironmentsResponse, QuickstartResponse, UpdateApiKeyResponse, - UpdateEnvironmentRequestBodyEnvironmentType, UpdateEnvironmentResponse, ) from .billing import ( CountBillingProductsParams, - CountBillingProductsRequestPriceUsageType, CountBillingProductsResponse, - CountBillingProductsResponseParamsPriceUsageType, CountCustomersParams, CountCustomersResponse, - CreateBillingPriceRequestBodyBillingScheme, - CreateBillingPriceRequestBodyTiersMode, - CreateBillingPriceRequestBodyUsageType, - CreateBillingSubscriptionRequestBodyTrialEndSetting, DeleteBillingProductResponse, DeleteProductPriceResponse, + ListBillingPricesParams, + ListBillingPricesResponse, + ListBillingProductPricesParams, + ListBillingProductPricesResponse, ListBillingProductsParams, - ListBillingProductsRequestPriceUsageType, ListBillingProductsResponse, - ListBillingProductsResponseParamsPriceUsageType, ListCouponsParams, ListCouponsResponse, ListCustomersWithSubscriptionsParams, @@ -295,16 +349,6 @@ ListMetersResponse, ListPaymentMethodsParams, ListPaymentMethodsResponse, - ListProductPricesParams, - ListProductPricesRequestPriceUsageType, - ListProductPricesResponse, - ListProductPricesResponseParamsPriceUsageType, - SearchBillingPricesParams, - SearchBillingPricesRequestTiersMode, - SearchBillingPricesRequestUsageType, - SearchBillingPricesResponse, - SearchBillingPricesResponseParamsTiersMode, - SearchBillingPricesResponseParamsUsageType, UpsertBillingCouponResponse, UpsertBillingCustomerResponse, UpsertBillingMeterResponse, @@ -315,6 +359,7 @@ UpsertPaymentMethodResponse, ) from .checkout import ( + CancelSubscriptionResponse, CheckoutInternalResponse, GetCheckoutDataResponse, ManagePlanResponse, @@ -325,28 +370,18 @@ from .client import AsyncSchematic, AsyncSchematicConfig, LocalCache, Schematic, SchematicConfig from .companies import ( CountCompaniesForAdvancedFilterParams, - CountCompaniesForAdvancedFilterRequestSortOrderDirection, CountCompaniesForAdvancedFilterResponse, - CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection, CountCompaniesParams, CountCompaniesResponse, CountEntityKeyDefinitionsParams, - CountEntityKeyDefinitionsRequestEntityType, CountEntityKeyDefinitionsResponse, - CountEntityKeyDefinitionsResponseParamsEntityType, CountEntityTraitDefinitionsParams, - CountEntityTraitDefinitionsRequestEntityType, - CountEntityTraitDefinitionsRequestTraitType, CountEntityTraitDefinitionsResponse, - CountEntityTraitDefinitionsResponseParamsEntityType, - CountEntityTraitDefinitionsResponseParamsTraitType, CountPlanTraitsParams, CountPlanTraitsResponse, CountUsersParams, CountUsersResponse, CreateCompanyResponse, - CreateEntityTraitDefinitionRequestBodyEntityType, - CreateEntityTraitDefinitionRequestBodyTraitType, CreatePlanTraitResponse, CreateUserResponse, DeleteCompanyByKeysResponse, @@ -370,23 +405,15 @@ GetPlanTraitResponse, GetUserResponse, ListCompaniesForAdvancedFilterParams, - ListCompaniesForAdvancedFilterRequestSortOrderDirection, ListCompaniesForAdvancedFilterResponse, - ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection, ListCompaniesParams, ListCompaniesResponse, ListCompanyMembershipsParams, ListCompanyMembershipsResponse, ListEntityKeyDefinitionsParams, - ListEntityKeyDefinitionsRequestEntityType, ListEntityKeyDefinitionsResponse, - ListEntityKeyDefinitionsResponseParamsEntityType, ListEntityTraitDefinitionsParams, - ListEntityTraitDefinitionsRequestEntityType, - ListEntityTraitDefinitionsRequestTraitType, ListEntityTraitDefinitionsResponse, - ListEntityTraitDefinitionsResponseParamsEntityType, - ListEntityTraitDefinitionsResponseParamsTraitType, ListPlanChangesParams, ListPlanChangesResponse, ListPlanTraitsParams, @@ -397,7 +424,6 @@ LookupCompanyResponse, LookupUserParams, LookupUserResponse, - UpdateEntityTraitDefinitionRequestBodyTraitType, UpdateEntityTraitDefinitionResponse, UpdatePlanTraitResponse, UpdatePlanTraitsBulkResponse, @@ -409,7 +435,6 @@ from .components import ( CountComponentsParams, CountComponentsResponse, - CreateComponentRequestBodyEntityType, CreateComponentResponse, DeleteComponentResponse, GetComponentResponse, @@ -417,8 +442,6 @@ ListComponentsResponse, PreviewComponentDataParams, PreviewComponentDataResponse, - UpdateComponentRequestBodyEntityType, - UpdateComponentRequestBodyState, UpdateComponentResponse, ) from .credits import ( @@ -429,36 +452,18 @@ CountBillingPlanCreditGrantsParams, CountBillingPlanCreditGrantsResponse, CountCreditBundlesParams, - CountCreditBundlesRequestStatus, CountCreditBundlesResponse, - CountCreditBundlesResponseParamsStatus, CountCreditLedgerParams, - CountCreditLedgerRequestPeriod, CountCreditLedgerResponse, - CountCreditLedgerResponseParamsPeriod, - CreateBillingCreditRequestBodyBurnStrategy, - CreateBillingCreditRequestBodyDefaultRolloverPolicy, CreateBillingCreditResponse, - CreateBillingPlanCreditGrantRequestBodyExpiryType, - CreateBillingPlanCreditGrantRequestBodyExpiryUnit, - CreateBillingPlanCreditGrantRequestBodyResetCadence, - CreateBillingPlanCreditGrantRequestBodyResetStart, - CreateBillingPlanCreditGrantRequestBodyResetType, CreateBillingPlanCreditGrantResponse, - CreateCompanyCreditGrantExpiryType, - CreateCompanyCreditGrantExpiryUnit, - CreateCreditBundleRequestBodyExpiryType, - CreateCreditBundleRequestBodyExpiryUnit, - CreateCreditBundleRequestBodyStatus, CreateCreditBundleResponse, DeleteBillingPlanCreditGrantParams, DeleteBillingPlanCreditGrantResponse, DeleteCreditBundleResponse, GetCreditBundleResponse, GetEnrichedCreditLedgerParams, - GetEnrichedCreditLedgerRequestPeriod, GetEnrichedCreditLedgerResponse, - GetEnrichedCreditLedgerResponseParamsPeriod, GetSingleBillingCreditResponse, GrantBillingCreditsToCompanyResponse, ListBillingCreditsParams, @@ -466,32 +471,15 @@ ListBillingPlanCreditGrantsParams, ListBillingPlanCreditGrantsResponse, ListCompanyGrantsParams, - ListCompanyGrantsRequestDir, - ListCompanyGrantsRequestOrder, ListCompanyGrantsResponse, - ListCompanyGrantsResponseParamsDir, - ListCompanyGrantsResponseParamsOrder, ListCreditBundlesParams, - ListCreditBundlesRequestStatus, ListCreditBundlesResponse, - ListCreditBundlesResponseParamsStatus, ListGrantsForCreditParams, ListGrantsForCreditResponse, SoftDeleteBillingCreditResponse, - UpdateBillingCreditRequestBodyBurnStrategy, - UpdateBillingCreditRequestBodyDefaultRolloverPolicy, UpdateBillingCreditResponse, - UpdateBillingPlanCreditGrantRequestBodyExpiryType, - UpdateBillingPlanCreditGrantRequestBodyExpiryUnit, - UpdateBillingPlanCreditGrantRequestBodyResetCadence, - UpdateBillingPlanCreditGrantRequestBodyResetStart, - UpdateBillingPlanCreditGrantRequestBodyResetType, UpdateBillingPlanCreditGrantResponse, - UpdateCreditBundleDetailsRequestBodyExpiryType, - UpdateCreditBundleDetailsRequestBodyExpiryUnit, - UpdateCreditBundleDetailsRequestBodyStatus, UpdateCreditBundleDetailsResponse, - ZeroOutGrantRequestBodyReason, ZeroOutGrantResponse, ) from .crm import ( @@ -516,15 +504,13 @@ CountPlanEntitlementsResponse, CreateCompanyOverrideRequestBodyMetricPeriod, CreateCompanyOverrideRequestBodyMetricPeriodMonthReset, - CreateCompanyOverrideRequestBodyValueType, CreateCompanyOverrideResponse, CreatePlanEntitlementRequestBodyMetricPeriod, CreatePlanEntitlementRequestBodyMetricPeriodMonthReset, - CreatePlanEntitlementRequestBodyPriceBehavior, - CreatePlanEntitlementRequestBodyValueType, CreatePlanEntitlementResponse, DeleteCompanyOverrideResponse, DeletePlanEntitlementResponse, + DuplicatePlanEntitlementsResponse, GetCompanyOverrideResponse, GetFeatureUsageByCompanyParams, GetFeatureUsageByCompanyResponse, @@ -541,12 +527,9 @@ ListPlanEntitlementsResponse, UpdateCompanyOverrideRequestBodyMetricPeriod, UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset, - UpdateCompanyOverrideRequestBodyValueType, UpdateCompanyOverrideResponse, UpdatePlanEntitlementRequestBodyMetricPeriod, UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset, - UpdatePlanEntitlementRequestBodyPriceBehavior, - UpdatePlanEntitlementRequestBodyValueType, UpdatePlanEntitlementResponse, ) from .environment import SchematicEnvironment @@ -558,19 +541,16 @@ GetEventSummariesResponse, GetSegmentIntegrationStatusResponse, ListEventsParams, - ListEventsRequestEventTypesItem, ListEventsResponse, - ListEventsResponseParamsEventTypesItem, ) from .features import ( CheckFlagResponse, + CheckFlagsBulkResponse, CheckFlagsResponse, CountFeaturesParams, CountFeaturesResponse, CountFlagsParams, CountFlagsResponse, - CreateFeatureRequestBodyFeatureType, - CreateFeatureRequestBodyLifecyclePhase, CreateFeatureResponse, CreateFlagResponse, DeleteFeatureResponse, @@ -581,8 +561,6 @@ ListFeaturesResponse, ListFlagsParams, ListFlagsResponse, - UpdateFeatureRequestBodyFeatureType, - UpdateFeatureRequestBodyLifecyclePhase, UpdateFeatureResponse, UpdateFlagResponse, UpdateFlagRulesResponse, @@ -590,23 +568,17 @@ from .plangroups import CreatePlanGroupResponse, GetPlanGroupResponse, UpdatePlanGroupResponse from .plans import ( CountPlansParams, - CountPlansRequestPlanType, CountPlansResponse, - CountPlansResponseParamsPlanType, - CreatePlanRequestBodyPlanType, CreatePlanResponse, DeletePlanResponse, GetPlanResponse, ListPlanIssuesParams, ListPlanIssuesResponse, ListPlansParams, - ListPlansRequestPlanType, ListPlansResponse, - ListPlansResponseParamsPlanType, UpdateCompanyPlansResponse, UpdatePlanResponse, UpsertBillingProductPlanResponse, - UpsertBillingProductRequestBodyChargeType, ) from .version import __version__ from .webhooks import ( @@ -614,7 +586,6 @@ CountWebhookEventsResponse, CountWebhooksParams, CountWebhooksResponse, - CreateWebhookRequestBodyRequestTypesItem, CreateWebhookResponse, DeleteWebhookResponse, GetWebhookEventResponse, @@ -623,8 +594,6 @@ ListWebhookEventsResponse, ListWebhooksParams, ListWebhooksResponse, - UpdateWebhookRequestBodyRequestTypesItem, - UpdateWebhookRequestBodyStatus, UpdateWebhookResponse, ) _dynamic_imports: typing.Dict[str, str] = { @@ -633,39 +602,59 @@ "ApiKeyRequestListResponseData": ".types", "ApiKeyRequestResponseData": ".types", "ApiKeyResponseData": ".types", + "ApiKeyScope": ".types", "AsyncSchematic": ".client", "AsyncSchematicConfig": ".client", "BadRequestError": ".errors", "BillingCouponResponseData": ".types", "BillingCreditBundleResponseData": ".types", + "BillingCreditBundleStatus": ".types", + "BillingCreditBundleType": ".types", "BillingCreditBundleView": ".types", + "BillingCreditBurnStrategy": ".types", + "BillingCreditExpiryType": ".types", + "BillingCreditExpiryUnit": ".types", + "BillingCreditGrantReason": ".types", "BillingCreditGrantResponseData": ".types", + "BillingCreditGrantZeroedOutReason": ".types", "BillingCreditLedgerResponseData": ".types", "BillingCreditResponseData": ".types", + "BillingCreditRolloverPolicy": ".types", "BillingCustomerResponseData": ".types", "BillingCustomerSubscription": ".types", "BillingCustomerWithSubscriptionsResponseData": ".types", "BillingMeterResponseData": ".types", + "BillingPlanCreditGrantResetCadence": ".types", + "BillingPlanCreditGrantResetStart": ".types", + "BillingPlanCreditGrantResetType": ".types", "BillingPlanCreditGrantResponseData": ".types", "BillingPriceResponseData": ".types", + "BillingPriceScheme": ".types", + "BillingPriceUsageType": ".types", "BillingPriceView": ".types", "BillingProductDetailResponseData": ".types", "BillingProductForSubscriptionResponseData": ".types", "BillingProductPlanResponseData": ".types", + "BillingProductPriceInterval": ".types", "BillingProductPriceResponseData": ".types", "BillingProductPriceTierResponseData": ".types", "BillingProductPricing": ".types", - "BillingProductPricingUsageType": ".types", "BillingProductResponseData": ".types", "BillingSubscriptionDiscount": ".types", "BillingSubscriptionDiscountView": ".types", "BillingSubscriptionResponseData": ".types", + "BillingSubscriptionTrialEndSetting": ".types", "BillingSubscriptionView": ".types", + "BillingTiersMode": ".types", + "CancelSubscriptionResponse": ".checkout", "ChangeSubscriptionInternalRequestBody": ".types", "ChangeSubscriptionRequestBody": ".types", + "ChargeType": ".types", "CheckFlagRequestBody": ".types", "CheckFlagResponse": ".features", "CheckFlagResponseData": ".types", + "CheckFlagsBulkResponse": ".features", + "CheckFlagsBulkResponseData": ".types", "CheckFlagsResponse": ".features", "CheckFlagsResponseData": ".types", "CheckoutDataResponseData": ".types", @@ -681,6 +670,7 @@ "CompanyOverrideNoteResponseData": ".types", "CompanyOverrideResponseData": ".types", "CompanyPlanDetailResponseData": ".types", + "CompanyPlanInvalidReason": ".types", "CompanyPlanWithBillingSubView": ".types", "CompanyResponseData": ".types", "CompanySubscriptionResponseData": ".types", @@ -689,9 +679,13 @@ "CompatiblePlansResponseData": ".types", "ComponentCapabilities": ".types", "ComponentCheckoutSettings": ".types", + "ComponentDisplaySettings": ".types", + "ComponentEntityType": ".types", "ComponentHydrateResponseData": ".types", "ComponentPreviewResponseData": ".types", "ComponentResponseData": ".types", + "ComponentSettingsResponseData": ".types", + "ComponentState": ".types", "Condition": ".types", "ConditionConditionType": ".types", "ConditionGroup": ".types", @@ -709,13 +703,9 @@ "CountBillingPlanCreditGrantsParams": ".credits", "CountBillingPlanCreditGrantsResponse": ".credits", "CountBillingProductsParams": ".billing", - "CountBillingProductsRequestPriceUsageType": ".billing", "CountBillingProductsResponse": ".billing", - "CountBillingProductsResponseParamsPriceUsageType": ".billing", "CountCompaniesForAdvancedFilterParams": ".companies", - "CountCompaniesForAdvancedFilterRequestSortOrderDirection": ".companies", "CountCompaniesForAdvancedFilterResponse": ".companies", - "CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection": ".companies", "CountCompaniesParams": ".companies", "CountCompaniesResponse": ".companies", "CountCompanyOverridesParams": ".entitlements", @@ -723,25 +713,15 @@ "CountComponentsParams": ".components", "CountComponentsResponse": ".components", "CountCreditBundlesParams": ".credits", - "CountCreditBundlesRequestStatus": ".credits", "CountCreditBundlesResponse": ".credits", - "CountCreditBundlesResponseParamsStatus": ".credits", "CountCreditLedgerParams": ".credits", - "CountCreditLedgerRequestPeriod": ".credits", "CountCreditLedgerResponse": ".credits", - "CountCreditLedgerResponseParamsPeriod": ".credits", "CountCustomersParams": ".billing", "CountCustomersResponse": ".billing", "CountEntityKeyDefinitionsParams": ".companies", - "CountEntityKeyDefinitionsRequestEntityType": ".companies", "CountEntityKeyDefinitionsResponse": ".companies", - "CountEntityKeyDefinitionsResponseParamsEntityType": ".companies", "CountEntityTraitDefinitionsParams": ".companies", - "CountEntityTraitDefinitionsRequestEntityType": ".companies", - "CountEntityTraitDefinitionsRequestTraitType": ".companies", "CountEntityTraitDefinitionsResponse": ".companies", - "CountEntityTraitDefinitionsResponseParamsEntityType": ".companies", - "CountEntityTraitDefinitionsResponseParamsTraitType": ".companies", "CountFeatureCompaniesParams": ".entitlements", "CountFeatureCompaniesResponse": ".entitlements", "CountFeatureUsageParams": ".entitlements", @@ -757,9 +737,7 @@ "CountPlanTraitsParams": ".companies", "CountPlanTraitsResponse": ".companies", "CountPlansParams": ".plans", - "CountPlansRequestPlanType": ".plans", "CountPlansResponse": ".plans", - "CountPlansResponseParamsPlanType": ".plans", "CountResponse": ".types", "CountUsersParams": ".companies", "CountUsersResponse": ".companies", @@ -769,48 +747,23 @@ "CountWebhooksResponse": ".webhooks", "CouponRequestBody": ".types", "CreateApiKeyResponse": ".accounts", - "CreateBillingCreditRequestBodyBurnStrategy": ".credits", - "CreateBillingCreditRequestBodyDefaultRolloverPolicy": ".credits", "CreateBillingCreditResponse": ".credits", - "CreateBillingPlanCreditGrantRequestBodyExpiryType": ".credits", - "CreateBillingPlanCreditGrantRequestBodyExpiryUnit": ".credits", - "CreateBillingPlanCreditGrantRequestBodyResetCadence": ".credits", - "CreateBillingPlanCreditGrantRequestBodyResetStart": ".credits", - "CreateBillingPlanCreditGrantRequestBodyResetType": ".credits", "CreateBillingPlanCreditGrantResponse": ".credits", - "CreateBillingPriceRequestBodyBillingScheme": ".billing", - "CreateBillingPriceRequestBodyTiersMode": ".billing", - "CreateBillingPriceRequestBodyUsageType": ".billing", "CreateBillingPriceTierRequestBody": ".types", - "CreateBillingSubscriptionRequestBodyTrialEndSetting": ".billing", - "CreateCompanyCreditGrantExpiryType": ".credits", - "CreateCompanyCreditGrantExpiryUnit": ".credits", "CreateCompanyOverrideRequestBodyMetricPeriod": ".entitlements", "CreateCompanyOverrideRequestBodyMetricPeriodMonthReset": ".entitlements", - "CreateCompanyOverrideRequestBodyValueType": ".entitlements", "CreateCompanyOverrideResponse": ".entitlements", "CreateCompanyResponse": ".companies", - "CreateComponentRequestBodyEntityType": ".components", "CreateComponentResponse": ".components", - "CreateCreditBundleRequestBodyExpiryType": ".credits", - "CreateCreditBundleRequestBodyExpiryUnit": ".credits", - "CreateCreditBundleRequestBodyStatus": ".credits", "CreateCreditBundleResponse": ".credits", "CreateDataExportResponse": ".dataexports", "CreateEntitlementReqCommon": ".types", "CreateEntitlementReqCommonMetricPeriod": ".types", "CreateEntitlementReqCommonMetricPeriodMonthReset": ".types", - "CreateEntitlementReqCommonValueType": ".types", - "CreateEntityTraitDefinitionRequestBodyEntityType": ".companies", - "CreateEntityTraitDefinitionRequestBodyTraitType": ".companies", - "CreateEnvironmentRequestBodyEnvironmentType": ".accounts", "CreateEnvironmentResponse": ".accounts", "CreateEventBatchResponse": ".events", "CreateEventRequestBody": ".types", - "CreateEventRequestBodyEventType": ".types", "CreateEventResponse": ".events", - "CreateFeatureRequestBodyFeatureType": ".features", - "CreateFeatureRequestBodyLifecyclePhase": ".features", "CreateFeatureResponse": ".features", "CreateFlagRequestBody": ".types", "CreateFlagResponse": ".features", @@ -825,28 +778,21 @@ "CreateOrUpdateRuleRequestBodyRuleType": ".types", "CreatePlanEntitlementRequestBodyMetricPeriod": ".entitlements", "CreatePlanEntitlementRequestBodyMetricPeriodMonthReset": ".entitlements", - "CreatePlanEntitlementRequestBodyPriceBehavior": ".entitlements", - "CreatePlanEntitlementRequestBodyValueType": ".entitlements", "CreatePlanEntitlementResponse": ".entitlements", "CreatePlanGroupResponse": ".plangroups", - "CreatePlanRequestBodyPlanType": ".plans", "CreatePlanResponse": ".plans", "CreatePlanTraitResponse": ".companies", "CreatePriceTierRequestBody": ".types", "CreateUserResponse": ".companies", - "CreateWebhookRequestBodyRequestTypesItem": ".webhooks", "CreateWebhookResponse": ".webhooks", + "CreditAutoTopupAmountType": ".types", "CreditBundlePurchaseResponseData": ".types", "CreditCompanyGrantView": ".types", "CreditGrantDetail": ".types", - "CreditGrantDetailGrantReason": ".types", "CreditGrantExpiryRequestBody": ".types", - "CreditGrantExpiryRequestBodyExpiryType": ".types", - "CreditGrantExpiryRequestBodyExpiryUnit": ".types", - "CreditGrantExpiryRequestBodyResetCadence": ".types", - "CreditGrantExpiryRequestBodyResetStart": ".types", - "CreditGrantExpiryRequestBodyResetType": ".types", + "CreditGrantSortOrder": ".types", "CreditLedgerEnrichedEntryResponseData": ".types", + "CreditLedgerPeriod": ".types", "CreditTriggerConfig": ".types", "CreditUsage": ".types", "CreditUsageResponseData": ".types", @@ -856,7 +802,10 @@ "CrmProductResponseData": ".types", "CustomPlanConfig": ".types", "CustomPlanViewConfigResponseData": ".types", + "DataExportOutputFileType": ".types", "DataExportResponseData": ".types", + "DataExportStatus": ".types", + "DataExportType": ".types", "Decimal": ".types", "DeleteApiKeyResponse": ".accounts", "DeleteBillingPlanCreditGrantParams": ".credits", @@ -880,7 +829,12 @@ "DeleteUserByKeysResponse": ".companies", "DeleteUserResponse": ".companies", "DeleteWebhookResponse": ".webhooks", + "DuplicatePlanEntitlementsResponse": ".entitlements", + "DuplicatePlanEntitlementsResponseResponseData": ".types", + "EntitlementPriceBehavior": ".types", "EntitlementTriggerConfig": ".types", + "EntitlementType": ".types", + "EntitlementValueType": ".types", "EntitlementsInPlan": ".types", "EntityKeyDefinitionResponseData": ".types", "EntityKeyDetailResponseData": ".types", @@ -889,8 +843,10 @@ "EntityTraitDetailResponseData": ".types", "EntityTraitResponseData": ".types", "EntityTraitValue": ".types", + "EntityType": ".types", "EnvironmentDetailResponseData": ".types", "EnvironmentResponseData": ".types", + "EnvironmentType": ".types", "EventBody": ".types", "EventBodyFlagCheck": ".types", "EventBodyIdentify": ".types", @@ -898,22 +854,22 @@ "EventBodyTrack": ".types", "EventDetailResponseData": ".types", "EventResponseData": ".types", + "EventStatus": ".types", "EventSummaryResponseData": ".types", + "EventType": ".types", "FeatureCompanyResponseData": ".types", - "FeatureCompanyResponseDataAllocationType": ".types", - "FeatureCompanyResponseDataCreditGrantReason": ".types", "FeatureCompanyUserResponseData": ".types", - "FeatureCompanyUserResponseDataAllocationType": ".types", "FeatureDetailResponseData": ".types", "FeatureLedgerResponseData": ".types", + "FeatureLifecyclePhase": ".types", "FeatureResponseData": ".types", + "FeatureType": ".types", "FeatureUsageDataResponseData": ".types", "FeatureUsageDetailResponseData": ".types", "FeatureUsageResponseData": ".types", - "FeatureUsageResponseDataAllocationType": ".types", - "FeatureUsageResponseDataCreditGrantReason": ".types", "FlagDetailResponseData": ".types", "FlagResponseData": ".types", + "FlagType": ".types", "ForbiddenError": ".errors", "GenericPreviewObject": ".types", "GetActiveCompanySubscriptionParams": ".companies", @@ -928,9 +884,7 @@ "GetComponentResponse": ".components", "GetCreditBundleResponse": ".credits", "GetEnrichedCreditLedgerParams": ".credits", - "GetEnrichedCreditLedgerRequestPeriod": ".credits", "GetEnrichedCreditLedgerResponse": ".credits", - "GetEnrichedCreditLedgerResponseParamsPeriod": ".credits", "GetEntityTraitDefinitionResponse": ".companies", "GetEntityTraitValuesParams": ".companies", "GetEntityTraitValuesResponse": ".companies", @@ -969,22 +923,18 @@ "ListBillingCreditsResponse": ".credits", "ListBillingPlanCreditGrantsParams": ".credits", "ListBillingPlanCreditGrantsResponse": ".credits", + "ListBillingPricesParams": ".billing", + "ListBillingPricesResponse": ".billing", + "ListBillingProductPricesParams": ".billing", + "ListBillingProductPricesResponse": ".billing", "ListBillingProductsParams": ".billing", - "ListBillingProductsRequestPriceUsageType": ".billing", "ListBillingProductsResponse": ".billing", - "ListBillingProductsResponseParamsPriceUsageType": ".billing", "ListCompaniesForAdvancedFilterParams": ".companies", - "ListCompaniesForAdvancedFilterRequestSortOrderDirection": ".companies", "ListCompaniesForAdvancedFilterResponse": ".companies", - "ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection": ".companies", "ListCompaniesParams": ".companies", "ListCompaniesResponse": ".companies", "ListCompanyGrantsParams": ".credits", - "ListCompanyGrantsRequestDir": ".credits", - "ListCompanyGrantsRequestOrder": ".credits", "ListCompanyGrantsResponse": ".credits", - "ListCompanyGrantsResponseParamsDir": ".credits", - "ListCompanyGrantsResponseParamsOrder": ".credits", "ListCompanyMembershipsParams": ".companies", "ListCompanyMembershipsResponse": ".companies", "ListCompanyOverridesParams": ".entitlements", @@ -994,29 +944,19 @@ "ListCouponsParams": ".billing", "ListCouponsResponse": ".billing", "ListCreditBundlesParams": ".credits", - "ListCreditBundlesRequestStatus": ".credits", "ListCreditBundlesResponse": ".credits", - "ListCreditBundlesResponseParamsStatus": ".credits", "ListCrmProductsParams": ".crm", "ListCrmProductsResponse": ".crm", "ListCustomersWithSubscriptionsParams": ".billing", "ListCustomersWithSubscriptionsResponse": ".billing", "ListEntityKeyDefinitionsParams": ".companies", - "ListEntityKeyDefinitionsRequestEntityType": ".companies", "ListEntityKeyDefinitionsResponse": ".companies", - "ListEntityKeyDefinitionsResponseParamsEntityType": ".companies", "ListEntityTraitDefinitionsParams": ".companies", - "ListEntityTraitDefinitionsRequestEntityType": ".companies", - "ListEntityTraitDefinitionsRequestTraitType": ".companies", "ListEntityTraitDefinitionsResponse": ".companies", - "ListEntityTraitDefinitionsResponseParamsEntityType": ".companies", - "ListEntityTraitDefinitionsResponseParamsTraitType": ".companies", "ListEnvironmentsParams": ".accounts", "ListEnvironmentsResponse": ".accounts", "ListEventsParams": ".events", - "ListEventsRequestEventTypesItem": ".events", "ListEventsResponse": ".events", - "ListEventsResponseParamsEventTypesItem": ".events", "ListFeatureCompaniesParams": ".entitlements", "ListFeatureCompaniesResponse": ".entitlements", "ListFeatureUsageParams": ".entitlements", @@ -1044,13 +984,7 @@ "ListPlanTraitsParams": ".companies", "ListPlanTraitsResponse": ".companies", "ListPlansParams": ".plans", - "ListPlansRequestPlanType": ".plans", "ListPlansResponse": ".plans", - "ListPlansResponseParamsPlanType": ".plans", - "ListProductPricesParams": ".billing", - "ListProductPricesRequestPriceUsageType": ".billing", - "ListProductPricesResponse": ".billing", - "ListProductPricesResponseParamsPriceUsageType": ".billing", "ListUsersParams": ".companies", "ListUsersResponse": ".companies", "ListWebhookEventsParams": ".webhooks", @@ -1071,11 +1005,12 @@ "OrderedPlansInGroup": ".types", "PaymentMethodRequestBody": ".types", "PaymentMethodResponseData": ".types", + "PlanChangeAction": ".types", + "PlanChangeActorType": ".types", + "PlanChangeBasePlanAction": ".types", "PlanChangeResponseData": ".types", - "PlanChangeResponseDataAction": ".types", - "PlanChangeResponseDataActorType": ".types", - "PlanChangeResponseDataBasePlanAction": ".types", - "PlanChangeResponseDataSubscriptionChangeAction": ".types", + "PlanChangeSubscriptionAction": ".types", + "PlanControlledByType": ".types", "PlanCreditGrantView": ".types", "PlanDetailResponseData": ".types", "PlanEntitlementResponseData": ".types", @@ -1090,6 +1025,7 @@ "PlanSelection": ".types", "PlanSnapshotView": ".types", "PlanTraitResponseData": ".types", + "PlanType": ".types", "PreviewCheckoutInternalResponse": ".checkout", "PreviewComponentDataParams": ".components", "PreviewComponentDataResponse": ".components", @@ -1099,6 +1035,7 @@ "PreviewSubscriptionChangeResponseData": ".types", "PreviewSubscriptionFinanceResponseData": ".types", "PreviewSubscriptionUpcomingInvoiceLineItems": ".types", + "ProrationBehavior": ".types", "QuickstartResp": ".types", "QuickstartResponse": ".accounts", "RawEventBatchResponseData": ".types", @@ -1112,67 +1049,70 @@ "RuleResponseData": ".types", "RuleRuleType": ".types", "RulesDetailResponseData": ".types", + "RulesEngineSchemaVersion": ".types", + "RulesengineCheckFlagResult": ".types", + "RulesengineCheckFlagResultFeatureUsagePeriod": ".types", + "RulesengineCheckFlagResultRuleType": ".types", + "RulesengineCompany": ".types", + "RulesengineCompanyMetric": ".types", + "RulesengineCompanyMetricMonthReset": ".types", + "RulesengineCompanyMetricPeriod": ".types", + "RulesengineCondition": ".types", + "RulesengineConditionConditionType": ".types", + "RulesengineConditionGroup": ".types", + "RulesengineConditionMetricPeriod": ".types", + "RulesengineConditionMetricPeriodMonthReset": ".types", + "RulesengineConditionOperator": ".types", + "RulesengineEntityType": ".types", + "RulesengineFlag": ".types", + "RulesengineRule": ".types", + "RulesengineRuleRuleType": ".types", + "RulesengineSubscription": ".types", + "RulesengineTrait": ".types", + "RulesengineTraitDefinition": ".types", + "RulesengineTraitDefinitionComparableType": ".types", + "RulesengineUser": ".types", "Schematic": ".client", "SchematicConfig": ".client", "SchematicEnvironment": ".environment", - "SearchBillingPricesParams": ".billing", - "SearchBillingPricesRequestTiersMode": ".billing", - "SearchBillingPricesRequestUsageType": ".billing", - "SearchBillingPricesResponse": ".billing", - "SearchBillingPricesResponseParamsTiersMode": ".billing", - "SearchBillingPricesResponseParamsUsageType": ".billing", "SegmentStatusResp": ".types", + "SkippedEntitlementErrorResponseData": ".types", + "SkippedEntitlementResponseData": ".types", "SoftDeleteBillingCreditResponse": ".credits", + "SortDirection": ".types", "StripeEmbedInfo": ".types", + "SubscriptionStatus": ".types", "SubscriptionTraitUpdate": ".types", + "SubscriptionType": ".types", + "TemporaryAccessTokenResourceType": ".types", "TemporaryAccessTokenResponseData": ".types", "TraitDefinition": ".types", "TraitDefinitionComparableType": ".types", - "TraitDefinitionEntityType": ".types", + "TraitType": ".types", "UnauthorizedError": ".errors", "UpdateAddOnRequestBody": ".types", "UpdateApiKeyResponse": ".accounts", - "UpdateBillingCreditRequestBodyBurnStrategy": ".credits", - "UpdateBillingCreditRequestBodyDefaultRolloverPolicy": ".credits", "UpdateBillingCreditResponse": ".credits", - "UpdateBillingPlanCreditGrantRequestBodyExpiryType": ".credits", - "UpdateBillingPlanCreditGrantRequestBodyExpiryUnit": ".credits", - "UpdateBillingPlanCreditGrantRequestBodyResetCadence": ".credits", - "UpdateBillingPlanCreditGrantRequestBodyResetStart": ".credits", - "UpdateBillingPlanCreditGrantRequestBodyResetType": ".credits", "UpdateBillingPlanCreditGrantResponse": ".credits", "UpdateCompanyOverrideRequestBodyMetricPeriod": ".entitlements", "UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset": ".entitlements", - "UpdateCompanyOverrideRequestBodyValueType": ".entitlements", "UpdateCompanyOverrideResponse": ".entitlements", "UpdateCompanyPlansResponse": ".plans", - "UpdateComponentRequestBodyEntityType": ".components", - "UpdateComponentRequestBodyState": ".components", "UpdateComponentResponse": ".components", - "UpdateCreditBundleDetailsRequestBodyExpiryType": ".credits", - "UpdateCreditBundleDetailsRequestBodyExpiryUnit": ".credits", - "UpdateCreditBundleDetailsRequestBodyStatus": ".credits", "UpdateCreditBundleDetailsResponse": ".credits", "UpdateCreditBundleRequestBody": ".types", "UpdateCustomerSubscriptionTrialEndResponse": ".checkout", "UpdateEntitlementReqCommon": ".types", "UpdateEntitlementReqCommonMetricPeriod": ".types", "UpdateEntitlementReqCommonMetricPeriodMonthReset": ".types", - "UpdateEntitlementReqCommonValueType": ".types", - "UpdateEntityTraitDefinitionRequestBodyTraitType": ".companies", "UpdateEntityTraitDefinitionResponse": ".companies", - "UpdateEnvironmentRequestBodyEnvironmentType": ".accounts", "UpdateEnvironmentResponse": ".accounts", - "UpdateFeatureRequestBodyFeatureType": ".features", - "UpdateFeatureRequestBodyLifecyclePhase": ".features", "UpdateFeatureResponse": ".features", "UpdateFlagResponse": ".features", "UpdateFlagRulesResponse": ".features", "UpdatePayInAdvanceRequestBody": ".types", "UpdatePlanEntitlementRequestBodyMetricPeriod": ".entitlements", "UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset": ".entitlements", - "UpdatePlanEntitlementRequestBodyPriceBehavior": ".entitlements", - "UpdatePlanEntitlementRequestBodyValueType": ".entitlements", "UpdatePlanEntitlementResponse": ".entitlements", "UpdatePlanGroupResponse": ".plangroups", "UpdatePlanResponse": ".plans", @@ -1180,15 +1120,12 @@ "UpdatePlanTraitTraitRequestBody": ".types", "UpdatePlanTraitsBulkResponse": ".companies", "UpdateRuleRequestBody": ".types", - "UpdateWebhookRequestBodyRequestTypesItem": ".webhooks", - "UpdateWebhookRequestBodyStatus": ".webhooks", "UpdateWebhookResponse": ".webhooks", "UpsertBillingCouponResponse": ".billing", "UpsertBillingCustomerResponse": ".billing", "UpsertBillingMeterResponse": ".billing", "UpsertBillingPriceResponse": ".billing", "UpsertBillingProductPlanResponse": ".plans", - "UpsertBillingProductRequestBodyChargeType": ".plans", "UpsertBillingProductResponse": ".billing", "UpsertBillingSubscriptionResponse": ".billing", "UpsertCompanyRequestBody": ".types", @@ -1206,14 +1143,15 @@ "UpsertUserSubRequestBody": ".types", "UpsertUserTraitResponse": ".companies", "UsageBasedEntitlementRequestBody": ".types", - "UsageBasedEntitlementRequestBodyPriceBehavior": ".types", "UsageBasedEntitlementResponseData": ".types", "UserDetailResponseData": ".types", "UserResponseData": ".types", "WebhookEventDetailResponseData": ".types", "WebhookEventResponseData": ".types", + "WebhookEventStatus": ".types", + "WebhookRequestType": ".types", "WebhookResponseData": ".types", - "ZeroOutGrantRequestBodyReason": ".credits", + "WebhookStatus": ".types", "ZeroOutGrantResponse": ".credits", "__version__": ".version", "accesstokens": ".accesstokens", @@ -1261,39 +1199,59 @@ def __dir__(): "ApiKeyRequestListResponseData", "ApiKeyRequestResponseData", "ApiKeyResponseData", + "ApiKeyScope", "AsyncSchematic", "AsyncSchematicConfig", "BadRequestError", "BillingCouponResponseData", "BillingCreditBundleResponseData", + "BillingCreditBundleStatus", + "BillingCreditBundleType", "BillingCreditBundleView", + "BillingCreditBurnStrategy", + "BillingCreditExpiryType", + "BillingCreditExpiryUnit", + "BillingCreditGrantReason", "BillingCreditGrantResponseData", + "BillingCreditGrantZeroedOutReason", "BillingCreditLedgerResponseData", "BillingCreditResponseData", + "BillingCreditRolloverPolicy", "BillingCustomerResponseData", "BillingCustomerSubscription", "BillingCustomerWithSubscriptionsResponseData", "BillingMeterResponseData", + "BillingPlanCreditGrantResetCadence", + "BillingPlanCreditGrantResetStart", + "BillingPlanCreditGrantResetType", "BillingPlanCreditGrantResponseData", "BillingPriceResponseData", + "BillingPriceScheme", + "BillingPriceUsageType", "BillingPriceView", "BillingProductDetailResponseData", "BillingProductForSubscriptionResponseData", "BillingProductPlanResponseData", + "BillingProductPriceInterval", "BillingProductPriceResponseData", "BillingProductPriceTierResponseData", "BillingProductPricing", - "BillingProductPricingUsageType", "BillingProductResponseData", "BillingSubscriptionDiscount", "BillingSubscriptionDiscountView", "BillingSubscriptionResponseData", + "BillingSubscriptionTrialEndSetting", "BillingSubscriptionView", + "BillingTiersMode", + "CancelSubscriptionResponse", "ChangeSubscriptionInternalRequestBody", "ChangeSubscriptionRequestBody", + "ChargeType", "CheckFlagRequestBody", "CheckFlagResponse", "CheckFlagResponseData", + "CheckFlagsBulkResponse", + "CheckFlagsBulkResponseData", "CheckFlagsResponse", "CheckFlagsResponseData", "CheckoutDataResponseData", @@ -1309,6 +1267,7 @@ def __dir__(): "CompanyOverrideNoteResponseData", "CompanyOverrideResponseData", "CompanyPlanDetailResponseData", + "CompanyPlanInvalidReason", "CompanyPlanWithBillingSubView", "CompanyResponseData", "CompanySubscriptionResponseData", @@ -1317,9 +1276,13 @@ def __dir__(): "CompatiblePlansResponseData", "ComponentCapabilities", "ComponentCheckoutSettings", + "ComponentDisplaySettings", + "ComponentEntityType", "ComponentHydrateResponseData", "ComponentPreviewResponseData", "ComponentResponseData", + "ComponentSettingsResponseData", + "ComponentState", "Condition", "ConditionConditionType", "ConditionGroup", @@ -1337,13 +1300,9 @@ def __dir__(): "CountBillingPlanCreditGrantsParams", "CountBillingPlanCreditGrantsResponse", "CountBillingProductsParams", - "CountBillingProductsRequestPriceUsageType", "CountBillingProductsResponse", - "CountBillingProductsResponseParamsPriceUsageType", "CountCompaniesForAdvancedFilterParams", - "CountCompaniesForAdvancedFilterRequestSortOrderDirection", "CountCompaniesForAdvancedFilterResponse", - "CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection", "CountCompaniesParams", "CountCompaniesResponse", "CountCompanyOverridesParams", @@ -1351,25 +1310,15 @@ def __dir__(): "CountComponentsParams", "CountComponentsResponse", "CountCreditBundlesParams", - "CountCreditBundlesRequestStatus", "CountCreditBundlesResponse", - "CountCreditBundlesResponseParamsStatus", "CountCreditLedgerParams", - "CountCreditLedgerRequestPeriod", "CountCreditLedgerResponse", - "CountCreditLedgerResponseParamsPeriod", "CountCustomersParams", "CountCustomersResponse", "CountEntityKeyDefinitionsParams", - "CountEntityKeyDefinitionsRequestEntityType", "CountEntityKeyDefinitionsResponse", - "CountEntityKeyDefinitionsResponseParamsEntityType", "CountEntityTraitDefinitionsParams", - "CountEntityTraitDefinitionsRequestEntityType", - "CountEntityTraitDefinitionsRequestTraitType", "CountEntityTraitDefinitionsResponse", - "CountEntityTraitDefinitionsResponseParamsEntityType", - "CountEntityTraitDefinitionsResponseParamsTraitType", "CountFeatureCompaniesParams", "CountFeatureCompaniesResponse", "CountFeatureUsageParams", @@ -1385,9 +1334,7 @@ def __dir__(): "CountPlanTraitsParams", "CountPlanTraitsResponse", "CountPlansParams", - "CountPlansRequestPlanType", "CountPlansResponse", - "CountPlansResponseParamsPlanType", "CountResponse", "CountUsersParams", "CountUsersResponse", @@ -1397,48 +1344,23 @@ def __dir__(): "CountWebhooksResponse", "CouponRequestBody", "CreateApiKeyResponse", - "CreateBillingCreditRequestBodyBurnStrategy", - "CreateBillingCreditRequestBodyDefaultRolloverPolicy", "CreateBillingCreditResponse", - "CreateBillingPlanCreditGrantRequestBodyExpiryType", - "CreateBillingPlanCreditGrantRequestBodyExpiryUnit", - "CreateBillingPlanCreditGrantRequestBodyResetCadence", - "CreateBillingPlanCreditGrantRequestBodyResetStart", - "CreateBillingPlanCreditGrantRequestBodyResetType", "CreateBillingPlanCreditGrantResponse", - "CreateBillingPriceRequestBodyBillingScheme", - "CreateBillingPriceRequestBodyTiersMode", - "CreateBillingPriceRequestBodyUsageType", "CreateBillingPriceTierRequestBody", - "CreateBillingSubscriptionRequestBodyTrialEndSetting", - "CreateCompanyCreditGrantExpiryType", - "CreateCompanyCreditGrantExpiryUnit", "CreateCompanyOverrideRequestBodyMetricPeriod", "CreateCompanyOverrideRequestBodyMetricPeriodMonthReset", - "CreateCompanyOverrideRequestBodyValueType", "CreateCompanyOverrideResponse", "CreateCompanyResponse", - "CreateComponentRequestBodyEntityType", "CreateComponentResponse", - "CreateCreditBundleRequestBodyExpiryType", - "CreateCreditBundleRequestBodyExpiryUnit", - "CreateCreditBundleRequestBodyStatus", "CreateCreditBundleResponse", "CreateDataExportResponse", "CreateEntitlementReqCommon", "CreateEntitlementReqCommonMetricPeriod", "CreateEntitlementReqCommonMetricPeriodMonthReset", - "CreateEntitlementReqCommonValueType", - "CreateEntityTraitDefinitionRequestBodyEntityType", - "CreateEntityTraitDefinitionRequestBodyTraitType", - "CreateEnvironmentRequestBodyEnvironmentType", "CreateEnvironmentResponse", "CreateEventBatchResponse", "CreateEventRequestBody", - "CreateEventRequestBodyEventType", "CreateEventResponse", - "CreateFeatureRequestBodyFeatureType", - "CreateFeatureRequestBodyLifecyclePhase", "CreateFeatureResponse", "CreateFlagRequestBody", "CreateFlagResponse", @@ -1453,28 +1375,21 @@ def __dir__(): "CreateOrUpdateRuleRequestBodyRuleType", "CreatePlanEntitlementRequestBodyMetricPeriod", "CreatePlanEntitlementRequestBodyMetricPeriodMonthReset", - "CreatePlanEntitlementRequestBodyPriceBehavior", - "CreatePlanEntitlementRequestBodyValueType", "CreatePlanEntitlementResponse", "CreatePlanGroupResponse", - "CreatePlanRequestBodyPlanType", "CreatePlanResponse", "CreatePlanTraitResponse", "CreatePriceTierRequestBody", "CreateUserResponse", - "CreateWebhookRequestBodyRequestTypesItem", "CreateWebhookResponse", + "CreditAutoTopupAmountType", "CreditBundlePurchaseResponseData", "CreditCompanyGrantView", "CreditGrantDetail", - "CreditGrantDetailGrantReason", "CreditGrantExpiryRequestBody", - "CreditGrantExpiryRequestBodyExpiryType", - "CreditGrantExpiryRequestBodyExpiryUnit", - "CreditGrantExpiryRequestBodyResetCadence", - "CreditGrantExpiryRequestBodyResetStart", - "CreditGrantExpiryRequestBodyResetType", + "CreditGrantSortOrder", "CreditLedgerEnrichedEntryResponseData", + "CreditLedgerPeriod", "CreditTriggerConfig", "CreditUsage", "CreditUsageResponseData", @@ -1484,7 +1399,10 @@ def __dir__(): "CrmProductResponseData", "CustomPlanConfig", "CustomPlanViewConfigResponseData", + "DataExportOutputFileType", "DataExportResponseData", + "DataExportStatus", + "DataExportType", "Decimal", "DeleteApiKeyResponse", "DeleteBillingPlanCreditGrantParams", @@ -1508,7 +1426,12 @@ def __dir__(): "DeleteUserByKeysResponse", "DeleteUserResponse", "DeleteWebhookResponse", + "DuplicatePlanEntitlementsResponse", + "DuplicatePlanEntitlementsResponseResponseData", + "EntitlementPriceBehavior", "EntitlementTriggerConfig", + "EntitlementType", + "EntitlementValueType", "EntitlementsInPlan", "EntityKeyDefinitionResponseData", "EntityKeyDetailResponseData", @@ -1517,8 +1440,10 @@ def __dir__(): "EntityTraitDetailResponseData", "EntityTraitResponseData", "EntityTraitValue", + "EntityType", "EnvironmentDetailResponseData", "EnvironmentResponseData", + "EnvironmentType", "EventBody", "EventBodyFlagCheck", "EventBodyIdentify", @@ -1526,22 +1451,22 @@ def __dir__(): "EventBodyTrack", "EventDetailResponseData", "EventResponseData", + "EventStatus", "EventSummaryResponseData", + "EventType", "FeatureCompanyResponseData", - "FeatureCompanyResponseDataAllocationType", - "FeatureCompanyResponseDataCreditGrantReason", "FeatureCompanyUserResponseData", - "FeatureCompanyUserResponseDataAllocationType", "FeatureDetailResponseData", "FeatureLedgerResponseData", + "FeatureLifecyclePhase", "FeatureResponseData", + "FeatureType", "FeatureUsageDataResponseData", "FeatureUsageDetailResponseData", "FeatureUsageResponseData", - "FeatureUsageResponseDataAllocationType", - "FeatureUsageResponseDataCreditGrantReason", "FlagDetailResponseData", "FlagResponseData", + "FlagType", "ForbiddenError", "GenericPreviewObject", "GetActiveCompanySubscriptionParams", @@ -1556,9 +1481,7 @@ def __dir__(): "GetComponentResponse", "GetCreditBundleResponse", "GetEnrichedCreditLedgerParams", - "GetEnrichedCreditLedgerRequestPeriod", "GetEnrichedCreditLedgerResponse", - "GetEnrichedCreditLedgerResponseParamsPeriod", "GetEntityTraitDefinitionResponse", "GetEntityTraitValuesParams", "GetEntityTraitValuesResponse", @@ -1597,22 +1520,18 @@ def __dir__(): "ListBillingCreditsResponse", "ListBillingPlanCreditGrantsParams", "ListBillingPlanCreditGrantsResponse", + "ListBillingPricesParams", + "ListBillingPricesResponse", + "ListBillingProductPricesParams", + "ListBillingProductPricesResponse", "ListBillingProductsParams", - "ListBillingProductsRequestPriceUsageType", "ListBillingProductsResponse", - "ListBillingProductsResponseParamsPriceUsageType", "ListCompaniesForAdvancedFilterParams", - "ListCompaniesForAdvancedFilterRequestSortOrderDirection", "ListCompaniesForAdvancedFilterResponse", - "ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection", "ListCompaniesParams", "ListCompaniesResponse", "ListCompanyGrantsParams", - "ListCompanyGrantsRequestDir", - "ListCompanyGrantsRequestOrder", "ListCompanyGrantsResponse", - "ListCompanyGrantsResponseParamsDir", - "ListCompanyGrantsResponseParamsOrder", "ListCompanyMembershipsParams", "ListCompanyMembershipsResponse", "ListCompanyOverridesParams", @@ -1622,29 +1541,19 @@ def __dir__(): "ListCouponsParams", "ListCouponsResponse", "ListCreditBundlesParams", - "ListCreditBundlesRequestStatus", "ListCreditBundlesResponse", - "ListCreditBundlesResponseParamsStatus", "ListCrmProductsParams", "ListCrmProductsResponse", "ListCustomersWithSubscriptionsParams", "ListCustomersWithSubscriptionsResponse", "ListEntityKeyDefinitionsParams", - "ListEntityKeyDefinitionsRequestEntityType", "ListEntityKeyDefinitionsResponse", - "ListEntityKeyDefinitionsResponseParamsEntityType", "ListEntityTraitDefinitionsParams", - "ListEntityTraitDefinitionsRequestEntityType", - "ListEntityTraitDefinitionsRequestTraitType", "ListEntityTraitDefinitionsResponse", - "ListEntityTraitDefinitionsResponseParamsEntityType", - "ListEntityTraitDefinitionsResponseParamsTraitType", "ListEnvironmentsParams", "ListEnvironmentsResponse", "ListEventsParams", - "ListEventsRequestEventTypesItem", "ListEventsResponse", - "ListEventsResponseParamsEventTypesItem", "ListFeatureCompaniesParams", "ListFeatureCompaniesResponse", "ListFeatureUsageParams", @@ -1672,13 +1581,7 @@ def __dir__(): "ListPlanTraitsParams", "ListPlanTraitsResponse", "ListPlansParams", - "ListPlansRequestPlanType", "ListPlansResponse", - "ListPlansResponseParamsPlanType", - "ListProductPricesParams", - "ListProductPricesRequestPriceUsageType", - "ListProductPricesResponse", - "ListProductPricesResponseParamsPriceUsageType", "ListUsersParams", "ListUsersResponse", "ListWebhookEventsParams", @@ -1699,11 +1602,12 @@ def __dir__(): "OrderedPlansInGroup", "PaymentMethodRequestBody", "PaymentMethodResponseData", + "PlanChangeAction", + "PlanChangeActorType", + "PlanChangeBasePlanAction", "PlanChangeResponseData", - "PlanChangeResponseDataAction", - "PlanChangeResponseDataActorType", - "PlanChangeResponseDataBasePlanAction", - "PlanChangeResponseDataSubscriptionChangeAction", + "PlanChangeSubscriptionAction", + "PlanControlledByType", "PlanCreditGrantView", "PlanDetailResponseData", "PlanEntitlementResponseData", @@ -1718,6 +1622,7 @@ def __dir__(): "PlanSelection", "PlanSnapshotView", "PlanTraitResponseData", + "PlanType", "PreviewCheckoutInternalResponse", "PreviewComponentDataParams", "PreviewComponentDataResponse", @@ -1727,6 +1632,7 @@ def __dir__(): "PreviewSubscriptionChangeResponseData", "PreviewSubscriptionFinanceResponseData", "PreviewSubscriptionUpcomingInvoiceLineItems", + "ProrationBehavior", "QuickstartResp", "QuickstartResponse", "RawEventBatchResponseData", @@ -1740,67 +1646,70 @@ def __dir__(): "RuleResponseData", "RuleRuleType", "RulesDetailResponseData", + "RulesEngineSchemaVersion", + "RulesengineCheckFlagResult", + "RulesengineCheckFlagResultFeatureUsagePeriod", + "RulesengineCheckFlagResultRuleType", + "RulesengineCompany", + "RulesengineCompanyMetric", + "RulesengineCompanyMetricMonthReset", + "RulesengineCompanyMetricPeriod", + "RulesengineCondition", + "RulesengineConditionConditionType", + "RulesengineConditionGroup", + "RulesengineConditionMetricPeriod", + "RulesengineConditionMetricPeriodMonthReset", + "RulesengineConditionOperator", + "RulesengineEntityType", + "RulesengineFlag", + "RulesengineRule", + "RulesengineRuleRuleType", + "RulesengineSubscription", + "RulesengineTrait", + "RulesengineTraitDefinition", + "RulesengineTraitDefinitionComparableType", + "RulesengineUser", "Schematic", "SchematicConfig", "SchematicEnvironment", - "SearchBillingPricesParams", - "SearchBillingPricesRequestTiersMode", - "SearchBillingPricesRequestUsageType", - "SearchBillingPricesResponse", - "SearchBillingPricesResponseParamsTiersMode", - "SearchBillingPricesResponseParamsUsageType", "SegmentStatusResp", + "SkippedEntitlementErrorResponseData", + "SkippedEntitlementResponseData", "SoftDeleteBillingCreditResponse", + "SortDirection", "StripeEmbedInfo", + "SubscriptionStatus", "SubscriptionTraitUpdate", + "SubscriptionType", + "TemporaryAccessTokenResourceType", "TemporaryAccessTokenResponseData", "TraitDefinition", "TraitDefinitionComparableType", - "TraitDefinitionEntityType", + "TraitType", "UnauthorizedError", "UpdateAddOnRequestBody", "UpdateApiKeyResponse", - "UpdateBillingCreditRequestBodyBurnStrategy", - "UpdateBillingCreditRequestBodyDefaultRolloverPolicy", "UpdateBillingCreditResponse", - "UpdateBillingPlanCreditGrantRequestBodyExpiryType", - "UpdateBillingPlanCreditGrantRequestBodyExpiryUnit", - "UpdateBillingPlanCreditGrantRequestBodyResetCadence", - "UpdateBillingPlanCreditGrantRequestBodyResetStart", - "UpdateBillingPlanCreditGrantRequestBodyResetType", "UpdateBillingPlanCreditGrantResponse", "UpdateCompanyOverrideRequestBodyMetricPeriod", "UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset", - "UpdateCompanyOverrideRequestBodyValueType", "UpdateCompanyOverrideResponse", "UpdateCompanyPlansResponse", - "UpdateComponentRequestBodyEntityType", - "UpdateComponentRequestBodyState", "UpdateComponentResponse", - "UpdateCreditBundleDetailsRequestBodyExpiryType", - "UpdateCreditBundleDetailsRequestBodyExpiryUnit", - "UpdateCreditBundleDetailsRequestBodyStatus", "UpdateCreditBundleDetailsResponse", "UpdateCreditBundleRequestBody", "UpdateCustomerSubscriptionTrialEndResponse", "UpdateEntitlementReqCommon", "UpdateEntitlementReqCommonMetricPeriod", "UpdateEntitlementReqCommonMetricPeriodMonthReset", - "UpdateEntitlementReqCommonValueType", - "UpdateEntityTraitDefinitionRequestBodyTraitType", "UpdateEntityTraitDefinitionResponse", - "UpdateEnvironmentRequestBodyEnvironmentType", "UpdateEnvironmentResponse", - "UpdateFeatureRequestBodyFeatureType", - "UpdateFeatureRequestBodyLifecyclePhase", "UpdateFeatureResponse", "UpdateFlagResponse", "UpdateFlagRulesResponse", "UpdatePayInAdvanceRequestBody", "UpdatePlanEntitlementRequestBodyMetricPeriod", "UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset", - "UpdatePlanEntitlementRequestBodyPriceBehavior", - "UpdatePlanEntitlementRequestBodyValueType", "UpdatePlanEntitlementResponse", "UpdatePlanGroupResponse", "UpdatePlanResponse", @@ -1808,15 +1717,12 @@ def __dir__(): "UpdatePlanTraitTraitRequestBody", "UpdatePlanTraitsBulkResponse", "UpdateRuleRequestBody", - "UpdateWebhookRequestBodyRequestTypesItem", - "UpdateWebhookRequestBodyStatus", "UpdateWebhookResponse", "UpsertBillingCouponResponse", "UpsertBillingCustomerResponse", "UpsertBillingMeterResponse", "UpsertBillingPriceResponse", "UpsertBillingProductPlanResponse", - "UpsertBillingProductRequestBodyChargeType", "UpsertBillingProductResponse", "UpsertBillingSubscriptionResponse", "UpsertCompanyRequestBody", @@ -1834,14 +1740,15 @@ def __dir__(): "UpsertUserSubRequestBody", "UpsertUserTraitResponse", "UsageBasedEntitlementRequestBody", - "UsageBasedEntitlementRequestBodyPriceBehavior", "UsageBasedEntitlementResponseData", "UserDetailResponseData", "UserResponseData", "WebhookEventDetailResponseData", "WebhookEventResponseData", + "WebhookEventStatus", + "WebhookRequestType", "WebhookResponseData", - "ZeroOutGrantRequestBodyReason", + "WebhookStatus", "ZeroOutGrantResponse", "__version__", "accesstokens", diff --git a/src/schematic/accounts/__init__.py b/src/schematic/accounts/__init__.py index 53dd1ab..b134589 100644 --- a/src/schematic/accounts/__init__.py +++ b/src/schematic/accounts/__init__.py @@ -12,7 +12,6 @@ CountApiRequestsParams, CountApiRequestsResponse, CreateApiKeyResponse, - CreateEnvironmentRequestBodyEnvironmentType, CreateEnvironmentResponse, DeleteApiKeyResponse, DeleteEnvironmentResponse, @@ -27,7 +26,6 @@ ListEnvironmentsResponse, QuickstartResponse, UpdateApiKeyResponse, - UpdateEnvironmentRequestBodyEnvironmentType, UpdateEnvironmentResponse, ) _dynamic_imports: typing.Dict[str, str] = { @@ -36,7 +34,6 @@ "CountApiRequestsParams": ".types", "CountApiRequestsResponse": ".types", "CreateApiKeyResponse": ".types", - "CreateEnvironmentRequestBodyEnvironmentType": ".types", "CreateEnvironmentResponse": ".types", "DeleteApiKeyResponse": ".types", "DeleteEnvironmentResponse": ".types", @@ -51,7 +48,6 @@ "ListEnvironmentsResponse": ".types", "QuickstartResponse": ".types", "UpdateApiKeyResponse": ".types", - "UpdateEnvironmentRequestBodyEnvironmentType": ".types", "UpdateEnvironmentResponse": ".types", } @@ -83,7 +79,6 @@ def __dir__(): "CountApiRequestsParams", "CountApiRequestsResponse", "CreateApiKeyResponse", - "CreateEnvironmentRequestBodyEnvironmentType", "CreateEnvironmentResponse", "DeleteApiKeyResponse", "DeleteEnvironmentResponse", @@ -98,6 +93,5 @@ def __dir__(): "ListEnvironmentsResponse", "QuickstartResponse", "UpdateApiKeyResponse", - "UpdateEnvironmentRequestBodyEnvironmentType", "UpdateEnvironmentResponse", ] diff --git a/src/schematic/accounts/client.py b/src/schematic/accounts/client.py index 613e9aa..b24c03f 100644 --- a/src/schematic/accounts/client.py +++ b/src/schematic/accounts/client.py @@ -4,11 +4,11 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions +from ..types.environment_type import EnvironmentType from .raw_client import AsyncRawAccountsClient, RawAccountsClient from .types.count_api_keys_response import CountApiKeysResponse from .types.count_api_requests_response import CountApiRequestsResponse from .types.create_api_key_response import CreateApiKeyResponse -from .types.create_environment_request_body_environment_type import CreateEnvironmentRequestBodyEnvironmentType from .types.create_environment_response import CreateEnvironmentResponse from .types.delete_api_key_response import DeleteApiKeyResponse from .types.delete_environment_response import DeleteEnvironmentResponse @@ -20,7 +20,6 @@ from .types.list_environments_response import ListEnvironmentsResponse from .types.quickstart_response import QuickstartResponse from .types.update_api_key_response import UpdateApiKeyResponse -from .types.update_environment_request_body_environment_type import UpdateEnvironmentRequestBodyEnvironmentType from .types.update_environment_response import UpdateEnvironmentResponse # this is used as the default value for optional parameters @@ -485,16 +484,12 @@ def list_environments( return _response.data def create_environment( - self, - *, - environment_type: CreateEnvironmentRequestBodyEnvironmentType, - name: str, - request_options: typing.Optional[RequestOptions] = None, + self, *, environment_type: EnvironmentType, name: str, request_options: typing.Optional[RequestOptions] = None ) -> CreateEnvironmentResponse: """ Parameters ---------- - environment_type : CreateEnvironmentRequestBodyEnvironmentType + environment_type : EnvironmentType name : str @@ -558,7 +553,7 @@ def update_environment( self, environment_id: str, *, - environment_type: typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType] = OMIT, + environment_type: typing.Optional[EnvironmentType] = OMIT, name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateEnvironmentResponse: @@ -568,7 +563,7 @@ def update_environment( environment_id : str environment_id - environment_type : typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType] + environment_type : typing.Optional[EnvironmentType] name : typing.Optional[str] @@ -1190,16 +1185,12 @@ async def main() -> None: return _response.data async def create_environment( - self, - *, - environment_type: CreateEnvironmentRequestBodyEnvironmentType, - name: str, - request_options: typing.Optional[RequestOptions] = None, + self, *, environment_type: EnvironmentType, name: str, request_options: typing.Optional[RequestOptions] = None ) -> CreateEnvironmentResponse: """ Parameters ---------- - environment_type : CreateEnvironmentRequestBodyEnvironmentType + environment_type : EnvironmentType name : str @@ -1279,7 +1270,7 @@ async def update_environment( self, environment_id: str, *, - environment_type: typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType] = OMIT, + environment_type: typing.Optional[EnvironmentType] = OMIT, name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateEnvironmentResponse: @@ -1289,7 +1280,7 @@ async def update_environment( environment_id : str environment_id - environment_type : typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType] + environment_type : typing.Optional[EnvironmentType] name : typing.Optional[str] diff --git a/src/schematic/accounts/raw_client.py b/src/schematic/accounts/raw_client.py index 40455a7..82923a1 100644 --- a/src/schematic/accounts/raw_client.py +++ b/src/schematic/accounts/raw_client.py @@ -15,10 +15,10 @@ from ..errors.not_found_error import NotFoundError from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError +from ..types.environment_type import EnvironmentType from .types.count_api_keys_response import CountApiKeysResponse from .types.count_api_requests_response import CountApiRequestsResponse from .types.create_api_key_response import CreateApiKeyResponse -from .types.create_environment_request_body_environment_type import CreateEnvironmentRequestBodyEnvironmentType from .types.create_environment_response import CreateEnvironmentResponse from .types.delete_api_key_response import DeleteApiKeyResponse from .types.delete_environment_response import DeleteEnvironmentResponse @@ -30,7 +30,6 @@ from .types.list_environments_response import ListEnvironmentsResponse from .types.quickstart_response import QuickstartResponse from .types.update_api_key_response import UpdateApiKeyResponse -from .types.update_environment_request_body_environment_type import UpdateEnvironmentRequestBodyEnvironmentType from .types.update_environment_response import UpdateEnvironmentResponse # this is used as the default value for optional parameters @@ -1113,16 +1112,12 @@ def list_environments( ) def create_environment( - self, - *, - environment_type: CreateEnvironmentRequestBodyEnvironmentType, - name: str, - request_options: typing.Optional[RequestOptions] = None, + self, *, environment_type: EnvironmentType, name: str, request_options: typing.Optional[RequestOptions] = None ) -> HttpResponse[CreateEnvironmentResponse]: """ Parameters ---------- - environment_type : CreateEnvironmentRequestBodyEnvironmentType + environment_type : EnvironmentType name : str @@ -1310,7 +1305,7 @@ def update_environment( self, environment_id: str, *, - environment_type: typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType] = OMIT, + environment_type: typing.Optional[EnvironmentType] = OMIT, name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[UpdateEnvironmentResponse]: @@ -1320,7 +1315,7 @@ def update_environment( environment_id : str environment_id - environment_type : typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType] + environment_type : typing.Optional[EnvironmentType] name : typing.Optional[str] @@ -2685,16 +2680,12 @@ async def list_environments( ) async def create_environment( - self, - *, - environment_type: CreateEnvironmentRequestBodyEnvironmentType, - name: str, - request_options: typing.Optional[RequestOptions] = None, + self, *, environment_type: EnvironmentType, name: str, request_options: typing.Optional[RequestOptions] = None ) -> AsyncHttpResponse[CreateEnvironmentResponse]: """ Parameters ---------- - environment_type : CreateEnvironmentRequestBodyEnvironmentType + environment_type : EnvironmentType name : str @@ -2882,7 +2873,7 @@ async def update_environment( self, environment_id: str, *, - environment_type: typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType] = OMIT, + environment_type: typing.Optional[EnvironmentType] = OMIT, name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[UpdateEnvironmentResponse]: @@ -2892,7 +2883,7 @@ async def update_environment( environment_id : str environment_id - environment_type : typing.Optional[UpdateEnvironmentRequestBodyEnvironmentType] + environment_type : typing.Optional[EnvironmentType] name : typing.Optional[str] diff --git a/src/schematic/accounts/types/__init__.py b/src/schematic/accounts/types/__init__.py index 620b886..8b5064a 100644 --- a/src/schematic/accounts/types/__init__.py +++ b/src/schematic/accounts/types/__init__.py @@ -11,7 +11,6 @@ from .count_api_requests_params import CountApiRequestsParams from .count_api_requests_response import CountApiRequestsResponse from .create_api_key_response import CreateApiKeyResponse - from .create_environment_request_body_environment_type import CreateEnvironmentRequestBodyEnvironmentType from .create_environment_response import CreateEnvironmentResponse from .delete_api_key_response import DeleteApiKeyResponse from .delete_environment_response import DeleteEnvironmentResponse @@ -26,7 +25,6 @@ from .list_environments_response import ListEnvironmentsResponse from .quickstart_response import QuickstartResponse from .update_api_key_response import UpdateApiKeyResponse - from .update_environment_request_body_environment_type import UpdateEnvironmentRequestBodyEnvironmentType from .update_environment_response import UpdateEnvironmentResponse _dynamic_imports: typing.Dict[str, str] = { "CountApiKeysParams": ".count_api_keys_params", @@ -34,7 +32,6 @@ "CountApiRequestsParams": ".count_api_requests_params", "CountApiRequestsResponse": ".count_api_requests_response", "CreateApiKeyResponse": ".create_api_key_response", - "CreateEnvironmentRequestBodyEnvironmentType": ".create_environment_request_body_environment_type", "CreateEnvironmentResponse": ".create_environment_response", "DeleteApiKeyResponse": ".delete_api_key_response", "DeleteEnvironmentResponse": ".delete_environment_response", @@ -49,7 +46,6 @@ "ListEnvironmentsResponse": ".list_environments_response", "QuickstartResponse": ".quickstart_response", "UpdateApiKeyResponse": ".update_api_key_response", - "UpdateEnvironmentRequestBodyEnvironmentType": ".update_environment_request_body_environment_type", "UpdateEnvironmentResponse": ".update_environment_response", } @@ -81,7 +77,6 @@ def __dir__(): "CountApiRequestsParams", "CountApiRequestsResponse", "CreateApiKeyResponse", - "CreateEnvironmentRequestBodyEnvironmentType", "CreateEnvironmentResponse", "DeleteApiKeyResponse", "DeleteEnvironmentResponse", @@ -96,6 +91,5 @@ def __dir__(): "ListEnvironmentsResponse", "QuickstartResponse", "UpdateApiKeyResponse", - "UpdateEnvironmentRequestBodyEnvironmentType", "UpdateEnvironmentResponse", ] diff --git a/src/schematic/accounts/types/create_environment_request_body_environment_type.py b/src/schematic/accounts/types/create_environment_request_body_environment_type.py deleted file mode 100644 index b5c297a..0000000 --- a/src/schematic/accounts/types/create_environment_request_body_environment_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateEnvironmentRequestBodyEnvironmentType = typing.Union[ - typing.Literal["development", "staging", "production"], typing.Any -] diff --git a/src/schematic/accounts/types/update_environment_request_body_environment_type.py b/src/schematic/accounts/types/update_environment_request_body_environment_type.py deleted file mode 100644 index 6bb435b..0000000 --- a/src/schematic/accounts/types/update_environment_request_body_environment_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateEnvironmentRequestBodyEnvironmentType = typing.Union[ - typing.Literal["development", "staging", "production"], typing.Any -] diff --git a/src/schematic/billing/__init__.py b/src/schematic/billing/__init__.py index 6a0f869..2d1e46a 100644 --- a/src/schematic/billing/__init__.py +++ b/src/schematic/billing/__init__.py @@ -8,21 +8,17 @@ if typing.TYPE_CHECKING: from .types import ( CountBillingProductsParams, - CountBillingProductsRequestPriceUsageType, CountBillingProductsResponse, - CountBillingProductsResponseParamsPriceUsageType, CountCustomersParams, CountCustomersResponse, - CreateBillingPriceRequestBodyBillingScheme, - CreateBillingPriceRequestBodyTiersMode, - CreateBillingPriceRequestBodyUsageType, - CreateBillingSubscriptionRequestBodyTrialEndSetting, DeleteBillingProductResponse, DeleteProductPriceResponse, + ListBillingPricesParams, + ListBillingPricesResponse, + ListBillingProductPricesParams, + ListBillingProductPricesResponse, ListBillingProductsParams, - ListBillingProductsRequestPriceUsageType, ListBillingProductsResponse, - ListBillingProductsResponseParamsPriceUsageType, ListCouponsParams, ListCouponsResponse, ListCustomersWithSubscriptionsParams, @@ -33,16 +29,6 @@ ListMetersResponse, ListPaymentMethodsParams, ListPaymentMethodsResponse, - ListProductPricesParams, - ListProductPricesRequestPriceUsageType, - ListProductPricesResponse, - ListProductPricesResponseParamsPriceUsageType, - SearchBillingPricesParams, - SearchBillingPricesRequestTiersMode, - SearchBillingPricesRequestUsageType, - SearchBillingPricesResponse, - SearchBillingPricesResponseParamsTiersMode, - SearchBillingPricesResponseParamsUsageType, UpsertBillingCouponResponse, UpsertBillingCustomerResponse, UpsertBillingMeterResponse, @@ -54,21 +40,17 @@ ) _dynamic_imports: typing.Dict[str, str] = { "CountBillingProductsParams": ".types", - "CountBillingProductsRequestPriceUsageType": ".types", "CountBillingProductsResponse": ".types", - "CountBillingProductsResponseParamsPriceUsageType": ".types", "CountCustomersParams": ".types", "CountCustomersResponse": ".types", - "CreateBillingPriceRequestBodyBillingScheme": ".types", - "CreateBillingPriceRequestBodyTiersMode": ".types", - "CreateBillingPriceRequestBodyUsageType": ".types", - "CreateBillingSubscriptionRequestBodyTrialEndSetting": ".types", "DeleteBillingProductResponse": ".types", "DeleteProductPriceResponse": ".types", + "ListBillingPricesParams": ".types", + "ListBillingPricesResponse": ".types", + "ListBillingProductPricesParams": ".types", + "ListBillingProductPricesResponse": ".types", "ListBillingProductsParams": ".types", - "ListBillingProductsRequestPriceUsageType": ".types", "ListBillingProductsResponse": ".types", - "ListBillingProductsResponseParamsPriceUsageType": ".types", "ListCouponsParams": ".types", "ListCouponsResponse": ".types", "ListCustomersWithSubscriptionsParams": ".types", @@ -79,16 +61,6 @@ "ListMetersResponse": ".types", "ListPaymentMethodsParams": ".types", "ListPaymentMethodsResponse": ".types", - "ListProductPricesParams": ".types", - "ListProductPricesRequestPriceUsageType": ".types", - "ListProductPricesResponse": ".types", - "ListProductPricesResponseParamsPriceUsageType": ".types", - "SearchBillingPricesParams": ".types", - "SearchBillingPricesRequestTiersMode": ".types", - "SearchBillingPricesRequestUsageType": ".types", - "SearchBillingPricesResponse": ".types", - "SearchBillingPricesResponseParamsTiersMode": ".types", - "SearchBillingPricesResponseParamsUsageType": ".types", "UpsertBillingCouponResponse": ".types", "UpsertBillingCustomerResponse": ".types", "UpsertBillingMeterResponse": ".types", @@ -123,21 +95,17 @@ def __dir__(): __all__ = [ "CountBillingProductsParams", - "CountBillingProductsRequestPriceUsageType", "CountBillingProductsResponse", - "CountBillingProductsResponseParamsPriceUsageType", "CountCustomersParams", "CountCustomersResponse", - "CreateBillingPriceRequestBodyBillingScheme", - "CreateBillingPriceRequestBodyTiersMode", - "CreateBillingPriceRequestBodyUsageType", - "CreateBillingSubscriptionRequestBodyTrialEndSetting", "DeleteBillingProductResponse", "DeleteProductPriceResponse", + "ListBillingPricesParams", + "ListBillingPricesResponse", + "ListBillingProductPricesParams", + "ListBillingProductPricesResponse", "ListBillingProductsParams", - "ListBillingProductsRequestPriceUsageType", "ListBillingProductsResponse", - "ListBillingProductsResponseParamsPriceUsageType", "ListCouponsParams", "ListCouponsResponse", "ListCustomersWithSubscriptionsParams", @@ -148,16 +116,6 @@ def __dir__(): "ListMetersResponse", "ListPaymentMethodsParams", "ListPaymentMethodsResponse", - "ListProductPricesParams", - "ListProductPricesRequestPriceUsageType", - "ListProductPricesResponse", - "ListProductPricesResponseParamsPriceUsageType", - "SearchBillingPricesParams", - "SearchBillingPricesRequestTiersMode", - "SearchBillingPricesRequestUsageType", - "SearchBillingPricesResponse", - "SearchBillingPricesResponseParamsTiersMode", - "SearchBillingPricesResponseParamsUsageType", "UpsertBillingCouponResponse", "UpsertBillingCustomerResponse", "UpsertBillingMeterResponse", diff --git a/src/schematic/billing/client.py b/src/schematic/billing/client.py index c1e3e6d..a78c030 100644 --- a/src/schematic/billing/client.py +++ b/src/schematic/billing/client.py @@ -5,33 +5,26 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions +from ..types.billing_price_scheme import BillingPriceScheme +from ..types.billing_price_usage_type import BillingPriceUsageType from ..types.billing_product_pricing import BillingProductPricing from ..types.billing_subscription_discount import BillingSubscriptionDiscount +from ..types.billing_subscription_trial_end_setting import BillingSubscriptionTrialEndSetting +from ..types.billing_tiers_mode import BillingTiersMode from ..types.create_billing_price_tier_request_body import CreateBillingPriceTierRequestBody from .raw_client import AsyncRawBillingClient, RawBillingClient -from .types.count_billing_products_request_price_usage_type import CountBillingProductsRequestPriceUsageType from .types.count_billing_products_response import CountBillingProductsResponse from .types.count_customers_response import CountCustomersResponse -from .types.create_billing_price_request_body_billing_scheme import CreateBillingPriceRequestBodyBillingScheme -from .types.create_billing_price_request_body_tiers_mode import CreateBillingPriceRequestBodyTiersMode -from .types.create_billing_price_request_body_usage_type import CreateBillingPriceRequestBodyUsageType -from .types.create_billing_subscription_request_body_trial_end_setting import ( - CreateBillingSubscriptionRequestBodyTrialEndSetting, -) from .types.delete_billing_product_response import DeleteBillingProductResponse from .types.delete_product_price_response import DeleteProductPriceResponse -from .types.list_billing_products_request_price_usage_type import ListBillingProductsRequestPriceUsageType +from .types.list_billing_prices_response import ListBillingPricesResponse +from .types.list_billing_product_prices_response import ListBillingProductPricesResponse from .types.list_billing_products_response import ListBillingProductsResponse from .types.list_coupons_response import ListCouponsResponse from .types.list_customers_with_subscriptions_response import ListCustomersWithSubscriptionsResponse from .types.list_invoices_response import ListInvoicesResponse from .types.list_meters_response import ListMetersResponse from .types.list_payment_methods_response import ListPaymentMethodsResponse -from .types.list_product_prices_request_price_usage_type import ListProductPricesRequestPriceUsageType -from .types.list_product_prices_response import ListProductPricesResponse -from .types.search_billing_prices_request_tiers_mode import SearchBillingPricesRequestTiersMode -from .types.search_billing_prices_request_usage_type import SearchBillingPricesRequestUsageType -from .types.search_billing_prices_response import SearchBillingPricesResponse from .types.upsert_billing_coupon_response import UpsertBillingCouponResponse from .types.upsert_billing_customer_response import UpsertBillingCustomerResponse from .types.upsert_billing_meter_response import UpsertBillingMeterResponse @@ -747,23 +740,25 @@ def upsert_payment_method( ) return _response.data - def search_billing_prices( + def list_billing_prices( self, *, for_initial_plan: typing.Optional[bool] = None, for_trial_expiry_plan: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - product_id: typing.Optional[str] = None, interval: typing.Optional[str] = None, + is_active: typing.Optional[bool] = None, price: typing.Optional[int] = None, + product_id: typing.Optional[str] = None, + product_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, - tiers_mode: typing.Optional[SearchBillingPricesRequestTiersMode] = None, - usage_type: typing.Optional[SearchBillingPricesRequestUsageType] = None, + tiers_mode: typing.Optional[BillingTiersMode] = None, + usage_type: typing.Optional[BillingPriceUsageType] = None, + with_meter: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> SearchBillingPricesResponse: + ) -> ListBillingPricesResponse: """ Parameters ---------- @@ -775,20 +770,25 @@ def search_billing_prices( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - product_id : typing.Optional[str] - interval : typing.Optional[str] + is_active : typing.Optional[bool] + Filter for active prices on active products (defaults to true if not specified) + price : typing.Optional[int] + product_id : typing.Optional[str] + + product_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] + q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for prices that require a payment method (inverse of ForInitialPlan) + tiers_mode : typing.Optional[BillingTiersMode] - tiers_mode : typing.Optional[SearchBillingPricesRequestTiersMode] + usage_type : typing.Optional[BillingPriceUsageType] - usage_type : typing.Optional[SearchBillingPricesRequestUsageType] + with_meter : typing.Optional[bool] + Filter for prices with a meter limit : typing.Optional[int] Page limit (default 100) @@ -801,7 +801,7 @@ def search_billing_prices( Returns ------- - SearchBillingPricesResponse + ListBillingPricesResponse OK Examples @@ -811,31 +811,34 @@ def search_billing_prices( client = Schematic( api_key="YOUR_API_KEY", ) - client.billing.search_billing_prices( + client.billing.list_billing_prices( for_initial_plan=True, for_trial_expiry_plan=True, - product_id="product_id", interval="interval", + is_active=True, price=1, + product_id="product_id", q="q", - requires_payment_method=True, - tiers_mode="volume", + tiers_mode="graduated", usage_type="licensed", + with_meter=True, limit=1, offset=1, ) """ - _response = self._raw_client.search_billing_prices( + _response = self._raw_client.list_billing_prices( for_initial_plan=for_initial_plan, for_trial_expiry_plan=for_trial_expiry_plan, ids=ids, - product_id=product_id, interval=interval, + is_active=is_active, price=price, + product_id=product_id, + product_ids=product_ids, q=q, - requires_payment_method=requires_payment_method, tiers_mode=tiers_mode, usage_type=usage_type, + with_meter=with_meter, limit=limit, offset=offset, request_options=request_options, @@ -845,7 +848,7 @@ def search_billing_prices( def upsert_billing_price( self, *, - billing_scheme: CreateBillingPriceRequestBodyBillingScheme, + billing_scheme: BillingPriceScheme, currency: str, external_account_id: str, interval: str, @@ -854,17 +857,17 @@ def upsert_billing_price( price_external_id: str, price_tiers: typing.Sequence[CreateBillingPriceTierRequestBody], product_external_id: str, - usage_type: CreateBillingPriceRequestBodyUsageType, + usage_type: BillingPriceUsageType, meter_id: typing.Optional[str] = OMIT, package_size: typing.Optional[int] = OMIT, price_decimal: typing.Optional[str] = OMIT, - tiers_mode: typing.Optional[CreateBillingPriceRequestBodyTiersMode] = OMIT, + tiers_mode: typing.Optional[BillingTiersMode] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpsertBillingPriceResponse: """ Parameters ---------- - billing_scheme : CreateBillingPriceRequestBodyBillingScheme + billing_scheme : BillingPriceScheme currency : str @@ -882,7 +885,7 @@ def upsert_billing_price( product_external_id : str - usage_type : CreateBillingPriceRequestBodyUsageType + usage_type : BillingPriceUsageType meter_id : typing.Optional[str] @@ -890,7 +893,7 @@ def upsert_billing_price( price_decimal : typing.Optional[str] - tiers_mode : typing.Optional[CreateBillingPriceRequestBodyTiersMode] + tiers_mode : typing.Optional[BillingTiersMode] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -974,47 +977,55 @@ def delete_billing_product( _response = self._raw_client.delete_billing_product(billing_id, request_options=request_options) return _response.data - def list_product_prices( + def list_billing_product_prices( self, *, + for_initial_plan: typing.Optional[bool] = None, + for_trial_expiry_plan: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - name: typing.Optional[str] = None, - q: typing.Optional[str] = None, - price_usage_type: typing.Optional[ListProductPricesRequestPriceUsageType] = None, - without_linked_to_plan: typing.Optional[bool] = None, - with_one_time_charges: typing.Optional[bool] = None, - with_zero_price: typing.Optional[bool] = None, - with_prices_only: typing.Optional[bool] = None, + interval: typing.Optional[str] = None, is_active: typing.Optional[bool] = None, + price: typing.Optional[int] = None, + product_id: typing.Optional[str] = None, + product_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + q: typing.Optional[str] = None, + tiers_mode: typing.Optional[BillingTiersMode] = None, + usage_type: typing.Optional[BillingPriceUsageType] = None, + with_meter: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> ListProductPricesResponse: + ) -> ListBillingProductPricesResponse: """ Parameters ---------- + for_initial_plan : typing.Optional[bool] + Filter for prices valid for initial plans (free prices only) + + for_trial_expiry_plan : typing.Optional[bool] + Filter for prices valid for trial expiry plans (free prices only) + ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - name : typing.Optional[str] + interval : typing.Optional[str] - q : typing.Optional[str] + is_active : typing.Optional[bool] + Filter for active prices on active products (defaults to true if not specified) - price_usage_type : typing.Optional[ListProductPricesRequestPriceUsageType] + price : typing.Optional[int] - without_linked_to_plan : typing.Optional[bool] - Filter products that are not linked to any plan + product_id : typing.Optional[str] - with_one_time_charges : typing.Optional[bool] - Filter products that are one time charges + product_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - with_zero_price : typing.Optional[bool] - Filter products that have zero price for free subscription type + q : typing.Optional[str] - with_prices_only : typing.Optional[bool] - Filter products that have prices + tiers_mode : typing.Optional[BillingTiersMode] - is_active : typing.Optional[bool] - Filter products that are active + usage_type : typing.Optional[BillingPriceUsageType] + + with_meter : typing.Optional[bool] + Filter for prices with a meter limit : typing.Optional[int] Page limit (default 100) @@ -1027,7 +1038,7 @@ def list_product_prices( Returns ------- - ListProductPricesResponse + ListBillingProductPricesResponse OK Examples @@ -1037,29 +1048,34 @@ def list_product_prices( client = Schematic( api_key="YOUR_API_KEY", ) - client.billing.list_product_prices( - name="name", - q="q", - price_usage_type="licensed", - without_linked_to_plan=True, - with_one_time_charges=True, - with_zero_price=True, - with_prices_only=True, + client.billing.list_billing_product_prices( + for_initial_plan=True, + for_trial_expiry_plan=True, + interval="interval", is_active=True, + price=1, + product_id="product_id", + q="q", + tiers_mode="graduated", + usage_type="licensed", + with_meter=True, limit=1, offset=1, ) """ - _response = self._raw_client.list_product_prices( + _response = self._raw_client.list_billing_product_prices( + for_initial_plan=for_initial_plan, + for_trial_expiry_plan=for_trial_expiry_plan, ids=ids, - name=name, - q=q, - price_usage_type=price_usage_type, - without_linked_to_plan=without_linked_to_plan, - with_one_time_charges=with_one_time_charges, - with_zero_price=with_zero_price, - with_prices_only=with_prices_only, + interval=interval, is_active=is_active, + price=price, + product_id=product_id, + product_ids=product_ids, + q=q, + tiers_mode=tiers_mode, + usage_type=usage_type, + with_meter=with_meter, limit=limit, offset=offset, request_options=request_options, @@ -1149,7 +1165,7 @@ def list_billing_products( ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, name: typing.Optional[str] = None, q: typing.Optional[str] = None, - price_usage_type: typing.Optional[ListBillingProductsRequestPriceUsageType] = None, + price_usage_type: typing.Optional[BillingPriceUsageType] = None, without_linked_to_plan: typing.Optional[bool] = None, with_one_time_charges: typing.Optional[bool] = None, with_zero_price: typing.Optional[bool] = None, @@ -1168,7 +1184,7 @@ def list_billing_products( q : typing.Optional[str] - price_usage_type : typing.Optional[ListBillingProductsRequestPriceUsageType] + price_usage_type : typing.Optional[BillingPriceUsageType] without_linked_to_plan : typing.Optional[bool] Filter products that are not linked to any plan @@ -1241,7 +1257,7 @@ def count_billing_products( ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, name: typing.Optional[str] = None, q: typing.Optional[str] = None, - price_usage_type: typing.Optional[CountBillingProductsRequestPriceUsageType] = None, + price_usage_type: typing.Optional[BillingPriceUsageType] = None, without_linked_to_plan: typing.Optional[bool] = None, with_one_time_charges: typing.Optional[bool] = None, with_zero_price: typing.Optional[bool] = None, @@ -1260,7 +1276,7 @@ def count_billing_products( q : typing.Optional[str] - price_usage_type : typing.Optional[CountBillingProductsRequestPriceUsageType] + price_usage_type : typing.Optional[BillingPriceUsageType] without_linked_to_plan : typing.Optional[bool] Filter products that are not linked to any plan @@ -1338,6 +1354,7 @@ def upsert_billing_subscription( product_external_ids: typing.Sequence[BillingProductPricing], subscription_external_id: str, total_price: int, + application_id: typing.Optional[str] = OMIT, cancel_at: typing.Optional[int] = OMIT, default_payment_method_external_id: typing.Optional[str] = OMIT, default_payment_method_id: typing.Optional[str] = OMIT, @@ -1347,7 +1364,7 @@ def upsert_billing_subscription( period_start: typing.Optional[int] = OMIT, status: typing.Optional[str] = OMIT, trial_end: typing.Optional[int] = OMIT, - trial_end_setting: typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting] = OMIT, + trial_end_setting: typing.Optional[BillingSubscriptionTrialEndSetting] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpsertBillingSubscriptionResponse: """ @@ -1369,6 +1386,8 @@ def upsert_billing_subscription( total_price : int + application_id : typing.Optional[str] + cancel_at : typing.Optional[int] default_payment_method_external_id : typing.Optional[str] @@ -1387,7 +1406,7 @@ def upsert_billing_subscription( trial_end : typing.Optional[int] - trial_end_setting : typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting] + trial_end_setting : typing.Optional[BillingSubscriptionTrialEndSetting] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1451,6 +1470,7 @@ def upsert_billing_subscription( product_external_ids=product_external_ids, subscription_external_id=subscription_external_id, total_price=total_price, + application_id=application_id, cancel_at=cancel_at, default_payment_method_external_id=default_payment_method_external_id, default_payment_method_id=default_payment_method_id, @@ -2256,23 +2276,25 @@ async def main() -> None: ) return _response.data - async def search_billing_prices( + async def list_billing_prices( self, *, for_initial_plan: typing.Optional[bool] = None, for_trial_expiry_plan: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - product_id: typing.Optional[str] = None, interval: typing.Optional[str] = None, + is_active: typing.Optional[bool] = None, price: typing.Optional[int] = None, + product_id: typing.Optional[str] = None, + product_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, - tiers_mode: typing.Optional[SearchBillingPricesRequestTiersMode] = None, - usage_type: typing.Optional[SearchBillingPricesRequestUsageType] = None, + tiers_mode: typing.Optional[BillingTiersMode] = None, + usage_type: typing.Optional[BillingPriceUsageType] = None, + with_meter: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> SearchBillingPricesResponse: + ) -> ListBillingPricesResponse: """ Parameters ---------- @@ -2284,20 +2306,25 @@ async def search_billing_prices( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - product_id : typing.Optional[str] - interval : typing.Optional[str] + is_active : typing.Optional[bool] + Filter for active prices on active products (defaults to true if not specified) + price : typing.Optional[int] + product_id : typing.Optional[str] + + product_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] + q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for prices that require a payment method (inverse of ForInitialPlan) + tiers_mode : typing.Optional[BillingTiersMode] - tiers_mode : typing.Optional[SearchBillingPricesRequestTiersMode] + usage_type : typing.Optional[BillingPriceUsageType] - usage_type : typing.Optional[SearchBillingPricesRequestUsageType] + with_meter : typing.Optional[bool] + Filter for prices with a meter limit : typing.Optional[int] Page limit (default 100) @@ -2310,7 +2337,7 @@ async def search_billing_prices( Returns ------- - SearchBillingPricesResponse + ListBillingPricesResponse OK Examples @@ -2325,16 +2352,17 @@ async def search_billing_prices( async def main() -> None: - await client.billing.search_billing_prices( + await client.billing.list_billing_prices( for_initial_plan=True, for_trial_expiry_plan=True, - product_id="product_id", interval="interval", + is_active=True, price=1, + product_id="product_id", q="q", - requires_payment_method=True, - tiers_mode="volume", + tiers_mode="graduated", usage_type="licensed", + with_meter=True, limit=1, offset=1, ) @@ -2342,17 +2370,19 @@ async def main() -> None: asyncio.run(main()) """ - _response = await self._raw_client.search_billing_prices( + _response = await self._raw_client.list_billing_prices( for_initial_plan=for_initial_plan, for_trial_expiry_plan=for_trial_expiry_plan, ids=ids, - product_id=product_id, interval=interval, + is_active=is_active, price=price, + product_id=product_id, + product_ids=product_ids, q=q, - requires_payment_method=requires_payment_method, tiers_mode=tiers_mode, usage_type=usage_type, + with_meter=with_meter, limit=limit, offset=offset, request_options=request_options, @@ -2362,7 +2392,7 @@ async def main() -> None: async def upsert_billing_price( self, *, - billing_scheme: CreateBillingPriceRequestBodyBillingScheme, + billing_scheme: BillingPriceScheme, currency: str, external_account_id: str, interval: str, @@ -2371,17 +2401,17 @@ async def upsert_billing_price( price_external_id: str, price_tiers: typing.Sequence[CreateBillingPriceTierRequestBody], product_external_id: str, - usage_type: CreateBillingPriceRequestBodyUsageType, + usage_type: BillingPriceUsageType, meter_id: typing.Optional[str] = OMIT, package_size: typing.Optional[int] = OMIT, price_decimal: typing.Optional[str] = OMIT, - tiers_mode: typing.Optional[CreateBillingPriceRequestBodyTiersMode] = OMIT, + tiers_mode: typing.Optional[BillingTiersMode] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpsertBillingPriceResponse: """ Parameters ---------- - billing_scheme : CreateBillingPriceRequestBodyBillingScheme + billing_scheme : BillingPriceScheme currency : str @@ -2399,7 +2429,7 @@ async def upsert_billing_price( product_external_id : str - usage_type : CreateBillingPriceRequestBodyUsageType + usage_type : BillingPriceUsageType meter_id : typing.Optional[str] @@ -2407,7 +2437,7 @@ async def upsert_billing_price( price_decimal : typing.Optional[str] - tiers_mode : typing.Optional[CreateBillingPriceRequestBodyTiersMode] + tiers_mode : typing.Optional[BillingTiersMode] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2507,47 +2537,55 @@ async def main() -> None: _response = await self._raw_client.delete_billing_product(billing_id, request_options=request_options) return _response.data - async def list_product_prices( + async def list_billing_product_prices( self, *, + for_initial_plan: typing.Optional[bool] = None, + for_trial_expiry_plan: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - name: typing.Optional[str] = None, - q: typing.Optional[str] = None, - price_usage_type: typing.Optional[ListProductPricesRequestPriceUsageType] = None, - without_linked_to_plan: typing.Optional[bool] = None, - with_one_time_charges: typing.Optional[bool] = None, - with_zero_price: typing.Optional[bool] = None, - with_prices_only: typing.Optional[bool] = None, + interval: typing.Optional[str] = None, is_active: typing.Optional[bool] = None, + price: typing.Optional[int] = None, + product_id: typing.Optional[str] = None, + product_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + q: typing.Optional[str] = None, + tiers_mode: typing.Optional[BillingTiersMode] = None, + usage_type: typing.Optional[BillingPriceUsageType] = None, + with_meter: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> ListProductPricesResponse: + ) -> ListBillingProductPricesResponse: """ Parameters ---------- + for_initial_plan : typing.Optional[bool] + Filter for prices valid for initial plans (free prices only) + + for_trial_expiry_plan : typing.Optional[bool] + Filter for prices valid for trial expiry plans (free prices only) + ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - name : typing.Optional[str] + interval : typing.Optional[str] - q : typing.Optional[str] + is_active : typing.Optional[bool] + Filter for active prices on active products (defaults to true if not specified) - price_usage_type : typing.Optional[ListProductPricesRequestPriceUsageType] + price : typing.Optional[int] - without_linked_to_plan : typing.Optional[bool] - Filter products that are not linked to any plan + product_id : typing.Optional[str] - with_one_time_charges : typing.Optional[bool] - Filter products that are one time charges + product_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - with_zero_price : typing.Optional[bool] - Filter products that have zero price for free subscription type + q : typing.Optional[str] - with_prices_only : typing.Optional[bool] - Filter products that have prices + tiers_mode : typing.Optional[BillingTiersMode] - is_active : typing.Optional[bool] - Filter products that are active + usage_type : typing.Optional[BillingPriceUsageType] + + with_meter : typing.Optional[bool] + Filter for prices with a meter limit : typing.Optional[int] Page limit (default 100) @@ -2560,7 +2598,7 @@ async def list_product_prices( Returns ------- - ListProductPricesResponse + ListBillingProductPricesResponse OK Examples @@ -2575,15 +2613,17 @@ async def list_product_prices( async def main() -> None: - await client.billing.list_product_prices( - name="name", - q="q", - price_usage_type="licensed", - without_linked_to_plan=True, - with_one_time_charges=True, - with_zero_price=True, - with_prices_only=True, + await client.billing.list_billing_product_prices( + for_initial_plan=True, + for_trial_expiry_plan=True, + interval="interval", is_active=True, + price=1, + product_id="product_id", + q="q", + tiers_mode="graduated", + usage_type="licensed", + with_meter=True, limit=1, offset=1, ) @@ -2591,16 +2631,19 @@ async def main() -> None: asyncio.run(main()) """ - _response = await self._raw_client.list_product_prices( + _response = await self._raw_client.list_billing_product_prices( + for_initial_plan=for_initial_plan, + for_trial_expiry_plan=for_trial_expiry_plan, ids=ids, - name=name, - q=q, - price_usage_type=price_usage_type, - without_linked_to_plan=without_linked_to_plan, - with_one_time_charges=with_one_time_charges, - with_zero_price=with_zero_price, - with_prices_only=with_prices_only, + interval=interval, is_active=is_active, + price=price, + product_id=product_id, + product_ids=product_ids, + q=q, + tiers_mode=tiers_mode, + usage_type=usage_type, + with_meter=with_meter, limit=limit, offset=offset, request_options=request_options, @@ -2706,7 +2749,7 @@ async def list_billing_products( ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, name: typing.Optional[str] = None, q: typing.Optional[str] = None, - price_usage_type: typing.Optional[ListBillingProductsRequestPriceUsageType] = None, + price_usage_type: typing.Optional[BillingPriceUsageType] = None, without_linked_to_plan: typing.Optional[bool] = None, with_one_time_charges: typing.Optional[bool] = None, with_zero_price: typing.Optional[bool] = None, @@ -2725,7 +2768,7 @@ async def list_billing_products( q : typing.Optional[str] - price_usage_type : typing.Optional[ListBillingProductsRequestPriceUsageType] + price_usage_type : typing.Optional[BillingPriceUsageType] without_linked_to_plan : typing.Optional[bool] Filter products that are not linked to any plan @@ -2806,7 +2849,7 @@ async def count_billing_products( ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, name: typing.Optional[str] = None, q: typing.Optional[str] = None, - price_usage_type: typing.Optional[CountBillingProductsRequestPriceUsageType] = None, + price_usage_type: typing.Optional[BillingPriceUsageType] = None, without_linked_to_plan: typing.Optional[bool] = None, with_one_time_charges: typing.Optional[bool] = None, with_zero_price: typing.Optional[bool] = None, @@ -2825,7 +2868,7 @@ async def count_billing_products( q : typing.Optional[str] - price_usage_type : typing.Optional[CountBillingProductsRequestPriceUsageType] + price_usage_type : typing.Optional[BillingPriceUsageType] without_linked_to_plan : typing.Optional[bool] Filter products that are not linked to any plan @@ -2911,6 +2954,7 @@ async def upsert_billing_subscription( product_external_ids: typing.Sequence[BillingProductPricing], subscription_external_id: str, total_price: int, + application_id: typing.Optional[str] = OMIT, cancel_at: typing.Optional[int] = OMIT, default_payment_method_external_id: typing.Optional[str] = OMIT, default_payment_method_id: typing.Optional[str] = OMIT, @@ -2920,7 +2964,7 @@ async def upsert_billing_subscription( period_start: typing.Optional[int] = OMIT, status: typing.Optional[str] = OMIT, trial_end: typing.Optional[int] = OMIT, - trial_end_setting: typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting] = OMIT, + trial_end_setting: typing.Optional[BillingSubscriptionTrialEndSetting] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpsertBillingSubscriptionResponse: """ @@ -2942,6 +2986,8 @@ async def upsert_billing_subscription( total_price : int + application_id : typing.Optional[str] + cancel_at : typing.Optional[int] default_payment_method_external_id : typing.Optional[str] @@ -2960,7 +3006,7 @@ async def upsert_billing_subscription( trial_end : typing.Optional[int] - trial_end_setting : typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting] + trial_end_setting : typing.Optional[BillingSubscriptionTrialEndSetting] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -3031,6 +3077,7 @@ async def main() -> None: product_external_ids=product_external_ids, subscription_external_id=subscription_external_id, total_price=total_price, + application_id=application_id, cancel_at=cancel_at, default_payment_method_external_id=default_payment_method_external_id, default_payment_method_id=default_payment_method_id, diff --git a/src/schematic/billing/raw_client.py b/src/schematic/billing/raw_client.py index 50f7abd..8b10ac0 100644 --- a/src/schematic/billing/raw_client.py +++ b/src/schematic/billing/raw_client.py @@ -17,32 +17,25 @@ from ..errors.not_found_error import NotFoundError from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError +from ..types.billing_price_scheme import BillingPriceScheme +from ..types.billing_price_usage_type import BillingPriceUsageType from ..types.billing_product_pricing import BillingProductPricing from ..types.billing_subscription_discount import BillingSubscriptionDiscount +from ..types.billing_subscription_trial_end_setting import BillingSubscriptionTrialEndSetting +from ..types.billing_tiers_mode import BillingTiersMode from ..types.create_billing_price_tier_request_body import CreateBillingPriceTierRequestBody -from .types.count_billing_products_request_price_usage_type import CountBillingProductsRequestPriceUsageType from .types.count_billing_products_response import CountBillingProductsResponse from .types.count_customers_response import CountCustomersResponse -from .types.create_billing_price_request_body_billing_scheme import CreateBillingPriceRequestBodyBillingScheme -from .types.create_billing_price_request_body_tiers_mode import CreateBillingPriceRequestBodyTiersMode -from .types.create_billing_price_request_body_usage_type import CreateBillingPriceRequestBodyUsageType -from .types.create_billing_subscription_request_body_trial_end_setting import ( - CreateBillingSubscriptionRequestBodyTrialEndSetting, -) from .types.delete_billing_product_response import DeleteBillingProductResponse from .types.delete_product_price_response import DeleteProductPriceResponse -from .types.list_billing_products_request_price_usage_type import ListBillingProductsRequestPriceUsageType +from .types.list_billing_prices_response import ListBillingPricesResponse +from .types.list_billing_product_prices_response import ListBillingProductPricesResponse from .types.list_billing_products_response import ListBillingProductsResponse from .types.list_coupons_response import ListCouponsResponse from .types.list_customers_with_subscriptions_response import ListCustomersWithSubscriptionsResponse from .types.list_invoices_response import ListInvoicesResponse from .types.list_meters_response import ListMetersResponse from .types.list_payment_methods_response import ListPaymentMethodsResponse -from .types.list_product_prices_request_price_usage_type import ListProductPricesRequestPriceUsageType -from .types.list_product_prices_response import ListProductPricesResponse -from .types.search_billing_prices_request_tiers_mode import SearchBillingPricesRequestTiersMode -from .types.search_billing_prices_request_usage_type import SearchBillingPricesRequestUsageType -from .types.search_billing_prices_response import SearchBillingPricesResponse from .types.upsert_billing_coupon_response import UpsertBillingCouponResponse from .types.upsert_billing_customer_response import UpsertBillingCustomerResponse from .types.upsert_billing_meter_response import UpsertBillingMeterResponse @@ -1447,23 +1440,25 @@ def upsert_payment_method( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) - def search_billing_prices( + def list_billing_prices( self, *, for_initial_plan: typing.Optional[bool] = None, for_trial_expiry_plan: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - product_id: typing.Optional[str] = None, interval: typing.Optional[str] = None, + is_active: typing.Optional[bool] = None, price: typing.Optional[int] = None, + product_id: typing.Optional[str] = None, + product_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, - tiers_mode: typing.Optional[SearchBillingPricesRequestTiersMode] = None, - usage_type: typing.Optional[SearchBillingPricesRequestUsageType] = None, + tiers_mode: typing.Optional[BillingTiersMode] = None, + usage_type: typing.Optional[BillingPriceUsageType] = None, + with_meter: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[SearchBillingPricesResponse]: + ) -> HttpResponse[ListBillingPricesResponse]: """ Parameters ---------- @@ -1475,20 +1470,25 @@ def search_billing_prices( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - product_id : typing.Optional[str] - interval : typing.Optional[str] + is_active : typing.Optional[bool] + Filter for active prices on active products (defaults to true if not specified) + price : typing.Optional[int] + product_id : typing.Optional[str] + + product_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] + q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for prices that require a payment method (inverse of ForInitialPlan) + tiers_mode : typing.Optional[BillingTiersMode] - tiers_mode : typing.Optional[SearchBillingPricesRequestTiersMode] + usage_type : typing.Optional[BillingPriceUsageType] - usage_type : typing.Optional[SearchBillingPricesRequestUsageType] + with_meter : typing.Optional[bool] + Filter for prices with a meter limit : typing.Optional[int] Page limit (default 100) @@ -1501,7 +1501,7 @@ def search_billing_prices( Returns ------- - HttpResponse[SearchBillingPricesResponse] + HttpResponse[ListBillingPricesResponse] OK """ _response = self._client_wrapper.httpx_client.request( @@ -1511,13 +1511,15 @@ def search_billing_prices( "for_initial_plan": for_initial_plan, "for_trial_expiry_plan": for_trial_expiry_plan, "ids": ids, - "product_id": product_id, "interval": interval, + "is_active": is_active, "price": price, + "product_id": product_id, + "product_ids": product_ids, "q": q, - "requires_payment_method": requires_payment_method, "tiers_mode": tiers_mode, "usage_type": usage_type, + "with_meter": with_meter, "limit": limit, "offset": offset, }, @@ -1526,9 +1528,9 @@ def search_billing_prices( try: if 200 <= _response.status_code < 300: _data = typing.cast( - SearchBillingPricesResponse, + ListBillingPricesResponse, parse_obj_as( - type_=SearchBillingPricesResponse, # type: ignore + type_=ListBillingPricesResponse, # type: ignore object_=_response.json(), ), ) @@ -1600,7 +1602,7 @@ def search_billing_prices( def upsert_billing_price( self, *, - billing_scheme: CreateBillingPriceRequestBodyBillingScheme, + billing_scheme: BillingPriceScheme, currency: str, external_account_id: str, interval: str, @@ -1609,17 +1611,17 @@ def upsert_billing_price( price_external_id: str, price_tiers: typing.Sequence[CreateBillingPriceTierRequestBody], product_external_id: str, - usage_type: CreateBillingPriceRequestBodyUsageType, + usage_type: BillingPriceUsageType, meter_id: typing.Optional[str] = OMIT, package_size: typing.Optional[int] = OMIT, price_decimal: typing.Optional[str] = OMIT, - tiers_mode: typing.Optional[CreateBillingPriceRequestBodyTiersMode] = OMIT, + tiers_mode: typing.Optional[BillingTiersMode] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[UpsertBillingPriceResponse]: """ Parameters ---------- - billing_scheme : CreateBillingPriceRequestBodyBillingScheme + billing_scheme : BillingPriceScheme currency : str @@ -1637,7 +1639,7 @@ def upsert_billing_price( product_external_id : str - usage_type : CreateBillingPriceRequestBodyUsageType + usage_type : BillingPriceUsageType meter_id : typing.Optional[str] @@ -1645,7 +1647,7 @@ def upsert_billing_price( price_decimal : typing.Optional[str] - tiers_mode : typing.Optional[CreateBillingPriceRequestBodyTiersMode] + tiers_mode : typing.Optional[BillingTiersMode] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1854,47 +1856,55 @@ def delete_billing_product( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) - def list_product_prices( + def list_billing_product_prices( self, *, + for_initial_plan: typing.Optional[bool] = None, + for_trial_expiry_plan: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - name: typing.Optional[str] = None, - q: typing.Optional[str] = None, - price_usage_type: typing.Optional[ListProductPricesRequestPriceUsageType] = None, - without_linked_to_plan: typing.Optional[bool] = None, - with_one_time_charges: typing.Optional[bool] = None, - with_zero_price: typing.Optional[bool] = None, - with_prices_only: typing.Optional[bool] = None, + interval: typing.Optional[str] = None, is_active: typing.Optional[bool] = None, + price: typing.Optional[int] = None, + product_id: typing.Optional[str] = None, + product_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + q: typing.Optional[str] = None, + tiers_mode: typing.Optional[BillingTiersMode] = None, + usage_type: typing.Optional[BillingPriceUsageType] = None, + with_meter: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> HttpResponse[ListProductPricesResponse]: + ) -> HttpResponse[ListBillingProductPricesResponse]: """ Parameters ---------- + for_initial_plan : typing.Optional[bool] + Filter for prices valid for initial plans (free prices only) + + for_trial_expiry_plan : typing.Optional[bool] + Filter for prices valid for trial expiry plans (free prices only) + ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - name : typing.Optional[str] + interval : typing.Optional[str] - q : typing.Optional[str] + is_active : typing.Optional[bool] + Filter for active prices on active products (defaults to true if not specified) - price_usage_type : typing.Optional[ListProductPricesRequestPriceUsageType] + price : typing.Optional[int] - without_linked_to_plan : typing.Optional[bool] - Filter products that are not linked to any plan + product_id : typing.Optional[str] - with_one_time_charges : typing.Optional[bool] - Filter products that are one time charges + product_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - with_zero_price : typing.Optional[bool] - Filter products that have zero price for free subscription type + q : typing.Optional[str] - with_prices_only : typing.Optional[bool] - Filter products that have prices + tiers_mode : typing.Optional[BillingTiersMode] - is_active : typing.Optional[bool] - Filter products that are active + usage_type : typing.Optional[BillingPriceUsageType] + + with_meter : typing.Optional[bool] + Filter for prices with a meter limit : typing.Optional[int] Page limit (default 100) @@ -1907,22 +1917,25 @@ def list_product_prices( Returns ------- - HttpResponse[ListProductPricesResponse] + HttpResponse[ListBillingProductPricesResponse] OK """ _response = self._client_wrapper.httpx_client.request( "billing/product/prices", method="GET", params={ + "for_initial_plan": for_initial_plan, + "for_trial_expiry_plan": for_trial_expiry_plan, "ids": ids, - "name": name, - "q": q, - "price_usage_type": price_usage_type, - "without_linked_to_plan": without_linked_to_plan, - "with_one_time_charges": with_one_time_charges, - "with_zero_price": with_zero_price, - "with_prices_only": with_prices_only, + "interval": interval, "is_active": is_active, + "price": price, + "product_id": product_id, + "product_ids": product_ids, + "q": q, + "tiers_mode": tiers_mode, + "usage_type": usage_type, + "with_meter": with_meter, "limit": limit, "offset": offset, }, @@ -1931,9 +1944,9 @@ def list_product_prices( try: if 200 <= _response.status_code < 300: _data = typing.cast( - ListProductPricesResponse, + ListBillingProductPricesResponse, parse_obj_as( - type_=ListProductPricesResponse, # type: ignore + type_=ListBillingProductPricesResponse, # type: ignore object_=_response.json(), ), ) @@ -2221,7 +2234,7 @@ def list_billing_products( ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, name: typing.Optional[str] = None, q: typing.Optional[str] = None, - price_usage_type: typing.Optional[ListBillingProductsRequestPriceUsageType] = None, + price_usage_type: typing.Optional[BillingPriceUsageType] = None, without_linked_to_plan: typing.Optional[bool] = None, with_one_time_charges: typing.Optional[bool] = None, with_zero_price: typing.Optional[bool] = None, @@ -2240,7 +2253,7 @@ def list_billing_products( q : typing.Optional[str] - price_usage_type : typing.Optional[ListBillingProductsRequestPriceUsageType] + price_usage_type : typing.Optional[BillingPriceUsageType] without_linked_to_plan : typing.Optional[bool] Filter products that are not linked to any plan @@ -2369,7 +2382,7 @@ def count_billing_products( ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, name: typing.Optional[str] = None, q: typing.Optional[str] = None, - price_usage_type: typing.Optional[CountBillingProductsRequestPriceUsageType] = None, + price_usage_type: typing.Optional[BillingPriceUsageType] = None, without_linked_to_plan: typing.Optional[bool] = None, with_one_time_charges: typing.Optional[bool] = None, with_zero_price: typing.Optional[bool] = None, @@ -2388,7 +2401,7 @@ def count_billing_products( q : typing.Optional[str] - price_usage_type : typing.Optional[CountBillingProductsRequestPriceUsageType] + price_usage_type : typing.Optional[BillingPriceUsageType] without_linked_to_plan : typing.Optional[bool] Filter products that are not linked to any plan @@ -2522,6 +2535,7 @@ def upsert_billing_subscription( product_external_ids: typing.Sequence[BillingProductPricing], subscription_external_id: str, total_price: int, + application_id: typing.Optional[str] = OMIT, cancel_at: typing.Optional[int] = OMIT, default_payment_method_external_id: typing.Optional[str] = OMIT, default_payment_method_id: typing.Optional[str] = OMIT, @@ -2531,7 +2545,7 @@ def upsert_billing_subscription( period_start: typing.Optional[int] = OMIT, status: typing.Optional[str] = OMIT, trial_end: typing.Optional[int] = OMIT, - trial_end_setting: typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting] = OMIT, + trial_end_setting: typing.Optional[BillingSubscriptionTrialEndSetting] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[UpsertBillingSubscriptionResponse]: """ @@ -2553,6 +2567,8 @@ def upsert_billing_subscription( total_price : int + application_id : typing.Optional[str] + cancel_at : typing.Optional[int] default_payment_method_external_id : typing.Optional[str] @@ -2571,7 +2587,7 @@ def upsert_billing_subscription( trial_end : typing.Optional[int] - trial_end_setting : typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting] + trial_end_setting : typing.Optional[BillingSubscriptionTrialEndSetting] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2585,6 +2601,7 @@ def upsert_billing_subscription( "billing/subscription/upsert", method="POST", json={ + "application_id": application_id, "cancel_at": cancel_at, "cancel_at_period_end": cancel_at_period_end, "currency": currency, @@ -4080,23 +4097,25 @@ async def upsert_payment_method( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) - async def search_billing_prices( + async def list_billing_prices( self, *, for_initial_plan: typing.Optional[bool] = None, for_trial_expiry_plan: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - product_id: typing.Optional[str] = None, interval: typing.Optional[str] = None, + is_active: typing.Optional[bool] = None, price: typing.Optional[int] = None, + product_id: typing.Optional[str] = None, + product_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, - tiers_mode: typing.Optional[SearchBillingPricesRequestTiersMode] = None, - usage_type: typing.Optional[SearchBillingPricesRequestUsageType] = None, + tiers_mode: typing.Optional[BillingTiersMode] = None, + usage_type: typing.Optional[BillingPriceUsageType] = None, + with_meter: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[SearchBillingPricesResponse]: + ) -> AsyncHttpResponse[ListBillingPricesResponse]: """ Parameters ---------- @@ -4108,20 +4127,25 @@ async def search_billing_prices( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - product_id : typing.Optional[str] - interval : typing.Optional[str] + is_active : typing.Optional[bool] + Filter for active prices on active products (defaults to true if not specified) + price : typing.Optional[int] + product_id : typing.Optional[str] + + product_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] + q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for prices that require a payment method (inverse of ForInitialPlan) + tiers_mode : typing.Optional[BillingTiersMode] - tiers_mode : typing.Optional[SearchBillingPricesRequestTiersMode] + usage_type : typing.Optional[BillingPriceUsageType] - usage_type : typing.Optional[SearchBillingPricesRequestUsageType] + with_meter : typing.Optional[bool] + Filter for prices with a meter limit : typing.Optional[int] Page limit (default 100) @@ -4134,7 +4158,7 @@ async def search_billing_prices( Returns ------- - AsyncHttpResponse[SearchBillingPricesResponse] + AsyncHttpResponse[ListBillingPricesResponse] OK """ _response = await self._client_wrapper.httpx_client.request( @@ -4144,13 +4168,15 @@ async def search_billing_prices( "for_initial_plan": for_initial_plan, "for_trial_expiry_plan": for_trial_expiry_plan, "ids": ids, - "product_id": product_id, "interval": interval, + "is_active": is_active, "price": price, + "product_id": product_id, + "product_ids": product_ids, "q": q, - "requires_payment_method": requires_payment_method, "tiers_mode": tiers_mode, "usage_type": usage_type, + "with_meter": with_meter, "limit": limit, "offset": offset, }, @@ -4159,9 +4185,9 @@ async def search_billing_prices( try: if 200 <= _response.status_code < 300: _data = typing.cast( - SearchBillingPricesResponse, + ListBillingPricesResponse, parse_obj_as( - type_=SearchBillingPricesResponse, # type: ignore + type_=ListBillingPricesResponse, # type: ignore object_=_response.json(), ), ) @@ -4233,7 +4259,7 @@ async def search_billing_prices( async def upsert_billing_price( self, *, - billing_scheme: CreateBillingPriceRequestBodyBillingScheme, + billing_scheme: BillingPriceScheme, currency: str, external_account_id: str, interval: str, @@ -4242,17 +4268,17 @@ async def upsert_billing_price( price_external_id: str, price_tiers: typing.Sequence[CreateBillingPriceTierRequestBody], product_external_id: str, - usage_type: CreateBillingPriceRequestBodyUsageType, + usage_type: BillingPriceUsageType, meter_id: typing.Optional[str] = OMIT, package_size: typing.Optional[int] = OMIT, price_decimal: typing.Optional[str] = OMIT, - tiers_mode: typing.Optional[CreateBillingPriceRequestBodyTiersMode] = OMIT, + tiers_mode: typing.Optional[BillingTiersMode] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[UpsertBillingPriceResponse]: """ Parameters ---------- - billing_scheme : CreateBillingPriceRequestBodyBillingScheme + billing_scheme : BillingPriceScheme currency : str @@ -4270,7 +4296,7 @@ async def upsert_billing_price( product_external_id : str - usage_type : CreateBillingPriceRequestBodyUsageType + usage_type : BillingPriceUsageType meter_id : typing.Optional[str] @@ -4278,7 +4304,7 @@ async def upsert_billing_price( price_decimal : typing.Optional[str] - tiers_mode : typing.Optional[CreateBillingPriceRequestBodyTiersMode] + tiers_mode : typing.Optional[BillingTiersMode] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -4487,47 +4513,55 @@ async def delete_billing_product( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) - async def list_product_prices( + async def list_billing_product_prices( self, *, + for_initial_plan: typing.Optional[bool] = None, + for_trial_expiry_plan: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - name: typing.Optional[str] = None, - q: typing.Optional[str] = None, - price_usage_type: typing.Optional[ListProductPricesRequestPriceUsageType] = None, - without_linked_to_plan: typing.Optional[bool] = None, - with_one_time_charges: typing.Optional[bool] = None, - with_zero_price: typing.Optional[bool] = None, - with_prices_only: typing.Optional[bool] = None, + interval: typing.Optional[str] = None, is_active: typing.Optional[bool] = None, + price: typing.Optional[int] = None, + product_id: typing.Optional[str] = None, + product_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + q: typing.Optional[str] = None, + tiers_mode: typing.Optional[BillingTiersMode] = None, + usage_type: typing.Optional[BillingPriceUsageType] = None, + with_meter: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, - ) -> AsyncHttpResponse[ListProductPricesResponse]: + ) -> AsyncHttpResponse[ListBillingProductPricesResponse]: """ Parameters ---------- + for_initial_plan : typing.Optional[bool] + Filter for prices valid for initial plans (free prices only) + + for_trial_expiry_plan : typing.Optional[bool] + Filter for prices valid for trial expiry plans (free prices only) + ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - name : typing.Optional[str] + interval : typing.Optional[str] - q : typing.Optional[str] + is_active : typing.Optional[bool] + Filter for active prices on active products (defaults to true if not specified) - price_usage_type : typing.Optional[ListProductPricesRequestPriceUsageType] + price : typing.Optional[int] - without_linked_to_plan : typing.Optional[bool] - Filter products that are not linked to any plan + product_id : typing.Optional[str] - with_one_time_charges : typing.Optional[bool] - Filter products that are one time charges + product_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - with_zero_price : typing.Optional[bool] - Filter products that have zero price for free subscription type + q : typing.Optional[str] - with_prices_only : typing.Optional[bool] - Filter products that have prices + tiers_mode : typing.Optional[BillingTiersMode] - is_active : typing.Optional[bool] - Filter products that are active + usage_type : typing.Optional[BillingPriceUsageType] + + with_meter : typing.Optional[bool] + Filter for prices with a meter limit : typing.Optional[int] Page limit (default 100) @@ -4540,22 +4574,25 @@ async def list_product_prices( Returns ------- - AsyncHttpResponse[ListProductPricesResponse] + AsyncHttpResponse[ListBillingProductPricesResponse] OK """ _response = await self._client_wrapper.httpx_client.request( "billing/product/prices", method="GET", params={ + "for_initial_plan": for_initial_plan, + "for_trial_expiry_plan": for_trial_expiry_plan, "ids": ids, - "name": name, - "q": q, - "price_usage_type": price_usage_type, - "without_linked_to_plan": without_linked_to_plan, - "with_one_time_charges": with_one_time_charges, - "with_zero_price": with_zero_price, - "with_prices_only": with_prices_only, + "interval": interval, "is_active": is_active, + "price": price, + "product_id": product_id, + "product_ids": product_ids, + "q": q, + "tiers_mode": tiers_mode, + "usage_type": usage_type, + "with_meter": with_meter, "limit": limit, "offset": offset, }, @@ -4564,9 +4601,9 @@ async def list_product_prices( try: if 200 <= _response.status_code < 300: _data = typing.cast( - ListProductPricesResponse, + ListBillingProductPricesResponse, parse_obj_as( - type_=ListProductPricesResponse, # type: ignore + type_=ListBillingProductPricesResponse, # type: ignore object_=_response.json(), ), ) @@ -4854,7 +4891,7 @@ async def list_billing_products( ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, name: typing.Optional[str] = None, q: typing.Optional[str] = None, - price_usage_type: typing.Optional[ListBillingProductsRequestPriceUsageType] = None, + price_usage_type: typing.Optional[BillingPriceUsageType] = None, without_linked_to_plan: typing.Optional[bool] = None, with_one_time_charges: typing.Optional[bool] = None, with_zero_price: typing.Optional[bool] = None, @@ -4873,7 +4910,7 @@ async def list_billing_products( q : typing.Optional[str] - price_usage_type : typing.Optional[ListBillingProductsRequestPriceUsageType] + price_usage_type : typing.Optional[BillingPriceUsageType] without_linked_to_plan : typing.Optional[bool] Filter products that are not linked to any plan @@ -5002,7 +5039,7 @@ async def count_billing_products( ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, name: typing.Optional[str] = None, q: typing.Optional[str] = None, - price_usage_type: typing.Optional[CountBillingProductsRequestPriceUsageType] = None, + price_usage_type: typing.Optional[BillingPriceUsageType] = None, without_linked_to_plan: typing.Optional[bool] = None, with_one_time_charges: typing.Optional[bool] = None, with_zero_price: typing.Optional[bool] = None, @@ -5021,7 +5058,7 @@ async def count_billing_products( q : typing.Optional[str] - price_usage_type : typing.Optional[CountBillingProductsRequestPriceUsageType] + price_usage_type : typing.Optional[BillingPriceUsageType] without_linked_to_plan : typing.Optional[bool] Filter products that are not linked to any plan @@ -5155,6 +5192,7 @@ async def upsert_billing_subscription( product_external_ids: typing.Sequence[BillingProductPricing], subscription_external_id: str, total_price: int, + application_id: typing.Optional[str] = OMIT, cancel_at: typing.Optional[int] = OMIT, default_payment_method_external_id: typing.Optional[str] = OMIT, default_payment_method_id: typing.Optional[str] = OMIT, @@ -5164,7 +5202,7 @@ async def upsert_billing_subscription( period_start: typing.Optional[int] = OMIT, status: typing.Optional[str] = OMIT, trial_end: typing.Optional[int] = OMIT, - trial_end_setting: typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting] = OMIT, + trial_end_setting: typing.Optional[BillingSubscriptionTrialEndSetting] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[UpsertBillingSubscriptionResponse]: """ @@ -5186,6 +5224,8 @@ async def upsert_billing_subscription( total_price : int + application_id : typing.Optional[str] + cancel_at : typing.Optional[int] default_payment_method_external_id : typing.Optional[str] @@ -5204,7 +5244,7 @@ async def upsert_billing_subscription( trial_end : typing.Optional[int] - trial_end_setting : typing.Optional[CreateBillingSubscriptionRequestBodyTrialEndSetting] + trial_end_setting : typing.Optional[BillingSubscriptionTrialEndSetting] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -5218,6 +5258,7 @@ async def upsert_billing_subscription( "billing/subscription/upsert", method="POST", json={ + "application_id": application_id, "cancel_at": cancel_at, "cancel_at_period_end": cancel_at_period_end, "currency": currency, diff --git a/src/schematic/billing/types/__init__.py b/src/schematic/billing/types/__init__.py index 4e9a120..7bd5220 100644 --- a/src/schematic/billing/types/__init__.py +++ b/src/schematic/billing/types/__init__.py @@ -7,25 +7,17 @@ if typing.TYPE_CHECKING: from .count_billing_products_params import CountBillingProductsParams - from .count_billing_products_request_price_usage_type import CountBillingProductsRequestPriceUsageType from .count_billing_products_response import CountBillingProductsResponse - from .count_billing_products_response_params_price_usage_type import ( - CountBillingProductsResponseParamsPriceUsageType, - ) from .count_customers_params import CountCustomersParams from .count_customers_response import CountCustomersResponse - from .create_billing_price_request_body_billing_scheme import CreateBillingPriceRequestBodyBillingScheme - from .create_billing_price_request_body_tiers_mode import CreateBillingPriceRequestBodyTiersMode - from .create_billing_price_request_body_usage_type import CreateBillingPriceRequestBodyUsageType - from .create_billing_subscription_request_body_trial_end_setting import ( - CreateBillingSubscriptionRequestBodyTrialEndSetting, - ) from .delete_billing_product_response import DeleteBillingProductResponse from .delete_product_price_response import DeleteProductPriceResponse + from .list_billing_prices_params import ListBillingPricesParams + from .list_billing_prices_response import ListBillingPricesResponse + from .list_billing_product_prices_params import ListBillingProductPricesParams + from .list_billing_product_prices_response import ListBillingProductPricesResponse from .list_billing_products_params import ListBillingProductsParams - from .list_billing_products_request_price_usage_type import ListBillingProductsRequestPriceUsageType from .list_billing_products_response import ListBillingProductsResponse - from .list_billing_products_response_params_price_usage_type import ListBillingProductsResponseParamsPriceUsageType from .list_coupons_params import ListCouponsParams from .list_coupons_response import ListCouponsResponse from .list_customers_with_subscriptions_params import ListCustomersWithSubscriptionsParams @@ -36,16 +28,6 @@ from .list_meters_response import ListMetersResponse from .list_payment_methods_params import ListPaymentMethodsParams from .list_payment_methods_response import ListPaymentMethodsResponse - from .list_product_prices_params import ListProductPricesParams - from .list_product_prices_request_price_usage_type import ListProductPricesRequestPriceUsageType - from .list_product_prices_response import ListProductPricesResponse - from .list_product_prices_response_params_price_usage_type import ListProductPricesResponseParamsPriceUsageType - from .search_billing_prices_params import SearchBillingPricesParams - from .search_billing_prices_request_tiers_mode import SearchBillingPricesRequestTiersMode - from .search_billing_prices_request_usage_type import SearchBillingPricesRequestUsageType - from .search_billing_prices_response import SearchBillingPricesResponse - from .search_billing_prices_response_params_tiers_mode import SearchBillingPricesResponseParamsTiersMode - from .search_billing_prices_response_params_usage_type import SearchBillingPricesResponseParamsUsageType from .upsert_billing_coupon_response import UpsertBillingCouponResponse from .upsert_billing_customer_response import UpsertBillingCustomerResponse from .upsert_billing_meter_response import UpsertBillingMeterResponse @@ -56,21 +38,17 @@ from .upsert_payment_method_response import UpsertPaymentMethodResponse _dynamic_imports: typing.Dict[str, str] = { "CountBillingProductsParams": ".count_billing_products_params", - "CountBillingProductsRequestPriceUsageType": ".count_billing_products_request_price_usage_type", "CountBillingProductsResponse": ".count_billing_products_response", - "CountBillingProductsResponseParamsPriceUsageType": ".count_billing_products_response_params_price_usage_type", "CountCustomersParams": ".count_customers_params", "CountCustomersResponse": ".count_customers_response", - "CreateBillingPriceRequestBodyBillingScheme": ".create_billing_price_request_body_billing_scheme", - "CreateBillingPriceRequestBodyTiersMode": ".create_billing_price_request_body_tiers_mode", - "CreateBillingPriceRequestBodyUsageType": ".create_billing_price_request_body_usage_type", - "CreateBillingSubscriptionRequestBodyTrialEndSetting": ".create_billing_subscription_request_body_trial_end_setting", "DeleteBillingProductResponse": ".delete_billing_product_response", "DeleteProductPriceResponse": ".delete_product_price_response", + "ListBillingPricesParams": ".list_billing_prices_params", + "ListBillingPricesResponse": ".list_billing_prices_response", + "ListBillingProductPricesParams": ".list_billing_product_prices_params", + "ListBillingProductPricesResponse": ".list_billing_product_prices_response", "ListBillingProductsParams": ".list_billing_products_params", - "ListBillingProductsRequestPriceUsageType": ".list_billing_products_request_price_usage_type", "ListBillingProductsResponse": ".list_billing_products_response", - "ListBillingProductsResponseParamsPriceUsageType": ".list_billing_products_response_params_price_usage_type", "ListCouponsParams": ".list_coupons_params", "ListCouponsResponse": ".list_coupons_response", "ListCustomersWithSubscriptionsParams": ".list_customers_with_subscriptions_params", @@ -81,16 +59,6 @@ "ListMetersResponse": ".list_meters_response", "ListPaymentMethodsParams": ".list_payment_methods_params", "ListPaymentMethodsResponse": ".list_payment_methods_response", - "ListProductPricesParams": ".list_product_prices_params", - "ListProductPricesRequestPriceUsageType": ".list_product_prices_request_price_usage_type", - "ListProductPricesResponse": ".list_product_prices_response", - "ListProductPricesResponseParamsPriceUsageType": ".list_product_prices_response_params_price_usage_type", - "SearchBillingPricesParams": ".search_billing_prices_params", - "SearchBillingPricesRequestTiersMode": ".search_billing_prices_request_tiers_mode", - "SearchBillingPricesRequestUsageType": ".search_billing_prices_request_usage_type", - "SearchBillingPricesResponse": ".search_billing_prices_response", - "SearchBillingPricesResponseParamsTiersMode": ".search_billing_prices_response_params_tiers_mode", - "SearchBillingPricesResponseParamsUsageType": ".search_billing_prices_response_params_usage_type", "UpsertBillingCouponResponse": ".upsert_billing_coupon_response", "UpsertBillingCustomerResponse": ".upsert_billing_customer_response", "UpsertBillingMeterResponse": ".upsert_billing_meter_response", @@ -125,21 +93,17 @@ def __dir__(): __all__ = [ "CountBillingProductsParams", - "CountBillingProductsRequestPriceUsageType", "CountBillingProductsResponse", - "CountBillingProductsResponseParamsPriceUsageType", "CountCustomersParams", "CountCustomersResponse", - "CreateBillingPriceRequestBodyBillingScheme", - "CreateBillingPriceRequestBodyTiersMode", - "CreateBillingPriceRequestBodyUsageType", - "CreateBillingSubscriptionRequestBodyTrialEndSetting", "DeleteBillingProductResponse", "DeleteProductPriceResponse", + "ListBillingPricesParams", + "ListBillingPricesResponse", + "ListBillingProductPricesParams", + "ListBillingProductPricesResponse", "ListBillingProductsParams", - "ListBillingProductsRequestPriceUsageType", "ListBillingProductsResponse", - "ListBillingProductsResponseParamsPriceUsageType", "ListCouponsParams", "ListCouponsResponse", "ListCustomersWithSubscriptionsParams", @@ -150,16 +114,6 @@ def __dir__(): "ListMetersResponse", "ListPaymentMethodsParams", "ListPaymentMethodsResponse", - "ListProductPricesParams", - "ListProductPricesRequestPriceUsageType", - "ListProductPricesResponse", - "ListProductPricesResponseParamsPriceUsageType", - "SearchBillingPricesParams", - "SearchBillingPricesRequestTiersMode", - "SearchBillingPricesRequestUsageType", - "SearchBillingPricesResponse", - "SearchBillingPricesResponseParamsTiersMode", - "SearchBillingPricesResponseParamsUsageType", "UpsertBillingCouponResponse", "UpsertBillingCustomerResponse", "UpsertBillingMeterResponse", diff --git a/src/schematic/billing/types/count_billing_products_params.py b/src/schematic/billing/types/count_billing_products_params.py index 3eb3435..839cda5 100644 --- a/src/schematic/billing/types/count_billing_products_params.py +++ b/src/schematic/billing/types/count_billing_products_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .count_billing_products_response_params_price_usage_type import CountBillingProductsResponseParamsPriceUsageType +from ...types.billing_price_usage_type import BillingPriceUsageType class CountBillingProductsParams(UniversalBaseModel): @@ -29,7 +29,7 @@ class CountBillingProductsParams(UniversalBaseModel): Page offset (default 0) """ - price_usage_type: typing.Optional[CountBillingProductsResponseParamsPriceUsageType] = None + price_usage_type: typing.Optional[BillingPriceUsageType] = None q: typing.Optional[str] = None with_one_time_charges: typing.Optional[bool] = pydantic.Field(default=None) """ diff --git a/src/schematic/billing/types/count_billing_products_request_price_usage_type.py b/src/schematic/billing/types/count_billing_products_request_price_usage_type.py deleted file mode 100644 index 1b27265..0000000 --- a/src/schematic/billing/types/count_billing_products_request_price_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountBillingProductsRequestPriceUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/billing/types/count_billing_products_response_params_price_usage_type.py b/src/schematic/billing/types/count_billing_products_response_params_price_usage_type.py deleted file mode 100644 index 0515275..0000000 --- a/src/schematic/billing/types/count_billing_products_response_params_price_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountBillingProductsResponseParamsPriceUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/billing/types/create_billing_price_request_body_billing_scheme.py b/src/schematic/billing/types/create_billing_price_request_body_billing_scheme.py deleted file mode 100644 index 50799fe..0000000 --- a/src/schematic/billing/types/create_billing_price_request_body_billing_scheme.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingPriceRequestBodyBillingScheme = typing.Union[typing.Literal["per_unit", "tiered"], typing.Any] diff --git a/src/schematic/billing/types/create_billing_price_request_body_tiers_mode.py b/src/schematic/billing/types/create_billing_price_request_body_tiers_mode.py deleted file mode 100644 index 5ae3485..0000000 --- a/src/schematic/billing/types/create_billing_price_request_body_tiers_mode.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingPriceRequestBodyTiersMode = typing.Union[typing.Literal["volume", "graduated"], typing.Any] diff --git a/src/schematic/billing/types/create_billing_price_request_body_usage_type.py b/src/schematic/billing/types/create_billing_price_request_body_usage_type.py deleted file mode 100644 index cb5e88a..0000000 --- a/src/schematic/billing/types/create_billing_price_request_body_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingPriceRequestBodyUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/billing/types/create_billing_subscription_request_body_trial_end_setting.py b/src/schematic/billing/types/create_billing_subscription_request_body_trial_end_setting.py deleted file mode 100644 index 1626cec..0000000 --- a/src/schematic/billing/types/create_billing_subscription_request_body_trial_end_setting.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingSubscriptionRequestBodyTrialEndSetting = typing.Union[typing.Literal["subscribe", "cancel"], typing.Any] diff --git a/src/schematic/billing/types/search_billing_prices_params.py b/src/schematic/billing/types/list_billing_prices_params.py similarity index 67% rename from src/schematic/billing/types/search_billing_prices_params.py rename to src/schematic/billing/types/list_billing_prices_params.py index b5d6026..2ffaa88 100644 --- a/src/schematic/billing/types/search_billing_prices_params.py +++ b/src/schematic/billing/types/list_billing_prices_params.py @@ -4,11 +4,11 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .search_billing_prices_response_params_tiers_mode import SearchBillingPricesResponseParamsTiersMode -from .search_billing_prices_response_params_usage_type import SearchBillingPricesResponseParamsUsageType +from ...types.billing_price_usage_type import BillingPriceUsageType +from ...types.billing_tiers_mode import BillingTiersMode -class SearchBillingPricesParams(UniversalBaseModel): +class ListBillingPricesParams(UniversalBaseModel): """ Input parameters """ @@ -25,6 +25,11 @@ class SearchBillingPricesParams(UniversalBaseModel): ids: typing.Optional[typing.List[str]] = None interval: typing.Optional[str] = None + is_active: typing.Optional[bool] = pydantic.Field(default=None) + """ + Filter for active prices on active products (defaults to true if not specified) + """ + limit: typing.Optional[int] = pydantic.Field(default=None) """ Page limit (default 100) @@ -37,15 +42,15 @@ class SearchBillingPricesParams(UniversalBaseModel): price: typing.Optional[int] = None product_id: typing.Optional[str] = None + product_ids: typing.Optional[typing.List[str]] = None q: typing.Optional[str] = None - requires_payment_method: typing.Optional[bool] = pydantic.Field(default=None) + tiers_mode: typing.Optional[BillingTiersMode] = None + usage_type: typing.Optional[BillingPriceUsageType] = None + with_meter: typing.Optional[bool] = pydantic.Field(default=None) """ - Filter for prices that require a payment method (inverse of ForInitialPlan) + Filter for prices with a meter """ - tiers_mode: typing.Optional[SearchBillingPricesResponseParamsTiersMode] = None - usage_type: typing.Optional[SearchBillingPricesResponseParamsUsageType] = None - if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 else: diff --git a/src/schematic/billing/types/search_billing_prices_response.py b/src/schematic/billing/types/list_billing_prices_response.py similarity index 76% rename from src/schematic/billing/types/search_billing_prices_response.py rename to src/schematic/billing/types/list_billing_prices_response.py index d0dd886..574f8cb 100644 --- a/src/schematic/billing/types/search_billing_prices_response.py +++ b/src/schematic/billing/types/list_billing_prices_response.py @@ -5,12 +5,12 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from ...types.billing_price_view import BillingPriceView -from .search_billing_prices_params import SearchBillingPricesParams +from .list_billing_prices_params import ListBillingPricesParams -class SearchBillingPricesResponse(UniversalBaseModel): +class ListBillingPricesResponse(UniversalBaseModel): data: typing.List[BillingPriceView] - params: SearchBillingPricesParams = pydantic.Field() + params: ListBillingPricesParams = pydantic.Field() """ Input parameters """ diff --git a/src/schematic/billing/types/list_product_prices_params.py b/src/schematic/billing/types/list_billing_product_prices_params.py similarity index 51% rename from src/schematic/billing/types/list_product_prices_params.py rename to src/schematic/billing/types/list_billing_product_prices_params.py index cfb7bdd..84b9ba8 100644 --- a/src/schematic/billing/types/list_product_prices_params.py +++ b/src/schematic/billing/types/list_billing_product_prices_params.py @@ -4,18 +4,30 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_product_prices_response_params_price_usage_type import ListProductPricesResponseParamsPriceUsageType +from ...types.billing_price_usage_type import BillingPriceUsageType +from ...types.billing_tiers_mode import BillingTiersMode -class ListProductPricesParams(UniversalBaseModel): +class ListBillingProductPricesParams(UniversalBaseModel): """ Input parameters """ + for_initial_plan: typing.Optional[bool] = pydantic.Field(default=None) + """ + Filter for prices valid for initial plans (free prices only) + """ + + for_trial_expiry_plan: typing.Optional[bool] = pydantic.Field(default=None) + """ + Filter for prices valid for trial expiry plans (free prices only) + """ + ids: typing.Optional[typing.List[str]] = None + interval: typing.Optional[str] = None is_active: typing.Optional[bool] = pydantic.Field(default=None) """ - Filter products that are active + Filter for active prices on active products (defaults to true if not specified) """ limit: typing.Optional[int] = pydantic.Field(default=None) @@ -23,32 +35,20 @@ class ListProductPricesParams(UniversalBaseModel): Page limit (default 100) """ - name: typing.Optional[str] = None offset: typing.Optional[int] = pydantic.Field(default=None) """ Page offset (default 0) """ - price_usage_type: typing.Optional[ListProductPricesResponseParamsPriceUsageType] = None + price: typing.Optional[int] = None + product_id: typing.Optional[str] = None + product_ids: typing.Optional[typing.List[str]] = None q: typing.Optional[str] = None - with_one_time_charges: typing.Optional[bool] = pydantic.Field(default=None) - """ - Filter products that are one time charges - """ - - with_prices_only: typing.Optional[bool] = pydantic.Field(default=None) - """ - Filter products that have prices - """ - - with_zero_price: typing.Optional[bool] = pydantic.Field(default=None) - """ - Filter products that have zero price for free subscription type - """ - - without_linked_to_plan: typing.Optional[bool] = pydantic.Field(default=None) + tiers_mode: typing.Optional[BillingTiersMode] = None + usage_type: typing.Optional[BillingPriceUsageType] = None + with_meter: typing.Optional[bool] = pydantic.Field(default=None) """ - Filter products that are not linked to any plan + Filter for prices with a meter """ if IS_PYDANTIC_V2: diff --git a/src/schematic/billing/types/list_billing_product_prices_response.py b/src/schematic/billing/types/list_billing_product_prices_response.py new file mode 100644 index 0000000..91ead5a --- /dev/null +++ b/src/schematic/billing/types/list_billing_product_prices_response.py @@ -0,0 +1,25 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ...types.billing_price_view import BillingPriceView +from .list_billing_product_prices_params import ListBillingProductPricesParams + + +class ListBillingProductPricesResponse(UniversalBaseModel): + data: typing.List[BillingPriceView] + params: ListBillingProductPricesParams = pydantic.Field() + """ + Input parameters + """ + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/billing/types/list_billing_products_params.py b/src/schematic/billing/types/list_billing_products_params.py index 59b41ca..c9d7e71 100644 --- a/src/schematic/billing/types/list_billing_products_params.py +++ b/src/schematic/billing/types/list_billing_products_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_billing_products_response_params_price_usage_type import ListBillingProductsResponseParamsPriceUsageType +from ...types.billing_price_usage_type import BillingPriceUsageType class ListBillingProductsParams(UniversalBaseModel): @@ -29,7 +29,7 @@ class ListBillingProductsParams(UniversalBaseModel): Page offset (default 0) """ - price_usage_type: typing.Optional[ListBillingProductsResponseParamsPriceUsageType] = None + price_usage_type: typing.Optional[BillingPriceUsageType] = None q: typing.Optional[str] = None with_one_time_charges: typing.Optional[bool] = pydantic.Field(default=None) """ diff --git a/src/schematic/billing/types/list_billing_products_request_price_usage_type.py b/src/schematic/billing/types/list_billing_products_request_price_usage_type.py deleted file mode 100644 index 12267aa..0000000 --- a/src/schematic/billing/types/list_billing_products_request_price_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListBillingProductsRequestPriceUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/billing/types/list_billing_products_response_params_price_usage_type.py b/src/schematic/billing/types/list_billing_products_response_params_price_usage_type.py deleted file mode 100644 index e95d659..0000000 --- a/src/schematic/billing/types/list_billing_products_response_params_price_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListBillingProductsResponseParamsPriceUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/billing/types/list_product_prices_request_price_usage_type.py b/src/schematic/billing/types/list_product_prices_request_price_usage_type.py deleted file mode 100644 index a81cbbc..0000000 --- a/src/schematic/billing/types/list_product_prices_request_price_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListProductPricesRequestPriceUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/billing/types/list_product_prices_response_params_price_usage_type.py b/src/schematic/billing/types/list_product_prices_response_params_price_usage_type.py deleted file mode 100644 index 6251a14..0000000 --- a/src/schematic/billing/types/list_product_prices_response_params_price_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListProductPricesResponseParamsPriceUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/billing/types/search_billing_prices_request_tiers_mode.py b/src/schematic/billing/types/search_billing_prices_request_tiers_mode.py deleted file mode 100644 index 35ed12d..0000000 --- a/src/schematic/billing/types/search_billing_prices_request_tiers_mode.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -SearchBillingPricesRequestTiersMode = typing.Union[typing.Literal["volume", "graduated"], typing.Any] diff --git a/src/schematic/billing/types/search_billing_prices_request_usage_type.py b/src/schematic/billing/types/search_billing_prices_request_usage_type.py deleted file mode 100644 index 1e63700..0000000 --- a/src/schematic/billing/types/search_billing_prices_request_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -SearchBillingPricesRequestUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/billing/types/search_billing_prices_response_params_tiers_mode.py b/src/schematic/billing/types/search_billing_prices_response_params_tiers_mode.py deleted file mode 100644 index 734091d..0000000 --- a/src/schematic/billing/types/search_billing_prices_response_params_tiers_mode.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -SearchBillingPricesResponseParamsTiersMode = typing.Union[typing.Literal["volume", "graduated"], typing.Any] diff --git a/src/schematic/billing/types/search_billing_prices_response_params_usage_type.py b/src/schematic/billing/types/search_billing_prices_response_params_usage_type.py deleted file mode 100644 index 50ea3d2..0000000 --- a/src/schematic/billing/types/search_billing_prices_response_params_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -SearchBillingPricesResponseParamsUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/checkout/__init__.py b/src/schematic/checkout/__init__.py index 8d5607a..1cd93a4 100644 --- a/src/schematic/checkout/__init__.py +++ b/src/schematic/checkout/__init__.py @@ -7,6 +7,7 @@ if typing.TYPE_CHECKING: from .types import ( + CancelSubscriptionResponse, CheckoutInternalResponse, GetCheckoutDataResponse, ManagePlanResponse, @@ -15,6 +16,7 @@ UpdateCustomerSubscriptionTrialEndResponse, ) _dynamic_imports: typing.Dict[str, str] = { + "CancelSubscriptionResponse": ".types", "CheckoutInternalResponse": ".types", "GetCheckoutDataResponse": ".types", "ManagePlanResponse": ".types", @@ -46,6 +48,7 @@ def __dir__(): __all__ = [ + "CancelSubscriptionResponse", "CheckoutInternalResponse", "GetCheckoutDataResponse", "ManagePlanResponse", diff --git a/src/schematic/checkout/client.py b/src/schematic/checkout/client.py index 196cef8..89cf3f9 100644 --- a/src/schematic/checkout/client.py +++ b/src/schematic/checkout/client.py @@ -10,6 +10,7 @@ from ..types.update_credit_bundle_request_body import UpdateCreditBundleRequestBody from ..types.update_pay_in_advance_request_body import UpdatePayInAdvanceRequestBody from .raw_client import AsyncRawCheckoutClient, RawCheckoutClient +from .types.cancel_subscription_response import CancelSubscriptionResponse from .types.checkout_internal_response import CheckoutInternalResponse from .types.get_checkout_data_response import GetCheckoutDataResponse from .types.manage_plan_response import ManagePlanResponse @@ -279,9 +280,12 @@ def manage_plan( pay_in_advance_entitlements: typing.Sequence[UpdatePayInAdvanceRequestBody], base_plan_id: typing.Optional[str] = OMIT, base_plan_price_id: typing.Optional[str] = OMIT, + cancel_immediately: typing.Optional[bool] = OMIT, coupon_external_id: typing.Optional[str] = OMIT, payment_method_external_id: typing.Optional[str] = OMIT, promo_code: typing.Optional[str] = OMIT, + prorate: typing.Optional[bool] = OMIT, + trial_end: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> ManagePlanResponse: """ @@ -299,12 +303,20 @@ def manage_plan( base_plan_price_id : typing.Optional[str] + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + coupon_external_id : typing.Optional[str] payment_method_external_id : typing.Optional[str] promo_code : typing.Optional[str] + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + + trial_end : typing.Optional[dt.datetime] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -353,9 +365,12 @@ def manage_plan( pay_in_advance_entitlements=pay_in_advance_entitlements, base_plan_id=base_plan_id, base_plan_price_id=base_plan_price_id, + cancel_immediately=cancel_immediately, coupon_external_id=coupon_external_id, payment_method_external_id=payment_method_external_id, promo_code=promo_code, + prorate=prorate, + trial_end=trial_end, request_options=request_options, ) return _response.data @@ -369,9 +384,12 @@ def preview_manage_plan( pay_in_advance_entitlements: typing.Sequence[UpdatePayInAdvanceRequestBody], base_plan_id: typing.Optional[str] = OMIT, base_plan_price_id: typing.Optional[str] = OMIT, + cancel_immediately: typing.Optional[bool] = OMIT, coupon_external_id: typing.Optional[str] = OMIT, payment_method_external_id: typing.Optional[str] = OMIT, promo_code: typing.Optional[str] = OMIT, + prorate: typing.Optional[bool] = OMIT, + trial_end: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> PreviewManagePlanResponse: """ @@ -389,12 +407,20 @@ def preview_manage_plan( base_plan_price_id : typing.Optional[str] + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + coupon_external_id : typing.Optional[str] payment_method_external_id : typing.Optional[str] promo_code : typing.Optional[str] + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + + trial_end : typing.Optional[dt.datetime] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -443,9 +469,58 @@ def preview_manage_plan( pay_in_advance_entitlements=pay_in_advance_entitlements, base_plan_id=base_plan_id, base_plan_price_id=base_plan_price_id, + cancel_immediately=cancel_immediately, coupon_external_id=coupon_external_id, payment_method_external_id=payment_method_external_id, promo_code=promo_code, + prorate=prorate, + trial_end=trial_end, + request_options=request_options, + ) + return _response.data + + def cancel_subscription( + self, + *, + company_id: str, + cancel_immediately: typing.Optional[bool] = OMIT, + prorate: typing.Optional[bool] = OMIT, + request_options: typing.Optional[RequestOptions] = None, + ) -> CancelSubscriptionResponse: + """ + Parameters + ---------- + company_id : str + + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Defaults to true. + + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Defaults to true. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + CancelSubscriptionResponse + OK + + Examples + -------- + from schematic import Schematic + + client = Schematic( + api_key="YOUR_API_KEY", + ) + client.checkout.cancel_subscription( + company_id="company_id", + ) + """ + _response = self._raw_client.cancel_subscription( + company_id=company_id, + cancel_immediately=cancel_immediately, + prorate=prorate, request_options=request_options, ) return _response.data @@ -772,9 +847,12 @@ async def manage_plan( pay_in_advance_entitlements: typing.Sequence[UpdatePayInAdvanceRequestBody], base_plan_id: typing.Optional[str] = OMIT, base_plan_price_id: typing.Optional[str] = OMIT, + cancel_immediately: typing.Optional[bool] = OMIT, coupon_external_id: typing.Optional[str] = OMIT, payment_method_external_id: typing.Optional[str] = OMIT, promo_code: typing.Optional[str] = OMIT, + prorate: typing.Optional[bool] = OMIT, + trial_end: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> ManagePlanResponse: """ @@ -792,12 +870,20 @@ async def manage_plan( base_plan_price_id : typing.Optional[str] + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + coupon_external_id : typing.Optional[str] payment_method_external_id : typing.Optional[str] promo_code : typing.Optional[str] + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + + trial_end : typing.Optional[dt.datetime] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -854,9 +940,12 @@ async def main() -> None: pay_in_advance_entitlements=pay_in_advance_entitlements, base_plan_id=base_plan_id, base_plan_price_id=base_plan_price_id, + cancel_immediately=cancel_immediately, coupon_external_id=coupon_external_id, payment_method_external_id=payment_method_external_id, promo_code=promo_code, + prorate=prorate, + trial_end=trial_end, request_options=request_options, ) return _response.data @@ -870,9 +959,12 @@ async def preview_manage_plan( pay_in_advance_entitlements: typing.Sequence[UpdatePayInAdvanceRequestBody], base_plan_id: typing.Optional[str] = OMIT, base_plan_price_id: typing.Optional[str] = OMIT, + cancel_immediately: typing.Optional[bool] = OMIT, coupon_external_id: typing.Optional[str] = OMIT, payment_method_external_id: typing.Optional[str] = OMIT, promo_code: typing.Optional[str] = OMIT, + prorate: typing.Optional[bool] = OMIT, + trial_end: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> PreviewManagePlanResponse: """ @@ -890,12 +982,20 @@ async def preview_manage_plan( base_plan_price_id : typing.Optional[str] + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + coupon_external_id : typing.Optional[str] payment_method_external_id : typing.Optional[str] promo_code : typing.Optional[str] + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + + trial_end : typing.Optional[dt.datetime] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -952,9 +1052,66 @@ async def main() -> None: pay_in_advance_entitlements=pay_in_advance_entitlements, base_plan_id=base_plan_id, base_plan_price_id=base_plan_price_id, + cancel_immediately=cancel_immediately, coupon_external_id=coupon_external_id, payment_method_external_id=payment_method_external_id, promo_code=promo_code, + prorate=prorate, + trial_end=trial_end, + request_options=request_options, + ) + return _response.data + + async def cancel_subscription( + self, + *, + company_id: str, + cancel_immediately: typing.Optional[bool] = OMIT, + prorate: typing.Optional[bool] = OMIT, + request_options: typing.Optional[RequestOptions] = None, + ) -> CancelSubscriptionResponse: + """ + Parameters + ---------- + company_id : str + + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Defaults to true. + + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Defaults to true. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + CancelSubscriptionResponse + OK + + Examples + -------- + import asyncio + + from schematic import AsyncSchematic + + client = AsyncSchematic( + api_key="YOUR_API_KEY", + ) + + + async def main() -> None: + await client.checkout.cancel_subscription( + company_id="company_id", + ) + + + asyncio.run(main()) + """ + _response = await self._raw_client.cancel_subscription( + company_id=company_id, + cancel_immediately=cancel_immediately, + prorate=prorate, request_options=request_options, ) return _response.data diff --git a/src/schematic/checkout/raw_client.py b/src/schematic/checkout/raw_client.py index 181d39f..c8b9920 100644 --- a/src/schematic/checkout/raw_client.py +++ b/src/schematic/checkout/raw_client.py @@ -21,6 +21,7 @@ from ..types.update_add_on_request_body import UpdateAddOnRequestBody from ..types.update_credit_bundle_request_body import UpdateCreditBundleRequestBody from ..types.update_pay_in_advance_request_body import UpdatePayInAdvanceRequestBody +from .types.cancel_subscription_response import CancelSubscriptionResponse from .types.checkout_internal_response import CheckoutInternalResponse from .types.get_checkout_data_response import GetCheckoutDataResponse from .types.manage_plan_response import ManagePlanResponse @@ -448,9 +449,12 @@ def manage_plan( pay_in_advance_entitlements: typing.Sequence[UpdatePayInAdvanceRequestBody], base_plan_id: typing.Optional[str] = OMIT, base_plan_price_id: typing.Optional[str] = OMIT, + cancel_immediately: typing.Optional[bool] = OMIT, coupon_external_id: typing.Optional[str] = OMIT, payment_method_external_id: typing.Optional[str] = OMIT, promo_code: typing.Optional[str] = OMIT, + prorate: typing.Optional[bool] = OMIT, + trial_end: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[ManagePlanResponse]: """ @@ -468,12 +472,20 @@ def manage_plan( base_plan_price_id : typing.Optional[str] + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + coupon_external_id : typing.Optional[str] payment_method_external_id : typing.Optional[str] promo_code : typing.Optional[str] + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + + trial_end : typing.Optional[dt.datetime] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -491,6 +503,7 @@ def manage_plan( ), "base_plan_id": base_plan_id, "base_plan_price_id": base_plan_price_id, + "cancel_immediately": cancel_immediately, "company_id": company_id, "coupon_external_id": coupon_external_id, "credit_bundles": convert_and_respect_annotation_metadata( @@ -503,6 +516,8 @@ def manage_plan( ), "payment_method_external_id": payment_method_external_id, "promo_code": promo_code, + "prorate": prorate, + "trial_end": trial_end, }, headers={ "content-type": "application/json", @@ -593,9 +608,12 @@ def preview_manage_plan( pay_in_advance_entitlements: typing.Sequence[UpdatePayInAdvanceRequestBody], base_plan_id: typing.Optional[str] = OMIT, base_plan_price_id: typing.Optional[str] = OMIT, + cancel_immediately: typing.Optional[bool] = OMIT, coupon_external_id: typing.Optional[str] = OMIT, payment_method_external_id: typing.Optional[str] = OMIT, promo_code: typing.Optional[str] = OMIT, + prorate: typing.Optional[bool] = OMIT, + trial_end: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[PreviewManagePlanResponse]: """ @@ -613,12 +631,20 @@ def preview_manage_plan( base_plan_price_id : typing.Optional[str] + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + coupon_external_id : typing.Optional[str] payment_method_external_id : typing.Optional[str] promo_code : typing.Optional[str] + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + + trial_end : typing.Optional[dt.datetime] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -636,6 +662,7 @@ def preview_manage_plan( ), "base_plan_id": base_plan_id, "base_plan_price_id": base_plan_price_id, + "cancel_immediately": cancel_immediately, "company_id": company_id, "coupon_external_id": coupon_external_id, "credit_bundles": convert_and_respect_annotation_metadata( @@ -648,6 +675,8 @@ def preview_manage_plan( ), "payment_method_external_id": payment_method_external_id, "promo_code": promo_code, + "prorate": prorate, + "trial_end": trial_end, }, headers={ "content-type": "application/json", @@ -729,6 +758,121 @@ def preview_manage_plan( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) + def cancel_subscription( + self, + *, + company_id: str, + cancel_immediately: typing.Optional[bool] = OMIT, + prorate: typing.Optional[bool] = OMIT, + request_options: typing.Optional[RequestOptions] = None, + ) -> HttpResponse[CancelSubscriptionResponse]: + """ + Parameters + ---------- + company_id : str + + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Defaults to true. + + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Defaults to true. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + HttpResponse[CancelSubscriptionResponse] + OK + """ + _response = self._client_wrapper.httpx_client.request( + "manage-plan/subscription/cancel", + method="POST", + json={ + "cancel_immediately": cancel_immediately, + "company_id": company_id, + "prorate": prorate, + }, + headers={ + "content-type": "application/json", + }, + request_options=request_options, + omit=OMIT, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + CancelSubscriptionResponse, + parse_obj_as( + type_=CancelSubscriptionResponse, # type: ignore + object_=_response.json(), + ), + ) + return HttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 401: + raise UnauthorizedError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 403: + raise ForbiddenError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 500: + raise InternalServerError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.text + ) + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response_json + ) + def update_customer_subscription_trial_end( self, subscription_id: str, @@ -1255,9 +1399,12 @@ async def manage_plan( pay_in_advance_entitlements: typing.Sequence[UpdatePayInAdvanceRequestBody], base_plan_id: typing.Optional[str] = OMIT, base_plan_price_id: typing.Optional[str] = OMIT, + cancel_immediately: typing.Optional[bool] = OMIT, coupon_external_id: typing.Optional[str] = OMIT, payment_method_external_id: typing.Optional[str] = OMIT, promo_code: typing.Optional[str] = OMIT, + prorate: typing.Optional[bool] = OMIT, + trial_end: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[ManagePlanResponse]: """ @@ -1275,12 +1422,20 @@ async def manage_plan( base_plan_price_id : typing.Optional[str] + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + coupon_external_id : typing.Optional[str] payment_method_external_id : typing.Optional[str] promo_code : typing.Optional[str] + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + + trial_end : typing.Optional[dt.datetime] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1298,6 +1453,7 @@ async def manage_plan( ), "base_plan_id": base_plan_id, "base_plan_price_id": base_plan_price_id, + "cancel_immediately": cancel_immediately, "company_id": company_id, "coupon_external_id": coupon_external_id, "credit_bundles": convert_and_respect_annotation_metadata( @@ -1310,6 +1466,8 @@ async def manage_plan( ), "payment_method_external_id": payment_method_external_id, "promo_code": promo_code, + "prorate": prorate, + "trial_end": trial_end, }, headers={ "content-type": "application/json", @@ -1400,9 +1558,12 @@ async def preview_manage_plan( pay_in_advance_entitlements: typing.Sequence[UpdatePayInAdvanceRequestBody], base_plan_id: typing.Optional[str] = OMIT, base_plan_price_id: typing.Optional[str] = OMIT, + cancel_immediately: typing.Optional[bool] = OMIT, coupon_external_id: typing.Optional[str] = OMIT, payment_method_external_id: typing.Optional[str] = OMIT, promo_code: typing.Optional[str] = OMIT, + prorate: typing.Optional[bool] = OMIT, + trial_end: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[PreviewManagePlanResponse]: """ @@ -1420,12 +1581,20 @@ async def preview_manage_plan( base_plan_price_id : typing.Optional[str] + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + coupon_external_id : typing.Optional[str] payment_method_external_id : typing.Optional[str] promo_code : typing.Optional[str] + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + + trial_end : typing.Optional[dt.datetime] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1443,6 +1612,7 @@ async def preview_manage_plan( ), "base_plan_id": base_plan_id, "base_plan_price_id": base_plan_price_id, + "cancel_immediately": cancel_immediately, "company_id": company_id, "coupon_external_id": coupon_external_id, "credit_bundles": convert_and_respect_annotation_metadata( @@ -1455,6 +1625,8 @@ async def preview_manage_plan( ), "payment_method_external_id": payment_method_external_id, "promo_code": promo_code, + "prorate": prorate, + "trial_end": trial_end, }, headers={ "content-type": "application/json", @@ -1536,6 +1708,121 @@ async def preview_manage_plan( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) + async def cancel_subscription( + self, + *, + company_id: str, + cancel_immediately: typing.Optional[bool] = OMIT, + prorate: typing.Optional[bool] = OMIT, + request_options: typing.Optional[RequestOptions] = None, + ) -> AsyncHttpResponse[CancelSubscriptionResponse]: + """ + Parameters + ---------- + company_id : str + + cancel_immediately : typing.Optional[bool] + If false, subscription cancels at period end. Defaults to true. + + prorate : typing.Optional[bool] + If true and cancel_immediately is true, issue prorated credit. Defaults to true. + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + AsyncHttpResponse[CancelSubscriptionResponse] + OK + """ + _response = await self._client_wrapper.httpx_client.request( + "manage-plan/subscription/cancel", + method="POST", + json={ + "cancel_immediately": cancel_immediately, + "company_id": company_id, + "prorate": prorate, + }, + headers={ + "content-type": "application/json", + }, + request_options=request_options, + omit=OMIT, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + CancelSubscriptionResponse, + parse_obj_as( + type_=CancelSubscriptionResponse, # type: ignore + object_=_response.json(), + ), + ) + return AsyncHttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 401: + raise UnauthorizedError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 403: + raise ForbiddenError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 500: + raise InternalServerError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.text + ) + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response_json + ) + async def update_customer_subscription_trial_end( self, subscription_id: str, diff --git a/src/schematic/checkout/types/__init__.py b/src/schematic/checkout/types/__init__.py index 68a6253..7a38426 100644 --- a/src/schematic/checkout/types/__init__.py +++ b/src/schematic/checkout/types/__init__.py @@ -6,6 +6,7 @@ from importlib import import_module if typing.TYPE_CHECKING: + from .cancel_subscription_response import CancelSubscriptionResponse from .checkout_internal_response import CheckoutInternalResponse from .get_checkout_data_response import GetCheckoutDataResponse from .manage_plan_response import ManagePlanResponse @@ -13,6 +14,7 @@ from .preview_manage_plan_response import PreviewManagePlanResponse from .update_customer_subscription_trial_end_response import UpdateCustomerSubscriptionTrialEndResponse _dynamic_imports: typing.Dict[str, str] = { + "CancelSubscriptionResponse": ".cancel_subscription_response", "CheckoutInternalResponse": ".checkout_internal_response", "GetCheckoutDataResponse": ".get_checkout_data_response", "ManagePlanResponse": ".manage_plan_response", @@ -44,6 +46,7 @@ def __dir__(): __all__ = [ + "CancelSubscriptionResponse", "CheckoutInternalResponse", "GetCheckoutDataResponse", "ManagePlanResponse", diff --git a/src/schematic/billing/types/list_product_prices_response.py b/src/schematic/checkout/types/cancel_subscription_response.py similarity index 63% rename from src/schematic/billing/types/list_product_prices_response.py rename to src/schematic/checkout/types/cancel_subscription_response.py index b975e82..6563b02 100644 --- a/src/schematic/billing/types/list_product_prices_response.py +++ b/src/schematic/checkout/types/cancel_subscription_response.py @@ -4,13 +4,12 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from ...types.billing_price_response_data import BillingPriceResponseData -from .list_product_prices_params import ListProductPricesParams +from ...types.manage_plan_response_response_data import ManagePlanResponseResponseData -class ListProductPricesResponse(UniversalBaseModel): - data: typing.List[BillingPriceResponseData] - params: ListProductPricesParams = pydantic.Field() +class CancelSubscriptionResponse(UniversalBaseModel): + data: ManagePlanResponseResponseData + params: typing.Dict[str, typing.Optional[typing.Any]] = pydantic.Field() """ Input parameters """ diff --git a/src/schematic/companies/__init__.py b/src/schematic/companies/__init__.py index d290391..aa72266 100644 --- a/src/schematic/companies/__init__.py +++ b/src/schematic/companies/__init__.py @@ -8,28 +8,18 @@ if typing.TYPE_CHECKING: from .types import ( CountCompaniesForAdvancedFilterParams, - CountCompaniesForAdvancedFilterRequestSortOrderDirection, CountCompaniesForAdvancedFilterResponse, - CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection, CountCompaniesParams, CountCompaniesResponse, CountEntityKeyDefinitionsParams, - CountEntityKeyDefinitionsRequestEntityType, CountEntityKeyDefinitionsResponse, - CountEntityKeyDefinitionsResponseParamsEntityType, CountEntityTraitDefinitionsParams, - CountEntityTraitDefinitionsRequestEntityType, - CountEntityTraitDefinitionsRequestTraitType, CountEntityTraitDefinitionsResponse, - CountEntityTraitDefinitionsResponseParamsEntityType, - CountEntityTraitDefinitionsResponseParamsTraitType, CountPlanTraitsParams, CountPlanTraitsResponse, CountUsersParams, CountUsersResponse, CreateCompanyResponse, - CreateEntityTraitDefinitionRequestBodyEntityType, - CreateEntityTraitDefinitionRequestBodyTraitType, CreatePlanTraitResponse, CreateUserResponse, DeleteCompanyByKeysResponse, @@ -53,23 +43,15 @@ GetPlanTraitResponse, GetUserResponse, ListCompaniesForAdvancedFilterParams, - ListCompaniesForAdvancedFilterRequestSortOrderDirection, ListCompaniesForAdvancedFilterResponse, - ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection, ListCompaniesParams, ListCompaniesResponse, ListCompanyMembershipsParams, ListCompanyMembershipsResponse, ListEntityKeyDefinitionsParams, - ListEntityKeyDefinitionsRequestEntityType, ListEntityKeyDefinitionsResponse, - ListEntityKeyDefinitionsResponseParamsEntityType, ListEntityTraitDefinitionsParams, - ListEntityTraitDefinitionsRequestEntityType, - ListEntityTraitDefinitionsRequestTraitType, ListEntityTraitDefinitionsResponse, - ListEntityTraitDefinitionsResponseParamsEntityType, - ListEntityTraitDefinitionsResponseParamsTraitType, ListPlanChangesParams, ListPlanChangesResponse, ListPlanTraitsParams, @@ -80,7 +62,6 @@ LookupCompanyResponse, LookupUserParams, LookupUserResponse, - UpdateEntityTraitDefinitionRequestBodyTraitType, UpdateEntityTraitDefinitionResponse, UpdatePlanTraitResponse, UpdatePlanTraitsBulkResponse, @@ -91,28 +72,18 @@ ) _dynamic_imports: typing.Dict[str, str] = { "CountCompaniesForAdvancedFilterParams": ".types", - "CountCompaniesForAdvancedFilterRequestSortOrderDirection": ".types", "CountCompaniesForAdvancedFilterResponse": ".types", - "CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection": ".types", "CountCompaniesParams": ".types", "CountCompaniesResponse": ".types", "CountEntityKeyDefinitionsParams": ".types", - "CountEntityKeyDefinitionsRequestEntityType": ".types", "CountEntityKeyDefinitionsResponse": ".types", - "CountEntityKeyDefinitionsResponseParamsEntityType": ".types", "CountEntityTraitDefinitionsParams": ".types", - "CountEntityTraitDefinitionsRequestEntityType": ".types", - "CountEntityTraitDefinitionsRequestTraitType": ".types", "CountEntityTraitDefinitionsResponse": ".types", - "CountEntityTraitDefinitionsResponseParamsEntityType": ".types", - "CountEntityTraitDefinitionsResponseParamsTraitType": ".types", "CountPlanTraitsParams": ".types", "CountPlanTraitsResponse": ".types", "CountUsersParams": ".types", "CountUsersResponse": ".types", "CreateCompanyResponse": ".types", - "CreateEntityTraitDefinitionRequestBodyEntityType": ".types", - "CreateEntityTraitDefinitionRequestBodyTraitType": ".types", "CreatePlanTraitResponse": ".types", "CreateUserResponse": ".types", "DeleteCompanyByKeysResponse": ".types", @@ -136,23 +107,15 @@ "GetPlanTraitResponse": ".types", "GetUserResponse": ".types", "ListCompaniesForAdvancedFilterParams": ".types", - "ListCompaniesForAdvancedFilterRequestSortOrderDirection": ".types", "ListCompaniesForAdvancedFilterResponse": ".types", - "ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection": ".types", "ListCompaniesParams": ".types", "ListCompaniesResponse": ".types", "ListCompanyMembershipsParams": ".types", "ListCompanyMembershipsResponse": ".types", "ListEntityKeyDefinitionsParams": ".types", - "ListEntityKeyDefinitionsRequestEntityType": ".types", "ListEntityKeyDefinitionsResponse": ".types", - "ListEntityKeyDefinitionsResponseParamsEntityType": ".types", "ListEntityTraitDefinitionsParams": ".types", - "ListEntityTraitDefinitionsRequestEntityType": ".types", - "ListEntityTraitDefinitionsRequestTraitType": ".types", "ListEntityTraitDefinitionsResponse": ".types", - "ListEntityTraitDefinitionsResponseParamsEntityType": ".types", - "ListEntityTraitDefinitionsResponseParamsTraitType": ".types", "ListPlanChangesParams": ".types", "ListPlanChangesResponse": ".types", "ListPlanTraitsParams": ".types", @@ -163,7 +126,6 @@ "LookupCompanyResponse": ".types", "LookupUserParams": ".types", "LookupUserResponse": ".types", - "UpdateEntityTraitDefinitionRequestBodyTraitType": ".types", "UpdateEntityTraitDefinitionResponse": ".types", "UpdatePlanTraitResponse": ".types", "UpdatePlanTraitsBulkResponse": ".types", @@ -197,28 +159,18 @@ def __dir__(): __all__ = [ "CountCompaniesForAdvancedFilterParams", - "CountCompaniesForAdvancedFilterRequestSortOrderDirection", "CountCompaniesForAdvancedFilterResponse", - "CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection", "CountCompaniesParams", "CountCompaniesResponse", "CountEntityKeyDefinitionsParams", - "CountEntityKeyDefinitionsRequestEntityType", "CountEntityKeyDefinitionsResponse", - "CountEntityKeyDefinitionsResponseParamsEntityType", "CountEntityTraitDefinitionsParams", - "CountEntityTraitDefinitionsRequestEntityType", - "CountEntityTraitDefinitionsRequestTraitType", "CountEntityTraitDefinitionsResponse", - "CountEntityTraitDefinitionsResponseParamsEntityType", - "CountEntityTraitDefinitionsResponseParamsTraitType", "CountPlanTraitsParams", "CountPlanTraitsResponse", "CountUsersParams", "CountUsersResponse", "CreateCompanyResponse", - "CreateEntityTraitDefinitionRequestBodyEntityType", - "CreateEntityTraitDefinitionRequestBodyTraitType", "CreatePlanTraitResponse", "CreateUserResponse", "DeleteCompanyByKeysResponse", @@ -242,23 +194,15 @@ def __dir__(): "GetPlanTraitResponse", "GetUserResponse", "ListCompaniesForAdvancedFilterParams", - "ListCompaniesForAdvancedFilterRequestSortOrderDirection", "ListCompaniesForAdvancedFilterResponse", - "ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection", "ListCompaniesParams", "ListCompaniesResponse", "ListCompanyMembershipsParams", "ListCompanyMembershipsResponse", "ListEntityKeyDefinitionsParams", - "ListEntityKeyDefinitionsRequestEntityType", "ListEntityKeyDefinitionsResponse", - "ListEntityKeyDefinitionsResponseParamsEntityType", "ListEntityTraitDefinitionsParams", - "ListEntityTraitDefinitionsRequestEntityType", - "ListEntityTraitDefinitionsRequestTraitType", "ListEntityTraitDefinitionsResponse", - "ListEntityTraitDefinitionsResponseParamsEntityType", - "ListEntityTraitDefinitionsResponseParamsTraitType", "ListPlanChangesParams", "ListPlanChangesResponse", "ListPlanTraitsParams", @@ -269,7 +213,6 @@ def __dir__(): "LookupCompanyResponse", "LookupUserParams", "LookupUserResponse", - "UpdateEntityTraitDefinitionRequestBodyTraitType", "UpdateEntityTraitDefinitionResponse", "UpdatePlanTraitResponse", "UpdatePlanTraitsBulkResponse", diff --git a/src/schematic/companies/client.py b/src/schematic/companies/client.py index ccda99d..53495fa 100644 --- a/src/schematic/companies/client.py +++ b/src/schematic/companies/client.py @@ -5,27 +5,20 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions +from ..types.entity_type import EntityType +from ..types.sort_direction import SortDirection +from ..types.subscription_status import SubscriptionStatus +from ..types.subscription_type import SubscriptionType +from ..types.trait_type import TraitType from ..types.update_plan_trait_trait_request_body import UpdatePlanTraitTraitRequestBody from .raw_client import AsyncRawCompaniesClient, RawCompaniesClient -from .types.count_companies_for_advanced_filter_request_sort_order_direction import ( - CountCompaniesForAdvancedFilterRequestSortOrderDirection, -) from .types.count_companies_for_advanced_filter_response import CountCompaniesForAdvancedFilterResponse from .types.count_companies_response import CountCompaniesResponse -from .types.count_entity_key_definitions_request_entity_type import CountEntityKeyDefinitionsRequestEntityType from .types.count_entity_key_definitions_response import CountEntityKeyDefinitionsResponse -from .types.count_entity_trait_definitions_request_entity_type import CountEntityTraitDefinitionsRequestEntityType -from .types.count_entity_trait_definitions_request_trait_type import CountEntityTraitDefinitionsRequestTraitType from .types.count_entity_trait_definitions_response import CountEntityTraitDefinitionsResponse from .types.count_plan_traits_response import CountPlanTraitsResponse from .types.count_users_response import CountUsersResponse from .types.create_company_response import CreateCompanyResponse -from .types.create_entity_trait_definition_request_body_entity_type import ( - CreateEntityTraitDefinitionRequestBodyEntityType, -) -from .types.create_entity_trait_definition_request_body_trait_type import ( - CreateEntityTraitDefinitionRequestBodyTraitType, -) from .types.create_plan_trait_response import CreatePlanTraitResponse from .types.create_user_response import CreateUserResponse from .types.delete_company_by_keys_response import DeleteCompanyByKeysResponse @@ -44,25 +37,16 @@ from .types.get_plan_change_response import GetPlanChangeResponse from .types.get_plan_trait_response import GetPlanTraitResponse from .types.get_user_response import GetUserResponse -from .types.list_companies_for_advanced_filter_request_sort_order_direction import ( - ListCompaniesForAdvancedFilterRequestSortOrderDirection, -) from .types.list_companies_for_advanced_filter_response import ListCompaniesForAdvancedFilterResponse from .types.list_companies_response import ListCompaniesResponse from .types.list_company_memberships_response import ListCompanyMembershipsResponse -from .types.list_entity_key_definitions_request_entity_type import ListEntityKeyDefinitionsRequestEntityType from .types.list_entity_key_definitions_response import ListEntityKeyDefinitionsResponse -from .types.list_entity_trait_definitions_request_entity_type import ListEntityTraitDefinitionsRequestEntityType -from .types.list_entity_trait_definitions_request_trait_type import ListEntityTraitDefinitionsRequestTraitType from .types.list_entity_trait_definitions_response import ListEntityTraitDefinitionsResponse from .types.list_plan_changes_response import ListPlanChangesResponse from .types.list_plan_traits_response import ListPlanTraitsResponse from .types.list_users_response import ListUsersResponse from .types.lookup_company_response import LookupCompanyResponse from .types.lookup_user_response import LookupUserResponse -from .types.update_entity_trait_definition_request_body_trait_type import ( - UpdateEntityTraitDefinitionRequestBodyTraitType, -) from .types.update_entity_trait_definition_response import UpdateEntityTraitDefinitionResponse from .types.update_plan_trait_response import UpdatePlanTraitResponse from .types.update_plan_traits_bulk_response import UpdatePlanTraitsBulkResponse @@ -387,14 +371,16 @@ def count_companies_for_advanced_filter( plan_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, feature_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_type_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_statuses: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_types: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + subscription_statuses: typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] + ] = None, + subscription_types: typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] = None, monetized_subscriptions: typing.Optional[bool] = None, q: typing.Optional[str] = None, without_plan: typing.Optional[bool] = None, without_subscription: typing.Optional[bool] = None, sort_order_column: typing.Optional[str] = None, - sort_order_direction: typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection] = None, + sort_order_direction: typing.Optional[SortDirection] = None, display_properties: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -415,10 +401,10 @@ def count_companies_for_advanced_filter( credit_type_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] Filter companies by one or more credit type IDs (each ID starts with bcrd_) - subscription_statuses : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_statuses : typing.Optional[typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]]] Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) - subscription_types : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_types : typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] Filter companies by one or more subscription types (paid, free, trial) monetized_subscriptions : typing.Optional[bool] @@ -436,7 +422,7 @@ def count_companies_for_advanced_filter( sort_order_column : typing.Optional[str] Column to sort by (e.g. name, created_at, last_seen_at) - sort_order_direction : typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection] + sort_order_direction : typing.Optional[SortDirection] Direction to sort by (asc or desc) display_properties : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -590,14 +576,16 @@ def list_companies_for_advanced_filter( plan_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, feature_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_type_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_statuses: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_types: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + subscription_statuses: typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] + ] = None, + subscription_types: typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] = None, monetized_subscriptions: typing.Optional[bool] = None, q: typing.Optional[str] = None, without_plan: typing.Optional[bool] = None, without_subscription: typing.Optional[bool] = None, sort_order_column: typing.Optional[str] = None, - sort_order_direction: typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection] = None, + sort_order_direction: typing.Optional[SortDirection] = None, display_properties: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -618,10 +606,10 @@ def list_companies_for_advanced_filter( credit_type_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] Filter companies by one or more credit type IDs (each ID starts with bcrd_) - subscription_statuses : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_statuses : typing.Optional[typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]]] Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) - subscription_types : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_types : typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] Filter companies by one or more subscription types (paid, free, trial) monetized_subscriptions : typing.Optional[bool] @@ -639,7 +627,7 @@ def list_companies_for_advanced_filter( sort_order_column : typing.Optional[str] Column to sort by (e.g. name, created_at, last_seen_at) - sort_order_direction : typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection] + sort_order_direction : typing.Optional[SortDirection] Direction to sort by (asc or desc) display_properties : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -996,7 +984,7 @@ def upsert_company_trait( def list_entity_key_definitions( self, *, - entity_type: typing.Optional[ListEntityKeyDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -1006,7 +994,7 @@ def list_entity_key_definitions( """ Parameters ---------- - entity_type : typing.Optional[ListEntityKeyDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -1048,7 +1036,7 @@ def list_entity_key_definitions( def count_entity_key_definitions( self, *, - entity_type: typing.Optional[CountEntityKeyDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -1058,7 +1046,7 @@ def count_entity_key_definitions( """ Parameters ---------- - entity_type : typing.Optional[CountEntityKeyDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -1100,10 +1088,11 @@ def count_entity_key_definitions( def list_entity_trait_definitions( self, *, - entity_type: typing.Optional[ListEntityTraitDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - trait_type: typing.Optional[ListEntityTraitDefinitionsRequestTraitType] = None, + trait_type: typing.Optional[TraitType] = None, + trait_types: typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -1111,13 +1100,15 @@ def list_entity_trait_definitions( """ Parameters ---------- - entity_type : typing.Optional[ListEntityTraitDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] q : typing.Optional[str] - trait_type : typing.Optional[ListEntityTraitDefinitionsRequestTraitType] + trait_type : typing.Optional[TraitType] + + trait_types : typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] limit : typing.Optional[int] Page limit (default 100) @@ -1153,6 +1144,7 @@ def list_entity_trait_definitions( ids=ids, q=q, trait_type=trait_type, + trait_types=trait_types, limit=limit, offset=offset, request_options=request_options, @@ -1162,20 +1154,20 @@ def list_entity_trait_definitions( def get_or_create_entity_trait_definition( self, *, - entity_type: CreateEntityTraitDefinitionRequestBodyEntityType, + entity_type: EntityType, hierarchy: typing.Sequence[str], - trait_type: CreateEntityTraitDefinitionRequestBodyTraitType, + trait_type: TraitType, display_name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> GetOrCreateEntityTraitDefinitionResponse: """ Parameters ---------- - entity_type : CreateEntityTraitDefinitionRequestBodyEntityType + entity_type : EntityType hierarchy : typing.Sequence[str] - trait_type : CreateEntityTraitDefinitionRequestBodyTraitType + trait_type : TraitType display_name : typing.Optional[str] @@ -1246,7 +1238,7 @@ def update_entity_trait_definition( self, entity_trait_definition_id: str, *, - trait_type: UpdateEntityTraitDefinitionRequestBodyTraitType, + trait_type: TraitType, display_name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateEntityTraitDefinitionResponse: @@ -1256,7 +1248,7 @@ def update_entity_trait_definition( entity_trait_definition_id : str entity_trait_definition_id - trait_type : UpdateEntityTraitDefinitionRequestBodyTraitType + trait_type : TraitType display_name : typing.Optional[str] @@ -1291,10 +1283,11 @@ def update_entity_trait_definition( def count_entity_trait_definitions( self, *, - entity_type: typing.Optional[CountEntityTraitDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - trait_type: typing.Optional[CountEntityTraitDefinitionsRequestTraitType] = None, + trait_type: typing.Optional[TraitType] = None, + trait_types: typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -1302,13 +1295,15 @@ def count_entity_trait_definitions( """ Parameters ---------- - entity_type : typing.Optional[CountEntityTraitDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] q : typing.Optional[str] - trait_type : typing.Optional[CountEntityTraitDefinitionsRequestTraitType] + trait_type : typing.Optional[TraitType] + + trait_types : typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] limit : typing.Optional[int] Page limit (default 100) @@ -1344,6 +1339,7 @@ def count_entity_trait_definitions( ids=ids, q=q, trait_type=trait_type, + trait_types=trait_types, limit=limit, offset=offset, request_options=request_options, @@ -1704,6 +1700,7 @@ def delete_plan_trait( def update_plan_traits_bulk( self, *, + apply_to_existing_companies: bool, plan_id: str, traits: typing.Sequence[UpdatePlanTraitTraitRequestBody], request_options: typing.Optional[RequestOptions] = None, @@ -1711,6 +1708,8 @@ def update_plan_traits_bulk( """ Parameters ---------- + apply_to_existing_companies : bool + plan_id : str traits : typing.Sequence[UpdatePlanTraitTraitRequestBody] @@ -1731,6 +1730,7 @@ def update_plan_traits_bulk( api_key="YOUR_API_KEY", ) client.companies.update_plan_traits_bulk( + apply_to_existing_companies=True, plan_id="plan_id", traits=[ UpdatePlanTraitTraitRequestBody( @@ -1741,7 +1741,10 @@ def update_plan_traits_bulk( ) """ _response = self._raw_client.update_plan_traits_bulk( - plan_id=plan_id, traits=traits, request_options=request_options + apply_to_existing_companies=apply_to_existing_companies, + plan_id=plan_id, + traits=traits, + request_options=request_options, ) return _response.data @@ -2623,14 +2626,16 @@ async def count_companies_for_advanced_filter( plan_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, feature_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_type_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_statuses: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_types: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + subscription_statuses: typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] + ] = None, + subscription_types: typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] = None, monetized_subscriptions: typing.Optional[bool] = None, q: typing.Optional[str] = None, without_plan: typing.Optional[bool] = None, without_subscription: typing.Optional[bool] = None, sort_order_column: typing.Optional[str] = None, - sort_order_direction: typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection] = None, + sort_order_direction: typing.Optional[SortDirection] = None, display_properties: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -2651,10 +2656,10 @@ async def count_companies_for_advanced_filter( credit_type_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] Filter companies by one or more credit type IDs (each ID starts with bcrd_) - subscription_statuses : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_statuses : typing.Optional[typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]]] Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) - subscription_types : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_types : typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] Filter companies by one or more subscription types (paid, free, trial) monetized_subscriptions : typing.Optional[bool] @@ -2672,7 +2677,7 @@ async def count_companies_for_advanced_filter( sort_order_column : typing.Optional[str] Column to sort by (e.g. name, created_at, last_seen_at) - sort_order_direction : typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection] + sort_order_direction : typing.Optional[SortDirection] Direction to sort by (asc or desc) display_properties : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -2850,14 +2855,16 @@ async def list_companies_for_advanced_filter( plan_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, feature_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_type_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_statuses: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_types: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + subscription_statuses: typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] + ] = None, + subscription_types: typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] = None, monetized_subscriptions: typing.Optional[bool] = None, q: typing.Optional[str] = None, without_plan: typing.Optional[bool] = None, without_subscription: typing.Optional[bool] = None, sort_order_column: typing.Optional[str] = None, - sort_order_direction: typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection] = None, + sort_order_direction: typing.Optional[SortDirection] = None, display_properties: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -2878,10 +2885,10 @@ async def list_companies_for_advanced_filter( credit_type_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] Filter companies by one or more credit type IDs (each ID starts with bcrd_) - subscription_statuses : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_statuses : typing.Optional[typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]]] Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) - subscription_types : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_types : typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] Filter companies by one or more subscription types (paid, free, trial) monetized_subscriptions : typing.Optional[bool] @@ -2899,7 +2906,7 @@ async def list_companies_for_advanced_filter( sort_order_column : typing.Optional[str] Column to sort by (e.g. name, created_at, last_seen_at) - sort_order_direction : typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection] + sort_order_direction : typing.Optional[SortDirection] Direction to sort by (asc or desc) display_properties : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -3322,7 +3329,7 @@ async def main() -> None: async def list_entity_key_definitions( self, *, - entity_type: typing.Optional[ListEntityKeyDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -3332,7 +3339,7 @@ async def list_entity_key_definitions( """ Parameters ---------- - entity_type : typing.Optional[ListEntityKeyDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -3382,7 +3389,7 @@ async def main() -> None: async def count_entity_key_definitions( self, *, - entity_type: typing.Optional[CountEntityKeyDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -3392,7 +3399,7 @@ async def count_entity_key_definitions( """ Parameters ---------- - entity_type : typing.Optional[CountEntityKeyDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -3442,10 +3449,11 @@ async def main() -> None: async def list_entity_trait_definitions( self, *, - entity_type: typing.Optional[ListEntityTraitDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - trait_type: typing.Optional[ListEntityTraitDefinitionsRequestTraitType] = None, + trait_type: typing.Optional[TraitType] = None, + trait_types: typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -3453,13 +3461,15 @@ async def list_entity_trait_definitions( """ Parameters ---------- - entity_type : typing.Optional[ListEntityTraitDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] q : typing.Optional[str] - trait_type : typing.Optional[ListEntityTraitDefinitionsRequestTraitType] + trait_type : typing.Optional[TraitType] + + trait_types : typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] limit : typing.Optional[int] Page limit (default 100) @@ -3503,6 +3513,7 @@ async def main() -> None: ids=ids, q=q, trait_type=trait_type, + trait_types=trait_types, limit=limit, offset=offset, request_options=request_options, @@ -3512,20 +3523,20 @@ async def main() -> None: async def get_or_create_entity_trait_definition( self, *, - entity_type: CreateEntityTraitDefinitionRequestBodyEntityType, + entity_type: EntityType, hierarchy: typing.Sequence[str], - trait_type: CreateEntityTraitDefinitionRequestBodyTraitType, + trait_type: TraitType, display_name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> GetOrCreateEntityTraitDefinitionResponse: """ Parameters ---------- - entity_type : CreateEntityTraitDefinitionRequestBodyEntityType + entity_type : EntityType hierarchy : typing.Sequence[str] - trait_type : CreateEntityTraitDefinitionRequestBodyTraitType + trait_type : TraitType display_name : typing.Optional[str] @@ -3612,7 +3623,7 @@ async def update_entity_trait_definition( self, entity_trait_definition_id: str, *, - trait_type: UpdateEntityTraitDefinitionRequestBodyTraitType, + trait_type: TraitType, display_name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateEntityTraitDefinitionResponse: @@ -3622,7 +3633,7 @@ async def update_entity_trait_definition( entity_trait_definition_id : str entity_trait_definition_id - trait_type : UpdateEntityTraitDefinitionRequestBodyTraitType + trait_type : TraitType display_name : typing.Optional[str] @@ -3665,10 +3676,11 @@ async def main() -> None: async def count_entity_trait_definitions( self, *, - entity_type: typing.Optional[CountEntityTraitDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - trait_type: typing.Optional[CountEntityTraitDefinitionsRequestTraitType] = None, + trait_type: typing.Optional[TraitType] = None, + trait_types: typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -3676,13 +3688,15 @@ async def count_entity_trait_definitions( """ Parameters ---------- - entity_type : typing.Optional[CountEntityTraitDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] q : typing.Optional[str] - trait_type : typing.Optional[CountEntityTraitDefinitionsRequestTraitType] + trait_type : typing.Optional[TraitType] + + trait_types : typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] limit : typing.Optional[int] Page limit (default 100) @@ -3726,6 +3740,7 @@ async def main() -> None: ids=ids, q=q, trait_type=trait_type, + trait_types=trait_types, limit=limit, offset=offset, request_options=request_options, @@ -4150,6 +4165,7 @@ async def main() -> None: async def update_plan_traits_bulk( self, *, + apply_to_existing_companies: bool, plan_id: str, traits: typing.Sequence[UpdatePlanTraitTraitRequestBody], request_options: typing.Optional[RequestOptions] = None, @@ -4157,6 +4173,8 @@ async def update_plan_traits_bulk( """ Parameters ---------- + apply_to_existing_companies : bool + plan_id : str traits : typing.Sequence[UpdatePlanTraitTraitRequestBody] @@ -4182,6 +4200,7 @@ async def update_plan_traits_bulk( async def main() -> None: await client.companies.update_plan_traits_bulk( + apply_to_existing_companies=True, plan_id="plan_id", traits=[ UpdatePlanTraitTraitRequestBody( @@ -4195,7 +4214,10 @@ async def main() -> None: asyncio.run(main()) """ _response = await self._raw_client.update_plan_traits_bulk( - plan_id=plan_id, traits=traits, request_options=request_options + apply_to_existing_companies=apply_to_existing_companies, + plan_id=plan_id, + traits=traits, + request_options=request_options, ) return _response.data diff --git a/src/schematic/companies/raw_client.py b/src/schematic/companies/raw_client.py index 5dc1328..1ce17fa 100644 --- a/src/schematic/companies/raw_client.py +++ b/src/schematic/companies/raw_client.py @@ -17,26 +17,19 @@ from ..errors.not_found_error import NotFoundError from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError +from ..types.entity_type import EntityType +from ..types.sort_direction import SortDirection +from ..types.subscription_status import SubscriptionStatus +from ..types.subscription_type import SubscriptionType +from ..types.trait_type import TraitType from ..types.update_plan_trait_trait_request_body import UpdatePlanTraitTraitRequestBody -from .types.count_companies_for_advanced_filter_request_sort_order_direction import ( - CountCompaniesForAdvancedFilterRequestSortOrderDirection, -) from .types.count_companies_for_advanced_filter_response import CountCompaniesForAdvancedFilterResponse from .types.count_companies_response import CountCompaniesResponse -from .types.count_entity_key_definitions_request_entity_type import CountEntityKeyDefinitionsRequestEntityType from .types.count_entity_key_definitions_response import CountEntityKeyDefinitionsResponse -from .types.count_entity_trait_definitions_request_entity_type import CountEntityTraitDefinitionsRequestEntityType -from .types.count_entity_trait_definitions_request_trait_type import CountEntityTraitDefinitionsRequestTraitType from .types.count_entity_trait_definitions_response import CountEntityTraitDefinitionsResponse from .types.count_plan_traits_response import CountPlanTraitsResponse from .types.count_users_response import CountUsersResponse from .types.create_company_response import CreateCompanyResponse -from .types.create_entity_trait_definition_request_body_entity_type import ( - CreateEntityTraitDefinitionRequestBodyEntityType, -) -from .types.create_entity_trait_definition_request_body_trait_type import ( - CreateEntityTraitDefinitionRequestBodyTraitType, -) from .types.create_plan_trait_response import CreatePlanTraitResponse from .types.create_user_response import CreateUserResponse from .types.delete_company_by_keys_response import DeleteCompanyByKeysResponse @@ -55,25 +48,16 @@ from .types.get_plan_change_response import GetPlanChangeResponse from .types.get_plan_trait_response import GetPlanTraitResponse from .types.get_user_response import GetUserResponse -from .types.list_companies_for_advanced_filter_request_sort_order_direction import ( - ListCompaniesForAdvancedFilterRequestSortOrderDirection, -) from .types.list_companies_for_advanced_filter_response import ListCompaniesForAdvancedFilterResponse from .types.list_companies_response import ListCompaniesResponse from .types.list_company_memberships_response import ListCompanyMembershipsResponse -from .types.list_entity_key_definitions_request_entity_type import ListEntityKeyDefinitionsRequestEntityType from .types.list_entity_key_definitions_response import ListEntityKeyDefinitionsResponse -from .types.list_entity_trait_definitions_request_entity_type import ListEntityTraitDefinitionsRequestEntityType -from .types.list_entity_trait_definitions_request_trait_type import ListEntityTraitDefinitionsRequestTraitType from .types.list_entity_trait_definitions_response import ListEntityTraitDefinitionsResponse from .types.list_plan_changes_response import ListPlanChangesResponse from .types.list_plan_traits_response import ListPlanTraitsResponse from .types.list_users_response import ListUsersResponse from .types.lookup_company_response import LookupCompanyResponse from .types.lookup_user_response import LookupUserResponse -from .types.update_entity_trait_definition_request_body_trait_type import ( - UpdateEntityTraitDefinitionRequestBodyTraitType, -) from .types.update_entity_trait_definition_response import UpdateEntityTraitDefinitionResponse from .types.update_plan_trait_response import UpdatePlanTraitResponse from .types.update_plan_traits_bulk_response import UpdatePlanTraitsBulkResponse @@ -693,14 +677,16 @@ def count_companies_for_advanced_filter( plan_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, feature_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_type_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_statuses: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_types: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + subscription_statuses: typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] + ] = None, + subscription_types: typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] = None, monetized_subscriptions: typing.Optional[bool] = None, q: typing.Optional[str] = None, without_plan: typing.Optional[bool] = None, without_subscription: typing.Optional[bool] = None, sort_order_column: typing.Optional[str] = None, - sort_order_direction: typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection] = None, + sort_order_direction: typing.Optional[SortDirection] = None, display_properties: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -721,10 +707,10 @@ def count_companies_for_advanced_filter( credit_type_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] Filter companies by one or more credit type IDs (each ID starts with bcrd_) - subscription_statuses : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_statuses : typing.Optional[typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]]] Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) - subscription_types : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_types : typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] Filter companies by one or more subscription types (paid, free, trial) monetized_subscriptions : typing.Optional[bool] @@ -742,7 +728,7 @@ def count_companies_for_advanced_filter( sort_order_column : typing.Optional[str] Column to sort by (e.g. name, created_at, last_seen_at) - sort_order_direction : typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection] + sort_order_direction : typing.Optional[SortDirection] Direction to sort by (asc or desc) display_properties : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -1095,14 +1081,16 @@ def list_companies_for_advanced_filter( plan_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, feature_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_type_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_statuses: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_types: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + subscription_statuses: typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] + ] = None, + subscription_types: typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] = None, monetized_subscriptions: typing.Optional[bool] = None, q: typing.Optional[str] = None, without_plan: typing.Optional[bool] = None, without_subscription: typing.Optional[bool] = None, sort_order_column: typing.Optional[str] = None, - sort_order_direction: typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection] = None, + sort_order_direction: typing.Optional[SortDirection] = None, display_properties: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -1123,10 +1111,10 @@ def list_companies_for_advanced_filter( credit_type_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] Filter companies by one or more credit type IDs (each ID starts with bcrd_) - subscription_statuses : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_statuses : typing.Optional[typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]]] Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) - subscription_types : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_types : typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] Filter companies by one or more subscription types (paid, free, trial) monetized_subscriptions : typing.Optional[bool] @@ -1144,7 +1132,7 @@ def list_companies_for_advanced_filter( sort_order_column : typing.Optional[str] Column to sort by (e.g. name, created_at, last_seen_at) - sort_order_direction : typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection] + sort_order_direction : typing.Optional[SortDirection] Direction to sort by (asc or desc) display_properties : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -2023,7 +2011,7 @@ def upsert_company_trait( def list_entity_key_definitions( self, *, - entity_type: typing.Optional[ListEntityKeyDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -2033,7 +2021,7 @@ def list_entity_key_definitions( """ Parameters ---------- - entity_type : typing.Optional[ListEntityKeyDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -2142,7 +2130,7 @@ def list_entity_key_definitions( def count_entity_key_definitions( self, *, - entity_type: typing.Optional[CountEntityKeyDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -2152,7 +2140,7 @@ def count_entity_key_definitions( """ Parameters ---------- - entity_type : typing.Optional[CountEntityKeyDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -2261,10 +2249,11 @@ def count_entity_key_definitions( def list_entity_trait_definitions( self, *, - entity_type: typing.Optional[ListEntityTraitDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - trait_type: typing.Optional[ListEntityTraitDefinitionsRequestTraitType] = None, + trait_type: typing.Optional[TraitType] = None, + trait_types: typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -2272,13 +2261,15 @@ def list_entity_trait_definitions( """ Parameters ---------- - entity_type : typing.Optional[ListEntityTraitDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] q : typing.Optional[str] - trait_type : typing.Optional[ListEntityTraitDefinitionsRequestTraitType] + trait_type : typing.Optional[TraitType] + + trait_types : typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] limit : typing.Optional[int] Page limit (default 100) @@ -2302,6 +2293,7 @@ def list_entity_trait_definitions( "ids": ids, "q": q, "trait_type": trait_type, + "trait_types": trait_types, "limit": limit, "offset": offset, }, @@ -2384,20 +2376,20 @@ def list_entity_trait_definitions( def get_or_create_entity_trait_definition( self, *, - entity_type: CreateEntityTraitDefinitionRequestBodyEntityType, + entity_type: EntityType, hierarchy: typing.Sequence[str], - trait_type: CreateEntityTraitDefinitionRequestBodyTraitType, + trait_type: TraitType, display_name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[GetOrCreateEntityTraitDefinitionResponse]: """ Parameters ---------- - entity_type : CreateEntityTraitDefinitionRequestBodyEntityType + entity_type : EntityType hierarchy : typing.Sequence[str] - trait_type : CreateEntityTraitDefinitionRequestBodyTraitType + trait_type : TraitType display_name : typing.Optional[str] @@ -2587,7 +2579,7 @@ def update_entity_trait_definition( self, entity_trait_definition_id: str, *, - trait_type: UpdateEntityTraitDefinitionRequestBodyTraitType, + trait_type: TraitType, display_name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[UpdateEntityTraitDefinitionResponse]: @@ -2597,7 +2589,7 @@ def update_entity_trait_definition( entity_trait_definition_id : str entity_trait_definition_id - trait_type : UpdateEntityTraitDefinitionRequestBodyTraitType + trait_type : TraitType display_name : typing.Optional[str] @@ -2699,10 +2691,11 @@ def update_entity_trait_definition( def count_entity_trait_definitions( self, *, - entity_type: typing.Optional[CountEntityTraitDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - trait_type: typing.Optional[CountEntityTraitDefinitionsRequestTraitType] = None, + trait_type: typing.Optional[TraitType] = None, + trait_types: typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -2710,13 +2703,15 @@ def count_entity_trait_definitions( """ Parameters ---------- - entity_type : typing.Optional[CountEntityTraitDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] q : typing.Optional[str] - trait_type : typing.Optional[CountEntityTraitDefinitionsRequestTraitType] + trait_type : typing.Optional[TraitType] + + trait_types : typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] limit : typing.Optional[int] Page limit (default 100) @@ -2740,6 +2735,7 @@ def count_entity_trait_definitions( "ids": ids, "q": q, "trait_type": trait_type, + "trait_types": trait_types, "limit": limit, "offset": offset, }, @@ -3674,6 +3670,7 @@ def delete_plan_trait( def update_plan_traits_bulk( self, *, + apply_to_existing_companies: bool, plan_id: str, traits: typing.Sequence[UpdatePlanTraitTraitRequestBody], request_options: typing.Optional[RequestOptions] = None, @@ -3681,6 +3678,8 @@ def update_plan_traits_bulk( """ Parameters ---------- + apply_to_existing_companies : bool + plan_id : str traits : typing.Sequence[UpdatePlanTraitTraitRequestBody] @@ -3697,6 +3696,7 @@ def update_plan_traits_bulk( "plan-traits/bulk", method="POST", json={ + "apply_to_existing_companies": apply_to_existing_companies, "plan_id": plan_id, "traits": convert_and_respect_annotation_metadata( object_=traits, annotation=typing.Sequence[UpdatePlanTraitTraitRequestBody], direction="write" @@ -5560,14 +5560,16 @@ async def count_companies_for_advanced_filter( plan_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, feature_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_type_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_statuses: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_types: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + subscription_statuses: typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] + ] = None, + subscription_types: typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] = None, monetized_subscriptions: typing.Optional[bool] = None, q: typing.Optional[str] = None, without_plan: typing.Optional[bool] = None, without_subscription: typing.Optional[bool] = None, sort_order_column: typing.Optional[str] = None, - sort_order_direction: typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection] = None, + sort_order_direction: typing.Optional[SortDirection] = None, display_properties: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -5588,10 +5590,10 @@ async def count_companies_for_advanced_filter( credit_type_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] Filter companies by one or more credit type IDs (each ID starts with bcrd_) - subscription_statuses : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_statuses : typing.Optional[typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]]] Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) - subscription_types : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_types : typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] Filter companies by one or more subscription types (paid, free, trial) monetized_subscriptions : typing.Optional[bool] @@ -5609,7 +5611,7 @@ async def count_companies_for_advanced_filter( sort_order_column : typing.Optional[str] Column to sort by (e.g. name, created_at, last_seen_at) - sort_order_direction : typing.Optional[CountCompaniesForAdvancedFilterRequestSortOrderDirection] + sort_order_direction : typing.Optional[SortDirection] Direction to sort by (asc or desc) display_properties : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -5962,14 +5964,16 @@ async def list_companies_for_advanced_filter( plan_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, feature_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_type_ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_statuses: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - subscription_types: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + subscription_statuses: typing.Optional[ + typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]] + ] = None, + subscription_types: typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] = None, monetized_subscriptions: typing.Optional[bool] = None, q: typing.Optional[str] = None, without_plan: typing.Optional[bool] = None, without_subscription: typing.Optional[bool] = None, sort_order_column: typing.Optional[str] = None, - sort_order_direction: typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection] = None, + sort_order_direction: typing.Optional[SortDirection] = None, display_properties: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -5990,10 +5994,10 @@ async def list_companies_for_advanced_filter( credit_type_ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] Filter companies by one or more credit type IDs (each ID starts with bcrd_) - subscription_statuses : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_statuses : typing.Optional[typing.Union[SubscriptionStatus, typing.Sequence[SubscriptionStatus]]] Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) - subscription_types : typing.Optional[typing.Union[str, typing.Sequence[str]]] + subscription_types : typing.Optional[typing.Union[SubscriptionType, typing.Sequence[SubscriptionType]]] Filter companies by one or more subscription types (paid, free, trial) monetized_subscriptions : typing.Optional[bool] @@ -6011,7 +6015,7 @@ async def list_companies_for_advanced_filter( sort_order_column : typing.Optional[str] Column to sort by (e.g. name, created_at, last_seen_at) - sort_order_direction : typing.Optional[ListCompaniesForAdvancedFilterRequestSortOrderDirection] + sort_order_direction : typing.Optional[SortDirection] Direction to sort by (asc or desc) display_properties : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -6890,7 +6894,7 @@ async def upsert_company_trait( async def list_entity_key_definitions( self, *, - entity_type: typing.Optional[ListEntityKeyDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -6900,7 +6904,7 @@ async def list_entity_key_definitions( """ Parameters ---------- - entity_type : typing.Optional[ListEntityKeyDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -7009,7 +7013,7 @@ async def list_entity_key_definitions( async def count_entity_key_definitions( self, *, - entity_type: typing.Optional[CountEntityKeyDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -7019,7 +7023,7 @@ async def count_entity_key_definitions( """ Parameters ---------- - entity_type : typing.Optional[CountEntityKeyDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] @@ -7128,10 +7132,11 @@ async def count_entity_key_definitions( async def list_entity_trait_definitions( self, *, - entity_type: typing.Optional[ListEntityTraitDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - trait_type: typing.Optional[ListEntityTraitDefinitionsRequestTraitType] = None, + trait_type: typing.Optional[TraitType] = None, + trait_types: typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -7139,13 +7144,15 @@ async def list_entity_trait_definitions( """ Parameters ---------- - entity_type : typing.Optional[ListEntityTraitDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] q : typing.Optional[str] - trait_type : typing.Optional[ListEntityTraitDefinitionsRequestTraitType] + trait_type : typing.Optional[TraitType] + + trait_types : typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] limit : typing.Optional[int] Page limit (default 100) @@ -7169,6 +7176,7 @@ async def list_entity_trait_definitions( "ids": ids, "q": q, "trait_type": trait_type, + "trait_types": trait_types, "limit": limit, "offset": offset, }, @@ -7251,20 +7259,20 @@ async def list_entity_trait_definitions( async def get_or_create_entity_trait_definition( self, *, - entity_type: CreateEntityTraitDefinitionRequestBodyEntityType, + entity_type: EntityType, hierarchy: typing.Sequence[str], - trait_type: CreateEntityTraitDefinitionRequestBodyTraitType, + trait_type: TraitType, display_name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[GetOrCreateEntityTraitDefinitionResponse]: """ Parameters ---------- - entity_type : CreateEntityTraitDefinitionRequestBodyEntityType + entity_type : EntityType hierarchy : typing.Sequence[str] - trait_type : CreateEntityTraitDefinitionRequestBodyTraitType + trait_type : TraitType display_name : typing.Optional[str] @@ -7454,7 +7462,7 @@ async def update_entity_trait_definition( self, entity_trait_definition_id: str, *, - trait_type: UpdateEntityTraitDefinitionRequestBodyTraitType, + trait_type: TraitType, display_name: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[UpdateEntityTraitDefinitionResponse]: @@ -7464,7 +7472,7 @@ async def update_entity_trait_definition( entity_trait_definition_id : str entity_trait_definition_id - trait_type : UpdateEntityTraitDefinitionRequestBodyTraitType + trait_type : TraitType display_name : typing.Optional[str] @@ -7566,10 +7574,11 @@ async def update_entity_trait_definition( async def count_entity_trait_definitions( self, *, - entity_type: typing.Optional[CountEntityTraitDefinitionsRequestEntityType] = None, + entity_type: typing.Optional[EntityType] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, q: typing.Optional[str] = None, - trait_type: typing.Optional[CountEntityTraitDefinitionsRequestTraitType] = None, + trait_type: typing.Optional[TraitType] = None, + trait_types: typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -7577,13 +7586,15 @@ async def count_entity_trait_definitions( """ Parameters ---------- - entity_type : typing.Optional[CountEntityTraitDefinitionsRequestEntityType] + entity_type : typing.Optional[EntityType] ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] q : typing.Optional[str] - trait_type : typing.Optional[CountEntityTraitDefinitionsRequestTraitType] + trait_type : typing.Optional[TraitType] + + trait_types : typing.Optional[typing.Union[TraitType, typing.Sequence[TraitType]]] limit : typing.Optional[int] Page limit (default 100) @@ -7607,6 +7618,7 @@ async def count_entity_trait_definitions( "ids": ids, "q": q, "trait_type": trait_type, + "trait_types": trait_types, "limit": limit, "offset": offset, }, @@ -8541,6 +8553,7 @@ async def delete_plan_trait( async def update_plan_traits_bulk( self, *, + apply_to_existing_companies: bool, plan_id: str, traits: typing.Sequence[UpdatePlanTraitTraitRequestBody], request_options: typing.Optional[RequestOptions] = None, @@ -8548,6 +8561,8 @@ async def update_plan_traits_bulk( """ Parameters ---------- + apply_to_existing_companies : bool + plan_id : str traits : typing.Sequence[UpdatePlanTraitTraitRequestBody] @@ -8564,6 +8579,7 @@ async def update_plan_traits_bulk( "plan-traits/bulk", method="POST", json={ + "apply_to_existing_companies": apply_to_existing_companies, "plan_id": plan_id, "traits": convert_and_respect_annotation_metadata( object_=traits, annotation=typing.Sequence[UpdatePlanTraitTraitRequestBody], direction="write" diff --git a/src/schematic/companies/types/__init__.py b/src/schematic/companies/types/__init__.py index 225346a..0651546 100644 --- a/src/schematic/companies/types/__init__.py +++ b/src/schematic/companies/types/__init__.py @@ -7,40 +7,18 @@ if typing.TYPE_CHECKING: from .count_companies_for_advanced_filter_params import CountCompaniesForAdvancedFilterParams - from .count_companies_for_advanced_filter_request_sort_order_direction import ( - CountCompaniesForAdvancedFilterRequestSortOrderDirection, - ) from .count_companies_for_advanced_filter_response import CountCompaniesForAdvancedFilterResponse - from .count_companies_for_advanced_filter_response_params_sort_order_direction import ( - CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection, - ) from .count_companies_params import CountCompaniesParams from .count_companies_response import CountCompaniesResponse from .count_entity_key_definitions_params import CountEntityKeyDefinitionsParams - from .count_entity_key_definitions_request_entity_type import CountEntityKeyDefinitionsRequestEntityType from .count_entity_key_definitions_response import CountEntityKeyDefinitionsResponse - from .count_entity_key_definitions_response_params_entity_type import ( - CountEntityKeyDefinitionsResponseParamsEntityType, - ) from .count_entity_trait_definitions_params import CountEntityTraitDefinitionsParams - from .count_entity_trait_definitions_request_entity_type import CountEntityTraitDefinitionsRequestEntityType - from .count_entity_trait_definitions_request_trait_type import CountEntityTraitDefinitionsRequestTraitType from .count_entity_trait_definitions_response import CountEntityTraitDefinitionsResponse - from .count_entity_trait_definitions_response_params_entity_type import ( - CountEntityTraitDefinitionsResponseParamsEntityType, - ) - from .count_entity_trait_definitions_response_params_trait_type import ( - CountEntityTraitDefinitionsResponseParamsTraitType, - ) from .count_plan_traits_params import CountPlanTraitsParams from .count_plan_traits_response import CountPlanTraitsResponse from .count_users_params import CountUsersParams from .count_users_response import CountUsersResponse from .create_company_response import CreateCompanyResponse - from .create_entity_trait_definition_request_body_entity_type import ( - CreateEntityTraitDefinitionRequestBodyEntityType, - ) - from .create_entity_trait_definition_request_body_trait_type import CreateEntityTraitDefinitionRequestBodyTraitType from .create_plan_trait_response import CreatePlanTraitResponse from .create_user_response import CreateUserResponse from .delete_company_by_keys_response import DeleteCompanyByKeysResponse @@ -64,33 +42,15 @@ from .get_plan_trait_response import GetPlanTraitResponse from .get_user_response import GetUserResponse from .list_companies_for_advanced_filter_params import ListCompaniesForAdvancedFilterParams - from .list_companies_for_advanced_filter_request_sort_order_direction import ( - ListCompaniesForAdvancedFilterRequestSortOrderDirection, - ) from .list_companies_for_advanced_filter_response import ListCompaniesForAdvancedFilterResponse - from .list_companies_for_advanced_filter_response_params_sort_order_direction import ( - ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection, - ) from .list_companies_params import ListCompaniesParams from .list_companies_response import ListCompaniesResponse from .list_company_memberships_params import ListCompanyMembershipsParams from .list_company_memberships_response import ListCompanyMembershipsResponse from .list_entity_key_definitions_params import ListEntityKeyDefinitionsParams - from .list_entity_key_definitions_request_entity_type import ListEntityKeyDefinitionsRequestEntityType from .list_entity_key_definitions_response import ListEntityKeyDefinitionsResponse - from .list_entity_key_definitions_response_params_entity_type import ( - ListEntityKeyDefinitionsResponseParamsEntityType, - ) from .list_entity_trait_definitions_params import ListEntityTraitDefinitionsParams - from .list_entity_trait_definitions_request_entity_type import ListEntityTraitDefinitionsRequestEntityType - from .list_entity_trait_definitions_request_trait_type import ListEntityTraitDefinitionsRequestTraitType from .list_entity_trait_definitions_response import ListEntityTraitDefinitionsResponse - from .list_entity_trait_definitions_response_params_entity_type import ( - ListEntityTraitDefinitionsResponseParamsEntityType, - ) - from .list_entity_trait_definitions_response_params_trait_type import ( - ListEntityTraitDefinitionsResponseParamsTraitType, - ) from .list_plan_changes_params import ListPlanChangesParams from .list_plan_changes_response import ListPlanChangesResponse from .list_plan_traits_params import ListPlanTraitsParams @@ -101,7 +61,6 @@ from .lookup_company_response import LookupCompanyResponse from .lookup_user_params import LookupUserParams from .lookup_user_response import LookupUserResponse - from .update_entity_trait_definition_request_body_trait_type import UpdateEntityTraitDefinitionRequestBodyTraitType from .update_entity_trait_definition_response import UpdateEntityTraitDefinitionResponse from .update_plan_trait_response import UpdatePlanTraitResponse from .update_plan_traits_bulk_response import UpdatePlanTraitsBulkResponse @@ -111,28 +70,18 @@ from .upsert_user_trait_response import UpsertUserTraitResponse _dynamic_imports: typing.Dict[str, str] = { "CountCompaniesForAdvancedFilterParams": ".count_companies_for_advanced_filter_params", - "CountCompaniesForAdvancedFilterRequestSortOrderDirection": ".count_companies_for_advanced_filter_request_sort_order_direction", "CountCompaniesForAdvancedFilterResponse": ".count_companies_for_advanced_filter_response", - "CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection": ".count_companies_for_advanced_filter_response_params_sort_order_direction", "CountCompaniesParams": ".count_companies_params", "CountCompaniesResponse": ".count_companies_response", "CountEntityKeyDefinitionsParams": ".count_entity_key_definitions_params", - "CountEntityKeyDefinitionsRequestEntityType": ".count_entity_key_definitions_request_entity_type", "CountEntityKeyDefinitionsResponse": ".count_entity_key_definitions_response", - "CountEntityKeyDefinitionsResponseParamsEntityType": ".count_entity_key_definitions_response_params_entity_type", "CountEntityTraitDefinitionsParams": ".count_entity_trait_definitions_params", - "CountEntityTraitDefinitionsRequestEntityType": ".count_entity_trait_definitions_request_entity_type", - "CountEntityTraitDefinitionsRequestTraitType": ".count_entity_trait_definitions_request_trait_type", "CountEntityTraitDefinitionsResponse": ".count_entity_trait_definitions_response", - "CountEntityTraitDefinitionsResponseParamsEntityType": ".count_entity_trait_definitions_response_params_entity_type", - "CountEntityTraitDefinitionsResponseParamsTraitType": ".count_entity_trait_definitions_response_params_trait_type", "CountPlanTraitsParams": ".count_plan_traits_params", "CountPlanTraitsResponse": ".count_plan_traits_response", "CountUsersParams": ".count_users_params", "CountUsersResponse": ".count_users_response", "CreateCompanyResponse": ".create_company_response", - "CreateEntityTraitDefinitionRequestBodyEntityType": ".create_entity_trait_definition_request_body_entity_type", - "CreateEntityTraitDefinitionRequestBodyTraitType": ".create_entity_trait_definition_request_body_trait_type", "CreatePlanTraitResponse": ".create_plan_trait_response", "CreateUserResponse": ".create_user_response", "DeleteCompanyByKeysResponse": ".delete_company_by_keys_response", @@ -156,23 +105,15 @@ "GetPlanTraitResponse": ".get_plan_trait_response", "GetUserResponse": ".get_user_response", "ListCompaniesForAdvancedFilterParams": ".list_companies_for_advanced_filter_params", - "ListCompaniesForAdvancedFilterRequestSortOrderDirection": ".list_companies_for_advanced_filter_request_sort_order_direction", "ListCompaniesForAdvancedFilterResponse": ".list_companies_for_advanced_filter_response", - "ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection": ".list_companies_for_advanced_filter_response_params_sort_order_direction", "ListCompaniesParams": ".list_companies_params", "ListCompaniesResponse": ".list_companies_response", "ListCompanyMembershipsParams": ".list_company_memberships_params", "ListCompanyMembershipsResponse": ".list_company_memberships_response", "ListEntityKeyDefinitionsParams": ".list_entity_key_definitions_params", - "ListEntityKeyDefinitionsRequestEntityType": ".list_entity_key_definitions_request_entity_type", "ListEntityKeyDefinitionsResponse": ".list_entity_key_definitions_response", - "ListEntityKeyDefinitionsResponseParamsEntityType": ".list_entity_key_definitions_response_params_entity_type", "ListEntityTraitDefinitionsParams": ".list_entity_trait_definitions_params", - "ListEntityTraitDefinitionsRequestEntityType": ".list_entity_trait_definitions_request_entity_type", - "ListEntityTraitDefinitionsRequestTraitType": ".list_entity_trait_definitions_request_trait_type", "ListEntityTraitDefinitionsResponse": ".list_entity_trait_definitions_response", - "ListEntityTraitDefinitionsResponseParamsEntityType": ".list_entity_trait_definitions_response_params_entity_type", - "ListEntityTraitDefinitionsResponseParamsTraitType": ".list_entity_trait_definitions_response_params_trait_type", "ListPlanChangesParams": ".list_plan_changes_params", "ListPlanChangesResponse": ".list_plan_changes_response", "ListPlanTraitsParams": ".list_plan_traits_params", @@ -183,7 +124,6 @@ "LookupCompanyResponse": ".lookup_company_response", "LookupUserParams": ".lookup_user_params", "LookupUserResponse": ".lookup_user_response", - "UpdateEntityTraitDefinitionRequestBodyTraitType": ".update_entity_trait_definition_request_body_trait_type", "UpdateEntityTraitDefinitionResponse": ".update_entity_trait_definition_response", "UpdatePlanTraitResponse": ".update_plan_trait_response", "UpdatePlanTraitsBulkResponse": ".update_plan_traits_bulk_response", @@ -217,28 +157,18 @@ def __dir__(): __all__ = [ "CountCompaniesForAdvancedFilterParams", - "CountCompaniesForAdvancedFilterRequestSortOrderDirection", "CountCompaniesForAdvancedFilterResponse", - "CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection", "CountCompaniesParams", "CountCompaniesResponse", "CountEntityKeyDefinitionsParams", - "CountEntityKeyDefinitionsRequestEntityType", "CountEntityKeyDefinitionsResponse", - "CountEntityKeyDefinitionsResponseParamsEntityType", "CountEntityTraitDefinitionsParams", - "CountEntityTraitDefinitionsRequestEntityType", - "CountEntityTraitDefinitionsRequestTraitType", "CountEntityTraitDefinitionsResponse", - "CountEntityTraitDefinitionsResponseParamsEntityType", - "CountEntityTraitDefinitionsResponseParamsTraitType", "CountPlanTraitsParams", "CountPlanTraitsResponse", "CountUsersParams", "CountUsersResponse", "CreateCompanyResponse", - "CreateEntityTraitDefinitionRequestBodyEntityType", - "CreateEntityTraitDefinitionRequestBodyTraitType", "CreatePlanTraitResponse", "CreateUserResponse", "DeleteCompanyByKeysResponse", @@ -262,23 +192,15 @@ def __dir__(): "GetPlanTraitResponse", "GetUserResponse", "ListCompaniesForAdvancedFilterParams", - "ListCompaniesForAdvancedFilterRequestSortOrderDirection", "ListCompaniesForAdvancedFilterResponse", - "ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection", "ListCompaniesParams", "ListCompaniesResponse", "ListCompanyMembershipsParams", "ListCompanyMembershipsResponse", "ListEntityKeyDefinitionsParams", - "ListEntityKeyDefinitionsRequestEntityType", "ListEntityKeyDefinitionsResponse", - "ListEntityKeyDefinitionsResponseParamsEntityType", "ListEntityTraitDefinitionsParams", - "ListEntityTraitDefinitionsRequestEntityType", - "ListEntityTraitDefinitionsRequestTraitType", "ListEntityTraitDefinitionsResponse", - "ListEntityTraitDefinitionsResponseParamsEntityType", - "ListEntityTraitDefinitionsResponseParamsTraitType", "ListPlanChangesParams", "ListPlanChangesResponse", "ListPlanTraitsParams", @@ -289,7 +211,6 @@ def __dir__(): "LookupCompanyResponse", "LookupUserParams", "LookupUserResponse", - "UpdateEntityTraitDefinitionRequestBodyTraitType", "UpdateEntityTraitDefinitionResponse", "UpdatePlanTraitResponse", "UpdatePlanTraitsBulkResponse", diff --git a/src/schematic/companies/types/count_companies_for_advanced_filter_params.py b/src/schematic/companies/types/count_companies_for_advanced_filter_params.py index 1684e24..bc63781 100644 --- a/src/schematic/companies/types/count_companies_for_advanced_filter_params.py +++ b/src/schematic/companies/types/count_companies_for_advanced_filter_params.py @@ -4,9 +4,9 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .count_companies_for_advanced_filter_response_params_sort_order_direction import ( - CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection, -) +from ...types.sort_direction import SortDirection +from ...types.subscription_status import SubscriptionStatus +from ...types.subscription_type import SubscriptionType class CountCompaniesForAdvancedFilterParams(UniversalBaseModel): @@ -64,19 +64,13 @@ class CountCompaniesForAdvancedFilterParams(UniversalBaseModel): Column to sort by (e.g. name, created_at, last_seen_at) """ - sort_order_direction: typing.Optional[CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection] = ( - pydantic.Field(default=None) - ) - """ - Direction to sort by (asc or desc) - """ - - subscription_statuses: typing.Optional[typing.List[str]] = pydantic.Field(default=None) + sort_order_direction: typing.Optional[SortDirection] = None + subscription_statuses: typing.Optional[typing.List[SubscriptionStatus]] = pydantic.Field(default=None) """ Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) """ - subscription_types: typing.Optional[typing.List[str]] = pydantic.Field(default=None) + subscription_types: typing.Optional[typing.List[SubscriptionType]] = pydantic.Field(default=None) """ Filter companies by one or more subscription types (paid, free, trial) """ diff --git a/src/schematic/companies/types/count_companies_for_advanced_filter_request_sort_order_direction.py b/src/schematic/companies/types/count_companies_for_advanced_filter_request_sort_order_direction.py deleted file mode 100644 index c441939..0000000 --- a/src/schematic/companies/types/count_companies_for_advanced_filter_request_sort_order_direction.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountCompaniesForAdvancedFilterRequestSortOrderDirection = typing.Union[typing.Literal["asc", "desc"], typing.Any] diff --git a/src/schematic/companies/types/count_companies_for_advanced_filter_response_params_sort_order_direction.py b/src/schematic/companies/types/count_companies_for_advanced_filter_response_params_sort_order_direction.py deleted file mode 100644 index 634b179..0000000 --- a/src/schematic/companies/types/count_companies_for_advanced_filter_response_params_sort_order_direction.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountCompaniesForAdvancedFilterResponseParamsSortOrderDirection = typing.Union[ - typing.Literal["asc", "desc"], typing.Any -] diff --git a/src/schematic/companies/types/count_entity_key_definitions_params.py b/src/schematic/companies/types/count_entity_key_definitions_params.py index b23b32d..da54152 100644 --- a/src/schematic/companies/types/count_entity_key_definitions_params.py +++ b/src/schematic/companies/types/count_entity_key_definitions_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .count_entity_key_definitions_response_params_entity_type import CountEntityKeyDefinitionsResponseParamsEntityType +from ...types.entity_type import EntityType class CountEntityKeyDefinitionsParams(UniversalBaseModel): @@ -12,7 +12,7 @@ class CountEntityKeyDefinitionsParams(UniversalBaseModel): Input parameters """ - entity_type: typing.Optional[CountEntityKeyDefinitionsResponseParamsEntityType] = None + entity_type: typing.Optional[EntityType] = None ids: typing.Optional[typing.List[str]] = None limit: typing.Optional[int] = pydantic.Field(default=None) """ diff --git a/src/schematic/companies/types/count_entity_key_definitions_request_entity_type.py b/src/schematic/companies/types/count_entity_key_definitions_request_entity_type.py deleted file mode 100644 index 04641ac..0000000 --- a/src/schematic/companies/types/count_entity_key_definitions_request_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountEntityKeyDefinitionsRequestEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/count_entity_key_definitions_response_params_entity_type.py b/src/schematic/companies/types/count_entity_key_definitions_response_params_entity_type.py deleted file mode 100644 index 36e520b..0000000 --- a/src/schematic/companies/types/count_entity_key_definitions_response_params_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountEntityKeyDefinitionsResponseParamsEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/count_entity_trait_definitions_params.py b/src/schematic/companies/types/count_entity_trait_definitions_params.py index dc70b07..d527b28 100644 --- a/src/schematic/companies/types/count_entity_trait_definitions_params.py +++ b/src/schematic/companies/types/count_entity_trait_definitions_params.py @@ -4,12 +4,8 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .count_entity_trait_definitions_response_params_entity_type import ( - CountEntityTraitDefinitionsResponseParamsEntityType, -) -from .count_entity_trait_definitions_response_params_trait_type import ( - CountEntityTraitDefinitionsResponseParamsTraitType, -) +from ...types.entity_type import EntityType +from ...types.trait_type import TraitType class CountEntityTraitDefinitionsParams(UniversalBaseModel): @@ -17,7 +13,7 @@ class CountEntityTraitDefinitionsParams(UniversalBaseModel): Input parameters """ - entity_type: typing.Optional[CountEntityTraitDefinitionsResponseParamsEntityType] = None + entity_type: typing.Optional[EntityType] = None ids: typing.Optional[typing.List[str]] = None limit: typing.Optional[int] = pydantic.Field(default=None) """ @@ -30,7 +26,8 @@ class CountEntityTraitDefinitionsParams(UniversalBaseModel): """ q: typing.Optional[str] = None - trait_type: typing.Optional[CountEntityTraitDefinitionsResponseParamsTraitType] = None + trait_type: typing.Optional[TraitType] = None + trait_types: typing.Optional[typing.List[TraitType]] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/companies/types/count_entity_trait_definitions_request_entity_type.py b/src/schematic/companies/types/count_entity_trait_definitions_request_entity_type.py deleted file mode 100644 index 90af483..0000000 --- a/src/schematic/companies/types/count_entity_trait_definitions_request_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountEntityTraitDefinitionsRequestEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/count_entity_trait_definitions_request_trait_type.py b/src/schematic/companies/types/count_entity_trait_definitions_request_trait_type.py deleted file mode 100644 index 5f185dd..0000000 --- a/src/schematic/companies/types/count_entity_trait_definitions_request_trait_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountEntityTraitDefinitionsRequestTraitType = typing.Union[ - typing.Literal["boolean", "currency", "date", "number", "string", "url"], typing.Any -] diff --git a/src/schematic/companies/types/count_entity_trait_definitions_response_params_entity_type.py b/src/schematic/companies/types/count_entity_trait_definitions_response_params_entity_type.py deleted file mode 100644 index 4af6aaf..0000000 --- a/src/schematic/companies/types/count_entity_trait_definitions_response_params_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountEntityTraitDefinitionsResponseParamsEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/count_entity_trait_definitions_response_params_trait_type.py b/src/schematic/companies/types/count_entity_trait_definitions_response_params_trait_type.py deleted file mode 100644 index 838a383..0000000 --- a/src/schematic/companies/types/count_entity_trait_definitions_response_params_trait_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountEntityTraitDefinitionsResponseParamsTraitType = typing.Union[ - typing.Literal["boolean", "currency", "date", "number", "string", "url"], typing.Any -] diff --git a/src/schematic/companies/types/create_entity_trait_definition_request_body_entity_type.py b/src/schematic/companies/types/create_entity_trait_definition_request_body_entity_type.py deleted file mode 100644 index 2b025ca..0000000 --- a/src/schematic/companies/types/create_entity_trait_definition_request_body_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateEntityTraitDefinitionRequestBodyEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/create_entity_trait_definition_request_body_trait_type.py b/src/schematic/companies/types/create_entity_trait_definition_request_body_trait_type.py deleted file mode 100644 index 070b086..0000000 --- a/src/schematic/companies/types/create_entity_trait_definition_request_body_trait_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateEntityTraitDefinitionRequestBodyTraitType = typing.Union[ - typing.Literal["boolean", "currency", "date", "number", "string", "url"], typing.Any -] diff --git a/src/schematic/companies/types/list_companies_for_advanced_filter_params.py b/src/schematic/companies/types/list_companies_for_advanced_filter_params.py index 21fe8d9..72ebd68 100644 --- a/src/schematic/companies/types/list_companies_for_advanced_filter_params.py +++ b/src/schematic/companies/types/list_companies_for_advanced_filter_params.py @@ -4,9 +4,9 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_companies_for_advanced_filter_response_params_sort_order_direction import ( - ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection, -) +from ...types.sort_direction import SortDirection +from ...types.subscription_status import SubscriptionStatus +from ...types.subscription_type import SubscriptionType class ListCompaniesForAdvancedFilterParams(UniversalBaseModel): @@ -64,19 +64,13 @@ class ListCompaniesForAdvancedFilterParams(UniversalBaseModel): Column to sort by (e.g. name, created_at, last_seen_at) """ - sort_order_direction: typing.Optional[ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection] = ( - pydantic.Field(default=None) - ) - """ - Direction to sort by (asc or desc) - """ - - subscription_statuses: typing.Optional[typing.List[str]] = pydantic.Field(default=None) + sort_order_direction: typing.Optional[SortDirection] = None + subscription_statuses: typing.Optional[typing.List[SubscriptionStatus]] = pydantic.Field(default=None) """ Filter companies by one or more subscription statuses (active, canceled, expired, incomplete, incomplete_expired, past_due, paused, trialing, unpaid) """ - subscription_types: typing.Optional[typing.List[str]] = pydantic.Field(default=None) + subscription_types: typing.Optional[typing.List[SubscriptionType]] = pydantic.Field(default=None) """ Filter companies by one or more subscription types (paid, free, trial) """ diff --git a/src/schematic/companies/types/list_companies_for_advanced_filter_request_sort_order_direction.py b/src/schematic/companies/types/list_companies_for_advanced_filter_request_sort_order_direction.py deleted file mode 100644 index 0245d9f..0000000 --- a/src/schematic/companies/types/list_companies_for_advanced_filter_request_sort_order_direction.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListCompaniesForAdvancedFilterRequestSortOrderDirection = typing.Union[typing.Literal["asc", "desc"], typing.Any] diff --git a/src/schematic/companies/types/list_companies_for_advanced_filter_response_params_sort_order_direction.py b/src/schematic/companies/types/list_companies_for_advanced_filter_response_params_sort_order_direction.py deleted file mode 100644 index e4a5dd4..0000000 --- a/src/schematic/companies/types/list_companies_for_advanced_filter_response_params_sort_order_direction.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListCompaniesForAdvancedFilterResponseParamsSortOrderDirection = typing.Union[typing.Literal["asc", "desc"], typing.Any] diff --git a/src/schematic/companies/types/list_entity_key_definitions_params.py b/src/schematic/companies/types/list_entity_key_definitions_params.py index ee9800c..ecdc178 100644 --- a/src/schematic/companies/types/list_entity_key_definitions_params.py +++ b/src/schematic/companies/types/list_entity_key_definitions_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_entity_key_definitions_response_params_entity_type import ListEntityKeyDefinitionsResponseParamsEntityType +from ...types.entity_type import EntityType class ListEntityKeyDefinitionsParams(UniversalBaseModel): @@ -12,7 +12,7 @@ class ListEntityKeyDefinitionsParams(UniversalBaseModel): Input parameters """ - entity_type: typing.Optional[ListEntityKeyDefinitionsResponseParamsEntityType] = None + entity_type: typing.Optional[EntityType] = None ids: typing.Optional[typing.List[str]] = None limit: typing.Optional[int] = pydantic.Field(default=None) """ diff --git a/src/schematic/companies/types/list_entity_key_definitions_request_entity_type.py b/src/schematic/companies/types/list_entity_key_definitions_request_entity_type.py deleted file mode 100644 index 9ca21e6..0000000 --- a/src/schematic/companies/types/list_entity_key_definitions_request_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListEntityKeyDefinitionsRequestEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/list_entity_key_definitions_response_params_entity_type.py b/src/schematic/companies/types/list_entity_key_definitions_response_params_entity_type.py deleted file mode 100644 index e1e0feb..0000000 --- a/src/schematic/companies/types/list_entity_key_definitions_response_params_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListEntityKeyDefinitionsResponseParamsEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/list_entity_trait_definitions_params.py b/src/schematic/companies/types/list_entity_trait_definitions_params.py index ab54427..8e46480 100644 --- a/src/schematic/companies/types/list_entity_trait_definitions_params.py +++ b/src/schematic/companies/types/list_entity_trait_definitions_params.py @@ -4,10 +4,8 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_entity_trait_definitions_response_params_entity_type import ( - ListEntityTraitDefinitionsResponseParamsEntityType, -) -from .list_entity_trait_definitions_response_params_trait_type import ListEntityTraitDefinitionsResponseParamsTraitType +from ...types.entity_type import EntityType +from ...types.trait_type import TraitType class ListEntityTraitDefinitionsParams(UniversalBaseModel): @@ -15,7 +13,7 @@ class ListEntityTraitDefinitionsParams(UniversalBaseModel): Input parameters """ - entity_type: typing.Optional[ListEntityTraitDefinitionsResponseParamsEntityType] = None + entity_type: typing.Optional[EntityType] = None ids: typing.Optional[typing.List[str]] = None limit: typing.Optional[int] = pydantic.Field(default=None) """ @@ -28,7 +26,8 @@ class ListEntityTraitDefinitionsParams(UniversalBaseModel): """ q: typing.Optional[str] = None - trait_type: typing.Optional[ListEntityTraitDefinitionsResponseParamsTraitType] = None + trait_type: typing.Optional[TraitType] = None + trait_types: typing.Optional[typing.List[TraitType]] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/companies/types/list_entity_trait_definitions_request_entity_type.py b/src/schematic/companies/types/list_entity_trait_definitions_request_entity_type.py deleted file mode 100644 index 476ded7..0000000 --- a/src/schematic/companies/types/list_entity_trait_definitions_request_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListEntityTraitDefinitionsRequestEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/list_entity_trait_definitions_request_trait_type.py b/src/schematic/companies/types/list_entity_trait_definitions_request_trait_type.py deleted file mode 100644 index a64fb6e..0000000 --- a/src/schematic/companies/types/list_entity_trait_definitions_request_trait_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListEntityTraitDefinitionsRequestTraitType = typing.Union[ - typing.Literal["boolean", "currency", "date", "number", "string", "url"], typing.Any -] diff --git a/src/schematic/companies/types/list_entity_trait_definitions_response_params_entity_type.py b/src/schematic/companies/types/list_entity_trait_definitions_response_params_entity_type.py deleted file mode 100644 index 0cd8fa0..0000000 --- a/src/schematic/companies/types/list_entity_trait_definitions_response_params_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListEntityTraitDefinitionsResponseParamsEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/companies/types/list_entity_trait_definitions_response_params_trait_type.py b/src/schematic/companies/types/list_entity_trait_definitions_response_params_trait_type.py deleted file mode 100644 index 9e4e305..0000000 --- a/src/schematic/companies/types/list_entity_trait_definitions_response_params_trait_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListEntityTraitDefinitionsResponseParamsTraitType = typing.Union[ - typing.Literal["boolean", "currency", "date", "number", "string", "url"], typing.Any -] diff --git a/src/schematic/companies/types/update_entity_trait_definition_request_body_trait_type.py b/src/schematic/companies/types/update_entity_trait_definition_request_body_trait_type.py deleted file mode 100644 index d64a5a7..0000000 --- a/src/schematic/companies/types/update_entity_trait_definition_request_body_trait_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateEntityTraitDefinitionRequestBodyTraitType = typing.Union[ - typing.Literal["boolean", "currency", "date", "number", "string", "url"], typing.Any -] diff --git a/src/schematic/components/__init__.py b/src/schematic/components/__init__.py index 558be29..8e8dcba 100644 --- a/src/schematic/components/__init__.py +++ b/src/schematic/components/__init__.py @@ -9,7 +9,6 @@ from .types import ( CountComponentsParams, CountComponentsResponse, - CreateComponentRequestBodyEntityType, CreateComponentResponse, DeleteComponentResponse, GetComponentResponse, @@ -17,14 +16,11 @@ ListComponentsResponse, PreviewComponentDataParams, PreviewComponentDataResponse, - UpdateComponentRequestBodyEntityType, - UpdateComponentRequestBodyState, UpdateComponentResponse, ) _dynamic_imports: typing.Dict[str, str] = { "CountComponentsParams": ".types", "CountComponentsResponse": ".types", - "CreateComponentRequestBodyEntityType": ".types", "CreateComponentResponse": ".types", "DeleteComponentResponse": ".types", "GetComponentResponse": ".types", @@ -32,8 +28,6 @@ "ListComponentsResponse": ".types", "PreviewComponentDataParams": ".types", "PreviewComponentDataResponse": ".types", - "UpdateComponentRequestBodyEntityType": ".types", - "UpdateComponentRequestBodyState": ".types", "UpdateComponentResponse": ".types", } @@ -62,7 +56,6 @@ def __dir__(): __all__ = [ "CountComponentsParams", "CountComponentsResponse", - "CreateComponentRequestBodyEntityType", "CreateComponentResponse", "DeleteComponentResponse", "GetComponentResponse", @@ -70,7 +63,5 @@ def __dir__(): "ListComponentsResponse", "PreviewComponentDataParams", "PreviewComponentDataResponse", - "UpdateComponentRequestBodyEntityType", - "UpdateComponentRequestBodyState", "UpdateComponentResponse", ] diff --git a/src/schematic/components/client.py b/src/schematic/components/client.py index f5d2928..1e72fe4 100644 --- a/src/schematic/components/client.py +++ b/src/schematic/components/client.py @@ -4,16 +4,15 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions +from ..types.component_entity_type import ComponentEntityType +from ..types.component_state import ComponentState from .raw_client import AsyncRawComponentsClient, RawComponentsClient from .types.count_components_response import CountComponentsResponse -from .types.create_component_request_body_entity_type import CreateComponentRequestBodyEntityType from .types.create_component_response import CreateComponentResponse from .types.delete_component_response import DeleteComponentResponse from .types.get_component_response import GetComponentResponse from .types.list_components_response import ListComponentsResponse from .types.preview_component_data_response import PreviewComponentDataResponse -from .types.update_component_request_body_entity_type import UpdateComponentRequestBodyEntityType -from .types.update_component_request_body_state import UpdateComponentRequestBodyState from .types.update_component_response import UpdateComponentResponse # this is used as the default value for optional parameters @@ -81,7 +80,7 @@ def list_components( def create_component( self, *, - entity_type: CreateComponentRequestBodyEntityType, + entity_type: ComponentEntityType, name: str, ast: typing.Optional[typing.Dict[str, float]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -89,7 +88,7 @@ def create_component( """ Parameters ---------- - entity_type : CreateComponentRequestBodyEntityType + entity_type : ComponentEntityType name : str @@ -111,7 +110,7 @@ def create_component( api_key="YOUR_API_KEY", ) client.components.create_component( - entity_type="entitlement", + entity_type="billing", name="name", ) """ @@ -156,9 +155,9 @@ def update_component( component_id: str, *, ast: typing.Optional[typing.Dict[str, float]] = OMIT, - entity_type: typing.Optional[UpdateComponentRequestBodyEntityType] = OMIT, + entity_type: typing.Optional[ComponentEntityType] = OMIT, name: typing.Optional[str] = OMIT, - state: typing.Optional[UpdateComponentRequestBodyState] = OMIT, + state: typing.Optional[ComponentState] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateComponentResponse: """ @@ -169,11 +168,11 @@ def update_component( ast : typing.Optional[typing.Dict[str, float]] - entity_type : typing.Optional[UpdateComponentRequestBodyEntityType] + entity_type : typing.Optional[ComponentEntityType] name : typing.Optional[str] - state : typing.Optional[UpdateComponentRequestBodyState] + state : typing.Optional[ComponentState] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -384,7 +383,7 @@ async def main() -> None: async def create_component( self, *, - entity_type: CreateComponentRequestBodyEntityType, + entity_type: ComponentEntityType, name: str, ast: typing.Optional[typing.Dict[str, float]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -392,7 +391,7 @@ async def create_component( """ Parameters ---------- - entity_type : CreateComponentRequestBodyEntityType + entity_type : ComponentEntityType name : str @@ -419,7 +418,7 @@ async def create_component( async def main() -> None: await client.components.create_component( - entity_type="entitlement", + entity_type="billing", name="name", ) @@ -475,9 +474,9 @@ async def update_component( component_id: str, *, ast: typing.Optional[typing.Dict[str, float]] = OMIT, - entity_type: typing.Optional[UpdateComponentRequestBodyEntityType] = OMIT, + entity_type: typing.Optional[ComponentEntityType] = OMIT, name: typing.Optional[str] = OMIT, - state: typing.Optional[UpdateComponentRequestBodyState] = OMIT, + state: typing.Optional[ComponentState] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateComponentResponse: """ @@ -488,11 +487,11 @@ async def update_component( ast : typing.Optional[typing.Dict[str, float]] - entity_type : typing.Optional[UpdateComponentRequestBodyEntityType] + entity_type : typing.Optional[ComponentEntityType] name : typing.Optional[str] - state : typing.Optional[UpdateComponentRequestBodyState] + state : typing.Optional[ComponentState] request_options : typing.Optional[RequestOptions] Request-specific configuration. diff --git a/src/schematic/components/raw_client.py b/src/schematic/components/raw_client.py index c705c46..1cac06c 100644 --- a/src/schematic/components/raw_client.py +++ b/src/schematic/components/raw_client.py @@ -15,15 +15,14 @@ from ..errors.not_found_error import NotFoundError from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError +from ..types.component_entity_type import ComponentEntityType +from ..types.component_state import ComponentState from .types.count_components_response import CountComponentsResponse -from .types.create_component_request_body_entity_type import CreateComponentRequestBodyEntityType from .types.create_component_response import CreateComponentResponse from .types.delete_component_response import DeleteComponentResponse from .types.get_component_response import GetComponentResponse from .types.list_components_response import ListComponentsResponse from .types.preview_component_data_response import PreviewComponentDataResponse -from .types.update_component_request_body_entity_type import UpdateComponentRequestBodyEntityType -from .types.update_component_request_body_state import UpdateComponentRequestBodyState from .types.update_component_response import UpdateComponentResponse # this is used as the default value for optional parameters @@ -148,7 +147,7 @@ def list_components( def create_component( self, *, - entity_type: CreateComponentRequestBodyEntityType, + entity_type: ComponentEntityType, name: str, ast: typing.Optional[typing.Dict[str, float]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -156,7 +155,7 @@ def create_component( """ Parameters ---------- - entity_type : CreateComponentRequestBodyEntityType + entity_type : ComponentEntityType name : str @@ -348,9 +347,9 @@ def update_component( component_id: str, *, ast: typing.Optional[typing.Dict[str, float]] = OMIT, - entity_type: typing.Optional[UpdateComponentRequestBodyEntityType] = OMIT, + entity_type: typing.Optional[ComponentEntityType] = OMIT, name: typing.Optional[str] = OMIT, - state: typing.Optional[UpdateComponentRequestBodyState] = OMIT, + state: typing.Optional[ComponentState] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[UpdateComponentResponse]: """ @@ -361,11 +360,11 @@ def update_component( ast : typing.Optional[typing.Dict[str, float]] - entity_type : typing.Optional[UpdateComponentRequestBodyEntityType] + entity_type : typing.Optional[ComponentEntityType] name : typing.Optional[str] - state : typing.Optional[UpdateComponentRequestBodyState] + state : typing.Optional[ComponentState] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -884,7 +883,7 @@ async def list_components( async def create_component( self, *, - entity_type: CreateComponentRequestBodyEntityType, + entity_type: ComponentEntityType, name: str, ast: typing.Optional[typing.Dict[str, float]] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -892,7 +891,7 @@ async def create_component( """ Parameters ---------- - entity_type : CreateComponentRequestBodyEntityType + entity_type : ComponentEntityType name : str @@ -1084,9 +1083,9 @@ async def update_component( component_id: str, *, ast: typing.Optional[typing.Dict[str, float]] = OMIT, - entity_type: typing.Optional[UpdateComponentRequestBodyEntityType] = OMIT, + entity_type: typing.Optional[ComponentEntityType] = OMIT, name: typing.Optional[str] = OMIT, - state: typing.Optional[UpdateComponentRequestBodyState] = OMIT, + state: typing.Optional[ComponentState] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[UpdateComponentResponse]: """ @@ -1097,11 +1096,11 @@ async def update_component( ast : typing.Optional[typing.Dict[str, float]] - entity_type : typing.Optional[UpdateComponentRequestBodyEntityType] + entity_type : typing.Optional[ComponentEntityType] name : typing.Optional[str] - state : typing.Optional[UpdateComponentRequestBodyState] + state : typing.Optional[ComponentState] request_options : typing.Optional[RequestOptions] Request-specific configuration. diff --git a/src/schematic/components/types/__init__.py b/src/schematic/components/types/__init__.py index 5f85804..34aa0f5 100644 --- a/src/schematic/components/types/__init__.py +++ b/src/schematic/components/types/__init__.py @@ -8,7 +8,6 @@ if typing.TYPE_CHECKING: from .count_components_params import CountComponentsParams from .count_components_response import CountComponentsResponse - from .create_component_request_body_entity_type import CreateComponentRequestBodyEntityType from .create_component_response import CreateComponentResponse from .delete_component_response import DeleteComponentResponse from .get_component_response import GetComponentResponse @@ -16,13 +15,10 @@ from .list_components_response import ListComponentsResponse from .preview_component_data_params import PreviewComponentDataParams from .preview_component_data_response import PreviewComponentDataResponse - from .update_component_request_body_entity_type import UpdateComponentRequestBodyEntityType - from .update_component_request_body_state import UpdateComponentRequestBodyState from .update_component_response import UpdateComponentResponse _dynamic_imports: typing.Dict[str, str] = { "CountComponentsParams": ".count_components_params", "CountComponentsResponse": ".count_components_response", - "CreateComponentRequestBodyEntityType": ".create_component_request_body_entity_type", "CreateComponentResponse": ".create_component_response", "DeleteComponentResponse": ".delete_component_response", "GetComponentResponse": ".get_component_response", @@ -30,8 +26,6 @@ "ListComponentsResponse": ".list_components_response", "PreviewComponentDataParams": ".preview_component_data_params", "PreviewComponentDataResponse": ".preview_component_data_response", - "UpdateComponentRequestBodyEntityType": ".update_component_request_body_entity_type", - "UpdateComponentRequestBodyState": ".update_component_request_body_state", "UpdateComponentResponse": ".update_component_response", } @@ -60,7 +54,6 @@ def __dir__(): __all__ = [ "CountComponentsParams", "CountComponentsResponse", - "CreateComponentRequestBodyEntityType", "CreateComponentResponse", "DeleteComponentResponse", "GetComponentResponse", @@ -68,7 +61,5 @@ def __dir__(): "ListComponentsResponse", "PreviewComponentDataParams", "PreviewComponentDataResponse", - "UpdateComponentRequestBodyEntityType", - "UpdateComponentRequestBodyState", "UpdateComponentResponse", ] diff --git a/src/schematic/components/types/create_component_request_body_entity_type.py b/src/schematic/components/types/create_component_request_body_entity_type.py deleted file mode 100644 index 2560517..0000000 --- a/src/schematic/components/types/create_component_request_body_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateComponentRequestBodyEntityType = typing.Union[typing.Literal["entitlement", "billing"], typing.Any] diff --git a/src/schematic/components/types/update_component_request_body_entity_type.py b/src/schematic/components/types/update_component_request_body_entity_type.py deleted file mode 100644 index 04e683a..0000000 --- a/src/schematic/components/types/update_component_request_body_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateComponentRequestBodyEntityType = typing.Union[typing.Literal["entitlement", "billing"], typing.Any] diff --git a/src/schematic/components/types/update_component_request_body_state.py b/src/schematic/components/types/update_component_request_body_state.py deleted file mode 100644 index 9691fca..0000000 --- a/src/schematic/components/types/update_component_request_body_state.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateComponentRequestBodyState = typing.Union[typing.Literal["draft", "live"], typing.Any] diff --git a/src/schematic/core/client_wrapper.py b/src/schematic/core/client_wrapper.py index 12a6084..c2b4506 100644 --- a/src/schematic/core/client_wrapper.py +++ b/src/schematic/core/client_wrapper.py @@ -22,10 +22,10 @@ def __init__( def get_headers(self) -> typing.Dict[str, str]: headers: typing.Dict[str, str] = { - "User-Agent": "schematichq/1.1.3", + "User-Agent": "schematichq/1.1.4", "X-Fern-Language": "Python", "X-Fern-SDK-Name": "schematichq", - "X-Fern-SDK-Version": "1.1.3", + "X-Fern-SDK-Version": "1.1.4", **(self.get_custom_headers() or {}), } headers["X-Schematic-Api-Key"] = self.api_key diff --git a/src/schematic/credits/__init__.py b/src/schematic/credits/__init__.py index 78f02a2..3ca5760 100644 --- a/src/schematic/credits/__init__.py +++ b/src/schematic/credits/__init__.py @@ -14,36 +14,18 @@ CountBillingPlanCreditGrantsParams, CountBillingPlanCreditGrantsResponse, CountCreditBundlesParams, - CountCreditBundlesRequestStatus, CountCreditBundlesResponse, - CountCreditBundlesResponseParamsStatus, CountCreditLedgerParams, - CountCreditLedgerRequestPeriod, CountCreditLedgerResponse, - CountCreditLedgerResponseParamsPeriod, - CreateBillingCreditRequestBodyBurnStrategy, - CreateBillingCreditRequestBodyDefaultRolloverPolicy, CreateBillingCreditResponse, - CreateBillingPlanCreditGrantRequestBodyExpiryType, - CreateBillingPlanCreditGrantRequestBodyExpiryUnit, - CreateBillingPlanCreditGrantRequestBodyResetCadence, - CreateBillingPlanCreditGrantRequestBodyResetStart, - CreateBillingPlanCreditGrantRequestBodyResetType, CreateBillingPlanCreditGrantResponse, - CreateCompanyCreditGrantExpiryType, - CreateCompanyCreditGrantExpiryUnit, - CreateCreditBundleRequestBodyExpiryType, - CreateCreditBundleRequestBodyExpiryUnit, - CreateCreditBundleRequestBodyStatus, CreateCreditBundleResponse, DeleteBillingPlanCreditGrantParams, DeleteBillingPlanCreditGrantResponse, DeleteCreditBundleResponse, GetCreditBundleResponse, GetEnrichedCreditLedgerParams, - GetEnrichedCreditLedgerRequestPeriod, GetEnrichedCreditLedgerResponse, - GetEnrichedCreditLedgerResponseParamsPeriod, GetSingleBillingCreditResponse, GrantBillingCreditsToCompanyResponse, ListBillingCreditsParams, @@ -51,32 +33,15 @@ ListBillingPlanCreditGrantsParams, ListBillingPlanCreditGrantsResponse, ListCompanyGrantsParams, - ListCompanyGrantsRequestDir, - ListCompanyGrantsRequestOrder, ListCompanyGrantsResponse, - ListCompanyGrantsResponseParamsDir, - ListCompanyGrantsResponseParamsOrder, ListCreditBundlesParams, - ListCreditBundlesRequestStatus, ListCreditBundlesResponse, - ListCreditBundlesResponseParamsStatus, ListGrantsForCreditParams, ListGrantsForCreditResponse, SoftDeleteBillingCreditResponse, - UpdateBillingCreditRequestBodyBurnStrategy, - UpdateBillingCreditRequestBodyDefaultRolloverPolicy, UpdateBillingCreditResponse, - UpdateBillingPlanCreditGrantRequestBodyExpiryType, - UpdateBillingPlanCreditGrantRequestBodyExpiryUnit, - UpdateBillingPlanCreditGrantRequestBodyResetCadence, - UpdateBillingPlanCreditGrantRequestBodyResetStart, - UpdateBillingPlanCreditGrantRequestBodyResetType, UpdateBillingPlanCreditGrantResponse, - UpdateCreditBundleDetailsRequestBodyExpiryType, - UpdateCreditBundleDetailsRequestBodyExpiryUnit, - UpdateCreditBundleDetailsRequestBodyStatus, UpdateCreditBundleDetailsResponse, - ZeroOutGrantRequestBodyReason, ZeroOutGrantResponse, ) _dynamic_imports: typing.Dict[str, str] = { @@ -87,36 +52,18 @@ "CountBillingPlanCreditGrantsParams": ".types", "CountBillingPlanCreditGrantsResponse": ".types", "CountCreditBundlesParams": ".types", - "CountCreditBundlesRequestStatus": ".types", "CountCreditBundlesResponse": ".types", - "CountCreditBundlesResponseParamsStatus": ".types", "CountCreditLedgerParams": ".types", - "CountCreditLedgerRequestPeriod": ".types", "CountCreditLedgerResponse": ".types", - "CountCreditLedgerResponseParamsPeriod": ".types", - "CreateBillingCreditRequestBodyBurnStrategy": ".types", - "CreateBillingCreditRequestBodyDefaultRolloverPolicy": ".types", "CreateBillingCreditResponse": ".types", - "CreateBillingPlanCreditGrantRequestBodyExpiryType": ".types", - "CreateBillingPlanCreditGrantRequestBodyExpiryUnit": ".types", - "CreateBillingPlanCreditGrantRequestBodyResetCadence": ".types", - "CreateBillingPlanCreditGrantRequestBodyResetStart": ".types", - "CreateBillingPlanCreditGrantRequestBodyResetType": ".types", "CreateBillingPlanCreditGrantResponse": ".types", - "CreateCompanyCreditGrantExpiryType": ".types", - "CreateCompanyCreditGrantExpiryUnit": ".types", - "CreateCreditBundleRequestBodyExpiryType": ".types", - "CreateCreditBundleRequestBodyExpiryUnit": ".types", - "CreateCreditBundleRequestBodyStatus": ".types", "CreateCreditBundleResponse": ".types", "DeleteBillingPlanCreditGrantParams": ".types", "DeleteBillingPlanCreditGrantResponse": ".types", "DeleteCreditBundleResponse": ".types", "GetCreditBundleResponse": ".types", "GetEnrichedCreditLedgerParams": ".types", - "GetEnrichedCreditLedgerRequestPeriod": ".types", "GetEnrichedCreditLedgerResponse": ".types", - "GetEnrichedCreditLedgerResponseParamsPeriod": ".types", "GetSingleBillingCreditResponse": ".types", "GrantBillingCreditsToCompanyResponse": ".types", "ListBillingCreditsParams": ".types", @@ -124,32 +71,15 @@ "ListBillingPlanCreditGrantsParams": ".types", "ListBillingPlanCreditGrantsResponse": ".types", "ListCompanyGrantsParams": ".types", - "ListCompanyGrantsRequestDir": ".types", - "ListCompanyGrantsRequestOrder": ".types", "ListCompanyGrantsResponse": ".types", - "ListCompanyGrantsResponseParamsDir": ".types", - "ListCompanyGrantsResponseParamsOrder": ".types", "ListCreditBundlesParams": ".types", - "ListCreditBundlesRequestStatus": ".types", "ListCreditBundlesResponse": ".types", - "ListCreditBundlesResponseParamsStatus": ".types", "ListGrantsForCreditParams": ".types", "ListGrantsForCreditResponse": ".types", "SoftDeleteBillingCreditResponse": ".types", - "UpdateBillingCreditRequestBodyBurnStrategy": ".types", - "UpdateBillingCreditRequestBodyDefaultRolloverPolicy": ".types", "UpdateBillingCreditResponse": ".types", - "UpdateBillingPlanCreditGrantRequestBodyExpiryType": ".types", - "UpdateBillingPlanCreditGrantRequestBodyExpiryUnit": ".types", - "UpdateBillingPlanCreditGrantRequestBodyResetCadence": ".types", - "UpdateBillingPlanCreditGrantRequestBodyResetStart": ".types", - "UpdateBillingPlanCreditGrantRequestBodyResetType": ".types", "UpdateBillingPlanCreditGrantResponse": ".types", - "UpdateCreditBundleDetailsRequestBodyExpiryType": ".types", - "UpdateCreditBundleDetailsRequestBodyExpiryUnit": ".types", - "UpdateCreditBundleDetailsRequestBodyStatus": ".types", "UpdateCreditBundleDetailsResponse": ".types", - "ZeroOutGrantRequestBodyReason": ".types", "ZeroOutGrantResponse": ".types", } @@ -183,36 +113,18 @@ def __dir__(): "CountBillingPlanCreditGrantsParams", "CountBillingPlanCreditGrantsResponse", "CountCreditBundlesParams", - "CountCreditBundlesRequestStatus", "CountCreditBundlesResponse", - "CountCreditBundlesResponseParamsStatus", "CountCreditLedgerParams", - "CountCreditLedgerRequestPeriod", "CountCreditLedgerResponse", - "CountCreditLedgerResponseParamsPeriod", - "CreateBillingCreditRequestBodyBurnStrategy", - "CreateBillingCreditRequestBodyDefaultRolloverPolicy", "CreateBillingCreditResponse", - "CreateBillingPlanCreditGrantRequestBodyExpiryType", - "CreateBillingPlanCreditGrantRequestBodyExpiryUnit", - "CreateBillingPlanCreditGrantRequestBodyResetCadence", - "CreateBillingPlanCreditGrantRequestBodyResetStart", - "CreateBillingPlanCreditGrantRequestBodyResetType", "CreateBillingPlanCreditGrantResponse", - "CreateCompanyCreditGrantExpiryType", - "CreateCompanyCreditGrantExpiryUnit", - "CreateCreditBundleRequestBodyExpiryType", - "CreateCreditBundleRequestBodyExpiryUnit", - "CreateCreditBundleRequestBodyStatus", "CreateCreditBundleResponse", "DeleteBillingPlanCreditGrantParams", "DeleteBillingPlanCreditGrantResponse", "DeleteCreditBundleResponse", "GetCreditBundleResponse", "GetEnrichedCreditLedgerParams", - "GetEnrichedCreditLedgerRequestPeriod", "GetEnrichedCreditLedgerResponse", - "GetEnrichedCreditLedgerResponseParamsPeriod", "GetSingleBillingCreditResponse", "GrantBillingCreditsToCompanyResponse", "ListBillingCreditsParams", @@ -220,31 +132,14 @@ def __dir__(): "ListBillingPlanCreditGrantsParams", "ListBillingPlanCreditGrantsResponse", "ListCompanyGrantsParams", - "ListCompanyGrantsRequestDir", - "ListCompanyGrantsRequestOrder", "ListCompanyGrantsResponse", - "ListCompanyGrantsResponseParamsDir", - "ListCompanyGrantsResponseParamsOrder", "ListCreditBundlesParams", - "ListCreditBundlesRequestStatus", "ListCreditBundlesResponse", - "ListCreditBundlesResponseParamsStatus", "ListGrantsForCreditParams", "ListGrantsForCreditResponse", "SoftDeleteBillingCreditResponse", - "UpdateBillingCreditRequestBodyBurnStrategy", - "UpdateBillingCreditRequestBodyDefaultRolloverPolicy", "UpdateBillingCreditResponse", - "UpdateBillingPlanCreditGrantRequestBodyExpiryType", - "UpdateBillingPlanCreditGrantRequestBodyExpiryUnit", - "UpdateBillingPlanCreditGrantRequestBodyResetCadence", - "UpdateBillingPlanCreditGrantRequestBodyResetStart", - "UpdateBillingPlanCreditGrantRequestBodyResetType", "UpdateBillingPlanCreditGrantResponse", - "UpdateCreditBundleDetailsRequestBodyExpiryType", - "UpdateCreditBundleDetailsRequestBodyExpiryUnit", - "UpdateCreditBundleDetailsRequestBodyStatus", "UpdateCreditBundleDetailsResponse", - "ZeroOutGrantRequestBodyReason", "ZeroOutGrantResponse", ] diff --git a/src/schematic/credits/client.py b/src/schematic/credits/client.py index 0a4c600..6555cfc 100644 --- a/src/schematic/credits/client.py +++ b/src/schematic/credits/client.py @@ -5,83 +5,45 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions +from ..types.billing_credit_bundle_status import BillingCreditBundleStatus +from ..types.billing_credit_bundle_type import BillingCreditBundleType +from ..types.billing_credit_burn_strategy import BillingCreditBurnStrategy +from ..types.billing_credit_expiry_type import BillingCreditExpiryType +from ..types.billing_credit_expiry_unit import BillingCreditExpiryUnit +from ..types.billing_credit_grant_reason import BillingCreditGrantReason +from ..types.billing_credit_grant_zeroed_out_reason import BillingCreditGrantZeroedOutReason +from ..types.billing_credit_rollover_policy import BillingCreditRolloverPolicy +from ..types.billing_plan_credit_grant_reset_cadence import BillingPlanCreditGrantResetCadence +from ..types.billing_plan_credit_grant_reset_start import BillingPlanCreditGrantResetStart +from ..types.billing_plan_credit_grant_reset_type import BillingPlanCreditGrantResetType +from ..types.credit_auto_topup_amount_type import CreditAutoTopupAmountType +from ..types.credit_grant_sort_order import CreditGrantSortOrder +from ..types.credit_ledger_period import CreditLedgerPeriod +from ..types.sort_direction import SortDirection from .raw_client import AsyncRawCreditsClient, RawCreditsClient from .types.count_billing_credits_grants_response import CountBillingCreditsGrantsResponse from .types.count_billing_credits_response import CountBillingCreditsResponse from .types.count_billing_plan_credit_grants_response import CountBillingPlanCreditGrantsResponse -from .types.count_credit_bundles_request_status import CountCreditBundlesRequestStatus from .types.count_credit_bundles_response import CountCreditBundlesResponse -from .types.count_credit_ledger_request_period import CountCreditLedgerRequestPeriod from .types.count_credit_ledger_response import CountCreditLedgerResponse -from .types.create_billing_credit_request_body_burn_strategy import CreateBillingCreditRequestBodyBurnStrategy -from .types.create_billing_credit_request_body_default_rollover_policy import ( - CreateBillingCreditRequestBodyDefaultRolloverPolicy, -) from .types.create_billing_credit_response import CreateBillingCreditResponse -from .types.create_billing_plan_credit_grant_request_body_expiry_type import ( - CreateBillingPlanCreditGrantRequestBodyExpiryType, -) -from .types.create_billing_plan_credit_grant_request_body_expiry_unit import ( - CreateBillingPlanCreditGrantRequestBodyExpiryUnit, -) -from .types.create_billing_plan_credit_grant_request_body_reset_cadence import ( - CreateBillingPlanCreditGrantRequestBodyResetCadence, -) -from .types.create_billing_plan_credit_grant_request_body_reset_start import ( - CreateBillingPlanCreditGrantRequestBodyResetStart, -) -from .types.create_billing_plan_credit_grant_request_body_reset_type import ( - CreateBillingPlanCreditGrantRequestBodyResetType, -) from .types.create_billing_plan_credit_grant_response import CreateBillingPlanCreditGrantResponse -from .types.create_company_credit_grant_expiry_type import CreateCompanyCreditGrantExpiryType -from .types.create_company_credit_grant_expiry_unit import CreateCompanyCreditGrantExpiryUnit -from .types.create_credit_bundle_request_body_expiry_type import CreateCreditBundleRequestBodyExpiryType -from .types.create_credit_bundle_request_body_expiry_unit import CreateCreditBundleRequestBodyExpiryUnit -from .types.create_credit_bundle_request_body_status import CreateCreditBundleRequestBodyStatus from .types.create_credit_bundle_response import CreateCreditBundleResponse from .types.delete_billing_plan_credit_grant_response import DeleteBillingPlanCreditGrantResponse from .types.delete_credit_bundle_response import DeleteCreditBundleResponse from .types.get_credit_bundle_response import GetCreditBundleResponse -from .types.get_enriched_credit_ledger_request_period import GetEnrichedCreditLedgerRequestPeriod from .types.get_enriched_credit_ledger_response import GetEnrichedCreditLedgerResponse from .types.get_single_billing_credit_response import GetSingleBillingCreditResponse from .types.grant_billing_credits_to_company_response import GrantBillingCreditsToCompanyResponse from .types.list_billing_credits_response import ListBillingCreditsResponse from .types.list_billing_plan_credit_grants_response import ListBillingPlanCreditGrantsResponse -from .types.list_company_grants_request_dir import ListCompanyGrantsRequestDir -from .types.list_company_grants_request_order import ListCompanyGrantsRequestOrder from .types.list_company_grants_response import ListCompanyGrantsResponse -from .types.list_credit_bundles_request_status import ListCreditBundlesRequestStatus from .types.list_credit_bundles_response import ListCreditBundlesResponse from .types.list_grants_for_credit_response import ListGrantsForCreditResponse from .types.soft_delete_billing_credit_response import SoftDeleteBillingCreditResponse -from .types.update_billing_credit_request_body_burn_strategy import UpdateBillingCreditRequestBodyBurnStrategy -from .types.update_billing_credit_request_body_default_rollover_policy import ( - UpdateBillingCreditRequestBodyDefaultRolloverPolicy, -) from .types.update_billing_credit_response import UpdateBillingCreditResponse -from .types.update_billing_plan_credit_grant_request_body_expiry_type import ( - UpdateBillingPlanCreditGrantRequestBodyExpiryType, -) -from .types.update_billing_plan_credit_grant_request_body_expiry_unit import ( - UpdateBillingPlanCreditGrantRequestBodyExpiryUnit, -) -from .types.update_billing_plan_credit_grant_request_body_reset_cadence import ( - UpdateBillingPlanCreditGrantRequestBodyResetCadence, -) -from .types.update_billing_plan_credit_grant_request_body_reset_start import ( - UpdateBillingPlanCreditGrantRequestBodyResetStart, -) -from .types.update_billing_plan_credit_grant_request_body_reset_type import ( - UpdateBillingPlanCreditGrantRequestBodyResetType, -) from .types.update_billing_plan_credit_grant_response import UpdateBillingPlanCreditGrantResponse -from .types.update_credit_bundle_details_request_body_expiry_type import UpdateCreditBundleDetailsRequestBodyExpiryType -from .types.update_credit_bundle_details_request_body_expiry_unit import UpdateCreditBundleDetailsRequestBodyExpiryUnit -from .types.update_credit_bundle_details_request_body_status import UpdateCreditBundleDetailsRequestBodyStatus from .types.update_credit_bundle_details_response import UpdateCreditBundleDetailsResponse -from .types.zero_out_grant_request_body_reason import ZeroOutGrantRequestBodyReason from .types.zero_out_grant_response import ZeroOutGrantResponse # this is used as the default value for optional parameters @@ -157,10 +119,10 @@ def create_billing_credit( currency: str, description: str, name: str, - burn_strategy: typing.Optional[CreateBillingCreditRequestBodyBurnStrategy] = OMIT, - default_expiry_unit: typing.Optional[str] = OMIT, + burn_strategy: typing.Optional[BillingCreditBurnStrategy] = OMIT, + default_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, default_expiry_unit_count: typing.Optional[int] = OMIT, - default_rollover_policy: typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy] = OMIT, + default_rollover_policy: typing.Optional[BillingCreditRolloverPolicy] = OMIT, icon: typing.Optional[str] = OMIT, per_unit_price: typing.Optional[int] = OMIT, per_unit_price_decimal: typing.Optional[str] = OMIT, @@ -177,13 +139,13 @@ def create_billing_credit( name : str - burn_strategy : typing.Optional[CreateBillingCreditRequestBodyBurnStrategy] + burn_strategy : typing.Optional[BillingCreditBurnStrategy] - default_expiry_unit : typing.Optional[str] + default_expiry_unit : typing.Optional[BillingCreditExpiryUnit] default_expiry_unit_count : typing.Optional[int] - default_rollover_policy : typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy] + default_rollover_policy : typing.Optional[BillingCreditRolloverPolicy] icon : typing.Optional[str] @@ -270,10 +232,10 @@ def update_billing_credit( *, description: str, name: str, - burn_strategy: typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy] = OMIT, - default_expiry_unit: typing.Optional[typing.Literal["days"]] = OMIT, + burn_strategy: typing.Optional[BillingCreditBurnStrategy] = OMIT, + default_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, default_expiry_unit_count: typing.Optional[int] = OMIT, - default_rollover_policy: typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy] = OMIT, + default_rollover_policy: typing.Optional[BillingCreditRolloverPolicy] = OMIT, icon: typing.Optional[str] = OMIT, per_unit_price: typing.Optional[int] = OMIT, per_unit_price_decimal: typing.Optional[str] = OMIT, @@ -291,13 +253,13 @@ def update_billing_credit( name : str - burn_strategy : typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy] + burn_strategy : typing.Optional[BillingCreditBurnStrategy] - default_expiry_unit : typing.Optional[typing.Literal["days"]] + default_expiry_unit : typing.Optional[BillingCreditExpiryUnit] default_expiry_unit_count : typing.Optional[int] - default_rollover_policy : typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy] + default_rollover_policy : typing.Optional[BillingCreditRolloverPolicy] icon : typing.Optional[str] @@ -383,8 +345,8 @@ def list_credit_bundles( *, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_id: typing.Optional[str] = None, - status: typing.Optional[ListCreditBundlesRequestStatus] = None, - bundle_type: typing.Optional[typing.Literal["fixed"]] = None, + status: typing.Optional[BillingCreditBundleStatus] = None, + bundle_type: typing.Optional[BillingCreditBundleType] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -396,9 +358,9 @@ def list_credit_bundles( credit_id : typing.Optional[str] - status : typing.Optional[ListCreditBundlesRequestStatus] + status : typing.Optional[BillingCreditBundleStatus] - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] limit : typing.Optional[int] Page limit (default 100) @@ -446,13 +408,13 @@ def create_credit_bundle( credit_id: str, currency: str, price_per_unit: int, - bundle_type: typing.Optional[typing.Literal["fixed"]] = OMIT, - expiry_type: typing.Optional[CreateCreditBundleRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateCreditBundleRequestBodyExpiryUnit] = OMIT, + bundle_type: typing.Optional[BillingCreditBundleType] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, price_per_unit_decimal: typing.Optional[str] = OMIT, quantity: typing.Optional[int] = OMIT, - status: typing.Optional[CreateCreditBundleRequestBodyStatus] = OMIT, + status: typing.Optional[BillingCreditBundleStatus] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> CreateCreditBundleResponse: """ @@ -466,11 +428,11 @@ def create_credit_bundle( price_per_unit : int - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] - expiry_type : typing.Optional[CreateCreditBundleRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[CreateCreditBundleRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] @@ -478,7 +440,7 @@ def create_credit_bundle( quantity : typing.Optional[int] - status : typing.Optional[CreateCreditBundleRequestBodyStatus] + status : typing.Optional[BillingCreditBundleStatus] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -555,12 +517,12 @@ def update_credit_bundle_details( *, bundle_name: str, price_per_unit: int, - expiry_type: typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, price_per_unit_decimal: typing.Optional[str] = OMIT, quantity: typing.Optional[int] = OMIT, - status: typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus] = OMIT, + status: typing.Optional[BillingCreditBundleStatus] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateCreditBundleDetailsResponse: """ @@ -573,9 +535,9 @@ def update_credit_bundle_details( price_per_unit : int - expiry_type : typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] @@ -583,7 +545,7 @@ def update_credit_bundle_details( quantity : typing.Optional[int] - status : typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus] + status : typing.Optional[BillingCreditBundleStatus] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -656,8 +618,8 @@ def count_credit_bundles( *, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_id: typing.Optional[str] = None, - status: typing.Optional[CountCreditBundlesRequestStatus] = None, - bundle_type: typing.Optional[typing.Literal["fixed"]] = None, + status: typing.Optional[BillingCreditBundleStatus] = None, + bundle_type: typing.Optional[BillingCreditBundleType] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -669,9 +631,9 @@ def count_credit_bundles( credit_id : typing.Optional[str] - status : typing.Optional[CountCreditBundlesRequestStatus] + status : typing.Optional[BillingCreditBundleStatus] - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] limit : typing.Optional[int] Page limit (default 100) @@ -764,7 +726,7 @@ def zero_out_grant( self, grant_id: str, *, - reason: typing.Optional[ZeroOutGrantRequestBodyReason] = OMIT, + reason: typing.Optional[BillingCreditGrantZeroedOutReason] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> ZeroOutGrantResponse: """ @@ -773,7 +735,7 @@ def zero_out_grant( grant_id : str grant_id - reason : typing.Optional[ZeroOutGrantRequestBodyReason] + reason : typing.Optional[BillingCreditGrantZeroedOutReason] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -803,12 +765,14 @@ def grant_billing_credits_to_company( company_id: str, credit_id: str, quantity: int, - reason: str, + reason: BillingCreditGrantReason, billing_periods_count: typing.Optional[int] = OMIT, expires_at: typing.Optional[dt.datetime] = OMIT, - expiry_type: typing.Optional[CreateCompanyCreditGrantExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateCompanyCreditGrantExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, + renewal_enabled: typing.Optional[bool] = OMIT, + renewal_period: typing.Optional[BillingPlanCreditGrantResetStart] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> GrantBillingCreditsToCompanyResponse: """ @@ -820,18 +784,22 @@ def grant_billing_credits_to_company( quantity : int - reason : str + reason : BillingCreditGrantReason billing_periods_count : typing.Optional[int] expires_at : typing.Optional[dt.datetime] - expiry_type : typing.Optional[CreateCompanyCreditGrantExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[CreateCompanyCreditGrantExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] + renewal_enabled : typing.Optional[bool] + + renewal_period : typing.Optional[BillingPlanCreditGrantResetStart] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -851,7 +819,7 @@ def grant_billing_credits_to_company( company_id="company_id", credit_id="credit_id", quantity=1, - reason="reason", + reason="billing_credit_auto_topup", ) """ _response = self._raw_client.grant_billing_credits_to_company( @@ -864,6 +832,8 @@ def grant_billing_credits_to_company( expiry_type=expiry_type, expiry_unit=expiry_unit, expiry_unit_count=expiry_unit_count, + renewal_enabled=renewal_enabled, + renewal_period=renewal_period, request_options=request_options, ) return _response.data @@ -872,8 +842,8 @@ def list_company_grants( self, *, company_id: typing.Optional[str] = None, - order: typing.Optional[ListCompanyGrantsRequestOrder] = None, - dir: typing.Optional[ListCompanyGrantsRequestDir] = None, + order: typing.Optional[CreditGrantSortOrder] = None, + dir: typing.Optional[SortDirection] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -883,9 +853,9 @@ def list_company_grants( ---------- company_id : typing.Optional[str] - order : typing.Optional[ListCompanyGrantsRequestOrder] + order : typing.Optional[CreditGrantSortOrder] - dir : typing.Optional[ListCompanyGrantsRequestDir] + dir : typing.Optional[SortDirection] limit : typing.Optional[int] Page limit (default 100) @@ -1021,7 +991,7 @@ def get_enriched_credit_ledger( self, *, company_id: str, - period: GetEnrichedCreditLedgerRequestPeriod, + period: CreditLedgerPeriod, billing_credit_id: typing.Optional[str] = None, feature_id: typing.Optional[str] = None, start_time: typing.Optional[str] = None, @@ -1035,7 +1005,7 @@ def get_enriched_credit_ledger( ---------- company_id : str - period : GetEnrichedCreditLedgerRequestPeriod + period : CreditLedgerPeriod billing_credit_id : typing.Optional[str] @@ -1094,7 +1064,7 @@ def count_credit_ledger( self, *, company_id: str, - period: CountCreditLedgerRequestPeriod, + period: CreditLedgerPeriod, billing_credit_id: typing.Optional[str] = None, feature_id: typing.Optional[str] = None, start_time: typing.Optional[str] = None, @@ -1108,7 +1078,7 @@ def count_credit_ledger( ---------- company_id : str - period : CountCreditLedgerRequestPeriod + period : CreditLedgerPeriod billing_credit_id : typing.Optional[str] @@ -1230,13 +1200,20 @@ def create_billing_plan_credit_grant( credit_amount: int, credit_id: str, plan_id: str, - reset_cadence: CreateBillingPlanCreditGrantRequestBodyResetCadence, - reset_start: CreateBillingPlanCreditGrantRequestBodyResetStart, + reset_cadence: BillingPlanCreditGrantResetCadence, + reset_start: BillingPlanCreditGrantResetStart, apply_to_existing: typing.Optional[bool] = OMIT, - expiry_type: typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit] = OMIT, + auto_topup_amount: typing.Optional[int] = OMIT, + auto_topup_amount_type: typing.Optional[CreditAutoTopupAmountType] = OMIT, + auto_topup_enabled: typing.Optional[bool] = OMIT, + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, + auto_topup_expiry_unit_count: typing.Optional[int] = OMIT, + auto_topup_threshold_percent: typing.Optional[int] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, - reset_type: typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType] = OMIT, + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> CreateBillingPlanCreditGrantResponse: """ @@ -1248,19 +1225,33 @@ def create_billing_plan_credit_grant( plan_id : str - reset_cadence : CreateBillingPlanCreditGrantRequestBodyResetCadence + reset_cadence : BillingPlanCreditGrantResetCadence - reset_start : CreateBillingPlanCreditGrantRequestBodyResetStart + reset_start : BillingPlanCreditGrantResetStart apply_to_existing : typing.Optional[bool] - expiry_type : typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType] + auto_topup_amount : typing.Optional[int] + + auto_topup_amount_type : typing.Optional[CreditAutoTopupAmountType] + + auto_topup_enabled : typing.Optional[bool] + + auto_topup_expiry_type : typing.Optional[BillingCreditExpiryType] + + auto_topup_expiry_unit : typing.Optional[BillingCreditExpiryUnit] + + auto_topup_expiry_unit_count : typing.Optional[int] + + auto_topup_threshold_percent : typing.Optional[int] - expiry_unit : typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit] + expiry_type : typing.Optional[BillingCreditExpiryType] + + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] - reset_type : typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType] + reset_type : typing.Optional[BillingPlanCreditGrantResetType] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1281,7 +1272,7 @@ def create_billing_plan_credit_grant( credit_amount=1, credit_id="credit_id", plan_id="plan_id", - reset_cadence="monthly", + reset_cadence="daily", reset_start="billing_period", ) """ @@ -1292,6 +1283,13 @@ def create_billing_plan_credit_grant( reset_cadence=reset_cadence, reset_start=reset_start, apply_to_existing=apply_to_existing, + auto_topup_amount=auto_topup_amount, + auto_topup_amount_type=auto_topup_amount_type, + auto_topup_enabled=auto_topup_enabled, + auto_topup_expiry_type=auto_topup_expiry_type, + auto_topup_expiry_unit=auto_topup_expiry_unit, + auto_topup_expiry_unit_count=auto_topup_expiry_unit_count, + auto_topup_threshold_percent=auto_topup_threshold_percent, expiry_type=expiry_type, expiry_unit=expiry_unit, expiry_unit_count=expiry_unit_count, @@ -1304,14 +1302,21 @@ def update_billing_plan_credit_grant( self, plan_grant_id: str, *, - reset_cadence: UpdateBillingPlanCreditGrantRequestBodyResetCadence, - reset_start: UpdateBillingPlanCreditGrantRequestBodyResetStart, + reset_cadence: BillingPlanCreditGrantResetCadence, + reset_start: BillingPlanCreditGrantResetStart, apply_to_existing: typing.Optional[bool] = OMIT, + auto_topup_amount: typing.Optional[int] = OMIT, + auto_topup_amount_type: typing.Optional[CreditAutoTopupAmountType] = OMIT, + auto_topup_enabled: typing.Optional[bool] = OMIT, + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, + auto_topup_expiry_unit_count: typing.Optional[int] = OMIT, + auto_topup_threshold_percent: typing.Optional[int] = OMIT, credit_amount: typing.Optional[int] = OMIT, - expiry_type: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, - reset_type: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType] = OMIT, + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateBillingPlanCreditGrantResponse: """ @@ -1320,21 +1325,35 @@ def update_billing_plan_credit_grant( plan_grant_id : str plan_grant_id - reset_cadence : UpdateBillingPlanCreditGrantRequestBodyResetCadence + reset_cadence : BillingPlanCreditGrantResetCadence - reset_start : UpdateBillingPlanCreditGrantRequestBodyResetStart + reset_start : BillingPlanCreditGrantResetStart apply_to_existing : typing.Optional[bool] + auto_topup_amount : typing.Optional[int] + + auto_topup_amount_type : typing.Optional[CreditAutoTopupAmountType] + + auto_topup_enabled : typing.Optional[bool] + + auto_topup_expiry_type : typing.Optional[BillingCreditExpiryType] + + auto_topup_expiry_unit : typing.Optional[BillingCreditExpiryUnit] + + auto_topup_expiry_unit_count : typing.Optional[int] + + auto_topup_threshold_percent : typing.Optional[int] + credit_amount : typing.Optional[int] - expiry_type : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] - reset_type : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType] + reset_type : typing.Optional[BillingPlanCreditGrantResetType] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1353,7 +1372,7 @@ def update_billing_plan_credit_grant( ) client.credits.update_billing_plan_credit_grant( plan_grant_id="plan_grant_id", - reset_cadence="monthly", + reset_cadence="daily", reset_start="billing_period", ) """ @@ -1362,6 +1381,13 @@ def update_billing_plan_credit_grant( reset_cadence=reset_cadence, reset_start=reset_start, apply_to_existing=apply_to_existing, + auto_topup_amount=auto_topup_amount, + auto_topup_amount_type=auto_topup_amount_type, + auto_topup_enabled=auto_topup_enabled, + auto_topup_expiry_type=auto_topup_expiry_type, + auto_topup_expiry_unit=auto_topup_expiry_unit, + auto_topup_expiry_unit_count=auto_topup_expiry_unit_count, + auto_topup_threshold_percent=auto_topup_threshold_percent, credit_amount=credit_amount, expiry_type=expiry_type, expiry_unit=expiry_unit, @@ -1550,10 +1576,10 @@ async def create_billing_credit( currency: str, description: str, name: str, - burn_strategy: typing.Optional[CreateBillingCreditRequestBodyBurnStrategy] = OMIT, - default_expiry_unit: typing.Optional[str] = OMIT, + burn_strategy: typing.Optional[BillingCreditBurnStrategy] = OMIT, + default_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, default_expiry_unit_count: typing.Optional[int] = OMIT, - default_rollover_policy: typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy] = OMIT, + default_rollover_policy: typing.Optional[BillingCreditRolloverPolicy] = OMIT, icon: typing.Optional[str] = OMIT, per_unit_price: typing.Optional[int] = OMIT, per_unit_price_decimal: typing.Optional[str] = OMIT, @@ -1570,13 +1596,13 @@ async def create_billing_credit( name : str - burn_strategy : typing.Optional[CreateBillingCreditRequestBodyBurnStrategy] + burn_strategy : typing.Optional[BillingCreditBurnStrategy] - default_expiry_unit : typing.Optional[str] + default_expiry_unit : typing.Optional[BillingCreditExpiryUnit] default_expiry_unit_count : typing.Optional[int] - default_rollover_policy : typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy] + default_rollover_policy : typing.Optional[BillingCreditRolloverPolicy] icon : typing.Optional[str] @@ -1679,10 +1705,10 @@ async def update_billing_credit( *, description: str, name: str, - burn_strategy: typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy] = OMIT, - default_expiry_unit: typing.Optional[typing.Literal["days"]] = OMIT, + burn_strategy: typing.Optional[BillingCreditBurnStrategy] = OMIT, + default_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, default_expiry_unit_count: typing.Optional[int] = OMIT, - default_rollover_policy: typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy] = OMIT, + default_rollover_policy: typing.Optional[BillingCreditRolloverPolicy] = OMIT, icon: typing.Optional[str] = OMIT, per_unit_price: typing.Optional[int] = OMIT, per_unit_price_decimal: typing.Optional[str] = OMIT, @@ -1700,13 +1726,13 @@ async def update_billing_credit( name : str - burn_strategy : typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy] + burn_strategy : typing.Optional[BillingCreditBurnStrategy] - default_expiry_unit : typing.Optional[typing.Literal["days"]] + default_expiry_unit : typing.Optional[BillingCreditExpiryUnit] default_expiry_unit_count : typing.Optional[int] - default_rollover_policy : typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy] + default_rollover_policy : typing.Optional[BillingCreditRolloverPolicy] icon : typing.Optional[str] @@ -1808,8 +1834,8 @@ async def list_credit_bundles( *, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_id: typing.Optional[str] = None, - status: typing.Optional[ListCreditBundlesRequestStatus] = None, - bundle_type: typing.Optional[typing.Literal["fixed"]] = None, + status: typing.Optional[BillingCreditBundleStatus] = None, + bundle_type: typing.Optional[BillingCreditBundleType] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -1821,9 +1847,9 @@ async def list_credit_bundles( credit_id : typing.Optional[str] - status : typing.Optional[ListCreditBundlesRequestStatus] + status : typing.Optional[BillingCreditBundleStatus] - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] limit : typing.Optional[int] Page limit (default 100) @@ -1879,13 +1905,13 @@ async def create_credit_bundle( credit_id: str, currency: str, price_per_unit: int, - bundle_type: typing.Optional[typing.Literal["fixed"]] = OMIT, - expiry_type: typing.Optional[CreateCreditBundleRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateCreditBundleRequestBodyExpiryUnit] = OMIT, + bundle_type: typing.Optional[BillingCreditBundleType] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, price_per_unit_decimal: typing.Optional[str] = OMIT, quantity: typing.Optional[int] = OMIT, - status: typing.Optional[CreateCreditBundleRequestBodyStatus] = OMIT, + status: typing.Optional[BillingCreditBundleStatus] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> CreateCreditBundleResponse: """ @@ -1899,11 +1925,11 @@ async def create_credit_bundle( price_per_unit : int - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] - expiry_type : typing.Optional[CreateCreditBundleRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[CreateCreditBundleRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] @@ -1911,7 +1937,7 @@ async def create_credit_bundle( quantity : typing.Optional[int] - status : typing.Optional[CreateCreditBundleRequestBodyStatus] + status : typing.Optional[BillingCreditBundleStatus] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2004,12 +2030,12 @@ async def update_credit_bundle_details( *, bundle_name: str, price_per_unit: int, - expiry_type: typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, price_per_unit_decimal: typing.Optional[str] = OMIT, quantity: typing.Optional[int] = OMIT, - status: typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus] = OMIT, + status: typing.Optional[BillingCreditBundleStatus] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateCreditBundleDetailsResponse: """ @@ -2022,9 +2048,9 @@ async def update_credit_bundle_details( price_per_unit : int - expiry_type : typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] @@ -2032,7 +2058,7 @@ async def update_credit_bundle_details( quantity : typing.Optional[int] - status : typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus] + status : typing.Optional[BillingCreditBundleStatus] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2121,8 +2147,8 @@ async def count_credit_bundles( *, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_id: typing.Optional[str] = None, - status: typing.Optional[CountCreditBundlesRequestStatus] = None, - bundle_type: typing.Optional[typing.Literal["fixed"]] = None, + status: typing.Optional[BillingCreditBundleStatus] = None, + bundle_type: typing.Optional[BillingCreditBundleType] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -2134,9 +2160,9 @@ async def count_credit_bundles( credit_id : typing.Optional[str] - status : typing.Optional[CountCreditBundlesRequestStatus] + status : typing.Optional[BillingCreditBundleStatus] - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] limit : typing.Optional[int] Page limit (default 100) @@ -2245,7 +2271,7 @@ async def zero_out_grant( self, grant_id: str, *, - reason: typing.Optional[ZeroOutGrantRequestBodyReason] = OMIT, + reason: typing.Optional[BillingCreditGrantZeroedOutReason] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> ZeroOutGrantResponse: """ @@ -2254,7 +2280,7 @@ async def zero_out_grant( grant_id : str grant_id - reason : typing.Optional[ZeroOutGrantRequestBodyReason] + reason : typing.Optional[BillingCreditGrantZeroedOutReason] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2292,12 +2318,14 @@ async def grant_billing_credits_to_company( company_id: str, credit_id: str, quantity: int, - reason: str, + reason: BillingCreditGrantReason, billing_periods_count: typing.Optional[int] = OMIT, expires_at: typing.Optional[dt.datetime] = OMIT, - expiry_type: typing.Optional[CreateCompanyCreditGrantExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateCompanyCreditGrantExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, + renewal_enabled: typing.Optional[bool] = OMIT, + renewal_period: typing.Optional[BillingPlanCreditGrantResetStart] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> GrantBillingCreditsToCompanyResponse: """ @@ -2309,18 +2337,22 @@ async def grant_billing_credits_to_company( quantity : int - reason : str + reason : BillingCreditGrantReason billing_periods_count : typing.Optional[int] expires_at : typing.Optional[dt.datetime] - expiry_type : typing.Optional[CreateCompanyCreditGrantExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[CreateCompanyCreditGrantExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] + renewal_enabled : typing.Optional[bool] + + renewal_period : typing.Optional[BillingPlanCreditGrantResetStart] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2345,7 +2377,7 @@ async def main() -> None: company_id="company_id", credit_id="credit_id", quantity=1, - reason="reason", + reason="billing_credit_auto_topup", ) @@ -2361,6 +2393,8 @@ async def main() -> None: expiry_type=expiry_type, expiry_unit=expiry_unit, expiry_unit_count=expiry_unit_count, + renewal_enabled=renewal_enabled, + renewal_period=renewal_period, request_options=request_options, ) return _response.data @@ -2369,8 +2403,8 @@ async def list_company_grants( self, *, company_id: typing.Optional[str] = None, - order: typing.Optional[ListCompanyGrantsRequestOrder] = None, - dir: typing.Optional[ListCompanyGrantsRequestDir] = None, + order: typing.Optional[CreditGrantSortOrder] = None, + dir: typing.Optional[SortDirection] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -2380,9 +2414,9 @@ async def list_company_grants( ---------- company_id : typing.Optional[str] - order : typing.Optional[ListCompanyGrantsRequestOrder] + order : typing.Optional[CreditGrantSortOrder] - dir : typing.Optional[ListCompanyGrantsRequestDir] + dir : typing.Optional[SortDirection] limit : typing.Optional[int] Page limit (default 100) @@ -2542,7 +2576,7 @@ async def get_enriched_credit_ledger( self, *, company_id: str, - period: GetEnrichedCreditLedgerRequestPeriod, + period: CreditLedgerPeriod, billing_credit_id: typing.Optional[str] = None, feature_id: typing.Optional[str] = None, start_time: typing.Optional[str] = None, @@ -2556,7 +2590,7 @@ async def get_enriched_credit_ledger( ---------- company_id : str - period : GetEnrichedCreditLedgerRequestPeriod + period : CreditLedgerPeriod billing_credit_id : typing.Optional[str] @@ -2623,7 +2657,7 @@ async def count_credit_ledger( self, *, company_id: str, - period: CountCreditLedgerRequestPeriod, + period: CreditLedgerPeriod, billing_credit_id: typing.Optional[str] = None, feature_id: typing.Optional[str] = None, start_time: typing.Optional[str] = None, @@ -2637,7 +2671,7 @@ async def count_credit_ledger( ---------- company_id : str - period : CountCreditLedgerRequestPeriod + period : CreditLedgerPeriod billing_credit_id : typing.Optional[str] @@ -2775,13 +2809,20 @@ async def create_billing_plan_credit_grant( credit_amount: int, credit_id: str, plan_id: str, - reset_cadence: CreateBillingPlanCreditGrantRequestBodyResetCadence, - reset_start: CreateBillingPlanCreditGrantRequestBodyResetStart, + reset_cadence: BillingPlanCreditGrantResetCadence, + reset_start: BillingPlanCreditGrantResetStart, apply_to_existing: typing.Optional[bool] = OMIT, - expiry_type: typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit] = OMIT, + auto_topup_amount: typing.Optional[int] = OMIT, + auto_topup_amount_type: typing.Optional[CreditAutoTopupAmountType] = OMIT, + auto_topup_enabled: typing.Optional[bool] = OMIT, + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, + auto_topup_expiry_unit_count: typing.Optional[int] = OMIT, + auto_topup_threshold_percent: typing.Optional[int] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, - reset_type: typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType] = OMIT, + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> CreateBillingPlanCreditGrantResponse: """ @@ -2793,19 +2834,33 @@ async def create_billing_plan_credit_grant( plan_id : str - reset_cadence : CreateBillingPlanCreditGrantRequestBodyResetCadence + reset_cadence : BillingPlanCreditGrantResetCadence - reset_start : CreateBillingPlanCreditGrantRequestBodyResetStart + reset_start : BillingPlanCreditGrantResetStart apply_to_existing : typing.Optional[bool] - expiry_type : typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType] + auto_topup_amount : typing.Optional[int] + + auto_topup_amount_type : typing.Optional[CreditAutoTopupAmountType] + + auto_topup_enabled : typing.Optional[bool] + + auto_topup_expiry_type : typing.Optional[BillingCreditExpiryType] + + auto_topup_expiry_unit : typing.Optional[BillingCreditExpiryUnit] + + auto_topup_expiry_unit_count : typing.Optional[int] + + auto_topup_threshold_percent : typing.Optional[int] - expiry_unit : typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit] + expiry_type : typing.Optional[BillingCreditExpiryType] + + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] - reset_type : typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType] + reset_type : typing.Optional[BillingPlanCreditGrantResetType] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2831,7 +2886,7 @@ async def main() -> None: credit_amount=1, credit_id="credit_id", plan_id="plan_id", - reset_cadence="monthly", + reset_cadence="daily", reset_start="billing_period", ) @@ -2845,6 +2900,13 @@ async def main() -> None: reset_cadence=reset_cadence, reset_start=reset_start, apply_to_existing=apply_to_existing, + auto_topup_amount=auto_topup_amount, + auto_topup_amount_type=auto_topup_amount_type, + auto_topup_enabled=auto_topup_enabled, + auto_topup_expiry_type=auto_topup_expiry_type, + auto_topup_expiry_unit=auto_topup_expiry_unit, + auto_topup_expiry_unit_count=auto_topup_expiry_unit_count, + auto_topup_threshold_percent=auto_topup_threshold_percent, expiry_type=expiry_type, expiry_unit=expiry_unit, expiry_unit_count=expiry_unit_count, @@ -2857,14 +2919,21 @@ async def update_billing_plan_credit_grant( self, plan_grant_id: str, *, - reset_cadence: UpdateBillingPlanCreditGrantRequestBodyResetCadence, - reset_start: UpdateBillingPlanCreditGrantRequestBodyResetStart, + reset_cadence: BillingPlanCreditGrantResetCadence, + reset_start: BillingPlanCreditGrantResetStart, apply_to_existing: typing.Optional[bool] = OMIT, + auto_topup_amount: typing.Optional[int] = OMIT, + auto_topup_amount_type: typing.Optional[CreditAutoTopupAmountType] = OMIT, + auto_topup_enabled: typing.Optional[bool] = OMIT, + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, + auto_topup_expiry_unit_count: typing.Optional[int] = OMIT, + auto_topup_threshold_percent: typing.Optional[int] = OMIT, credit_amount: typing.Optional[int] = OMIT, - expiry_type: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, - reset_type: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType] = OMIT, + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateBillingPlanCreditGrantResponse: """ @@ -2873,21 +2942,35 @@ async def update_billing_plan_credit_grant( plan_grant_id : str plan_grant_id - reset_cadence : UpdateBillingPlanCreditGrantRequestBodyResetCadence + reset_cadence : BillingPlanCreditGrantResetCadence - reset_start : UpdateBillingPlanCreditGrantRequestBodyResetStart + reset_start : BillingPlanCreditGrantResetStart apply_to_existing : typing.Optional[bool] + auto_topup_amount : typing.Optional[int] + + auto_topup_amount_type : typing.Optional[CreditAutoTopupAmountType] + + auto_topup_enabled : typing.Optional[bool] + + auto_topup_expiry_type : typing.Optional[BillingCreditExpiryType] + + auto_topup_expiry_unit : typing.Optional[BillingCreditExpiryUnit] + + auto_topup_expiry_unit_count : typing.Optional[int] + + auto_topup_threshold_percent : typing.Optional[int] + credit_amount : typing.Optional[int] - expiry_type : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] - reset_type : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType] + reset_type : typing.Optional[BillingPlanCreditGrantResetType] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2911,7 +2994,7 @@ async def update_billing_plan_credit_grant( async def main() -> None: await client.credits.update_billing_plan_credit_grant( plan_grant_id="plan_grant_id", - reset_cadence="monthly", + reset_cadence="daily", reset_start="billing_period", ) @@ -2923,6 +3006,13 @@ async def main() -> None: reset_cadence=reset_cadence, reset_start=reset_start, apply_to_existing=apply_to_existing, + auto_topup_amount=auto_topup_amount, + auto_topup_amount_type=auto_topup_amount_type, + auto_topup_enabled=auto_topup_enabled, + auto_topup_expiry_type=auto_topup_expiry_type, + auto_topup_expiry_unit=auto_topup_expiry_unit, + auto_topup_expiry_unit_count=auto_topup_expiry_unit_count, + auto_topup_threshold_percent=auto_topup_threshold_percent, credit_amount=credit_amount, expiry_type=expiry_type, expiry_unit=expiry_unit, diff --git a/src/schematic/credits/raw_client.py b/src/schematic/credits/raw_client.py index 33d5b75..cc3181b 100644 --- a/src/schematic/credits/raw_client.py +++ b/src/schematic/credits/raw_client.py @@ -16,82 +16,44 @@ from ..errors.not_found_error import NotFoundError from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError +from ..types.billing_credit_bundle_status import BillingCreditBundleStatus +from ..types.billing_credit_bundle_type import BillingCreditBundleType +from ..types.billing_credit_burn_strategy import BillingCreditBurnStrategy +from ..types.billing_credit_expiry_type import BillingCreditExpiryType +from ..types.billing_credit_expiry_unit import BillingCreditExpiryUnit +from ..types.billing_credit_grant_reason import BillingCreditGrantReason +from ..types.billing_credit_grant_zeroed_out_reason import BillingCreditGrantZeroedOutReason +from ..types.billing_credit_rollover_policy import BillingCreditRolloverPolicy +from ..types.billing_plan_credit_grant_reset_cadence import BillingPlanCreditGrantResetCadence +from ..types.billing_plan_credit_grant_reset_start import BillingPlanCreditGrantResetStart +from ..types.billing_plan_credit_grant_reset_type import BillingPlanCreditGrantResetType +from ..types.credit_auto_topup_amount_type import CreditAutoTopupAmountType +from ..types.credit_grant_sort_order import CreditGrantSortOrder +from ..types.credit_ledger_period import CreditLedgerPeriod +from ..types.sort_direction import SortDirection from .types.count_billing_credits_grants_response import CountBillingCreditsGrantsResponse from .types.count_billing_credits_response import CountBillingCreditsResponse from .types.count_billing_plan_credit_grants_response import CountBillingPlanCreditGrantsResponse -from .types.count_credit_bundles_request_status import CountCreditBundlesRequestStatus from .types.count_credit_bundles_response import CountCreditBundlesResponse -from .types.count_credit_ledger_request_period import CountCreditLedgerRequestPeriod from .types.count_credit_ledger_response import CountCreditLedgerResponse -from .types.create_billing_credit_request_body_burn_strategy import CreateBillingCreditRequestBodyBurnStrategy -from .types.create_billing_credit_request_body_default_rollover_policy import ( - CreateBillingCreditRequestBodyDefaultRolloverPolicy, -) from .types.create_billing_credit_response import CreateBillingCreditResponse -from .types.create_billing_plan_credit_grant_request_body_expiry_type import ( - CreateBillingPlanCreditGrantRequestBodyExpiryType, -) -from .types.create_billing_plan_credit_grant_request_body_expiry_unit import ( - CreateBillingPlanCreditGrantRequestBodyExpiryUnit, -) -from .types.create_billing_plan_credit_grant_request_body_reset_cadence import ( - CreateBillingPlanCreditGrantRequestBodyResetCadence, -) -from .types.create_billing_plan_credit_grant_request_body_reset_start import ( - CreateBillingPlanCreditGrantRequestBodyResetStart, -) -from .types.create_billing_plan_credit_grant_request_body_reset_type import ( - CreateBillingPlanCreditGrantRequestBodyResetType, -) from .types.create_billing_plan_credit_grant_response import CreateBillingPlanCreditGrantResponse -from .types.create_company_credit_grant_expiry_type import CreateCompanyCreditGrantExpiryType -from .types.create_company_credit_grant_expiry_unit import CreateCompanyCreditGrantExpiryUnit -from .types.create_credit_bundle_request_body_expiry_type import CreateCreditBundleRequestBodyExpiryType -from .types.create_credit_bundle_request_body_expiry_unit import CreateCreditBundleRequestBodyExpiryUnit -from .types.create_credit_bundle_request_body_status import CreateCreditBundleRequestBodyStatus from .types.create_credit_bundle_response import CreateCreditBundleResponse from .types.delete_billing_plan_credit_grant_response import DeleteBillingPlanCreditGrantResponse from .types.delete_credit_bundle_response import DeleteCreditBundleResponse from .types.get_credit_bundle_response import GetCreditBundleResponse -from .types.get_enriched_credit_ledger_request_period import GetEnrichedCreditLedgerRequestPeriod from .types.get_enriched_credit_ledger_response import GetEnrichedCreditLedgerResponse from .types.get_single_billing_credit_response import GetSingleBillingCreditResponse from .types.grant_billing_credits_to_company_response import GrantBillingCreditsToCompanyResponse from .types.list_billing_credits_response import ListBillingCreditsResponse from .types.list_billing_plan_credit_grants_response import ListBillingPlanCreditGrantsResponse -from .types.list_company_grants_request_dir import ListCompanyGrantsRequestDir -from .types.list_company_grants_request_order import ListCompanyGrantsRequestOrder from .types.list_company_grants_response import ListCompanyGrantsResponse -from .types.list_credit_bundles_request_status import ListCreditBundlesRequestStatus from .types.list_credit_bundles_response import ListCreditBundlesResponse from .types.list_grants_for_credit_response import ListGrantsForCreditResponse from .types.soft_delete_billing_credit_response import SoftDeleteBillingCreditResponse -from .types.update_billing_credit_request_body_burn_strategy import UpdateBillingCreditRequestBodyBurnStrategy -from .types.update_billing_credit_request_body_default_rollover_policy import ( - UpdateBillingCreditRequestBodyDefaultRolloverPolicy, -) from .types.update_billing_credit_response import UpdateBillingCreditResponse -from .types.update_billing_plan_credit_grant_request_body_expiry_type import ( - UpdateBillingPlanCreditGrantRequestBodyExpiryType, -) -from .types.update_billing_plan_credit_grant_request_body_expiry_unit import ( - UpdateBillingPlanCreditGrantRequestBodyExpiryUnit, -) -from .types.update_billing_plan_credit_grant_request_body_reset_cadence import ( - UpdateBillingPlanCreditGrantRequestBodyResetCadence, -) -from .types.update_billing_plan_credit_grant_request_body_reset_start import ( - UpdateBillingPlanCreditGrantRequestBodyResetStart, -) -from .types.update_billing_plan_credit_grant_request_body_reset_type import ( - UpdateBillingPlanCreditGrantRequestBodyResetType, -) from .types.update_billing_plan_credit_grant_response import UpdateBillingPlanCreditGrantResponse -from .types.update_credit_bundle_details_request_body_expiry_type import UpdateCreditBundleDetailsRequestBodyExpiryType -from .types.update_credit_bundle_details_request_body_expiry_unit import UpdateCreditBundleDetailsRequestBodyExpiryUnit -from .types.update_credit_bundle_details_request_body_status import UpdateCreditBundleDetailsRequestBodyStatus from .types.update_credit_bundle_details_response import UpdateCreditBundleDetailsResponse -from .types.zero_out_grant_request_body_reason import ZeroOutGrantRequestBodyReason from .types.zero_out_grant_response import ZeroOutGrantResponse # this is used as the default value for optional parameters @@ -223,10 +185,10 @@ def create_billing_credit( currency: str, description: str, name: str, - burn_strategy: typing.Optional[CreateBillingCreditRequestBodyBurnStrategy] = OMIT, - default_expiry_unit: typing.Optional[str] = OMIT, + burn_strategy: typing.Optional[BillingCreditBurnStrategy] = OMIT, + default_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, default_expiry_unit_count: typing.Optional[int] = OMIT, - default_rollover_policy: typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy] = OMIT, + default_rollover_policy: typing.Optional[BillingCreditRolloverPolicy] = OMIT, icon: typing.Optional[str] = OMIT, per_unit_price: typing.Optional[int] = OMIT, per_unit_price_decimal: typing.Optional[str] = OMIT, @@ -243,13 +205,13 @@ def create_billing_credit( name : str - burn_strategy : typing.Optional[CreateBillingCreditRequestBodyBurnStrategy] + burn_strategy : typing.Optional[BillingCreditBurnStrategy] - default_expiry_unit : typing.Optional[str] + default_expiry_unit : typing.Optional[BillingCreditExpiryUnit] default_expiry_unit_count : typing.Optional[int] - default_rollover_policy : typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy] + default_rollover_policy : typing.Optional[BillingCreditRolloverPolicy] icon : typing.Optional[str] @@ -457,10 +419,10 @@ def update_billing_credit( *, description: str, name: str, - burn_strategy: typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy] = OMIT, - default_expiry_unit: typing.Optional[typing.Literal["days"]] = OMIT, + burn_strategy: typing.Optional[BillingCreditBurnStrategy] = OMIT, + default_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, default_expiry_unit_count: typing.Optional[int] = OMIT, - default_rollover_policy: typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy] = OMIT, + default_rollover_policy: typing.Optional[BillingCreditRolloverPolicy] = OMIT, icon: typing.Optional[str] = OMIT, per_unit_price: typing.Optional[int] = OMIT, per_unit_price_decimal: typing.Optional[str] = OMIT, @@ -478,13 +440,13 @@ def update_billing_credit( name : str - burn_strategy : typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy] + burn_strategy : typing.Optional[BillingCreditBurnStrategy] - default_expiry_unit : typing.Optional[typing.Literal["days"]] + default_expiry_unit : typing.Optional[BillingCreditExpiryUnit] default_expiry_unit_count : typing.Optional[int] - default_rollover_policy : typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy] + default_rollover_policy : typing.Optional[BillingCreditRolloverPolicy] icon : typing.Optional[str] @@ -701,8 +663,8 @@ def list_credit_bundles( *, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_id: typing.Optional[str] = None, - status: typing.Optional[ListCreditBundlesRequestStatus] = None, - bundle_type: typing.Optional[typing.Literal["fixed"]] = None, + status: typing.Optional[BillingCreditBundleStatus] = None, + bundle_type: typing.Optional[BillingCreditBundleType] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -714,9 +676,9 @@ def list_credit_bundles( credit_id : typing.Optional[str] - status : typing.Optional[ListCreditBundlesRequestStatus] + status : typing.Optional[BillingCreditBundleStatus] - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] limit : typing.Optional[int] Page limit (default 100) @@ -826,13 +788,13 @@ def create_credit_bundle( credit_id: str, currency: str, price_per_unit: int, - bundle_type: typing.Optional[typing.Literal["fixed"]] = OMIT, - expiry_type: typing.Optional[CreateCreditBundleRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateCreditBundleRequestBodyExpiryUnit] = OMIT, + bundle_type: typing.Optional[BillingCreditBundleType] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, price_per_unit_decimal: typing.Optional[str] = OMIT, quantity: typing.Optional[int] = OMIT, - status: typing.Optional[CreateCreditBundleRequestBodyStatus] = OMIT, + status: typing.Optional[BillingCreditBundleStatus] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[CreateCreditBundleResponse]: """ @@ -846,11 +808,11 @@ def create_credit_bundle( price_per_unit : int - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] - expiry_type : typing.Optional[CreateCreditBundleRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[CreateCreditBundleRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] @@ -858,7 +820,7 @@ def create_credit_bundle( quantity : typing.Optional[int] - status : typing.Optional[CreateCreditBundleRequestBodyStatus] + status : typing.Optional[BillingCreditBundleStatus] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1055,12 +1017,12 @@ def update_credit_bundle_details( *, bundle_name: str, price_per_unit: int, - expiry_type: typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, price_per_unit_decimal: typing.Optional[str] = OMIT, quantity: typing.Optional[int] = OMIT, - status: typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus] = OMIT, + status: typing.Optional[BillingCreditBundleStatus] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[UpdateCreditBundleDetailsResponse]: """ @@ -1073,9 +1035,9 @@ def update_credit_bundle_details( price_per_unit : int - expiry_type : typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] @@ -1083,7 +1045,7 @@ def update_credit_bundle_details( quantity : typing.Optional[int] - status : typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus] + status : typing.Optional[BillingCreditBundleStatus] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1287,8 +1249,8 @@ def count_credit_bundles( *, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_id: typing.Optional[str] = None, - status: typing.Optional[CountCreditBundlesRequestStatus] = None, - bundle_type: typing.Optional[typing.Literal["fixed"]] = None, + status: typing.Optional[BillingCreditBundleStatus] = None, + bundle_type: typing.Optional[BillingCreditBundleType] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -1300,9 +1262,9 @@ def count_credit_bundles( credit_id : typing.Optional[str] - status : typing.Optional[CountCreditBundlesRequestStatus] + status : typing.Optional[BillingCreditBundleStatus] - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] limit : typing.Optional[int] Page limit (default 100) @@ -1524,7 +1486,7 @@ def zero_out_grant( self, grant_id: str, *, - reason: typing.Optional[ZeroOutGrantRequestBodyReason] = OMIT, + reason: typing.Optional[BillingCreditGrantZeroedOutReason] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[ZeroOutGrantResponse]: """ @@ -1533,7 +1495,7 @@ def zero_out_grant( grant_id : str grant_id - reason : typing.Optional[ZeroOutGrantRequestBodyReason] + reason : typing.Optional[BillingCreditGrantZeroedOutReason] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1635,12 +1597,14 @@ def grant_billing_credits_to_company( company_id: str, credit_id: str, quantity: int, - reason: str, + reason: BillingCreditGrantReason, billing_periods_count: typing.Optional[int] = OMIT, expires_at: typing.Optional[dt.datetime] = OMIT, - expiry_type: typing.Optional[CreateCompanyCreditGrantExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateCompanyCreditGrantExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, + renewal_enabled: typing.Optional[bool] = OMIT, + renewal_period: typing.Optional[BillingPlanCreditGrantResetStart] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[GrantBillingCreditsToCompanyResponse]: """ @@ -1652,18 +1616,22 @@ def grant_billing_credits_to_company( quantity : int - reason : str + reason : BillingCreditGrantReason billing_periods_count : typing.Optional[int] expires_at : typing.Optional[dt.datetime] - expiry_type : typing.Optional[CreateCompanyCreditGrantExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[CreateCompanyCreditGrantExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] + renewal_enabled : typing.Optional[bool] + + renewal_period : typing.Optional[BillingPlanCreditGrantResetStart] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -1685,6 +1653,8 @@ def grant_billing_credits_to_company( "expiry_unit_count": expiry_unit_count, "quantity": quantity, "reason": reason, + "renewal_enabled": renewal_enabled, + "renewal_period": renewal_period, }, headers={ "content-type": "application/json", @@ -1770,8 +1740,8 @@ def list_company_grants( self, *, company_id: typing.Optional[str] = None, - order: typing.Optional[ListCompanyGrantsRequestOrder] = None, - dir: typing.Optional[ListCompanyGrantsRequestDir] = None, + order: typing.Optional[CreditGrantSortOrder] = None, + dir: typing.Optional[SortDirection] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -1781,9 +1751,9 @@ def list_company_grants( ---------- company_id : typing.Optional[str] - order : typing.Optional[ListCompanyGrantsRequestOrder] + order : typing.Optional[CreditGrantSortOrder] - dir : typing.Optional[ListCompanyGrantsRequestDir] + dir : typing.Optional[SortDirection] limit : typing.Optional[int] Page limit (default 100) @@ -2119,7 +2089,7 @@ def get_enriched_credit_ledger( self, *, company_id: str, - period: GetEnrichedCreditLedgerRequestPeriod, + period: CreditLedgerPeriod, billing_credit_id: typing.Optional[str] = None, feature_id: typing.Optional[str] = None, start_time: typing.Optional[str] = None, @@ -2133,7 +2103,7 @@ def get_enriched_credit_ledger( ---------- company_id : str - period : GetEnrichedCreditLedgerRequestPeriod + period : CreditLedgerPeriod billing_credit_id : typing.Optional[str] @@ -2250,7 +2220,7 @@ def count_credit_ledger( self, *, company_id: str, - period: CountCreditLedgerRequestPeriod, + period: CreditLedgerPeriod, billing_credit_id: typing.Optional[str] = None, feature_id: typing.Optional[str] = None, start_time: typing.Optional[str] = None, @@ -2264,7 +2234,7 @@ def count_credit_ledger( ---------- company_id : str - period : CountCreditLedgerRequestPeriod + period : CreditLedgerPeriod billing_credit_id : typing.Optional[str] @@ -2506,13 +2476,20 @@ def create_billing_plan_credit_grant( credit_amount: int, credit_id: str, plan_id: str, - reset_cadence: CreateBillingPlanCreditGrantRequestBodyResetCadence, - reset_start: CreateBillingPlanCreditGrantRequestBodyResetStart, + reset_cadence: BillingPlanCreditGrantResetCadence, + reset_start: BillingPlanCreditGrantResetStart, apply_to_existing: typing.Optional[bool] = OMIT, - expiry_type: typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit] = OMIT, + auto_topup_amount: typing.Optional[int] = OMIT, + auto_topup_amount_type: typing.Optional[CreditAutoTopupAmountType] = OMIT, + auto_topup_enabled: typing.Optional[bool] = OMIT, + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, + auto_topup_expiry_unit_count: typing.Optional[int] = OMIT, + auto_topup_threshold_percent: typing.Optional[int] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, - reset_type: typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType] = OMIT, + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[CreateBillingPlanCreditGrantResponse]: """ @@ -2524,19 +2501,33 @@ def create_billing_plan_credit_grant( plan_id : str - reset_cadence : CreateBillingPlanCreditGrantRequestBodyResetCadence + reset_cadence : BillingPlanCreditGrantResetCadence - reset_start : CreateBillingPlanCreditGrantRequestBodyResetStart + reset_start : BillingPlanCreditGrantResetStart apply_to_existing : typing.Optional[bool] - expiry_type : typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType] + auto_topup_amount : typing.Optional[int] + + auto_topup_amount_type : typing.Optional[CreditAutoTopupAmountType] + + auto_topup_enabled : typing.Optional[bool] + + auto_topup_expiry_type : typing.Optional[BillingCreditExpiryType] + + auto_topup_expiry_unit : typing.Optional[BillingCreditExpiryUnit] + + auto_topup_expiry_unit_count : typing.Optional[int] + + auto_topup_threshold_percent : typing.Optional[int] - expiry_unit : typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit] + expiry_type : typing.Optional[BillingCreditExpiryType] + + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] - reset_type : typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType] + reset_type : typing.Optional[BillingPlanCreditGrantResetType] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2551,6 +2542,13 @@ def create_billing_plan_credit_grant( method="POST", json={ "apply_to_existing": apply_to_existing, + "auto_topup_amount": auto_topup_amount, + "auto_topup_amount_type": auto_topup_amount_type, + "auto_topup_enabled": auto_topup_enabled, + "auto_topup_expiry_type": auto_topup_expiry_type, + "auto_topup_expiry_unit": auto_topup_expiry_unit, + "auto_topup_expiry_unit_count": auto_topup_expiry_unit_count, + "auto_topup_threshold_percent": auto_topup_threshold_percent, "credit_amount": credit_amount, "credit_id": credit_id, "expiry_type": expiry_type, @@ -2645,14 +2643,21 @@ def update_billing_plan_credit_grant( self, plan_grant_id: str, *, - reset_cadence: UpdateBillingPlanCreditGrantRequestBodyResetCadence, - reset_start: UpdateBillingPlanCreditGrantRequestBodyResetStart, + reset_cadence: BillingPlanCreditGrantResetCadence, + reset_start: BillingPlanCreditGrantResetStart, apply_to_existing: typing.Optional[bool] = OMIT, + auto_topup_amount: typing.Optional[int] = OMIT, + auto_topup_amount_type: typing.Optional[CreditAutoTopupAmountType] = OMIT, + auto_topup_enabled: typing.Optional[bool] = OMIT, + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, + auto_topup_expiry_unit_count: typing.Optional[int] = OMIT, + auto_topup_threshold_percent: typing.Optional[int] = OMIT, credit_amount: typing.Optional[int] = OMIT, - expiry_type: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, - reset_type: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType] = OMIT, + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[UpdateBillingPlanCreditGrantResponse]: """ @@ -2661,21 +2666,35 @@ def update_billing_plan_credit_grant( plan_grant_id : str plan_grant_id - reset_cadence : UpdateBillingPlanCreditGrantRequestBodyResetCadence + reset_cadence : BillingPlanCreditGrantResetCadence - reset_start : UpdateBillingPlanCreditGrantRequestBodyResetStart + reset_start : BillingPlanCreditGrantResetStart apply_to_existing : typing.Optional[bool] + auto_topup_amount : typing.Optional[int] + + auto_topup_amount_type : typing.Optional[CreditAutoTopupAmountType] + + auto_topup_enabled : typing.Optional[bool] + + auto_topup_expiry_type : typing.Optional[BillingCreditExpiryType] + + auto_topup_expiry_unit : typing.Optional[BillingCreditExpiryUnit] + + auto_topup_expiry_unit_count : typing.Optional[int] + + auto_topup_threshold_percent : typing.Optional[int] + credit_amount : typing.Optional[int] - expiry_type : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] - reset_type : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType] + reset_type : typing.Optional[BillingPlanCreditGrantResetType] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -2690,6 +2709,13 @@ def update_billing_plan_credit_grant( method="PUT", json={ "apply_to_existing": apply_to_existing, + "auto_topup_amount": auto_topup_amount, + "auto_topup_amount_type": auto_topup_amount_type, + "auto_topup_enabled": auto_topup_enabled, + "auto_topup_expiry_type": auto_topup_expiry_type, + "auto_topup_expiry_unit": auto_topup_expiry_unit, + "auto_topup_expiry_unit_count": auto_topup_expiry_unit_count, + "auto_topup_threshold_percent": auto_topup_threshold_percent, "credit_amount": credit_amount, "expiry_type": expiry_type, "expiry_unit": expiry_unit, @@ -3132,10 +3158,10 @@ async def create_billing_credit( currency: str, description: str, name: str, - burn_strategy: typing.Optional[CreateBillingCreditRequestBodyBurnStrategy] = OMIT, - default_expiry_unit: typing.Optional[str] = OMIT, + burn_strategy: typing.Optional[BillingCreditBurnStrategy] = OMIT, + default_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, default_expiry_unit_count: typing.Optional[int] = OMIT, - default_rollover_policy: typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy] = OMIT, + default_rollover_policy: typing.Optional[BillingCreditRolloverPolicy] = OMIT, icon: typing.Optional[str] = OMIT, per_unit_price: typing.Optional[int] = OMIT, per_unit_price_decimal: typing.Optional[str] = OMIT, @@ -3152,13 +3178,13 @@ async def create_billing_credit( name : str - burn_strategy : typing.Optional[CreateBillingCreditRequestBodyBurnStrategy] + burn_strategy : typing.Optional[BillingCreditBurnStrategy] - default_expiry_unit : typing.Optional[str] + default_expiry_unit : typing.Optional[BillingCreditExpiryUnit] default_expiry_unit_count : typing.Optional[int] - default_rollover_policy : typing.Optional[CreateBillingCreditRequestBodyDefaultRolloverPolicy] + default_rollover_policy : typing.Optional[BillingCreditRolloverPolicy] icon : typing.Optional[str] @@ -3366,10 +3392,10 @@ async def update_billing_credit( *, description: str, name: str, - burn_strategy: typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy] = OMIT, - default_expiry_unit: typing.Optional[typing.Literal["days"]] = OMIT, + burn_strategy: typing.Optional[BillingCreditBurnStrategy] = OMIT, + default_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, default_expiry_unit_count: typing.Optional[int] = OMIT, - default_rollover_policy: typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy] = OMIT, + default_rollover_policy: typing.Optional[BillingCreditRolloverPolicy] = OMIT, icon: typing.Optional[str] = OMIT, per_unit_price: typing.Optional[int] = OMIT, per_unit_price_decimal: typing.Optional[str] = OMIT, @@ -3387,13 +3413,13 @@ async def update_billing_credit( name : str - burn_strategy : typing.Optional[UpdateBillingCreditRequestBodyBurnStrategy] + burn_strategy : typing.Optional[BillingCreditBurnStrategy] - default_expiry_unit : typing.Optional[typing.Literal["days"]] + default_expiry_unit : typing.Optional[BillingCreditExpiryUnit] default_expiry_unit_count : typing.Optional[int] - default_rollover_policy : typing.Optional[UpdateBillingCreditRequestBodyDefaultRolloverPolicy] + default_rollover_policy : typing.Optional[BillingCreditRolloverPolicy] icon : typing.Optional[str] @@ -3610,8 +3636,8 @@ async def list_credit_bundles( *, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_id: typing.Optional[str] = None, - status: typing.Optional[ListCreditBundlesRequestStatus] = None, - bundle_type: typing.Optional[typing.Literal["fixed"]] = None, + status: typing.Optional[BillingCreditBundleStatus] = None, + bundle_type: typing.Optional[BillingCreditBundleType] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -3623,9 +3649,9 @@ async def list_credit_bundles( credit_id : typing.Optional[str] - status : typing.Optional[ListCreditBundlesRequestStatus] + status : typing.Optional[BillingCreditBundleStatus] - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] limit : typing.Optional[int] Page limit (default 100) @@ -3735,13 +3761,13 @@ async def create_credit_bundle( credit_id: str, currency: str, price_per_unit: int, - bundle_type: typing.Optional[typing.Literal["fixed"]] = OMIT, - expiry_type: typing.Optional[CreateCreditBundleRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateCreditBundleRequestBodyExpiryUnit] = OMIT, + bundle_type: typing.Optional[BillingCreditBundleType] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, price_per_unit_decimal: typing.Optional[str] = OMIT, quantity: typing.Optional[int] = OMIT, - status: typing.Optional[CreateCreditBundleRequestBodyStatus] = OMIT, + status: typing.Optional[BillingCreditBundleStatus] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[CreateCreditBundleResponse]: """ @@ -3755,11 +3781,11 @@ async def create_credit_bundle( price_per_unit : int - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] - expiry_type : typing.Optional[CreateCreditBundleRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[CreateCreditBundleRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] @@ -3767,7 +3793,7 @@ async def create_credit_bundle( quantity : typing.Optional[int] - status : typing.Optional[CreateCreditBundleRequestBodyStatus] + status : typing.Optional[BillingCreditBundleStatus] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -3964,12 +3990,12 @@ async def update_credit_bundle_details( *, bundle_name: str, price_per_unit: int, - expiry_type: typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, price_per_unit_decimal: typing.Optional[str] = OMIT, quantity: typing.Optional[int] = OMIT, - status: typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus] = OMIT, + status: typing.Optional[BillingCreditBundleStatus] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[UpdateCreditBundleDetailsResponse]: """ @@ -3982,9 +4008,9 @@ async def update_credit_bundle_details( price_per_unit : int - expiry_type : typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[UpdateCreditBundleDetailsRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] @@ -3992,7 +4018,7 @@ async def update_credit_bundle_details( quantity : typing.Optional[int] - status : typing.Optional[UpdateCreditBundleDetailsRequestBodyStatus] + status : typing.Optional[BillingCreditBundleStatus] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -4196,8 +4222,8 @@ async def count_credit_bundles( *, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, credit_id: typing.Optional[str] = None, - status: typing.Optional[CountCreditBundlesRequestStatus] = None, - bundle_type: typing.Optional[typing.Literal["fixed"]] = None, + status: typing.Optional[BillingCreditBundleStatus] = None, + bundle_type: typing.Optional[BillingCreditBundleType] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -4209,9 +4235,9 @@ async def count_credit_bundles( credit_id : typing.Optional[str] - status : typing.Optional[CountCreditBundlesRequestStatus] + status : typing.Optional[BillingCreditBundleStatus] - bundle_type : typing.Optional[typing.Literal["fixed"]] + bundle_type : typing.Optional[BillingCreditBundleType] limit : typing.Optional[int] Page limit (default 100) @@ -4433,7 +4459,7 @@ async def zero_out_grant( self, grant_id: str, *, - reason: typing.Optional[ZeroOutGrantRequestBodyReason] = OMIT, + reason: typing.Optional[BillingCreditGrantZeroedOutReason] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[ZeroOutGrantResponse]: """ @@ -4442,7 +4468,7 @@ async def zero_out_grant( grant_id : str grant_id - reason : typing.Optional[ZeroOutGrantRequestBodyReason] + reason : typing.Optional[BillingCreditGrantZeroedOutReason] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -4544,12 +4570,14 @@ async def grant_billing_credits_to_company( company_id: str, credit_id: str, quantity: int, - reason: str, + reason: BillingCreditGrantReason, billing_periods_count: typing.Optional[int] = OMIT, expires_at: typing.Optional[dt.datetime] = OMIT, - expiry_type: typing.Optional[CreateCompanyCreditGrantExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateCompanyCreditGrantExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, + renewal_enabled: typing.Optional[bool] = OMIT, + renewal_period: typing.Optional[BillingPlanCreditGrantResetStart] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[GrantBillingCreditsToCompanyResponse]: """ @@ -4561,18 +4589,22 @@ async def grant_billing_credits_to_company( quantity : int - reason : str + reason : BillingCreditGrantReason billing_periods_count : typing.Optional[int] expires_at : typing.Optional[dt.datetime] - expiry_type : typing.Optional[CreateCompanyCreditGrantExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[CreateCompanyCreditGrantExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] + renewal_enabled : typing.Optional[bool] + + renewal_period : typing.Optional[BillingPlanCreditGrantResetStart] + request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -4594,6 +4626,8 @@ async def grant_billing_credits_to_company( "expiry_unit_count": expiry_unit_count, "quantity": quantity, "reason": reason, + "renewal_enabled": renewal_enabled, + "renewal_period": renewal_period, }, headers={ "content-type": "application/json", @@ -4679,8 +4713,8 @@ async def list_company_grants( self, *, company_id: typing.Optional[str] = None, - order: typing.Optional[ListCompanyGrantsRequestOrder] = None, - dir: typing.Optional[ListCompanyGrantsRequestDir] = None, + order: typing.Optional[CreditGrantSortOrder] = None, + dir: typing.Optional[SortDirection] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, request_options: typing.Optional[RequestOptions] = None, @@ -4690,9 +4724,9 @@ async def list_company_grants( ---------- company_id : typing.Optional[str] - order : typing.Optional[ListCompanyGrantsRequestOrder] + order : typing.Optional[CreditGrantSortOrder] - dir : typing.Optional[ListCompanyGrantsRequestDir] + dir : typing.Optional[SortDirection] limit : typing.Optional[int] Page limit (default 100) @@ -5028,7 +5062,7 @@ async def get_enriched_credit_ledger( self, *, company_id: str, - period: GetEnrichedCreditLedgerRequestPeriod, + period: CreditLedgerPeriod, billing_credit_id: typing.Optional[str] = None, feature_id: typing.Optional[str] = None, start_time: typing.Optional[str] = None, @@ -5042,7 +5076,7 @@ async def get_enriched_credit_ledger( ---------- company_id : str - period : GetEnrichedCreditLedgerRequestPeriod + period : CreditLedgerPeriod billing_credit_id : typing.Optional[str] @@ -5159,7 +5193,7 @@ async def count_credit_ledger( self, *, company_id: str, - period: CountCreditLedgerRequestPeriod, + period: CreditLedgerPeriod, billing_credit_id: typing.Optional[str] = None, feature_id: typing.Optional[str] = None, start_time: typing.Optional[str] = None, @@ -5173,7 +5207,7 @@ async def count_credit_ledger( ---------- company_id : str - period : CountCreditLedgerRequestPeriod + period : CreditLedgerPeriod billing_credit_id : typing.Optional[str] @@ -5415,13 +5449,20 @@ async def create_billing_plan_credit_grant( credit_amount: int, credit_id: str, plan_id: str, - reset_cadence: CreateBillingPlanCreditGrantRequestBodyResetCadence, - reset_start: CreateBillingPlanCreditGrantRequestBodyResetStart, + reset_cadence: BillingPlanCreditGrantResetCadence, + reset_start: BillingPlanCreditGrantResetStart, apply_to_existing: typing.Optional[bool] = OMIT, - expiry_type: typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit] = OMIT, + auto_topup_amount: typing.Optional[int] = OMIT, + auto_topup_amount_type: typing.Optional[CreditAutoTopupAmountType] = OMIT, + auto_topup_enabled: typing.Optional[bool] = OMIT, + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, + auto_topup_expiry_unit_count: typing.Optional[int] = OMIT, + auto_topup_threshold_percent: typing.Optional[int] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, - reset_type: typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType] = OMIT, + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[CreateBillingPlanCreditGrantResponse]: """ @@ -5433,19 +5474,33 @@ async def create_billing_plan_credit_grant( plan_id : str - reset_cadence : CreateBillingPlanCreditGrantRequestBodyResetCadence + reset_cadence : BillingPlanCreditGrantResetCadence - reset_start : CreateBillingPlanCreditGrantRequestBodyResetStart + reset_start : BillingPlanCreditGrantResetStart apply_to_existing : typing.Optional[bool] - expiry_type : typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryType] + auto_topup_amount : typing.Optional[int] + + auto_topup_amount_type : typing.Optional[CreditAutoTopupAmountType] + + auto_topup_enabled : typing.Optional[bool] + + auto_topup_expiry_type : typing.Optional[BillingCreditExpiryType] + + auto_topup_expiry_unit : typing.Optional[BillingCreditExpiryUnit] + + auto_topup_expiry_unit_count : typing.Optional[int] + + auto_topup_threshold_percent : typing.Optional[int] - expiry_unit : typing.Optional[CreateBillingPlanCreditGrantRequestBodyExpiryUnit] + expiry_type : typing.Optional[BillingCreditExpiryType] + + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] - reset_type : typing.Optional[CreateBillingPlanCreditGrantRequestBodyResetType] + reset_type : typing.Optional[BillingPlanCreditGrantResetType] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -5460,6 +5515,13 @@ async def create_billing_plan_credit_grant( method="POST", json={ "apply_to_existing": apply_to_existing, + "auto_topup_amount": auto_topup_amount, + "auto_topup_amount_type": auto_topup_amount_type, + "auto_topup_enabled": auto_topup_enabled, + "auto_topup_expiry_type": auto_topup_expiry_type, + "auto_topup_expiry_unit": auto_topup_expiry_unit, + "auto_topup_expiry_unit_count": auto_topup_expiry_unit_count, + "auto_topup_threshold_percent": auto_topup_threshold_percent, "credit_amount": credit_amount, "credit_id": credit_id, "expiry_type": expiry_type, @@ -5554,14 +5616,21 @@ async def update_billing_plan_credit_grant( self, plan_grant_id: str, *, - reset_cadence: UpdateBillingPlanCreditGrantRequestBodyResetCadence, - reset_start: UpdateBillingPlanCreditGrantRequestBodyResetStart, + reset_cadence: BillingPlanCreditGrantResetCadence, + reset_start: BillingPlanCreditGrantResetStart, apply_to_existing: typing.Optional[bool] = OMIT, + auto_topup_amount: typing.Optional[int] = OMIT, + auto_topup_amount_type: typing.Optional[CreditAutoTopupAmountType] = OMIT, + auto_topup_enabled: typing.Optional[bool] = OMIT, + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, + auto_topup_expiry_unit_count: typing.Optional[int] = OMIT, + auto_topup_threshold_percent: typing.Optional[int] = OMIT, credit_amount: typing.Optional[int] = OMIT, - expiry_type: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType] = OMIT, - expiry_unit: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit] = OMIT, + expiry_type: typing.Optional[BillingCreditExpiryType] = OMIT, + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = OMIT, expiry_unit_count: typing.Optional[int] = OMIT, - reset_type: typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType] = OMIT, + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[UpdateBillingPlanCreditGrantResponse]: """ @@ -5570,21 +5639,35 @@ async def update_billing_plan_credit_grant( plan_grant_id : str plan_grant_id - reset_cadence : UpdateBillingPlanCreditGrantRequestBodyResetCadence + reset_cadence : BillingPlanCreditGrantResetCadence - reset_start : UpdateBillingPlanCreditGrantRequestBodyResetStart + reset_start : BillingPlanCreditGrantResetStart apply_to_existing : typing.Optional[bool] + auto_topup_amount : typing.Optional[int] + + auto_topup_amount_type : typing.Optional[CreditAutoTopupAmountType] + + auto_topup_enabled : typing.Optional[bool] + + auto_topup_expiry_type : typing.Optional[BillingCreditExpiryType] + + auto_topup_expiry_unit : typing.Optional[BillingCreditExpiryUnit] + + auto_topup_expiry_unit_count : typing.Optional[int] + + auto_topup_threshold_percent : typing.Optional[int] + credit_amount : typing.Optional[int] - expiry_type : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryType] + expiry_type : typing.Optional[BillingCreditExpiryType] - expiry_unit : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyExpiryUnit] + expiry_unit : typing.Optional[BillingCreditExpiryUnit] expiry_unit_count : typing.Optional[int] - reset_type : typing.Optional[UpdateBillingPlanCreditGrantRequestBodyResetType] + reset_type : typing.Optional[BillingPlanCreditGrantResetType] request_options : typing.Optional[RequestOptions] Request-specific configuration. @@ -5599,6 +5682,13 @@ async def update_billing_plan_credit_grant( method="PUT", json={ "apply_to_existing": apply_to_existing, + "auto_topup_amount": auto_topup_amount, + "auto_topup_amount_type": auto_topup_amount_type, + "auto_topup_enabled": auto_topup_enabled, + "auto_topup_expiry_type": auto_topup_expiry_type, + "auto_topup_expiry_unit": auto_topup_expiry_unit, + "auto_topup_expiry_unit_count": auto_topup_expiry_unit_count, + "auto_topup_threshold_percent": auto_topup_threshold_percent, "credit_amount": credit_amount, "expiry_type": expiry_type, "expiry_unit": expiry_unit, diff --git a/src/schematic/credits/types/__init__.py b/src/schematic/credits/types/__init__.py index dee552b..1639493 100644 --- a/src/schematic/credits/types/__init__.py +++ b/src/schematic/credits/types/__init__.py @@ -13,48 +13,18 @@ from .count_billing_plan_credit_grants_params import CountBillingPlanCreditGrantsParams from .count_billing_plan_credit_grants_response import CountBillingPlanCreditGrantsResponse from .count_credit_bundles_params import CountCreditBundlesParams - from .count_credit_bundles_request_status import CountCreditBundlesRequestStatus from .count_credit_bundles_response import CountCreditBundlesResponse - from .count_credit_bundles_response_params_status import CountCreditBundlesResponseParamsStatus from .count_credit_ledger_params import CountCreditLedgerParams - from .count_credit_ledger_request_period import CountCreditLedgerRequestPeriod from .count_credit_ledger_response import CountCreditLedgerResponse - from .count_credit_ledger_response_params_period import CountCreditLedgerResponseParamsPeriod - from .create_billing_credit_request_body_burn_strategy import CreateBillingCreditRequestBodyBurnStrategy - from .create_billing_credit_request_body_default_rollover_policy import ( - CreateBillingCreditRequestBodyDefaultRolloverPolicy, - ) from .create_billing_credit_response import CreateBillingCreditResponse - from .create_billing_plan_credit_grant_request_body_expiry_type import ( - CreateBillingPlanCreditGrantRequestBodyExpiryType, - ) - from .create_billing_plan_credit_grant_request_body_expiry_unit import ( - CreateBillingPlanCreditGrantRequestBodyExpiryUnit, - ) - from .create_billing_plan_credit_grant_request_body_reset_cadence import ( - CreateBillingPlanCreditGrantRequestBodyResetCadence, - ) - from .create_billing_plan_credit_grant_request_body_reset_start import ( - CreateBillingPlanCreditGrantRequestBodyResetStart, - ) - from .create_billing_plan_credit_grant_request_body_reset_type import ( - CreateBillingPlanCreditGrantRequestBodyResetType, - ) from .create_billing_plan_credit_grant_response import CreateBillingPlanCreditGrantResponse - from .create_company_credit_grant_expiry_type import CreateCompanyCreditGrantExpiryType - from .create_company_credit_grant_expiry_unit import CreateCompanyCreditGrantExpiryUnit - from .create_credit_bundle_request_body_expiry_type import CreateCreditBundleRequestBodyExpiryType - from .create_credit_bundle_request_body_expiry_unit import CreateCreditBundleRequestBodyExpiryUnit - from .create_credit_bundle_request_body_status import CreateCreditBundleRequestBodyStatus from .create_credit_bundle_response import CreateCreditBundleResponse from .delete_billing_plan_credit_grant_params import DeleteBillingPlanCreditGrantParams from .delete_billing_plan_credit_grant_response import DeleteBillingPlanCreditGrantResponse from .delete_credit_bundle_response import DeleteCreditBundleResponse from .get_credit_bundle_response import GetCreditBundleResponse from .get_enriched_credit_ledger_params import GetEnrichedCreditLedgerParams - from .get_enriched_credit_ledger_request_period import GetEnrichedCreditLedgerRequestPeriod from .get_enriched_credit_ledger_response import GetEnrichedCreditLedgerResponse - from .get_enriched_credit_ledger_response_params_period import GetEnrichedCreditLedgerResponseParamsPeriod from .get_single_billing_credit_response import GetSingleBillingCreditResponse from .grant_billing_credits_to_company_response import GrantBillingCreditsToCompanyResponse from .list_billing_credits_params import ListBillingCreditsParams @@ -62,44 +32,15 @@ from .list_billing_plan_credit_grants_params import ListBillingPlanCreditGrantsParams from .list_billing_plan_credit_grants_response import ListBillingPlanCreditGrantsResponse from .list_company_grants_params import ListCompanyGrantsParams - from .list_company_grants_request_dir import ListCompanyGrantsRequestDir - from .list_company_grants_request_order import ListCompanyGrantsRequestOrder from .list_company_grants_response import ListCompanyGrantsResponse - from .list_company_grants_response_params_dir import ListCompanyGrantsResponseParamsDir - from .list_company_grants_response_params_order import ListCompanyGrantsResponseParamsOrder from .list_credit_bundles_params import ListCreditBundlesParams - from .list_credit_bundles_request_status import ListCreditBundlesRequestStatus from .list_credit_bundles_response import ListCreditBundlesResponse - from .list_credit_bundles_response_params_status import ListCreditBundlesResponseParamsStatus from .list_grants_for_credit_params import ListGrantsForCreditParams from .list_grants_for_credit_response import ListGrantsForCreditResponse from .soft_delete_billing_credit_response import SoftDeleteBillingCreditResponse - from .update_billing_credit_request_body_burn_strategy import UpdateBillingCreditRequestBodyBurnStrategy - from .update_billing_credit_request_body_default_rollover_policy import ( - UpdateBillingCreditRequestBodyDefaultRolloverPolicy, - ) from .update_billing_credit_response import UpdateBillingCreditResponse - from .update_billing_plan_credit_grant_request_body_expiry_type import ( - UpdateBillingPlanCreditGrantRequestBodyExpiryType, - ) - from .update_billing_plan_credit_grant_request_body_expiry_unit import ( - UpdateBillingPlanCreditGrantRequestBodyExpiryUnit, - ) - from .update_billing_plan_credit_grant_request_body_reset_cadence import ( - UpdateBillingPlanCreditGrantRequestBodyResetCadence, - ) - from .update_billing_plan_credit_grant_request_body_reset_start import ( - UpdateBillingPlanCreditGrantRequestBodyResetStart, - ) - from .update_billing_plan_credit_grant_request_body_reset_type import ( - UpdateBillingPlanCreditGrantRequestBodyResetType, - ) from .update_billing_plan_credit_grant_response import UpdateBillingPlanCreditGrantResponse - from .update_credit_bundle_details_request_body_expiry_type import UpdateCreditBundleDetailsRequestBodyExpiryType - from .update_credit_bundle_details_request_body_expiry_unit import UpdateCreditBundleDetailsRequestBodyExpiryUnit - from .update_credit_bundle_details_request_body_status import UpdateCreditBundleDetailsRequestBodyStatus from .update_credit_bundle_details_response import UpdateCreditBundleDetailsResponse - from .zero_out_grant_request_body_reason import ZeroOutGrantRequestBodyReason from .zero_out_grant_response import ZeroOutGrantResponse _dynamic_imports: typing.Dict[str, str] = { "CountBillingCreditsGrantsParams": ".count_billing_credits_grants_params", @@ -109,36 +50,18 @@ "CountBillingPlanCreditGrantsParams": ".count_billing_plan_credit_grants_params", "CountBillingPlanCreditGrantsResponse": ".count_billing_plan_credit_grants_response", "CountCreditBundlesParams": ".count_credit_bundles_params", - "CountCreditBundlesRequestStatus": ".count_credit_bundles_request_status", "CountCreditBundlesResponse": ".count_credit_bundles_response", - "CountCreditBundlesResponseParamsStatus": ".count_credit_bundles_response_params_status", "CountCreditLedgerParams": ".count_credit_ledger_params", - "CountCreditLedgerRequestPeriod": ".count_credit_ledger_request_period", "CountCreditLedgerResponse": ".count_credit_ledger_response", - "CountCreditLedgerResponseParamsPeriod": ".count_credit_ledger_response_params_period", - "CreateBillingCreditRequestBodyBurnStrategy": ".create_billing_credit_request_body_burn_strategy", - "CreateBillingCreditRequestBodyDefaultRolloverPolicy": ".create_billing_credit_request_body_default_rollover_policy", "CreateBillingCreditResponse": ".create_billing_credit_response", - "CreateBillingPlanCreditGrantRequestBodyExpiryType": ".create_billing_plan_credit_grant_request_body_expiry_type", - "CreateBillingPlanCreditGrantRequestBodyExpiryUnit": ".create_billing_plan_credit_grant_request_body_expiry_unit", - "CreateBillingPlanCreditGrantRequestBodyResetCadence": ".create_billing_plan_credit_grant_request_body_reset_cadence", - "CreateBillingPlanCreditGrantRequestBodyResetStart": ".create_billing_plan_credit_grant_request_body_reset_start", - "CreateBillingPlanCreditGrantRequestBodyResetType": ".create_billing_plan_credit_grant_request_body_reset_type", "CreateBillingPlanCreditGrantResponse": ".create_billing_plan_credit_grant_response", - "CreateCompanyCreditGrantExpiryType": ".create_company_credit_grant_expiry_type", - "CreateCompanyCreditGrantExpiryUnit": ".create_company_credit_grant_expiry_unit", - "CreateCreditBundleRequestBodyExpiryType": ".create_credit_bundle_request_body_expiry_type", - "CreateCreditBundleRequestBodyExpiryUnit": ".create_credit_bundle_request_body_expiry_unit", - "CreateCreditBundleRequestBodyStatus": ".create_credit_bundle_request_body_status", "CreateCreditBundleResponse": ".create_credit_bundle_response", "DeleteBillingPlanCreditGrantParams": ".delete_billing_plan_credit_grant_params", "DeleteBillingPlanCreditGrantResponse": ".delete_billing_plan_credit_grant_response", "DeleteCreditBundleResponse": ".delete_credit_bundle_response", "GetCreditBundleResponse": ".get_credit_bundle_response", "GetEnrichedCreditLedgerParams": ".get_enriched_credit_ledger_params", - "GetEnrichedCreditLedgerRequestPeriod": ".get_enriched_credit_ledger_request_period", "GetEnrichedCreditLedgerResponse": ".get_enriched_credit_ledger_response", - "GetEnrichedCreditLedgerResponseParamsPeriod": ".get_enriched_credit_ledger_response_params_period", "GetSingleBillingCreditResponse": ".get_single_billing_credit_response", "GrantBillingCreditsToCompanyResponse": ".grant_billing_credits_to_company_response", "ListBillingCreditsParams": ".list_billing_credits_params", @@ -146,32 +69,15 @@ "ListBillingPlanCreditGrantsParams": ".list_billing_plan_credit_grants_params", "ListBillingPlanCreditGrantsResponse": ".list_billing_plan_credit_grants_response", "ListCompanyGrantsParams": ".list_company_grants_params", - "ListCompanyGrantsRequestDir": ".list_company_grants_request_dir", - "ListCompanyGrantsRequestOrder": ".list_company_grants_request_order", "ListCompanyGrantsResponse": ".list_company_grants_response", - "ListCompanyGrantsResponseParamsDir": ".list_company_grants_response_params_dir", - "ListCompanyGrantsResponseParamsOrder": ".list_company_grants_response_params_order", "ListCreditBundlesParams": ".list_credit_bundles_params", - "ListCreditBundlesRequestStatus": ".list_credit_bundles_request_status", "ListCreditBundlesResponse": ".list_credit_bundles_response", - "ListCreditBundlesResponseParamsStatus": ".list_credit_bundles_response_params_status", "ListGrantsForCreditParams": ".list_grants_for_credit_params", "ListGrantsForCreditResponse": ".list_grants_for_credit_response", "SoftDeleteBillingCreditResponse": ".soft_delete_billing_credit_response", - "UpdateBillingCreditRequestBodyBurnStrategy": ".update_billing_credit_request_body_burn_strategy", - "UpdateBillingCreditRequestBodyDefaultRolloverPolicy": ".update_billing_credit_request_body_default_rollover_policy", "UpdateBillingCreditResponse": ".update_billing_credit_response", - "UpdateBillingPlanCreditGrantRequestBodyExpiryType": ".update_billing_plan_credit_grant_request_body_expiry_type", - "UpdateBillingPlanCreditGrantRequestBodyExpiryUnit": ".update_billing_plan_credit_grant_request_body_expiry_unit", - "UpdateBillingPlanCreditGrantRequestBodyResetCadence": ".update_billing_plan_credit_grant_request_body_reset_cadence", - "UpdateBillingPlanCreditGrantRequestBodyResetStart": ".update_billing_plan_credit_grant_request_body_reset_start", - "UpdateBillingPlanCreditGrantRequestBodyResetType": ".update_billing_plan_credit_grant_request_body_reset_type", "UpdateBillingPlanCreditGrantResponse": ".update_billing_plan_credit_grant_response", - "UpdateCreditBundleDetailsRequestBodyExpiryType": ".update_credit_bundle_details_request_body_expiry_type", - "UpdateCreditBundleDetailsRequestBodyExpiryUnit": ".update_credit_bundle_details_request_body_expiry_unit", - "UpdateCreditBundleDetailsRequestBodyStatus": ".update_credit_bundle_details_request_body_status", "UpdateCreditBundleDetailsResponse": ".update_credit_bundle_details_response", - "ZeroOutGrantRequestBodyReason": ".zero_out_grant_request_body_reason", "ZeroOutGrantResponse": ".zero_out_grant_response", } @@ -205,36 +111,18 @@ def __dir__(): "CountBillingPlanCreditGrantsParams", "CountBillingPlanCreditGrantsResponse", "CountCreditBundlesParams", - "CountCreditBundlesRequestStatus", "CountCreditBundlesResponse", - "CountCreditBundlesResponseParamsStatus", "CountCreditLedgerParams", - "CountCreditLedgerRequestPeriod", "CountCreditLedgerResponse", - "CountCreditLedgerResponseParamsPeriod", - "CreateBillingCreditRequestBodyBurnStrategy", - "CreateBillingCreditRequestBodyDefaultRolloverPolicy", "CreateBillingCreditResponse", - "CreateBillingPlanCreditGrantRequestBodyExpiryType", - "CreateBillingPlanCreditGrantRequestBodyExpiryUnit", - "CreateBillingPlanCreditGrantRequestBodyResetCadence", - "CreateBillingPlanCreditGrantRequestBodyResetStart", - "CreateBillingPlanCreditGrantRequestBodyResetType", "CreateBillingPlanCreditGrantResponse", - "CreateCompanyCreditGrantExpiryType", - "CreateCompanyCreditGrantExpiryUnit", - "CreateCreditBundleRequestBodyExpiryType", - "CreateCreditBundleRequestBodyExpiryUnit", - "CreateCreditBundleRequestBodyStatus", "CreateCreditBundleResponse", "DeleteBillingPlanCreditGrantParams", "DeleteBillingPlanCreditGrantResponse", "DeleteCreditBundleResponse", "GetCreditBundleResponse", "GetEnrichedCreditLedgerParams", - "GetEnrichedCreditLedgerRequestPeriod", "GetEnrichedCreditLedgerResponse", - "GetEnrichedCreditLedgerResponseParamsPeriod", "GetSingleBillingCreditResponse", "GrantBillingCreditsToCompanyResponse", "ListBillingCreditsParams", @@ -242,31 +130,14 @@ def __dir__(): "ListBillingPlanCreditGrantsParams", "ListBillingPlanCreditGrantsResponse", "ListCompanyGrantsParams", - "ListCompanyGrantsRequestDir", - "ListCompanyGrantsRequestOrder", "ListCompanyGrantsResponse", - "ListCompanyGrantsResponseParamsDir", - "ListCompanyGrantsResponseParamsOrder", "ListCreditBundlesParams", - "ListCreditBundlesRequestStatus", "ListCreditBundlesResponse", - "ListCreditBundlesResponseParamsStatus", "ListGrantsForCreditParams", "ListGrantsForCreditResponse", "SoftDeleteBillingCreditResponse", - "UpdateBillingCreditRequestBodyBurnStrategy", - "UpdateBillingCreditRequestBodyDefaultRolloverPolicy", "UpdateBillingCreditResponse", - "UpdateBillingPlanCreditGrantRequestBodyExpiryType", - "UpdateBillingPlanCreditGrantRequestBodyExpiryUnit", - "UpdateBillingPlanCreditGrantRequestBodyResetCadence", - "UpdateBillingPlanCreditGrantRequestBodyResetStart", - "UpdateBillingPlanCreditGrantRequestBodyResetType", "UpdateBillingPlanCreditGrantResponse", - "UpdateCreditBundleDetailsRequestBodyExpiryType", - "UpdateCreditBundleDetailsRequestBodyExpiryUnit", - "UpdateCreditBundleDetailsRequestBodyStatus", "UpdateCreditBundleDetailsResponse", - "ZeroOutGrantRequestBodyReason", "ZeroOutGrantResponse", ] diff --git a/src/schematic/credits/types/count_credit_bundles_params.py b/src/schematic/credits/types/count_credit_bundles_params.py index bc86976..763faad 100644 --- a/src/schematic/credits/types/count_credit_bundles_params.py +++ b/src/schematic/credits/types/count_credit_bundles_params.py @@ -4,7 +4,8 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .count_credit_bundles_response_params_status import CountCreditBundlesResponseParamsStatus +from ...types.billing_credit_bundle_status import BillingCreditBundleStatus +from ...types.billing_credit_bundle_type import BillingCreditBundleType class CountCreditBundlesParams(UniversalBaseModel): @@ -12,7 +13,7 @@ class CountCreditBundlesParams(UniversalBaseModel): Input parameters """ - bundle_type: typing.Optional[typing.Literal["fixed"]] = None + bundle_type: typing.Optional[BillingCreditBundleType] = None credit_id: typing.Optional[str] = None ids: typing.Optional[typing.List[str]] = None limit: typing.Optional[int] = pydantic.Field(default=None) @@ -25,7 +26,7 @@ class CountCreditBundlesParams(UniversalBaseModel): Page offset (default 0) """ - status: typing.Optional[CountCreditBundlesResponseParamsStatus] = None + status: typing.Optional[BillingCreditBundleStatus] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/credits/types/count_credit_bundles_request_status.py b/src/schematic/credits/types/count_credit_bundles_request_status.py deleted file mode 100644 index cb1f84e..0000000 --- a/src/schematic/credits/types/count_credit_bundles_request_status.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountCreditBundlesRequestStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any] diff --git a/src/schematic/credits/types/count_credit_bundles_response_params_status.py b/src/schematic/credits/types/count_credit_bundles_response_params_status.py deleted file mode 100644 index b9438a6..0000000 --- a/src/schematic/credits/types/count_credit_bundles_response_params_status.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountCreditBundlesResponseParamsStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any] diff --git a/src/schematic/credits/types/count_credit_ledger_params.py b/src/schematic/credits/types/count_credit_ledger_params.py index 3b096f2..e8c7d96 100644 --- a/src/schematic/credits/types/count_credit_ledger_params.py +++ b/src/schematic/credits/types/count_credit_ledger_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .count_credit_ledger_response_params_period import CountCreditLedgerResponseParamsPeriod +from ...types.credit_ledger_period import CreditLedgerPeriod class CountCreditLedgerParams(UniversalBaseModel): @@ -26,7 +26,7 @@ class CountCreditLedgerParams(UniversalBaseModel): Page offset (default 0) """ - period: typing.Optional[CountCreditLedgerResponseParamsPeriod] = None + period: typing.Optional[CreditLedgerPeriod] = None start_time: typing.Optional[str] = None if IS_PYDANTIC_V2: diff --git a/src/schematic/credits/types/count_credit_ledger_request_period.py b/src/schematic/credits/types/count_credit_ledger_request_period.py deleted file mode 100644 index 6e4ef87..0000000 --- a/src/schematic/credits/types/count_credit_ledger_request_period.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountCreditLedgerRequestPeriod = typing.Union[typing.Literal["daily", "weekly", "monthly", "raw"], typing.Any] diff --git a/src/schematic/credits/types/count_credit_ledger_response_params_period.py b/src/schematic/credits/types/count_credit_ledger_response_params_period.py deleted file mode 100644 index a454022..0000000 --- a/src/schematic/credits/types/count_credit_ledger_response_params_period.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountCreditLedgerResponseParamsPeriod = typing.Union[typing.Literal["daily", "weekly", "monthly", "raw"], typing.Any] diff --git a/src/schematic/credits/types/create_billing_credit_request_body_default_rollover_policy.py b/src/schematic/credits/types/create_billing_credit_request_body_default_rollover_policy.py deleted file mode 100644 index 6f19394..0000000 --- a/src/schematic/credits/types/create_billing_credit_request_body_default_rollover_policy.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingCreditRequestBodyDefaultRolloverPolicy = typing.Union[ - typing.Literal["none", "rollover", "expire"], typing.Any -] diff --git a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_expiry_type.py b/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_expiry_type.py deleted file mode 100644 index 29b4a40..0000000 --- a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_expiry_type.py +++ /dev/null @@ -1,8 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingPlanCreditGrantRequestBodyExpiryType = typing.Union[ - typing.Literal["duration", "no_expiry", "end_of_trial", "end_of_billing_period", "end_of_next_billing_period"], - typing.Any, -] diff --git a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_expiry_unit.py b/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_expiry_unit.py deleted file mode 100644 index 02f4f6e..0000000 --- a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_expiry_unit.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingPlanCreditGrantRequestBodyExpiryUnit = typing.Union[typing.Literal["days", "billing_periods"], typing.Any] diff --git a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_cadence.py b/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_cadence.py deleted file mode 100644 index a3f8487..0000000 --- a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_cadence.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingPlanCreditGrantRequestBodyResetCadence = typing.Union[ - typing.Literal["monthly", "yearly", "daily", "weekly"], typing.Any -] diff --git a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_start.py b/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_start.py deleted file mode 100644 index 23db8e6..0000000 --- a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_start.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingPlanCreditGrantRequestBodyResetStart = typing.Union[ - typing.Literal["billing_period", "first_of_month"], typing.Any -] diff --git a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_type.py b/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_type.py deleted file mode 100644 index 4ea8578..0000000 --- a/src/schematic/credits/types/create_billing_plan_credit_grant_request_body_reset_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateBillingPlanCreditGrantRequestBodyResetType = typing.Union[typing.Literal["plan_period", "no_reset"], typing.Any] diff --git a/src/schematic/credits/types/create_company_credit_grant_expiry_type.py b/src/schematic/credits/types/create_company_credit_grant_expiry_type.py deleted file mode 100644 index baca601..0000000 --- a/src/schematic/credits/types/create_company_credit_grant_expiry_type.py +++ /dev/null @@ -1,8 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateCompanyCreditGrantExpiryType = typing.Union[ - typing.Literal["duration", "no_expiry", "end_of_trial", "end_of_billing_period", "end_of_next_billing_period"], - typing.Any, -] diff --git a/src/schematic/credits/types/create_company_credit_grant_expiry_unit.py b/src/schematic/credits/types/create_company_credit_grant_expiry_unit.py deleted file mode 100644 index a5909ee..0000000 --- a/src/schematic/credits/types/create_company_credit_grant_expiry_unit.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateCompanyCreditGrantExpiryUnit = typing.Union[typing.Literal["days", "billing_periods"], typing.Any] diff --git a/src/schematic/credits/types/create_credit_bundle_request_body_expiry_type.py b/src/schematic/credits/types/create_credit_bundle_request_body_expiry_type.py deleted file mode 100644 index f3d88a4..0000000 --- a/src/schematic/credits/types/create_credit_bundle_request_body_expiry_type.py +++ /dev/null @@ -1,8 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateCreditBundleRequestBodyExpiryType = typing.Union[ - typing.Literal["duration", "no_expiry", "end_of_trial", "end_of_billing_period", "end_of_next_billing_period"], - typing.Any, -] diff --git a/src/schematic/credits/types/create_credit_bundle_request_body_expiry_unit.py b/src/schematic/credits/types/create_credit_bundle_request_body_expiry_unit.py deleted file mode 100644 index e4d1f81..0000000 --- a/src/schematic/credits/types/create_credit_bundle_request_body_expiry_unit.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateCreditBundleRequestBodyExpiryUnit = typing.Union[typing.Literal["days", "billing_periods"], typing.Any] diff --git a/src/schematic/credits/types/create_credit_bundle_request_body_status.py b/src/schematic/credits/types/create_credit_bundle_request_body_status.py deleted file mode 100644 index 63a4c03..0000000 --- a/src/schematic/credits/types/create_credit_bundle_request_body_status.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateCreditBundleRequestBodyStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any] diff --git a/src/schematic/credits/types/get_enriched_credit_ledger_params.py b/src/schematic/credits/types/get_enriched_credit_ledger_params.py index 627355f..6d358b4 100644 --- a/src/schematic/credits/types/get_enriched_credit_ledger_params.py +++ b/src/schematic/credits/types/get_enriched_credit_ledger_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .get_enriched_credit_ledger_response_params_period import GetEnrichedCreditLedgerResponseParamsPeriod +from ...types.credit_ledger_period import CreditLedgerPeriod class GetEnrichedCreditLedgerParams(UniversalBaseModel): @@ -26,7 +26,7 @@ class GetEnrichedCreditLedgerParams(UniversalBaseModel): Page offset (default 0) """ - period: typing.Optional[GetEnrichedCreditLedgerResponseParamsPeriod] = None + period: typing.Optional[CreditLedgerPeriod] = None start_time: typing.Optional[str] = None if IS_PYDANTIC_V2: diff --git a/src/schematic/credits/types/get_enriched_credit_ledger_request_period.py b/src/schematic/credits/types/get_enriched_credit_ledger_request_period.py deleted file mode 100644 index 339822a..0000000 --- a/src/schematic/credits/types/get_enriched_credit_ledger_request_period.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -GetEnrichedCreditLedgerRequestPeriod = typing.Union[typing.Literal["daily", "weekly", "monthly", "raw"], typing.Any] diff --git a/src/schematic/credits/types/get_enriched_credit_ledger_response_params_period.py b/src/schematic/credits/types/get_enriched_credit_ledger_response_params_period.py deleted file mode 100644 index 222715f..0000000 --- a/src/schematic/credits/types/get_enriched_credit_ledger_response_params_period.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -GetEnrichedCreditLedgerResponseParamsPeriod = typing.Union[ - typing.Literal["daily", "weekly", "monthly", "raw"], typing.Any -] diff --git a/src/schematic/credits/types/list_company_grants_params.py b/src/schematic/credits/types/list_company_grants_params.py index 073ee64..f627ed4 100644 --- a/src/schematic/credits/types/list_company_grants_params.py +++ b/src/schematic/credits/types/list_company_grants_params.py @@ -4,8 +4,8 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_company_grants_response_params_dir import ListCompanyGrantsResponseParamsDir -from .list_company_grants_response_params_order import ListCompanyGrantsResponseParamsOrder +from ...types.credit_grant_sort_order import CreditGrantSortOrder +from ...types.sort_direction import SortDirection class ListCompanyGrantsParams(UniversalBaseModel): @@ -14,7 +14,7 @@ class ListCompanyGrantsParams(UniversalBaseModel): """ company_id: typing.Optional[str] = None - dir: typing.Optional[ListCompanyGrantsResponseParamsDir] = None + dir: typing.Optional[SortDirection] = None limit: typing.Optional[int] = pydantic.Field(default=None) """ Page limit (default 100) @@ -25,7 +25,7 @@ class ListCompanyGrantsParams(UniversalBaseModel): Page offset (default 0) """ - order: typing.Optional[ListCompanyGrantsResponseParamsOrder] = None + order: typing.Optional[CreditGrantSortOrder] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/credits/types/list_company_grants_request_dir.py b/src/schematic/credits/types/list_company_grants_request_dir.py deleted file mode 100644 index d0fe38a..0000000 --- a/src/schematic/credits/types/list_company_grants_request_dir.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListCompanyGrantsRequestDir = typing.Union[typing.Literal["asc", "desc"], typing.Any] diff --git a/src/schematic/credits/types/list_company_grants_response_params_dir.py b/src/schematic/credits/types/list_company_grants_response_params_dir.py deleted file mode 100644 index 83096f5..0000000 --- a/src/schematic/credits/types/list_company_grants_response_params_dir.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListCompanyGrantsResponseParamsDir = typing.Union[typing.Literal["asc", "desc"], typing.Any] diff --git a/src/schematic/credits/types/list_company_grants_response_params_order.py b/src/schematic/credits/types/list_company_grants_response_params_order.py deleted file mode 100644 index 6742d6b..0000000 --- a/src/schematic/credits/types/list_company_grants_response_params_order.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListCompanyGrantsResponseParamsOrder = typing.Union[ - typing.Literal["created_at", "expires_at", "quantity", "quantity_remaining"], typing.Any -] diff --git a/src/schematic/credits/types/list_credit_bundles_params.py b/src/schematic/credits/types/list_credit_bundles_params.py index e9b4216..16a53fb 100644 --- a/src/schematic/credits/types/list_credit_bundles_params.py +++ b/src/schematic/credits/types/list_credit_bundles_params.py @@ -4,7 +4,8 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_credit_bundles_response_params_status import ListCreditBundlesResponseParamsStatus +from ...types.billing_credit_bundle_status import BillingCreditBundleStatus +from ...types.billing_credit_bundle_type import BillingCreditBundleType class ListCreditBundlesParams(UniversalBaseModel): @@ -12,7 +13,7 @@ class ListCreditBundlesParams(UniversalBaseModel): Input parameters """ - bundle_type: typing.Optional[typing.Literal["fixed"]] = None + bundle_type: typing.Optional[BillingCreditBundleType] = None credit_id: typing.Optional[str] = None ids: typing.Optional[typing.List[str]] = None limit: typing.Optional[int] = pydantic.Field(default=None) @@ -25,7 +26,7 @@ class ListCreditBundlesParams(UniversalBaseModel): Page offset (default 0) """ - status: typing.Optional[ListCreditBundlesResponseParamsStatus] = None + status: typing.Optional[BillingCreditBundleStatus] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/credits/types/list_credit_bundles_request_status.py b/src/schematic/credits/types/list_credit_bundles_request_status.py deleted file mode 100644 index 3a354f2..0000000 --- a/src/schematic/credits/types/list_credit_bundles_request_status.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListCreditBundlesRequestStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any] diff --git a/src/schematic/credits/types/list_credit_bundles_response_params_status.py b/src/schematic/credits/types/list_credit_bundles_response_params_status.py deleted file mode 100644 index 623c9c0..0000000 --- a/src/schematic/credits/types/list_credit_bundles_response_params_status.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListCreditBundlesResponseParamsStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any] diff --git a/src/schematic/credits/types/update_billing_credit_request_body_burn_strategy.py b/src/schematic/credits/types/update_billing_credit_request_body_burn_strategy.py deleted file mode 100644 index cb8eb22..0000000 --- a/src/schematic/credits/types/update_billing_credit_request_body_burn_strategy.py +++ /dev/null @@ -1,13 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateBillingCreditRequestBodyBurnStrategy = typing.Union[ - typing.Literal[ - "plan_first_then_credit_bundles_first_in_first_out", - "first_in_first_out", - "last_in_first_out", - "expiration_priority", - ], - typing.Any, -] diff --git a/src/schematic/credits/types/update_billing_credit_request_body_default_rollover_policy.py b/src/schematic/credits/types/update_billing_credit_request_body_default_rollover_policy.py deleted file mode 100644 index 630fd28..0000000 --- a/src/schematic/credits/types/update_billing_credit_request_body_default_rollover_policy.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateBillingCreditRequestBodyDefaultRolloverPolicy = typing.Union[ - typing.Literal["none", "rollover", "expire"], typing.Any -] diff --git a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_expiry_type.py b/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_expiry_type.py deleted file mode 100644 index 45e9ac8..0000000 --- a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_expiry_type.py +++ /dev/null @@ -1,8 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateBillingPlanCreditGrantRequestBodyExpiryType = typing.Union[ - typing.Literal["duration", "no_expiry", "end_of_trial", "end_of_billing_period", "end_of_next_billing_period"], - typing.Any, -] diff --git a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_expiry_unit.py b/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_expiry_unit.py deleted file mode 100644 index c11f80a..0000000 --- a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_expiry_unit.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateBillingPlanCreditGrantRequestBodyExpiryUnit = typing.Union[typing.Literal["days", "billing_periods"], typing.Any] diff --git a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_cadence.py b/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_cadence.py deleted file mode 100644 index 8a460c2..0000000 --- a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_cadence.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateBillingPlanCreditGrantRequestBodyResetCadence = typing.Union[ - typing.Literal["monthly", "yearly", "daily", "weekly"], typing.Any -] diff --git a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_start.py b/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_start.py deleted file mode 100644 index ff5e8e0..0000000 --- a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_start.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateBillingPlanCreditGrantRequestBodyResetStart = typing.Union[ - typing.Literal["billing_period", "first_of_month"], typing.Any -] diff --git a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_type.py b/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_type.py deleted file mode 100644 index 637064b..0000000 --- a/src/schematic/credits/types/update_billing_plan_credit_grant_request_body_reset_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateBillingPlanCreditGrantRequestBodyResetType = typing.Union[typing.Literal["plan_period", "no_reset"], typing.Any] diff --git a/src/schematic/credits/types/update_credit_bundle_details_request_body_expiry_type.py b/src/schematic/credits/types/update_credit_bundle_details_request_body_expiry_type.py deleted file mode 100644 index 0363f5d..0000000 --- a/src/schematic/credits/types/update_credit_bundle_details_request_body_expiry_type.py +++ /dev/null @@ -1,8 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateCreditBundleDetailsRequestBodyExpiryType = typing.Union[ - typing.Literal["duration", "no_expiry", "end_of_trial", "end_of_billing_period", "end_of_next_billing_period"], - typing.Any, -] diff --git a/src/schematic/credits/types/update_credit_bundle_details_request_body_expiry_unit.py b/src/schematic/credits/types/update_credit_bundle_details_request_body_expiry_unit.py deleted file mode 100644 index 0e10711..0000000 --- a/src/schematic/credits/types/update_credit_bundle_details_request_body_expiry_unit.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateCreditBundleDetailsRequestBodyExpiryUnit = typing.Union[typing.Literal["days", "billing_periods"], typing.Any] diff --git a/src/schematic/credits/types/update_credit_bundle_details_request_body_status.py b/src/schematic/credits/types/update_credit_bundle_details_request_body_status.py deleted file mode 100644 index 30b5180..0000000 --- a/src/schematic/credits/types/update_credit_bundle_details_request_body_status.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateCreditBundleDetailsRequestBodyStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any] diff --git a/src/schematic/credits/types/zero_out_grant_request_body_reason.py b/src/schematic/credits/types/zero_out_grant_request_body_reason.py deleted file mode 100644 index 158e82b..0000000 --- a/src/schematic/credits/types/zero_out_grant_request_body_reason.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ZeroOutGrantRequestBodyReason = typing.Union[ - typing.Literal["plan_change", "manual", "plan_period_reset", "expired"], typing.Any -] diff --git a/src/schematic/entitlements/__init__.py b/src/schematic/entitlements/__init__.py index f241e6e..77befb3 100644 --- a/src/schematic/entitlements/__init__.py +++ b/src/schematic/entitlements/__init__.py @@ -19,15 +19,13 @@ CountPlanEntitlementsResponse, CreateCompanyOverrideRequestBodyMetricPeriod, CreateCompanyOverrideRequestBodyMetricPeriodMonthReset, - CreateCompanyOverrideRequestBodyValueType, CreateCompanyOverrideResponse, CreatePlanEntitlementRequestBodyMetricPeriod, CreatePlanEntitlementRequestBodyMetricPeriodMonthReset, - CreatePlanEntitlementRequestBodyPriceBehavior, - CreatePlanEntitlementRequestBodyValueType, CreatePlanEntitlementResponse, DeleteCompanyOverrideResponse, DeletePlanEntitlementResponse, + DuplicatePlanEntitlementsResponse, GetCompanyOverrideResponse, GetFeatureUsageByCompanyParams, GetFeatureUsageByCompanyResponse, @@ -44,12 +42,9 @@ ListPlanEntitlementsResponse, UpdateCompanyOverrideRequestBodyMetricPeriod, UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset, - UpdateCompanyOverrideRequestBodyValueType, UpdateCompanyOverrideResponse, UpdatePlanEntitlementRequestBodyMetricPeriod, UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset, - UpdatePlanEntitlementRequestBodyPriceBehavior, - UpdatePlanEntitlementRequestBodyValueType, UpdatePlanEntitlementResponse, ) _dynamic_imports: typing.Dict[str, str] = { @@ -65,15 +60,13 @@ "CountPlanEntitlementsResponse": ".types", "CreateCompanyOverrideRequestBodyMetricPeriod": ".types", "CreateCompanyOverrideRequestBodyMetricPeriodMonthReset": ".types", - "CreateCompanyOverrideRequestBodyValueType": ".types", "CreateCompanyOverrideResponse": ".types", "CreatePlanEntitlementRequestBodyMetricPeriod": ".types", "CreatePlanEntitlementRequestBodyMetricPeriodMonthReset": ".types", - "CreatePlanEntitlementRequestBodyPriceBehavior": ".types", - "CreatePlanEntitlementRequestBodyValueType": ".types", "CreatePlanEntitlementResponse": ".types", "DeleteCompanyOverrideResponse": ".types", "DeletePlanEntitlementResponse": ".types", + "DuplicatePlanEntitlementsResponse": ".types", "GetCompanyOverrideResponse": ".types", "GetFeatureUsageByCompanyParams": ".types", "GetFeatureUsageByCompanyResponse": ".types", @@ -90,12 +83,9 @@ "ListPlanEntitlementsResponse": ".types", "UpdateCompanyOverrideRequestBodyMetricPeriod": ".types", "UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset": ".types", - "UpdateCompanyOverrideRequestBodyValueType": ".types", "UpdateCompanyOverrideResponse": ".types", "UpdatePlanEntitlementRequestBodyMetricPeriod": ".types", "UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset": ".types", - "UpdatePlanEntitlementRequestBodyPriceBehavior": ".types", - "UpdatePlanEntitlementRequestBodyValueType": ".types", "UpdatePlanEntitlementResponse": ".types", } @@ -134,15 +124,13 @@ def __dir__(): "CountPlanEntitlementsResponse", "CreateCompanyOverrideRequestBodyMetricPeriod", "CreateCompanyOverrideRequestBodyMetricPeriodMonthReset", - "CreateCompanyOverrideRequestBodyValueType", "CreateCompanyOverrideResponse", "CreatePlanEntitlementRequestBodyMetricPeriod", "CreatePlanEntitlementRequestBodyMetricPeriodMonthReset", - "CreatePlanEntitlementRequestBodyPriceBehavior", - "CreatePlanEntitlementRequestBodyValueType", "CreatePlanEntitlementResponse", "DeleteCompanyOverrideResponse", "DeletePlanEntitlementResponse", + "DuplicatePlanEntitlementsResponse", "GetCompanyOverrideResponse", "GetFeatureUsageByCompanyParams", "GetFeatureUsageByCompanyResponse", @@ -159,11 +147,8 @@ def __dir__(): "ListPlanEntitlementsResponse", "UpdateCompanyOverrideRequestBodyMetricPeriod", "UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset", - "UpdateCompanyOverrideRequestBodyValueType", "UpdateCompanyOverrideResponse", "UpdatePlanEntitlementRequestBodyMetricPeriod", "UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset", - "UpdatePlanEntitlementRequestBodyPriceBehavior", - "UpdatePlanEntitlementRequestBodyValueType", "UpdatePlanEntitlementResponse", ] diff --git a/src/schematic/entitlements/client.py b/src/schematic/entitlements/client.py index 60f4670..2661564 100644 --- a/src/schematic/entitlements/client.py +++ b/src/schematic/entitlements/client.py @@ -5,7 +5,10 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions +from ..types.billing_tiers_mode import BillingTiersMode from ..types.create_price_tier_request_body import CreatePriceTierRequestBody +from ..types.entitlement_price_behavior import EntitlementPriceBehavior +from ..types.entitlement_value_type import EntitlementValueType from .raw_client import AsyncRawEntitlementsClient, RawEntitlementsClient from .types.count_company_overrides_response import CountCompanyOverridesResponse from .types.count_feature_companies_response import CountFeatureCompaniesResponse @@ -16,17 +19,15 @@ from .types.create_company_override_request_body_metric_period_month_reset import ( CreateCompanyOverrideRequestBodyMetricPeriodMonthReset, ) -from .types.create_company_override_request_body_value_type import CreateCompanyOverrideRequestBodyValueType from .types.create_company_override_response import CreateCompanyOverrideResponse from .types.create_plan_entitlement_request_body_metric_period import CreatePlanEntitlementRequestBodyMetricPeriod from .types.create_plan_entitlement_request_body_metric_period_month_reset import ( CreatePlanEntitlementRequestBodyMetricPeriodMonthReset, ) -from .types.create_plan_entitlement_request_body_price_behavior import CreatePlanEntitlementRequestBodyPriceBehavior -from .types.create_plan_entitlement_request_body_value_type import CreatePlanEntitlementRequestBodyValueType from .types.create_plan_entitlement_response import CreatePlanEntitlementResponse from .types.delete_company_override_response import DeleteCompanyOverrideResponse from .types.delete_plan_entitlement_response import DeletePlanEntitlementResponse +from .types.duplicate_plan_entitlements_response import DuplicatePlanEntitlementsResponse from .types.get_company_override_response import GetCompanyOverrideResponse from .types.get_feature_usage_by_company_response import GetFeatureUsageByCompanyResponse from .types.get_plan_entitlement_response import GetPlanEntitlementResponse @@ -39,14 +40,11 @@ from .types.update_company_override_request_body_metric_period_month_reset import ( UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset, ) -from .types.update_company_override_request_body_value_type import UpdateCompanyOverrideRequestBodyValueType from .types.update_company_override_response import UpdateCompanyOverrideResponse from .types.update_plan_entitlement_request_body_metric_period import UpdatePlanEntitlementRequestBodyMetricPeriod from .types.update_plan_entitlement_request_body_metric_period_month_reset import ( UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset, ) -from .types.update_plan_entitlement_request_body_price_behavior import UpdatePlanEntitlementRequestBodyPriceBehavior -from .types.update_plan_entitlement_request_body_value_type import UpdatePlanEntitlementRequestBodyValueType from .types.update_plan_entitlement_response import UpdatePlanEntitlementResponse # this is used as the default value for optional parameters @@ -155,7 +153,7 @@ def create_company_override( *, company_id: str, feature_id: str, - value_type: CreateCompanyOverrideRequestBodyValueType, + value_type: EntitlementValueType, credit_consumption_rate: typing.Optional[float] = OMIT, expiration_date: typing.Optional[dt.datetime] = OMIT, metric_period: typing.Optional[CreateCompanyOverrideRequestBodyMetricPeriod] = OMIT, @@ -174,7 +172,7 @@ def create_company_override( feature_id : str - value_type : CreateCompanyOverrideRequestBodyValueType + value_type : EntitlementValueType credit_consumption_rate : typing.Optional[float] @@ -267,7 +265,7 @@ def update_company_override( self, company_override_id: str, *, - value_type: UpdateCompanyOverrideRequestBodyValueType, + value_type: EntitlementValueType, credit_consumption_rate: typing.Optional[float] = OMIT, expiration_date: typing.Optional[dt.datetime] = OMIT, metric_period: typing.Optional[UpdateCompanyOverrideRequestBodyMetricPeriod] = OMIT, @@ -285,7 +283,7 @@ def update_company_override( company_override_id : str company_override_id - value_type : UpdateCompanyOverrideRequestBodyValueType + value_type : EntitlementValueType credit_consumption_rate : typing.Optional[float] @@ -869,7 +867,7 @@ def create_plan_entitlement( *, feature_id: str, plan_id: str, - value_type: CreatePlanEntitlementRequestBodyValueType, + value_type: EntitlementValueType, billing_product_id: typing.Optional[str] = OMIT, billing_threshold: typing.Optional[int] = OMIT, credit_consumption_rate: typing.Optional[float] = OMIT, @@ -881,10 +879,10 @@ def create_plan_entitlement( monthly_unit_price: typing.Optional[int] = OMIT, monthly_unit_price_decimal: typing.Optional[str] = OMIT, overage_billing_product_id: typing.Optional[str] = OMIT, - price_behavior: typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior] = OMIT, + price_behavior: typing.Optional[EntitlementPriceBehavior] = OMIT, price_tiers: typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] = OMIT, soft_limit: typing.Optional[int] = OMIT, - tier_mode: typing.Optional[str] = OMIT, + tier_mode: typing.Optional[BillingTiersMode] = OMIT, value_bool: typing.Optional[bool] = OMIT, value_credit_id: typing.Optional[str] = OMIT, value_numeric: typing.Optional[int] = OMIT, @@ -902,7 +900,7 @@ def create_plan_entitlement( plan_id : str - value_type : CreatePlanEntitlementRequestBodyValueType + value_type : EntitlementValueType billing_product_id : typing.Optional[str] @@ -926,14 +924,14 @@ def create_plan_entitlement( overage_billing_product_id : typing.Optional[str] - price_behavior : typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior] + price_behavior : typing.Optional[EntitlementPriceBehavior] price_tiers : typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] Use MonthlyPriceTiers or YearlyPriceTiers instead soft_limit : typing.Optional[int] - tier_mode : typing.Optional[str] + tier_mode : typing.Optional[BillingTiersMode] value_bool : typing.Optional[bool] @@ -1038,7 +1036,7 @@ def update_plan_entitlement( self, plan_entitlement_id: str, *, - value_type: UpdatePlanEntitlementRequestBodyValueType, + value_type: EntitlementValueType, billing_product_id: typing.Optional[str] = OMIT, billing_threshold: typing.Optional[int] = OMIT, credit_consumption_rate: typing.Optional[float] = OMIT, @@ -1050,10 +1048,10 @@ def update_plan_entitlement( monthly_unit_price: typing.Optional[int] = OMIT, monthly_unit_price_decimal: typing.Optional[str] = OMIT, overage_billing_product_id: typing.Optional[str] = OMIT, - price_behavior: typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior] = OMIT, + price_behavior: typing.Optional[EntitlementPriceBehavior] = OMIT, price_tiers: typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] = OMIT, soft_limit: typing.Optional[int] = OMIT, - tier_mode: typing.Optional[str] = OMIT, + tier_mode: typing.Optional[BillingTiersMode] = OMIT, value_bool: typing.Optional[bool] = OMIT, value_credit_id: typing.Optional[str] = OMIT, value_numeric: typing.Optional[int] = OMIT, @@ -1070,7 +1068,7 @@ def update_plan_entitlement( plan_entitlement_id : str plan_entitlement_id - value_type : UpdatePlanEntitlementRequestBodyValueType + value_type : EntitlementValueType billing_product_id : typing.Optional[str] @@ -1094,14 +1092,14 @@ def update_plan_entitlement( overage_billing_product_id : typing.Optional[str] - price_behavior : typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior] + price_behavior : typing.Optional[EntitlementPriceBehavior] price_tiers : typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] Use MonthlyPriceTiers or YearlyPriceTiers instead soft_limit : typing.Optional[int] - tier_mode : typing.Optional[str] + tier_mode : typing.Optional[BillingTiersMode] value_bool : typing.Optional[bool] @@ -1282,6 +1280,41 @@ def count_plan_entitlements( ) return _response.data + def duplicate_plan_entitlements( + self, *, source_plan_id: str, target_plan_id: str, request_options: typing.Optional[RequestOptions] = None + ) -> DuplicatePlanEntitlementsResponse: + """ + Parameters + ---------- + source_plan_id : str + + target_plan_id : str + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + DuplicatePlanEntitlementsResponse + Created + + Examples + -------- + from schematic import Schematic + + client = Schematic( + api_key="YOUR_API_KEY", + ) + client.entitlements.duplicate_plan_entitlements( + source_plan_id="source_plan_id", + target_plan_id="target_plan_id", + ) + """ + _response = self._raw_client.duplicate_plan_entitlements( + source_plan_id=source_plan_id, target_plan_id=target_plan_id, request_options=request_options + ) + return _response.data + def get_feature_usage_by_company( self, *, keys: typing.Dict[str, str], request_options: typing.Optional[RequestOptions] = None ) -> GetFeatureUsageByCompanyResponse: @@ -1424,7 +1457,7 @@ async def create_company_override( *, company_id: str, feature_id: str, - value_type: CreateCompanyOverrideRequestBodyValueType, + value_type: EntitlementValueType, credit_consumption_rate: typing.Optional[float] = OMIT, expiration_date: typing.Optional[dt.datetime] = OMIT, metric_period: typing.Optional[CreateCompanyOverrideRequestBodyMetricPeriod] = OMIT, @@ -1443,7 +1476,7 @@ async def create_company_override( feature_id : str - value_type : CreateCompanyOverrideRequestBodyValueType + value_type : EntitlementValueType credit_consumption_rate : typing.Optional[float] @@ -1552,7 +1585,7 @@ async def update_company_override( self, company_override_id: str, *, - value_type: UpdateCompanyOverrideRequestBodyValueType, + value_type: EntitlementValueType, credit_consumption_rate: typing.Optional[float] = OMIT, expiration_date: typing.Optional[dt.datetime] = OMIT, metric_period: typing.Optional[UpdateCompanyOverrideRequestBodyMetricPeriod] = OMIT, @@ -1570,7 +1603,7 @@ async def update_company_override( company_override_id : str company_override_id - value_type : UpdateCompanyOverrideRequestBodyValueType + value_type : EntitlementValueType credit_consumption_rate : typing.Optional[float] @@ -2234,7 +2267,7 @@ async def create_plan_entitlement( *, feature_id: str, plan_id: str, - value_type: CreatePlanEntitlementRequestBodyValueType, + value_type: EntitlementValueType, billing_product_id: typing.Optional[str] = OMIT, billing_threshold: typing.Optional[int] = OMIT, credit_consumption_rate: typing.Optional[float] = OMIT, @@ -2246,10 +2279,10 @@ async def create_plan_entitlement( monthly_unit_price: typing.Optional[int] = OMIT, monthly_unit_price_decimal: typing.Optional[str] = OMIT, overage_billing_product_id: typing.Optional[str] = OMIT, - price_behavior: typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior] = OMIT, + price_behavior: typing.Optional[EntitlementPriceBehavior] = OMIT, price_tiers: typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] = OMIT, soft_limit: typing.Optional[int] = OMIT, - tier_mode: typing.Optional[str] = OMIT, + tier_mode: typing.Optional[BillingTiersMode] = OMIT, value_bool: typing.Optional[bool] = OMIT, value_credit_id: typing.Optional[str] = OMIT, value_numeric: typing.Optional[int] = OMIT, @@ -2267,7 +2300,7 @@ async def create_plan_entitlement( plan_id : str - value_type : CreatePlanEntitlementRequestBodyValueType + value_type : EntitlementValueType billing_product_id : typing.Optional[str] @@ -2291,14 +2324,14 @@ async def create_plan_entitlement( overage_billing_product_id : typing.Optional[str] - price_behavior : typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior] + price_behavior : typing.Optional[EntitlementPriceBehavior] price_tiers : typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] Use MonthlyPriceTiers or YearlyPriceTiers instead soft_limit : typing.Optional[int] - tier_mode : typing.Optional[str] + tier_mode : typing.Optional[BillingTiersMode] value_bool : typing.Optional[bool] @@ -2419,7 +2452,7 @@ async def update_plan_entitlement( self, plan_entitlement_id: str, *, - value_type: UpdatePlanEntitlementRequestBodyValueType, + value_type: EntitlementValueType, billing_product_id: typing.Optional[str] = OMIT, billing_threshold: typing.Optional[int] = OMIT, credit_consumption_rate: typing.Optional[float] = OMIT, @@ -2431,10 +2464,10 @@ async def update_plan_entitlement( monthly_unit_price: typing.Optional[int] = OMIT, monthly_unit_price_decimal: typing.Optional[str] = OMIT, overage_billing_product_id: typing.Optional[str] = OMIT, - price_behavior: typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior] = OMIT, + price_behavior: typing.Optional[EntitlementPriceBehavior] = OMIT, price_tiers: typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] = OMIT, soft_limit: typing.Optional[int] = OMIT, - tier_mode: typing.Optional[str] = OMIT, + tier_mode: typing.Optional[BillingTiersMode] = OMIT, value_bool: typing.Optional[bool] = OMIT, value_credit_id: typing.Optional[str] = OMIT, value_numeric: typing.Optional[int] = OMIT, @@ -2451,7 +2484,7 @@ async def update_plan_entitlement( plan_entitlement_id : str plan_entitlement_id - value_type : UpdatePlanEntitlementRequestBodyValueType + value_type : EntitlementValueType billing_product_id : typing.Optional[str] @@ -2475,14 +2508,14 @@ async def update_plan_entitlement( overage_billing_product_id : typing.Optional[str] - price_behavior : typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior] + price_behavior : typing.Optional[EntitlementPriceBehavior] price_tiers : typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] Use MonthlyPriceTiers or YearlyPriceTiers instead soft_limit : typing.Optional[int] - tier_mode : typing.Optional[str] + tier_mode : typing.Optional[BillingTiersMode] value_bool : typing.Optional[bool] @@ -2687,6 +2720,49 @@ async def main() -> None: ) return _response.data + async def duplicate_plan_entitlements( + self, *, source_plan_id: str, target_plan_id: str, request_options: typing.Optional[RequestOptions] = None + ) -> DuplicatePlanEntitlementsResponse: + """ + Parameters + ---------- + source_plan_id : str + + target_plan_id : str + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + DuplicatePlanEntitlementsResponse + Created + + Examples + -------- + import asyncio + + from schematic import AsyncSchematic + + client = AsyncSchematic( + api_key="YOUR_API_KEY", + ) + + + async def main() -> None: + await client.entitlements.duplicate_plan_entitlements( + source_plan_id="source_plan_id", + target_plan_id="target_plan_id", + ) + + + asyncio.run(main()) + """ + _response = await self._raw_client.duplicate_plan_entitlements( + source_plan_id=source_plan_id, target_plan_id=target_plan_id, request_options=request_options + ) + return _response.data + async def get_feature_usage_by_company( self, *, keys: typing.Dict[str, str], request_options: typing.Optional[RequestOptions] = None ) -> GetFeatureUsageByCompanyResponse: diff --git a/src/schematic/entitlements/raw_client.py b/src/schematic/entitlements/raw_client.py index 7d8c463..7ef2555 100644 --- a/src/schematic/entitlements/raw_client.py +++ b/src/schematic/entitlements/raw_client.py @@ -17,7 +17,10 @@ from ..errors.not_found_error import NotFoundError from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError +from ..types.billing_tiers_mode import BillingTiersMode from ..types.create_price_tier_request_body import CreatePriceTierRequestBody +from ..types.entitlement_price_behavior import EntitlementPriceBehavior +from ..types.entitlement_value_type import EntitlementValueType from .types.count_company_overrides_response import CountCompanyOverridesResponse from .types.count_feature_companies_response import CountFeatureCompaniesResponse from .types.count_feature_usage_response import CountFeatureUsageResponse @@ -27,17 +30,15 @@ from .types.create_company_override_request_body_metric_period_month_reset import ( CreateCompanyOverrideRequestBodyMetricPeriodMonthReset, ) -from .types.create_company_override_request_body_value_type import CreateCompanyOverrideRequestBodyValueType from .types.create_company_override_response import CreateCompanyOverrideResponse from .types.create_plan_entitlement_request_body_metric_period import CreatePlanEntitlementRequestBodyMetricPeriod from .types.create_plan_entitlement_request_body_metric_period_month_reset import ( CreatePlanEntitlementRequestBodyMetricPeriodMonthReset, ) -from .types.create_plan_entitlement_request_body_price_behavior import CreatePlanEntitlementRequestBodyPriceBehavior -from .types.create_plan_entitlement_request_body_value_type import CreatePlanEntitlementRequestBodyValueType from .types.create_plan_entitlement_response import CreatePlanEntitlementResponse from .types.delete_company_override_response import DeleteCompanyOverrideResponse from .types.delete_plan_entitlement_response import DeletePlanEntitlementResponse +from .types.duplicate_plan_entitlements_response import DuplicatePlanEntitlementsResponse from .types.get_company_override_response import GetCompanyOverrideResponse from .types.get_feature_usage_by_company_response import GetFeatureUsageByCompanyResponse from .types.get_plan_entitlement_response import GetPlanEntitlementResponse @@ -50,14 +51,11 @@ from .types.update_company_override_request_body_metric_period_month_reset import ( UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset, ) -from .types.update_company_override_request_body_value_type import UpdateCompanyOverrideRequestBodyValueType from .types.update_company_override_response import UpdateCompanyOverrideResponse from .types.update_plan_entitlement_request_body_metric_period import UpdatePlanEntitlementRequestBodyMetricPeriod from .types.update_plan_entitlement_request_body_metric_period_month_reset import ( UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset, ) -from .types.update_plan_entitlement_request_body_price_behavior import UpdatePlanEntitlementRequestBodyPriceBehavior -from .types.update_plan_entitlement_request_body_value_type import UpdatePlanEntitlementRequestBodyValueType from .types.update_plan_entitlement_response import UpdatePlanEntitlementResponse # this is used as the default value for optional parameters @@ -215,7 +213,7 @@ def create_company_override( *, company_id: str, feature_id: str, - value_type: CreateCompanyOverrideRequestBodyValueType, + value_type: EntitlementValueType, credit_consumption_rate: typing.Optional[float] = OMIT, expiration_date: typing.Optional[dt.datetime] = OMIT, metric_period: typing.Optional[CreateCompanyOverrideRequestBodyMetricPeriod] = OMIT, @@ -234,7 +232,7 @@ def create_company_override( feature_id : str - value_type : CreateCompanyOverrideRequestBodyValueType + value_type : EntitlementValueType credit_consumption_rate : typing.Optional[float] @@ -448,7 +446,7 @@ def update_company_override( self, company_override_id: str, *, - value_type: UpdateCompanyOverrideRequestBodyValueType, + value_type: EntitlementValueType, credit_consumption_rate: typing.Optional[float] = OMIT, expiration_date: typing.Optional[dt.datetime] = OMIT, metric_period: typing.Optional[UpdateCompanyOverrideRequestBodyMetricPeriod] = OMIT, @@ -466,7 +464,7 @@ def update_company_override( company_override_id : str company_override_id - value_type : UpdateCompanyOverrideRequestBodyValueType + value_type : EntitlementValueType credit_consumption_rate : typing.Optional[float] @@ -1688,7 +1686,7 @@ def create_plan_entitlement( *, feature_id: str, plan_id: str, - value_type: CreatePlanEntitlementRequestBodyValueType, + value_type: EntitlementValueType, billing_product_id: typing.Optional[str] = OMIT, billing_threshold: typing.Optional[int] = OMIT, credit_consumption_rate: typing.Optional[float] = OMIT, @@ -1700,10 +1698,10 @@ def create_plan_entitlement( monthly_unit_price: typing.Optional[int] = OMIT, monthly_unit_price_decimal: typing.Optional[str] = OMIT, overage_billing_product_id: typing.Optional[str] = OMIT, - price_behavior: typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior] = OMIT, + price_behavior: typing.Optional[EntitlementPriceBehavior] = OMIT, price_tiers: typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] = OMIT, soft_limit: typing.Optional[int] = OMIT, - tier_mode: typing.Optional[str] = OMIT, + tier_mode: typing.Optional[BillingTiersMode] = OMIT, value_bool: typing.Optional[bool] = OMIT, value_credit_id: typing.Optional[str] = OMIT, value_numeric: typing.Optional[int] = OMIT, @@ -1721,7 +1719,7 @@ def create_plan_entitlement( plan_id : str - value_type : CreatePlanEntitlementRequestBodyValueType + value_type : EntitlementValueType billing_product_id : typing.Optional[str] @@ -1745,14 +1743,14 @@ def create_plan_entitlement( overage_billing_product_id : typing.Optional[str] - price_behavior : typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior] + price_behavior : typing.Optional[EntitlementPriceBehavior] price_tiers : typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] Use MonthlyPriceTiers or YearlyPriceTiers instead soft_limit : typing.Optional[int] - tier_mode : typing.Optional[str] + tier_mode : typing.Optional[BillingTiersMode] value_bool : typing.Optional[bool] @@ -1988,7 +1986,7 @@ def update_plan_entitlement( self, plan_entitlement_id: str, *, - value_type: UpdatePlanEntitlementRequestBodyValueType, + value_type: EntitlementValueType, billing_product_id: typing.Optional[str] = OMIT, billing_threshold: typing.Optional[int] = OMIT, credit_consumption_rate: typing.Optional[float] = OMIT, @@ -2000,10 +1998,10 @@ def update_plan_entitlement( monthly_unit_price: typing.Optional[int] = OMIT, monthly_unit_price_decimal: typing.Optional[str] = OMIT, overage_billing_product_id: typing.Optional[str] = OMIT, - price_behavior: typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior] = OMIT, + price_behavior: typing.Optional[EntitlementPriceBehavior] = OMIT, price_tiers: typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] = OMIT, soft_limit: typing.Optional[int] = OMIT, - tier_mode: typing.Optional[str] = OMIT, + tier_mode: typing.Optional[BillingTiersMode] = OMIT, value_bool: typing.Optional[bool] = OMIT, value_credit_id: typing.Optional[str] = OMIT, value_numeric: typing.Optional[int] = OMIT, @@ -2020,7 +2018,7 @@ def update_plan_entitlement( plan_entitlement_id : str plan_entitlement_id - value_type : UpdatePlanEntitlementRequestBodyValueType + value_type : EntitlementValueType billing_product_id : typing.Optional[str] @@ -2044,14 +2042,14 @@ def update_plan_entitlement( overage_billing_product_id : typing.Optional[str] - price_behavior : typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior] + price_behavior : typing.Optional[EntitlementPriceBehavior] price_tiers : typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] Use MonthlyPriceTiers or YearlyPriceTiers instead soft_limit : typing.Optional[int] - tier_mode : typing.Optional[str] + tier_mode : typing.Optional[BillingTiersMode] value_bool : typing.Optional[bool] @@ -2434,6 +2432,111 @@ def count_plan_entitlements( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) + def duplicate_plan_entitlements( + self, *, source_plan_id: str, target_plan_id: str, request_options: typing.Optional[RequestOptions] = None + ) -> HttpResponse[DuplicatePlanEntitlementsResponse]: + """ + Parameters + ---------- + source_plan_id : str + + target_plan_id : str + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + HttpResponse[DuplicatePlanEntitlementsResponse] + Created + """ + _response = self._client_wrapper.httpx_client.request( + "plan-entitlements/duplicate", + method="POST", + json={ + "source_plan_id": source_plan_id, + "target_plan_id": target_plan_id, + }, + headers={ + "content-type": "application/json", + }, + request_options=request_options, + omit=OMIT, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DuplicatePlanEntitlementsResponse, + parse_obj_as( + type_=DuplicatePlanEntitlementsResponse, # type: ignore + object_=_response.json(), + ), + ) + return HttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 401: + raise UnauthorizedError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 403: + raise ForbiddenError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 500: + raise InternalServerError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.text + ) + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response_json + ) + def get_feature_usage_by_company( self, *, keys: typing.Dict[str, str], request_options: typing.Optional[RequestOptions] = None ) -> HttpResponse[GetFeatureUsageByCompanyResponse]: @@ -2674,7 +2777,7 @@ async def create_company_override( *, company_id: str, feature_id: str, - value_type: CreateCompanyOverrideRequestBodyValueType, + value_type: EntitlementValueType, credit_consumption_rate: typing.Optional[float] = OMIT, expiration_date: typing.Optional[dt.datetime] = OMIT, metric_period: typing.Optional[CreateCompanyOverrideRequestBodyMetricPeriod] = OMIT, @@ -2693,7 +2796,7 @@ async def create_company_override( feature_id : str - value_type : CreateCompanyOverrideRequestBodyValueType + value_type : EntitlementValueType credit_consumption_rate : typing.Optional[float] @@ -2907,7 +3010,7 @@ async def update_company_override( self, company_override_id: str, *, - value_type: UpdateCompanyOverrideRequestBodyValueType, + value_type: EntitlementValueType, credit_consumption_rate: typing.Optional[float] = OMIT, expiration_date: typing.Optional[dt.datetime] = OMIT, metric_period: typing.Optional[UpdateCompanyOverrideRequestBodyMetricPeriod] = OMIT, @@ -2925,7 +3028,7 @@ async def update_company_override( company_override_id : str company_override_id - value_type : UpdateCompanyOverrideRequestBodyValueType + value_type : EntitlementValueType credit_consumption_rate : typing.Optional[float] @@ -4147,7 +4250,7 @@ async def create_plan_entitlement( *, feature_id: str, plan_id: str, - value_type: CreatePlanEntitlementRequestBodyValueType, + value_type: EntitlementValueType, billing_product_id: typing.Optional[str] = OMIT, billing_threshold: typing.Optional[int] = OMIT, credit_consumption_rate: typing.Optional[float] = OMIT, @@ -4159,10 +4262,10 @@ async def create_plan_entitlement( monthly_unit_price: typing.Optional[int] = OMIT, monthly_unit_price_decimal: typing.Optional[str] = OMIT, overage_billing_product_id: typing.Optional[str] = OMIT, - price_behavior: typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior] = OMIT, + price_behavior: typing.Optional[EntitlementPriceBehavior] = OMIT, price_tiers: typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] = OMIT, soft_limit: typing.Optional[int] = OMIT, - tier_mode: typing.Optional[str] = OMIT, + tier_mode: typing.Optional[BillingTiersMode] = OMIT, value_bool: typing.Optional[bool] = OMIT, value_credit_id: typing.Optional[str] = OMIT, value_numeric: typing.Optional[int] = OMIT, @@ -4180,7 +4283,7 @@ async def create_plan_entitlement( plan_id : str - value_type : CreatePlanEntitlementRequestBodyValueType + value_type : EntitlementValueType billing_product_id : typing.Optional[str] @@ -4204,14 +4307,14 @@ async def create_plan_entitlement( overage_billing_product_id : typing.Optional[str] - price_behavior : typing.Optional[CreatePlanEntitlementRequestBodyPriceBehavior] + price_behavior : typing.Optional[EntitlementPriceBehavior] price_tiers : typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] Use MonthlyPriceTiers or YearlyPriceTiers instead soft_limit : typing.Optional[int] - tier_mode : typing.Optional[str] + tier_mode : typing.Optional[BillingTiersMode] value_bool : typing.Optional[bool] @@ -4447,7 +4550,7 @@ async def update_plan_entitlement( self, plan_entitlement_id: str, *, - value_type: UpdatePlanEntitlementRequestBodyValueType, + value_type: EntitlementValueType, billing_product_id: typing.Optional[str] = OMIT, billing_threshold: typing.Optional[int] = OMIT, credit_consumption_rate: typing.Optional[float] = OMIT, @@ -4459,10 +4562,10 @@ async def update_plan_entitlement( monthly_unit_price: typing.Optional[int] = OMIT, monthly_unit_price_decimal: typing.Optional[str] = OMIT, overage_billing_product_id: typing.Optional[str] = OMIT, - price_behavior: typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior] = OMIT, + price_behavior: typing.Optional[EntitlementPriceBehavior] = OMIT, price_tiers: typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] = OMIT, soft_limit: typing.Optional[int] = OMIT, - tier_mode: typing.Optional[str] = OMIT, + tier_mode: typing.Optional[BillingTiersMode] = OMIT, value_bool: typing.Optional[bool] = OMIT, value_credit_id: typing.Optional[str] = OMIT, value_numeric: typing.Optional[int] = OMIT, @@ -4479,7 +4582,7 @@ async def update_plan_entitlement( plan_entitlement_id : str plan_entitlement_id - value_type : UpdatePlanEntitlementRequestBodyValueType + value_type : EntitlementValueType billing_product_id : typing.Optional[str] @@ -4503,14 +4606,14 @@ async def update_plan_entitlement( overage_billing_product_id : typing.Optional[str] - price_behavior : typing.Optional[UpdatePlanEntitlementRequestBodyPriceBehavior] + price_behavior : typing.Optional[EntitlementPriceBehavior] price_tiers : typing.Optional[typing.Sequence[CreatePriceTierRequestBody]] Use MonthlyPriceTiers or YearlyPriceTiers instead soft_limit : typing.Optional[int] - tier_mode : typing.Optional[str] + tier_mode : typing.Optional[BillingTiersMode] value_bool : typing.Optional[bool] @@ -4893,6 +4996,111 @@ async def count_plan_entitlements( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) + async def duplicate_plan_entitlements( + self, *, source_plan_id: str, target_plan_id: str, request_options: typing.Optional[RequestOptions] = None + ) -> AsyncHttpResponse[DuplicatePlanEntitlementsResponse]: + """ + Parameters + ---------- + source_plan_id : str + + target_plan_id : str + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + AsyncHttpResponse[DuplicatePlanEntitlementsResponse] + Created + """ + _response = await self._client_wrapper.httpx_client.request( + "plan-entitlements/duplicate", + method="POST", + json={ + "source_plan_id": source_plan_id, + "target_plan_id": target_plan_id, + }, + headers={ + "content-type": "application/json", + }, + request_options=request_options, + omit=OMIT, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + DuplicatePlanEntitlementsResponse, + parse_obj_as( + type_=DuplicatePlanEntitlementsResponse, # type: ignore + object_=_response.json(), + ), + ) + return AsyncHttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 401: + raise UnauthorizedError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 403: + raise ForbiddenError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 500: + raise InternalServerError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.text + ) + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response_json + ) + async def get_feature_usage_by_company( self, *, keys: typing.Dict[str, str], request_options: typing.Optional[RequestOptions] = None ) -> AsyncHttpResponse[GetFeatureUsageByCompanyResponse]: diff --git a/src/schematic/entitlements/types/__init__.py b/src/schematic/entitlements/types/__init__.py index 0fe8c39..424ed0a 100644 --- a/src/schematic/entitlements/types/__init__.py +++ b/src/schematic/entitlements/types/__init__.py @@ -20,17 +20,15 @@ from .create_company_override_request_body_metric_period_month_reset import ( CreateCompanyOverrideRequestBodyMetricPeriodMonthReset, ) - from .create_company_override_request_body_value_type import CreateCompanyOverrideRequestBodyValueType from .create_company_override_response import CreateCompanyOverrideResponse from .create_plan_entitlement_request_body_metric_period import CreatePlanEntitlementRequestBodyMetricPeriod from .create_plan_entitlement_request_body_metric_period_month_reset import ( CreatePlanEntitlementRequestBodyMetricPeriodMonthReset, ) - from .create_plan_entitlement_request_body_price_behavior import CreatePlanEntitlementRequestBodyPriceBehavior - from .create_plan_entitlement_request_body_value_type import CreatePlanEntitlementRequestBodyValueType from .create_plan_entitlement_response import CreatePlanEntitlementResponse from .delete_company_override_response import DeleteCompanyOverrideResponse from .delete_plan_entitlement_response import DeletePlanEntitlementResponse + from .duplicate_plan_entitlements_response import DuplicatePlanEntitlementsResponse from .get_company_override_response import GetCompanyOverrideResponse from .get_feature_usage_by_company_params import GetFeatureUsageByCompanyParams from .get_feature_usage_by_company_response import GetFeatureUsageByCompanyResponse @@ -49,14 +47,11 @@ from .update_company_override_request_body_metric_period_month_reset import ( UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset, ) - from .update_company_override_request_body_value_type import UpdateCompanyOverrideRequestBodyValueType from .update_company_override_response import UpdateCompanyOverrideResponse from .update_plan_entitlement_request_body_metric_period import UpdatePlanEntitlementRequestBodyMetricPeriod from .update_plan_entitlement_request_body_metric_period_month_reset import ( UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset, ) - from .update_plan_entitlement_request_body_price_behavior import UpdatePlanEntitlementRequestBodyPriceBehavior - from .update_plan_entitlement_request_body_value_type import UpdatePlanEntitlementRequestBodyValueType from .update_plan_entitlement_response import UpdatePlanEntitlementResponse _dynamic_imports: typing.Dict[str, str] = { "CountCompanyOverridesParams": ".count_company_overrides_params", @@ -71,15 +66,13 @@ "CountPlanEntitlementsResponse": ".count_plan_entitlements_response", "CreateCompanyOverrideRequestBodyMetricPeriod": ".create_company_override_request_body_metric_period", "CreateCompanyOverrideRequestBodyMetricPeriodMonthReset": ".create_company_override_request_body_metric_period_month_reset", - "CreateCompanyOverrideRequestBodyValueType": ".create_company_override_request_body_value_type", "CreateCompanyOverrideResponse": ".create_company_override_response", "CreatePlanEntitlementRequestBodyMetricPeriod": ".create_plan_entitlement_request_body_metric_period", "CreatePlanEntitlementRequestBodyMetricPeriodMonthReset": ".create_plan_entitlement_request_body_metric_period_month_reset", - "CreatePlanEntitlementRequestBodyPriceBehavior": ".create_plan_entitlement_request_body_price_behavior", - "CreatePlanEntitlementRequestBodyValueType": ".create_plan_entitlement_request_body_value_type", "CreatePlanEntitlementResponse": ".create_plan_entitlement_response", "DeleteCompanyOverrideResponse": ".delete_company_override_response", "DeletePlanEntitlementResponse": ".delete_plan_entitlement_response", + "DuplicatePlanEntitlementsResponse": ".duplicate_plan_entitlements_response", "GetCompanyOverrideResponse": ".get_company_override_response", "GetFeatureUsageByCompanyParams": ".get_feature_usage_by_company_params", "GetFeatureUsageByCompanyResponse": ".get_feature_usage_by_company_response", @@ -96,12 +89,9 @@ "ListPlanEntitlementsResponse": ".list_plan_entitlements_response", "UpdateCompanyOverrideRequestBodyMetricPeriod": ".update_company_override_request_body_metric_period", "UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset": ".update_company_override_request_body_metric_period_month_reset", - "UpdateCompanyOverrideRequestBodyValueType": ".update_company_override_request_body_value_type", "UpdateCompanyOverrideResponse": ".update_company_override_response", "UpdatePlanEntitlementRequestBodyMetricPeriod": ".update_plan_entitlement_request_body_metric_period", "UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset": ".update_plan_entitlement_request_body_metric_period_month_reset", - "UpdatePlanEntitlementRequestBodyPriceBehavior": ".update_plan_entitlement_request_body_price_behavior", - "UpdatePlanEntitlementRequestBodyValueType": ".update_plan_entitlement_request_body_value_type", "UpdatePlanEntitlementResponse": ".update_plan_entitlement_response", } @@ -140,15 +130,13 @@ def __dir__(): "CountPlanEntitlementsResponse", "CreateCompanyOverrideRequestBodyMetricPeriod", "CreateCompanyOverrideRequestBodyMetricPeriodMonthReset", - "CreateCompanyOverrideRequestBodyValueType", "CreateCompanyOverrideResponse", "CreatePlanEntitlementRequestBodyMetricPeriod", "CreatePlanEntitlementRequestBodyMetricPeriodMonthReset", - "CreatePlanEntitlementRequestBodyPriceBehavior", - "CreatePlanEntitlementRequestBodyValueType", "CreatePlanEntitlementResponse", "DeleteCompanyOverrideResponse", "DeletePlanEntitlementResponse", + "DuplicatePlanEntitlementsResponse", "GetCompanyOverrideResponse", "GetFeatureUsageByCompanyParams", "GetFeatureUsageByCompanyResponse", @@ -165,11 +153,8 @@ def __dir__(): "ListPlanEntitlementsResponse", "UpdateCompanyOverrideRequestBodyMetricPeriod", "UpdateCompanyOverrideRequestBodyMetricPeriodMonthReset", - "UpdateCompanyOverrideRequestBodyValueType", "UpdateCompanyOverrideResponse", "UpdatePlanEntitlementRequestBodyMetricPeriod", "UpdatePlanEntitlementRequestBodyMetricPeriodMonthReset", - "UpdatePlanEntitlementRequestBodyPriceBehavior", - "UpdatePlanEntitlementRequestBodyValueType", "UpdatePlanEntitlementResponse", ] diff --git a/src/schematic/entitlements/types/create_company_override_request_body_value_type.py b/src/schematic/entitlements/types/create_company_override_request_body_value_type.py deleted file mode 100644 index fa57a90..0000000 --- a/src/schematic/entitlements/types/create_company_override_request_body_value_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateCompanyOverrideRequestBodyValueType = typing.Union[ - typing.Literal["boolean", "credit", "numeric", "trait", "unlimited"], typing.Any -] diff --git a/src/schematic/entitlements/types/create_plan_entitlement_request_body_price_behavior.py b/src/schematic/entitlements/types/create_plan_entitlement_request_body_price_behavior.py deleted file mode 100644 index 18cd574..0000000 --- a/src/schematic/entitlements/types/create_plan_entitlement_request_body_price_behavior.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreatePlanEntitlementRequestBodyPriceBehavior = typing.Union[ - typing.Literal["pay_as_you_go", "pay_in_advance", "overage", "credit_burndown", "tier"], typing.Any -] diff --git a/src/schematic/entitlements/types/create_plan_entitlement_request_body_value_type.py b/src/schematic/entitlements/types/create_plan_entitlement_request_body_value_type.py deleted file mode 100644 index 9941cf0..0000000 --- a/src/schematic/entitlements/types/create_plan_entitlement_request_body_value_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreatePlanEntitlementRequestBodyValueType = typing.Union[ - typing.Literal["boolean", "credit", "numeric", "trait", "unlimited"], typing.Any -] diff --git a/src/schematic/entitlements/types/duplicate_plan_entitlements_response.py b/src/schematic/entitlements/types/duplicate_plan_entitlements_response.py new file mode 100644 index 0000000..6207a12 --- /dev/null +++ b/src/schematic/entitlements/types/duplicate_plan_entitlements_response.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ...types.duplicate_plan_entitlements_response_response_data import DuplicatePlanEntitlementsResponseResponseData + + +class DuplicatePlanEntitlementsResponse(UniversalBaseModel): + data: DuplicatePlanEntitlementsResponseResponseData + params: typing.Dict[str, typing.Optional[typing.Any]] = pydantic.Field() + """ + Input parameters + """ + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/entitlements/types/update_company_override_request_body_value_type.py b/src/schematic/entitlements/types/update_company_override_request_body_value_type.py deleted file mode 100644 index dfeac1c..0000000 --- a/src/schematic/entitlements/types/update_company_override_request_body_value_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateCompanyOverrideRequestBodyValueType = typing.Union[ - typing.Literal["boolean", "credit", "numeric", "trait", "unlimited"], typing.Any -] diff --git a/src/schematic/entitlements/types/update_plan_entitlement_request_body_price_behavior.py b/src/schematic/entitlements/types/update_plan_entitlement_request_body_price_behavior.py deleted file mode 100644 index 9e2c88f..0000000 --- a/src/schematic/entitlements/types/update_plan_entitlement_request_body_price_behavior.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdatePlanEntitlementRequestBodyPriceBehavior = typing.Union[ - typing.Literal["pay_as_you_go", "pay_in_advance", "overage", "credit_burndown", "tier"], typing.Any -] diff --git a/src/schematic/entitlements/types/update_plan_entitlement_request_body_value_type.py b/src/schematic/entitlements/types/update_plan_entitlement_request_body_value_type.py deleted file mode 100644 index bb14f00..0000000 --- a/src/schematic/entitlements/types/update_plan_entitlement_request_body_value_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdatePlanEntitlementRequestBodyValueType = typing.Union[ - typing.Literal["boolean", "credit", "numeric", "trait", "unlimited"], typing.Any -] diff --git a/src/schematic/events/__init__.py b/src/schematic/events/__init__.py index 6e27f49..14abe9e 100644 --- a/src/schematic/events/__init__.py +++ b/src/schematic/events/__init__.py @@ -14,9 +14,7 @@ GetEventSummariesResponse, GetSegmentIntegrationStatusResponse, ListEventsParams, - ListEventsRequestEventTypesItem, ListEventsResponse, - ListEventsResponseParamsEventTypesItem, ) _dynamic_imports: typing.Dict[str, str] = { "CreateEventBatchResponse": ".types", @@ -26,9 +24,7 @@ "GetEventSummariesResponse": ".types", "GetSegmentIntegrationStatusResponse": ".types", "ListEventsParams": ".types", - "ListEventsRequestEventTypesItem": ".types", "ListEventsResponse": ".types", - "ListEventsResponseParamsEventTypesItem": ".types", } @@ -61,7 +57,5 @@ def __dir__(): "GetEventSummariesResponse", "GetSegmentIntegrationStatusResponse", "ListEventsParams", - "ListEventsRequestEventTypesItem", "ListEventsResponse", - "ListEventsResponseParamsEventTypesItem", ] diff --git a/src/schematic/events/client.py b/src/schematic/events/client.py index 28e01a6..c3f83cd 100644 --- a/src/schematic/events/client.py +++ b/src/schematic/events/client.py @@ -6,15 +6,14 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions from ..types.create_event_request_body import CreateEventRequestBody -from ..types.create_event_request_body_event_type import CreateEventRequestBodyEventType from ..types.event_body import EventBody +from ..types.event_type import EventType from .raw_client import AsyncRawEventsClient, RawEventsClient from .types.create_event_batch_response import CreateEventBatchResponse from .types.create_event_response import CreateEventResponse from .types.get_event_response import GetEventResponse from .types.get_event_summaries_response import GetEventSummariesResponse from .types.get_segment_integration_status_response import GetSegmentIntegrationStatusResponse -from .types.list_events_request_event_types_item import ListEventsRequestEventTypesItem from .types.list_events_response import ListEventsResponse # this is used as the default value for optional parameters @@ -65,7 +64,7 @@ def create_event_batch( client.events.create_event_batch( events=[ CreateEventRequestBody( - event_type="identify", + event_type="flag_check", ) ], ) @@ -126,9 +125,7 @@ def list_events( *, company_id: typing.Optional[str] = None, event_subtype: typing.Optional[str] = None, - event_types: typing.Optional[ - typing.Union[ListEventsRequestEventTypesItem, typing.Sequence[ListEventsRequestEventTypesItem]] - ] = None, + event_types: typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]] = None, flag_id: typing.Optional[str] = None, user_id: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -142,7 +139,7 @@ def list_events( event_subtype : typing.Optional[str] - event_types : typing.Optional[typing.Union[ListEventsRequestEventTypesItem, typing.Sequence[ListEventsRequestEventTypesItem]]] + event_types : typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]] flag_id : typing.Optional[str] @@ -193,7 +190,7 @@ def list_events( def create_event( self, *, - event_type: CreateEventRequestBodyEventType, + event_type: EventType, body: typing.Optional[EventBody] = OMIT, sent_at: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -201,8 +198,7 @@ def create_event( """ Parameters ---------- - event_type : CreateEventRequestBodyEventType - Either 'identify' or 'track' + event_type : EventType body : typing.Optional[EventBody] @@ -225,7 +221,7 @@ def create_event( api_key="YOUR_API_KEY", ) client.events.create_event( - event_type="identify", + event_type="flag_check", ) """ _response = self._raw_client.create_event( @@ -338,7 +334,7 @@ async def main() -> None: await client.events.create_event_batch( events=[ CreateEventRequestBody( - event_type="identify", + event_type="flag_check", ) ], ) @@ -410,9 +406,7 @@ async def list_events( *, company_id: typing.Optional[str] = None, event_subtype: typing.Optional[str] = None, - event_types: typing.Optional[ - typing.Union[ListEventsRequestEventTypesItem, typing.Sequence[ListEventsRequestEventTypesItem]] - ] = None, + event_types: typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]] = None, flag_id: typing.Optional[str] = None, user_id: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -426,7 +420,7 @@ async def list_events( event_subtype : typing.Optional[str] - event_types : typing.Optional[typing.Union[ListEventsRequestEventTypesItem, typing.Sequence[ListEventsRequestEventTypesItem]]] + event_types : typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]] flag_id : typing.Optional[str] @@ -485,7 +479,7 @@ async def main() -> None: async def create_event( self, *, - event_type: CreateEventRequestBodyEventType, + event_type: EventType, body: typing.Optional[EventBody] = OMIT, sent_at: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -493,8 +487,7 @@ async def create_event( """ Parameters ---------- - event_type : CreateEventRequestBodyEventType - Either 'identify' or 'track' + event_type : EventType body : typing.Optional[EventBody] @@ -522,7 +515,7 @@ async def create_event( async def main() -> None: await client.events.create_event( - event_type="identify", + event_type="flag_check", ) diff --git a/src/schematic/events/raw_client.py b/src/schematic/events/raw_client.py index d790d57..ebd1d0d 100644 --- a/src/schematic/events/raw_client.py +++ b/src/schematic/events/raw_client.py @@ -18,14 +18,13 @@ from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError from ..types.create_event_request_body import CreateEventRequestBody -from ..types.create_event_request_body_event_type import CreateEventRequestBodyEventType from ..types.event_body import EventBody +from ..types.event_type import EventType from .types.create_event_batch_response import CreateEventBatchResponse from .types.create_event_response import CreateEventResponse from .types.get_event_response import GetEventResponse from .types.get_event_summaries_response import GetEventSummariesResponse from .types.get_segment_integration_status_response import GetSegmentIntegrationStatusResponse -from .types.list_events_request_event_types_item import ListEventsRequestEventTypesItem from .types.list_events_response import ListEventsResponse # this is used as the default value for optional parameters @@ -263,9 +262,7 @@ def list_events( *, company_id: typing.Optional[str] = None, event_subtype: typing.Optional[str] = None, - event_types: typing.Optional[ - typing.Union[ListEventsRequestEventTypesItem, typing.Sequence[ListEventsRequestEventTypesItem]] - ] = None, + event_types: typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]] = None, flag_id: typing.Optional[str] = None, user_id: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -279,7 +276,7 @@ def list_events( event_subtype : typing.Optional[str] - event_types : typing.Optional[typing.Union[ListEventsRequestEventTypesItem, typing.Sequence[ListEventsRequestEventTypesItem]]] + event_types : typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]] flag_id : typing.Optional[str] @@ -390,7 +387,7 @@ def list_events( def create_event( self, *, - event_type: CreateEventRequestBodyEventType, + event_type: EventType, body: typing.Optional[EventBody] = OMIT, sent_at: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -398,8 +395,7 @@ def create_event( """ Parameters ---------- - event_type : CreateEventRequestBodyEventType - Either 'identify' or 'track' + event_type : EventType body : typing.Optional[EventBody] @@ -901,9 +897,7 @@ async def list_events( *, company_id: typing.Optional[str] = None, event_subtype: typing.Optional[str] = None, - event_types: typing.Optional[ - typing.Union[ListEventsRequestEventTypesItem, typing.Sequence[ListEventsRequestEventTypesItem]] - ] = None, + event_types: typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]] = None, flag_id: typing.Optional[str] = None, user_id: typing.Optional[str] = None, limit: typing.Optional[int] = None, @@ -917,7 +911,7 @@ async def list_events( event_subtype : typing.Optional[str] - event_types : typing.Optional[typing.Union[ListEventsRequestEventTypesItem, typing.Sequence[ListEventsRequestEventTypesItem]]] + event_types : typing.Optional[typing.Union[EventType, typing.Sequence[EventType]]] flag_id : typing.Optional[str] @@ -1028,7 +1022,7 @@ async def list_events( async def create_event( self, *, - event_type: CreateEventRequestBodyEventType, + event_type: EventType, body: typing.Optional[EventBody] = OMIT, sent_at: typing.Optional[dt.datetime] = OMIT, request_options: typing.Optional[RequestOptions] = None, @@ -1036,8 +1030,7 @@ async def create_event( """ Parameters ---------- - event_type : CreateEventRequestBodyEventType - Either 'identify' or 'track' + event_type : EventType body : typing.Optional[EventBody] diff --git a/src/schematic/events/types/__init__.py b/src/schematic/events/types/__init__.py index 3fe2c44..92f9b44 100644 --- a/src/schematic/events/types/__init__.py +++ b/src/schematic/events/types/__init__.py @@ -13,9 +13,7 @@ from .get_event_summaries_response import GetEventSummariesResponse from .get_segment_integration_status_response import GetSegmentIntegrationStatusResponse from .list_events_params import ListEventsParams - from .list_events_request_event_types_item import ListEventsRequestEventTypesItem from .list_events_response import ListEventsResponse - from .list_events_response_params_event_types_item import ListEventsResponseParamsEventTypesItem _dynamic_imports: typing.Dict[str, str] = { "CreateEventBatchResponse": ".create_event_batch_response", "CreateEventResponse": ".create_event_response", @@ -24,9 +22,7 @@ "GetEventSummariesResponse": ".get_event_summaries_response", "GetSegmentIntegrationStatusResponse": ".get_segment_integration_status_response", "ListEventsParams": ".list_events_params", - "ListEventsRequestEventTypesItem": ".list_events_request_event_types_item", "ListEventsResponse": ".list_events_response", - "ListEventsResponseParamsEventTypesItem": ".list_events_response_params_event_types_item", } @@ -59,7 +55,5 @@ def __dir__(): "GetEventSummariesResponse", "GetSegmentIntegrationStatusResponse", "ListEventsParams", - "ListEventsRequestEventTypesItem", "ListEventsResponse", - "ListEventsResponseParamsEventTypesItem", ] diff --git a/src/schematic/events/types/list_events_params.py b/src/schematic/events/types/list_events_params.py index 75fa716..1667c88 100644 --- a/src/schematic/events/types/list_events_params.py +++ b/src/schematic/events/types/list_events_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_events_response_params_event_types_item import ListEventsResponseParamsEventTypesItem +from ...types.event_type import EventType class ListEventsParams(UniversalBaseModel): @@ -14,7 +14,7 @@ class ListEventsParams(UniversalBaseModel): company_id: typing.Optional[str] = None event_subtype: typing.Optional[str] = None - event_types: typing.Optional[typing.List[ListEventsResponseParamsEventTypesItem]] = None + event_types: typing.Optional[typing.List[EventType]] = None flag_id: typing.Optional[str] = None limit: typing.Optional[int] = pydantic.Field(default=None) """ diff --git a/src/schematic/events/types/list_events_request_event_types_item.py b/src/schematic/events/types/list_events_request_event_types_item.py deleted file mode 100644 index bba5a92..0000000 --- a/src/schematic/events/types/list_events_request_event_types_item.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListEventsRequestEventTypesItem = typing.Union[typing.Literal["identify", "track", "flag_check"], typing.Any] diff --git a/src/schematic/events/types/list_events_response_params_event_types_item.py b/src/schematic/events/types/list_events_response_params_event_types_item.py deleted file mode 100644 index d93a87c..0000000 --- a/src/schematic/events/types/list_events_response_params_event_types_item.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListEventsResponseParamsEventTypesItem = typing.Union[typing.Literal["identify", "track", "flag_check"], typing.Any] diff --git a/src/schematic/features/__init__.py b/src/schematic/features/__init__.py index ac53e49..cb88dc4 100644 --- a/src/schematic/features/__init__.py +++ b/src/schematic/features/__init__.py @@ -8,13 +8,12 @@ if typing.TYPE_CHECKING: from .types import ( CheckFlagResponse, + CheckFlagsBulkResponse, CheckFlagsResponse, CountFeaturesParams, CountFeaturesResponse, CountFlagsParams, CountFlagsResponse, - CreateFeatureRequestBodyFeatureType, - CreateFeatureRequestBodyLifecyclePhase, CreateFeatureResponse, CreateFlagResponse, DeleteFeatureResponse, @@ -25,21 +24,18 @@ ListFeaturesResponse, ListFlagsParams, ListFlagsResponse, - UpdateFeatureRequestBodyFeatureType, - UpdateFeatureRequestBodyLifecyclePhase, UpdateFeatureResponse, UpdateFlagResponse, UpdateFlagRulesResponse, ) _dynamic_imports: typing.Dict[str, str] = { "CheckFlagResponse": ".types", + "CheckFlagsBulkResponse": ".types", "CheckFlagsResponse": ".types", "CountFeaturesParams": ".types", "CountFeaturesResponse": ".types", "CountFlagsParams": ".types", "CountFlagsResponse": ".types", - "CreateFeatureRequestBodyFeatureType": ".types", - "CreateFeatureRequestBodyLifecyclePhase": ".types", "CreateFeatureResponse": ".types", "CreateFlagResponse": ".types", "DeleteFeatureResponse": ".types", @@ -50,8 +46,6 @@ "ListFeaturesResponse": ".types", "ListFlagsParams": ".types", "ListFlagsResponse": ".types", - "UpdateFeatureRequestBodyFeatureType": ".types", - "UpdateFeatureRequestBodyLifecyclePhase": ".types", "UpdateFeatureResponse": ".types", "UpdateFlagResponse": ".types", "UpdateFlagRulesResponse": ".types", @@ -81,13 +75,12 @@ def __dir__(): __all__ = [ "CheckFlagResponse", + "CheckFlagsBulkResponse", "CheckFlagsResponse", "CountFeaturesParams", "CountFeaturesResponse", "CountFlagsParams", "CountFlagsResponse", - "CreateFeatureRequestBodyFeatureType", - "CreateFeatureRequestBodyLifecyclePhase", "CreateFeatureResponse", "CreateFlagResponse", "DeleteFeatureResponse", @@ -98,8 +91,6 @@ def __dir__(): "ListFeaturesResponse", "ListFlagsParams", "ListFlagsResponse", - "UpdateFeatureRequestBodyFeatureType", - "UpdateFeatureRequestBodyLifecyclePhase", "UpdateFeatureResponse", "UpdateFlagResponse", "UpdateFlagRulesResponse", diff --git a/src/schematic/features/client.py b/src/schematic/features/client.py index d00db99..700a633 100644 --- a/src/schematic/features/client.py +++ b/src/schematic/features/client.py @@ -4,15 +4,17 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions +from ..types.check_flag_request_body import CheckFlagRequestBody from ..types.create_or_update_flag_request_body import CreateOrUpdateFlagRequestBody from ..types.create_or_update_rule_request_body import CreateOrUpdateRuleRequestBody +from ..types.feature_lifecycle_phase import FeatureLifecyclePhase +from ..types.feature_type import FeatureType from .raw_client import AsyncRawFeaturesClient, RawFeaturesClient from .types.check_flag_response import CheckFlagResponse +from .types.check_flags_bulk_response import CheckFlagsBulkResponse from .types.check_flags_response import CheckFlagsResponse from .types.count_features_response import CountFeaturesResponse from .types.count_flags_response import CountFlagsResponse -from .types.create_feature_request_body_feature_type import CreateFeatureRequestBodyFeatureType -from .types.create_feature_request_body_lifecycle_phase import CreateFeatureRequestBodyLifecyclePhase from .types.create_feature_response import CreateFeatureResponse from .types.create_flag_response import CreateFlagResponse from .types.delete_feature_response import DeleteFeatureResponse @@ -21,8 +23,6 @@ from .types.get_flag_response import GetFlagResponse from .types.list_features_response import ListFeaturesResponse from .types.list_flags_response import ListFlagsResponse -from .types.update_feature_request_body_feature_type import UpdateFeatureRequestBodyFeatureType -from .types.update_feature_request_body_lifecycle_phase import UpdateFeatureRequestBodyLifecyclePhase from .types.update_feature_response import UpdateFeatureResponse from .types.update_flag_response import UpdateFlagResponse from .types.update_flag_rules_response import UpdateFlagRulesResponse @@ -53,7 +53,7 @@ def list_features( q: typing.Optional[str] = None, without_company_override_for: typing.Optional[str] = None, without_plan_entitlement_for: typing.Optional[str] = None, - feature_type: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + feature_type: typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] = None, boolean_require_event: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -73,7 +73,7 @@ def list_features( without_plan_entitlement_for : typing.Optional[str] Filter out features that already have a plan entitlement for the specified plan ID - feature_type : typing.Optional[typing.Union[str, typing.Sequence[str]]] + feature_type : typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] Filter by one or more feature types (boolean, event, trait) boolean_require_event : typing.Optional[bool] @@ -126,12 +126,12 @@ def create_feature( self, *, description: str, - feature_type: CreateFeatureRequestBodyFeatureType, + feature_type: FeatureType, name: str, event_subtype: typing.Optional[str] = OMIT, flag: typing.Optional[CreateOrUpdateFlagRequestBody] = OMIT, icon: typing.Optional[str] = OMIT, - lifecycle_phase: typing.Optional[CreateFeatureRequestBodyLifecyclePhase] = OMIT, + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = OMIT, maintainer_id: typing.Optional[str] = OMIT, plural_name: typing.Optional[str] = OMIT, singular_name: typing.Optional[str] = OMIT, @@ -143,7 +143,7 @@ def create_feature( ---------- description : str - feature_type : CreateFeatureRequestBodyFeatureType + feature_type : FeatureType name : str @@ -153,7 +153,7 @@ def create_feature( icon : typing.Optional[str] - lifecycle_phase : typing.Optional[CreateFeatureRequestBodyLifecyclePhase] + lifecycle_phase : typing.Optional[FeatureLifecyclePhase] maintainer_id : typing.Optional[str] @@ -237,10 +237,10 @@ def update_feature( *, description: typing.Optional[str] = OMIT, event_subtype: typing.Optional[str] = OMIT, - feature_type: typing.Optional[UpdateFeatureRequestBodyFeatureType] = OMIT, + feature_type: typing.Optional[FeatureType] = OMIT, flag: typing.Optional[CreateOrUpdateFlagRequestBody] = OMIT, icon: typing.Optional[str] = OMIT, - lifecycle_phase: typing.Optional[UpdateFeatureRequestBodyLifecyclePhase] = OMIT, + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = OMIT, maintainer_id: typing.Optional[str] = OMIT, name: typing.Optional[str] = OMIT, plural_name: typing.Optional[str] = OMIT, @@ -258,13 +258,13 @@ def update_feature( event_subtype : typing.Optional[str] - feature_type : typing.Optional[UpdateFeatureRequestBodyFeatureType] + feature_type : typing.Optional[FeatureType] flag : typing.Optional[CreateOrUpdateFlagRequestBody] icon : typing.Optional[str] - lifecycle_phase : typing.Optional[UpdateFeatureRequestBodyLifecyclePhase] + lifecycle_phase : typing.Optional[FeatureLifecyclePhase] maintainer_id : typing.Optional[str] @@ -350,7 +350,7 @@ def count_features( q: typing.Optional[str] = None, without_company_override_for: typing.Optional[str] = None, without_plan_entitlement_for: typing.Optional[str] = None, - feature_type: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + feature_type: typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] = None, boolean_require_event: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -370,7 +370,7 @@ def count_features( without_plan_entitlement_for : typing.Optional[str] Filter out features that already have a plan entitlement for the specified plan ID - feature_type : typing.Optional[typing.Union[str, typing.Sequence[str]]] + feature_type : typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] Filter by one or more feature types (boolean, event, trait) boolean_require_event : typing.Optional[bool] @@ -797,6 +797,39 @@ def check_flags( _response = self._raw_client.check_flags(company=company, user=user, request_options=request_options) return _response.data + def check_flags_bulk( + self, + *, + contexts: typing.Sequence[CheckFlagRequestBody], + request_options: typing.Optional[RequestOptions] = None, + ) -> CheckFlagsBulkResponse: + """ + Parameters + ---------- + contexts : typing.Sequence[CheckFlagRequestBody] + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + CheckFlagsBulkResponse + Created + + Examples + -------- + from schematic import CheckFlagRequestBody, Schematic + + client = Schematic( + api_key="YOUR_API_KEY", + ) + client.features.check_flags_bulk( + contexts=[CheckFlagRequestBody()], + ) + """ + _response = self._raw_client.check_flags_bulk(contexts=contexts, request_options=request_options) + return _response.data + def count_flags( self, *, @@ -873,7 +906,7 @@ async def list_features( q: typing.Optional[str] = None, without_company_override_for: typing.Optional[str] = None, without_plan_entitlement_for: typing.Optional[str] = None, - feature_type: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + feature_type: typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] = None, boolean_require_event: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -893,7 +926,7 @@ async def list_features( without_plan_entitlement_for : typing.Optional[str] Filter out features that already have a plan entitlement for the specified plan ID - feature_type : typing.Optional[typing.Union[str, typing.Sequence[str]]] + feature_type : typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] Filter by one or more feature types (boolean, event, trait) boolean_require_event : typing.Optional[bool] @@ -954,12 +987,12 @@ async def create_feature( self, *, description: str, - feature_type: CreateFeatureRequestBodyFeatureType, + feature_type: FeatureType, name: str, event_subtype: typing.Optional[str] = OMIT, flag: typing.Optional[CreateOrUpdateFlagRequestBody] = OMIT, icon: typing.Optional[str] = OMIT, - lifecycle_phase: typing.Optional[CreateFeatureRequestBodyLifecyclePhase] = OMIT, + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = OMIT, maintainer_id: typing.Optional[str] = OMIT, plural_name: typing.Optional[str] = OMIT, singular_name: typing.Optional[str] = OMIT, @@ -971,7 +1004,7 @@ async def create_feature( ---------- description : str - feature_type : CreateFeatureRequestBodyFeatureType + feature_type : FeatureType name : str @@ -981,7 +1014,7 @@ async def create_feature( icon : typing.Optional[str] - lifecycle_phase : typing.Optional[CreateFeatureRequestBodyLifecyclePhase] + lifecycle_phase : typing.Optional[FeatureLifecyclePhase] maintainer_id : typing.Optional[str] @@ -1081,10 +1114,10 @@ async def update_feature( *, description: typing.Optional[str] = OMIT, event_subtype: typing.Optional[str] = OMIT, - feature_type: typing.Optional[UpdateFeatureRequestBodyFeatureType] = OMIT, + feature_type: typing.Optional[FeatureType] = OMIT, flag: typing.Optional[CreateOrUpdateFlagRequestBody] = OMIT, icon: typing.Optional[str] = OMIT, - lifecycle_phase: typing.Optional[UpdateFeatureRequestBodyLifecyclePhase] = OMIT, + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = OMIT, maintainer_id: typing.Optional[str] = OMIT, name: typing.Optional[str] = OMIT, plural_name: typing.Optional[str] = OMIT, @@ -1102,13 +1135,13 @@ async def update_feature( event_subtype : typing.Optional[str] - feature_type : typing.Optional[UpdateFeatureRequestBodyFeatureType] + feature_type : typing.Optional[FeatureType] flag : typing.Optional[CreateOrUpdateFlagRequestBody] icon : typing.Optional[str] - lifecycle_phase : typing.Optional[UpdateFeatureRequestBodyLifecyclePhase] + lifecycle_phase : typing.Optional[FeatureLifecyclePhase] maintainer_id : typing.Optional[str] @@ -1210,7 +1243,7 @@ async def count_features( q: typing.Optional[str] = None, without_company_override_for: typing.Optional[str] = None, without_plan_entitlement_for: typing.Optional[str] = None, - feature_type: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + feature_type: typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] = None, boolean_require_event: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -1230,7 +1263,7 @@ async def count_features( without_plan_entitlement_for : typing.Optional[str] Filter out features that already have a plan entitlement for the specified plan ID - feature_type : typing.Optional[typing.Union[str, typing.Sequence[str]]] + feature_type : typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] Filter by one or more feature types (boolean, event, trait) boolean_require_event : typing.Optional[bool] @@ -1731,6 +1764,47 @@ async def main() -> None: _response = await self._raw_client.check_flags(company=company, user=user, request_options=request_options) return _response.data + async def check_flags_bulk( + self, + *, + contexts: typing.Sequence[CheckFlagRequestBody], + request_options: typing.Optional[RequestOptions] = None, + ) -> CheckFlagsBulkResponse: + """ + Parameters + ---------- + contexts : typing.Sequence[CheckFlagRequestBody] + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + CheckFlagsBulkResponse + Created + + Examples + -------- + import asyncio + + from schematic import AsyncSchematic, CheckFlagRequestBody + + client = AsyncSchematic( + api_key="YOUR_API_KEY", + ) + + + async def main() -> None: + await client.features.check_flags_bulk( + contexts=[CheckFlagRequestBody()], + ) + + + asyncio.run(main()) + """ + _response = await self._raw_client.check_flags_bulk(contexts=contexts, request_options=request_options) + return _response.data + async def count_flags( self, *, diff --git a/src/schematic/features/raw_client.py b/src/schematic/features/raw_client.py index f383f27..0c583b9 100644 --- a/src/schematic/features/raw_client.py +++ b/src/schematic/features/raw_client.py @@ -16,14 +16,16 @@ from ..errors.not_found_error import NotFoundError from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError +from ..types.check_flag_request_body import CheckFlagRequestBody from ..types.create_or_update_flag_request_body import CreateOrUpdateFlagRequestBody from ..types.create_or_update_rule_request_body import CreateOrUpdateRuleRequestBody +from ..types.feature_lifecycle_phase import FeatureLifecyclePhase +from ..types.feature_type import FeatureType from .types.check_flag_response import CheckFlagResponse +from .types.check_flags_bulk_response import CheckFlagsBulkResponse from .types.check_flags_response import CheckFlagsResponse from .types.count_features_response import CountFeaturesResponse from .types.count_flags_response import CountFlagsResponse -from .types.create_feature_request_body_feature_type import CreateFeatureRequestBodyFeatureType -from .types.create_feature_request_body_lifecycle_phase import CreateFeatureRequestBodyLifecyclePhase from .types.create_feature_response import CreateFeatureResponse from .types.create_flag_response import CreateFlagResponse from .types.delete_feature_response import DeleteFeatureResponse @@ -32,8 +34,6 @@ from .types.get_flag_response import GetFlagResponse from .types.list_features_response import ListFeaturesResponse from .types.list_flags_response import ListFlagsResponse -from .types.update_feature_request_body_feature_type import UpdateFeatureRequestBodyFeatureType -from .types.update_feature_request_body_lifecycle_phase import UpdateFeatureRequestBodyLifecyclePhase from .types.update_feature_response import UpdateFeatureResponse from .types.update_flag_response import UpdateFlagResponse from .types.update_flag_rules_response import UpdateFlagRulesResponse @@ -53,7 +53,7 @@ def list_features( q: typing.Optional[str] = None, without_company_override_for: typing.Optional[str] = None, without_plan_entitlement_for: typing.Optional[str] = None, - feature_type: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + feature_type: typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] = None, boolean_require_event: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -73,7 +73,7 @@ def list_features( without_plan_entitlement_for : typing.Optional[str] Filter out features that already have a plan entitlement for the specified plan ID - feature_type : typing.Optional[typing.Union[str, typing.Sequence[str]]] + feature_type : typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] Filter by one or more feature types (boolean, event, trait) boolean_require_event : typing.Optional[bool] @@ -186,12 +186,12 @@ def create_feature( self, *, description: str, - feature_type: CreateFeatureRequestBodyFeatureType, + feature_type: FeatureType, name: str, event_subtype: typing.Optional[str] = OMIT, flag: typing.Optional[CreateOrUpdateFlagRequestBody] = OMIT, icon: typing.Optional[str] = OMIT, - lifecycle_phase: typing.Optional[CreateFeatureRequestBodyLifecyclePhase] = OMIT, + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = OMIT, maintainer_id: typing.Optional[str] = OMIT, plural_name: typing.Optional[str] = OMIT, singular_name: typing.Optional[str] = OMIT, @@ -203,7 +203,7 @@ def create_feature( ---------- description : str - feature_type : CreateFeatureRequestBodyFeatureType + feature_type : FeatureType name : str @@ -213,7 +213,7 @@ def create_feature( icon : typing.Optional[str] - lifecycle_phase : typing.Optional[CreateFeatureRequestBodyLifecyclePhase] + lifecycle_phase : typing.Optional[FeatureLifecyclePhase] maintainer_id : typing.Optional[str] @@ -420,10 +420,10 @@ def update_feature( *, description: typing.Optional[str] = OMIT, event_subtype: typing.Optional[str] = OMIT, - feature_type: typing.Optional[UpdateFeatureRequestBodyFeatureType] = OMIT, + feature_type: typing.Optional[FeatureType] = OMIT, flag: typing.Optional[CreateOrUpdateFlagRequestBody] = OMIT, icon: typing.Optional[str] = OMIT, - lifecycle_phase: typing.Optional[UpdateFeatureRequestBodyLifecyclePhase] = OMIT, + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = OMIT, maintainer_id: typing.Optional[str] = OMIT, name: typing.Optional[str] = OMIT, plural_name: typing.Optional[str] = OMIT, @@ -441,13 +441,13 @@ def update_feature( event_subtype : typing.Optional[str] - feature_type : typing.Optional[UpdateFeatureRequestBodyFeatureType] + feature_type : typing.Optional[FeatureType] flag : typing.Optional[CreateOrUpdateFlagRequestBody] icon : typing.Optional[str] - lifecycle_phase : typing.Optional[UpdateFeatureRequestBodyLifecyclePhase] + lifecycle_phase : typing.Optional[FeatureLifecyclePhase] maintainer_id : typing.Optional[str] @@ -668,7 +668,7 @@ def count_features( q: typing.Optional[str] = None, without_company_override_for: typing.Optional[str] = None, without_plan_entitlement_for: typing.Optional[str] = None, - feature_type: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + feature_type: typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] = None, boolean_require_event: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -688,7 +688,7 @@ def count_features( without_plan_entitlement_for : typing.Optional[str] Filter out features that already have a plan entitlement for the specified plan ID - feature_type : typing.Optional[typing.Union[str, typing.Sequence[str]]] + feature_type : typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] Filter by one or more feature types (boolean, event, trait) boolean_require_event : typing.Optional[bool] @@ -1687,6 +1687,113 @@ def check_flags( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) + def check_flags_bulk( + self, + *, + contexts: typing.Sequence[CheckFlagRequestBody], + request_options: typing.Optional[RequestOptions] = None, + ) -> HttpResponse[CheckFlagsBulkResponse]: + """ + Parameters + ---------- + contexts : typing.Sequence[CheckFlagRequestBody] + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + HttpResponse[CheckFlagsBulkResponse] + Created + """ + _response = self._client_wrapper.httpx_client.request( + "flags/check-bulk", + method="POST", + json={ + "contexts": convert_and_respect_annotation_metadata( + object_=contexts, annotation=typing.Sequence[CheckFlagRequestBody], direction="write" + ), + }, + headers={ + "content-type": "application/json", + }, + request_options=request_options, + omit=OMIT, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + CheckFlagsBulkResponse, + parse_obj_as( + type_=CheckFlagsBulkResponse, # type: ignore + object_=_response.json(), + ), + ) + return HttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 401: + raise UnauthorizedError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 403: + raise ForbiddenError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 500: + raise InternalServerError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.text + ) + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response_json + ) + def count_flags( self, *, @@ -1819,7 +1926,7 @@ async def list_features( q: typing.Optional[str] = None, without_company_override_for: typing.Optional[str] = None, without_plan_entitlement_for: typing.Optional[str] = None, - feature_type: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + feature_type: typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] = None, boolean_require_event: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -1839,7 +1946,7 @@ async def list_features( without_plan_entitlement_for : typing.Optional[str] Filter out features that already have a plan entitlement for the specified plan ID - feature_type : typing.Optional[typing.Union[str, typing.Sequence[str]]] + feature_type : typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] Filter by one or more feature types (boolean, event, trait) boolean_require_event : typing.Optional[bool] @@ -1952,12 +2059,12 @@ async def create_feature( self, *, description: str, - feature_type: CreateFeatureRequestBodyFeatureType, + feature_type: FeatureType, name: str, event_subtype: typing.Optional[str] = OMIT, flag: typing.Optional[CreateOrUpdateFlagRequestBody] = OMIT, icon: typing.Optional[str] = OMIT, - lifecycle_phase: typing.Optional[CreateFeatureRequestBodyLifecyclePhase] = OMIT, + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = OMIT, maintainer_id: typing.Optional[str] = OMIT, plural_name: typing.Optional[str] = OMIT, singular_name: typing.Optional[str] = OMIT, @@ -1969,7 +2076,7 @@ async def create_feature( ---------- description : str - feature_type : CreateFeatureRequestBodyFeatureType + feature_type : FeatureType name : str @@ -1979,7 +2086,7 @@ async def create_feature( icon : typing.Optional[str] - lifecycle_phase : typing.Optional[CreateFeatureRequestBodyLifecyclePhase] + lifecycle_phase : typing.Optional[FeatureLifecyclePhase] maintainer_id : typing.Optional[str] @@ -2186,10 +2293,10 @@ async def update_feature( *, description: typing.Optional[str] = OMIT, event_subtype: typing.Optional[str] = OMIT, - feature_type: typing.Optional[UpdateFeatureRequestBodyFeatureType] = OMIT, + feature_type: typing.Optional[FeatureType] = OMIT, flag: typing.Optional[CreateOrUpdateFlagRequestBody] = OMIT, icon: typing.Optional[str] = OMIT, - lifecycle_phase: typing.Optional[UpdateFeatureRequestBodyLifecyclePhase] = OMIT, + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = OMIT, maintainer_id: typing.Optional[str] = OMIT, name: typing.Optional[str] = OMIT, plural_name: typing.Optional[str] = OMIT, @@ -2207,13 +2314,13 @@ async def update_feature( event_subtype : typing.Optional[str] - feature_type : typing.Optional[UpdateFeatureRequestBodyFeatureType] + feature_type : typing.Optional[FeatureType] flag : typing.Optional[CreateOrUpdateFlagRequestBody] icon : typing.Optional[str] - lifecycle_phase : typing.Optional[UpdateFeatureRequestBodyLifecyclePhase] + lifecycle_phase : typing.Optional[FeatureLifecyclePhase] maintainer_id : typing.Optional[str] @@ -2434,7 +2541,7 @@ async def count_features( q: typing.Optional[str] = None, without_company_override_for: typing.Optional[str] = None, without_plan_entitlement_for: typing.Optional[str] = None, - feature_type: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, + feature_type: typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] = None, boolean_require_event: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -2454,7 +2561,7 @@ async def count_features( without_plan_entitlement_for : typing.Optional[str] Filter out features that already have a plan entitlement for the specified plan ID - feature_type : typing.Optional[typing.Union[str, typing.Sequence[str]]] + feature_type : typing.Optional[typing.Union[FeatureType, typing.Sequence[FeatureType]]] Filter by one or more feature types (boolean, event, trait) boolean_require_event : typing.Optional[bool] @@ -3453,6 +3560,113 @@ async def check_flags( status_code=_response.status_code, headers=dict(_response.headers), body=_response_json ) + async def check_flags_bulk( + self, + *, + contexts: typing.Sequence[CheckFlagRequestBody], + request_options: typing.Optional[RequestOptions] = None, + ) -> AsyncHttpResponse[CheckFlagsBulkResponse]: + """ + Parameters + ---------- + contexts : typing.Sequence[CheckFlagRequestBody] + + request_options : typing.Optional[RequestOptions] + Request-specific configuration. + + Returns + ------- + AsyncHttpResponse[CheckFlagsBulkResponse] + Created + """ + _response = await self._client_wrapper.httpx_client.request( + "flags/check-bulk", + method="POST", + json={ + "contexts": convert_and_respect_annotation_metadata( + object_=contexts, annotation=typing.Sequence[CheckFlagRequestBody], direction="write" + ), + }, + headers={ + "content-type": "application/json", + }, + request_options=request_options, + omit=OMIT, + ) + try: + if 200 <= _response.status_code < 300: + _data = typing.cast( + CheckFlagsBulkResponse, + parse_obj_as( + type_=CheckFlagsBulkResponse, # type: ignore + object_=_response.json(), + ), + ) + return AsyncHttpResponse(response=_response, data=_data) + if _response.status_code == 400: + raise BadRequestError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 401: + raise UnauthorizedError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 403: + raise ForbiddenError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 404: + raise NotFoundError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + if _response.status_code == 500: + raise InternalServerError( + headers=dict(_response.headers), + body=typing.cast( + types_api_error_ApiError, + parse_obj_as( + type_=types_api_error_ApiError, # type: ignore + object_=_response.json(), + ), + ), + ) + _response_json = _response.json() + except JSONDecodeError: + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response.text + ) + raise core_api_error_ApiError( + status_code=_response.status_code, headers=dict(_response.headers), body=_response_json + ) + async def count_flags( self, *, diff --git a/src/schematic/features/types/__init__.py b/src/schematic/features/types/__init__.py index d39a1e9..84880a8 100644 --- a/src/schematic/features/types/__init__.py +++ b/src/schematic/features/types/__init__.py @@ -7,13 +7,12 @@ if typing.TYPE_CHECKING: from .check_flag_response import CheckFlagResponse + from .check_flags_bulk_response import CheckFlagsBulkResponse from .check_flags_response import CheckFlagsResponse from .count_features_params import CountFeaturesParams from .count_features_response import CountFeaturesResponse from .count_flags_params import CountFlagsParams from .count_flags_response import CountFlagsResponse - from .create_feature_request_body_feature_type import CreateFeatureRequestBodyFeatureType - from .create_feature_request_body_lifecycle_phase import CreateFeatureRequestBodyLifecyclePhase from .create_feature_response import CreateFeatureResponse from .create_flag_response import CreateFlagResponse from .delete_feature_response import DeleteFeatureResponse @@ -24,20 +23,17 @@ from .list_features_response import ListFeaturesResponse from .list_flags_params import ListFlagsParams from .list_flags_response import ListFlagsResponse - from .update_feature_request_body_feature_type import UpdateFeatureRequestBodyFeatureType - from .update_feature_request_body_lifecycle_phase import UpdateFeatureRequestBodyLifecyclePhase from .update_feature_response import UpdateFeatureResponse from .update_flag_response import UpdateFlagResponse from .update_flag_rules_response import UpdateFlagRulesResponse _dynamic_imports: typing.Dict[str, str] = { "CheckFlagResponse": ".check_flag_response", + "CheckFlagsBulkResponse": ".check_flags_bulk_response", "CheckFlagsResponse": ".check_flags_response", "CountFeaturesParams": ".count_features_params", "CountFeaturesResponse": ".count_features_response", "CountFlagsParams": ".count_flags_params", "CountFlagsResponse": ".count_flags_response", - "CreateFeatureRequestBodyFeatureType": ".create_feature_request_body_feature_type", - "CreateFeatureRequestBodyLifecyclePhase": ".create_feature_request_body_lifecycle_phase", "CreateFeatureResponse": ".create_feature_response", "CreateFlagResponse": ".create_flag_response", "DeleteFeatureResponse": ".delete_feature_response", @@ -48,8 +44,6 @@ "ListFeaturesResponse": ".list_features_response", "ListFlagsParams": ".list_flags_params", "ListFlagsResponse": ".list_flags_response", - "UpdateFeatureRequestBodyFeatureType": ".update_feature_request_body_feature_type", - "UpdateFeatureRequestBodyLifecyclePhase": ".update_feature_request_body_lifecycle_phase", "UpdateFeatureResponse": ".update_feature_response", "UpdateFlagResponse": ".update_flag_response", "UpdateFlagRulesResponse": ".update_flag_rules_response", @@ -79,13 +73,12 @@ def __dir__(): __all__ = [ "CheckFlagResponse", + "CheckFlagsBulkResponse", "CheckFlagsResponse", "CountFeaturesParams", "CountFeaturesResponse", "CountFlagsParams", "CountFlagsResponse", - "CreateFeatureRequestBodyFeatureType", - "CreateFeatureRequestBodyLifecyclePhase", "CreateFeatureResponse", "CreateFlagResponse", "DeleteFeatureResponse", @@ -96,8 +89,6 @@ def __dir__(): "ListFeaturesResponse", "ListFlagsParams", "ListFlagsResponse", - "UpdateFeatureRequestBodyFeatureType", - "UpdateFeatureRequestBodyLifecyclePhase", "UpdateFeatureResponse", "UpdateFlagResponse", "UpdateFlagRulesResponse", diff --git a/src/schematic/features/types/check_flags_bulk_response.py b/src/schematic/features/types/check_flags_bulk_response.py new file mode 100644 index 0000000..60b3478 --- /dev/null +++ b/src/schematic/features/types/check_flags_bulk_response.py @@ -0,0 +1,24 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ...types.check_flags_bulk_response_data import CheckFlagsBulkResponseData + + +class CheckFlagsBulkResponse(UniversalBaseModel): + data: CheckFlagsBulkResponseData + params: typing.Dict[str, typing.Optional[typing.Any]] = pydantic.Field() + """ + Input parameters + """ + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/features/types/count_features_params.py b/src/schematic/features/types/count_features_params.py index 572bdb8..95b2901 100644 --- a/src/schematic/features/types/count_features_params.py +++ b/src/schematic/features/types/count_features_params.py @@ -4,6 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ...types.feature_type import FeatureType class CountFeaturesParams(UniversalBaseModel): @@ -16,7 +17,7 @@ class CountFeaturesParams(UniversalBaseModel): Only return boolean features if there is an associated event. Automatically includes boolean in the feature types filter. """ - feature_type: typing.Optional[typing.List[str]] = pydantic.Field(default=None) + feature_type: typing.Optional[typing.List[FeatureType]] = pydantic.Field(default=None) """ Filter by one or more feature types (boolean, event, trait) """ diff --git a/src/schematic/features/types/create_feature_request_body_feature_type.py b/src/schematic/features/types/create_feature_request_body_feature_type.py deleted file mode 100644 index b76a269..0000000 --- a/src/schematic/features/types/create_feature_request_body_feature_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateFeatureRequestBodyFeatureType = typing.Union[typing.Literal["boolean", "event", "trait"], typing.Any] diff --git a/src/schematic/features/types/create_feature_request_body_lifecycle_phase.py b/src/schematic/features/types/create_feature_request_body_lifecycle_phase.py deleted file mode 100644 index 7ed512a..0000000 --- a/src/schematic/features/types/create_feature_request_body_lifecycle_phase.py +++ /dev/null @@ -1,8 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateFeatureRequestBodyLifecyclePhase = typing.Union[ - typing.Literal["add_on", "alpha", "beta", "deprecated", "ga", "in_plan", "inactive", "internal_testing", "legacy"], - typing.Any, -] diff --git a/src/schematic/features/types/list_features_params.py b/src/schematic/features/types/list_features_params.py index 2822f4c..02fcb5d 100644 --- a/src/schematic/features/types/list_features_params.py +++ b/src/schematic/features/types/list_features_params.py @@ -4,6 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from ...types.feature_type import FeatureType class ListFeaturesParams(UniversalBaseModel): @@ -16,7 +17,7 @@ class ListFeaturesParams(UniversalBaseModel): Only return boolean features if there is an associated event. Automatically includes boolean in the feature types filter. """ - feature_type: typing.Optional[typing.List[str]] = pydantic.Field(default=None) + feature_type: typing.Optional[typing.List[FeatureType]] = pydantic.Field(default=None) """ Filter by one or more feature types (boolean, event, trait) """ diff --git a/src/schematic/features/types/update_feature_request_body_feature_type.py b/src/schematic/features/types/update_feature_request_body_feature_type.py deleted file mode 100644 index 3e7c510..0000000 --- a/src/schematic/features/types/update_feature_request_body_feature_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateFeatureRequestBodyFeatureType = typing.Union[typing.Literal["boolean", "event", "trait"], typing.Any] diff --git a/src/schematic/plangroups/client.py b/src/schematic/plangroups/client.py index 6946c44..e229a93 100644 --- a/src/schematic/plangroups/client.py +++ b/src/schematic/plangroups/client.py @@ -8,6 +8,7 @@ from ..types.custom_plan_config import CustomPlanConfig from ..types.ordered_plans_in_group import OrderedPlansInGroup from ..types.plan_group_bundle_order import PlanGroupBundleOrder +from ..types.proration_behavior import ProrationBehavior from .raw_client import AsyncRawPlangroupsClient, RawPlangroupsClient from .types.create_plan_group_response import CreatePlanGroupResponse from .types.get_plan_group_response import GetPlanGroupResponse @@ -68,16 +69,21 @@ def create_plan_group( ordered_bundle_list: typing.Sequence[PlanGroupBundleOrder], ordered_plans: typing.Sequence[OrderedPlansInGroup], prevent_downgrades_when_over_limit: bool, + prevent_self_service_downgrade: bool, + proration_behavior: ProrationBehavior, + show_as_monthly_prices: bool, show_credits: bool, show_period_toggle: bool, show_zero_price_as_free: bool, - sync_customer_billing_details_for_tax: bool, + sync_customer_billing_details: bool, add_on_compatibilities: typing.Optional[typing.Sequence[CompatiblePlans]] = OMIT, custom_plan_config: typing.Optional[CustomPlanConfig] = OMIT, custom_plan_id: typing.Optional[str] = OMIT, fallback_plan_id: typing.Optional[str] = OMIT, initial_plan_id: typing.Optional[str] = OMIT, initial_plan_price_id: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_button_text: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_url: typing.Optional[str] = OMIT, trial_days: typing.Optional[int] = OMIT, trial_expiry_plan_id: typing.Optional[str] = OMIT, trial_expiry_plan_price_id: typing.Optional[str] = OMIT, @@ -106,13 +112,19 @@ def create_plan_group( prevent_downgrades_when_over_limit : bool + prevent_self_service_downgrade : bool + + proration_behavior : ProrationBehavior + + show_as_monthly_prices : bool + show_credits : bool show_period_toggle : bool show_zero_price_as_free : bool - sync_customer_billing_details_for_tax : bool + sync_customer_billing_details : bool add_on_compatibilities : typing.Optional[typing.Sequence[CompatiblePlans]] @@ -126,6 +138,10 @@ def create_plan_group( initial_plan_price_id : typing.Optional[str] + prevent_self_service_downgrade_button_text : typing.Optional[str] + + prevent_self_service_downgrade_url : typing.Optional[str] + trial_days : typing.Optional[int] trial_expiry_plan_id : typing.Optional[str] @@ -171,10 +187,13 @@ def create_plan_group( ) ], prevent_downgrades_when_over_limit=True, + prevent_self_service_downgrade=True, + proration_behavior="create_prorations", + show_as_monthly_prices=True, show_credits=True, show_period_toggle=True, show_zero_price_as_free=True, - sync_customer_billing_details_for_tax=True, + sync_customer_billing_details=True, ) """ _response = self._raw_client.create_plan_group( @@ -187,16 +206,21 @@ def create_plan_group( ordered_bundle_list=ordered_bundle_list, ordered_plans=ordered_plans, prevent_downgrades_when_over_limit=prevent_downgrades_when_over_limit, + prevent_self_service_downgrade=prevent_self_service_downgrade, + proration_behavior=proration_behavior, + show_as_monthly_prices=show_as_monthly_prices, show_credits=show_credits, show_period_toggle=show_period_toggle, show_zero_price_as_free=show_zero_price_as_free, - sync_customer_billing_details_for_tax=sync_customer_billing_details_for_tax, + sync_customer_billing_details=sync_customer_billing_details, add_on_compatibilities=add_on_compatibilities, custom_plan_config=custom_plan_config, custom_plan_id=custom_plan_id, fallback_plan_id=fallback_plan_id, initial_plan_id=initial_plan_id, initial_plan_price_id=initial_plan_price_id, + prevent_self_service_downgrade_button_text=prevent_self_service_downgrade_button_text, + prevent_self_service_downgrade_url=prevent_self_service_downgrade_url, trial_days=trial_days, trial_expiry_plan_id=trial_expiry_plan_id, trial_expiry_plan_price_id=trial_expiry_plan_price_id, @@ -218,16 +242,21 @@ def update_plan_group( ordered_bundle_list: typing.Sequence[PlanGroupBundleOrder], ordered_plans: typing.Sequence[OrderedPlansInGroup], prevent_downgrades_when_over_limit: bool, + prevent_self_service_downgrade: bool, + proration_behavior: ProrationBehavior, + show_as_monthly_prices: bool, show_credits: bool, show_period_toggle: bool, show_zero_price_as_free: bool, - sync_customer_billing_details_for_tax: bool, + sync_customer_billing_details: bool, add_on_compatibilities: typing.Optional[typing.Sequence[CompatiblePlans]] = OMIT, custom_plan_config: typing.Optional[CustomPlanConfig] = OMIT, custom_plan_id: typing.Optional[str] = OMIT, fallback_plan_id: typing.Optional[str] = OMIT, initial_plan_id: typing.Optional[str] = OMIT, initial_plan_price_id: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_button_text: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_url: typing.Optional[str] = OMIT, trial_days: typing.Optional[int] = OMIT, trial_expiry_plan_id: typing.Optional[str] = OMIT, trial_expiry_plan_price_id: typing.Optional[str] = OMIT, @@ -259,13 +288,19 @@ def update_plan_group( prevent_downgrades_when_over_limit : bool + prevent_self_service_downgrade : bool + + proration_behavior : ProrationBehavior + + show_as_monthly_prices : bool + show_credits : bool show_period_toggle : bool show_zero_price_as_free : bool - sync_customer_billing_details_for_tax : bool + sync_customer_billing_details : bool add_on_compatibilities : typing.Optional[typing.Sequence[CompatiblePlans]] @@ -279,6 +314,10 @@ def update_plan_group( initial_plan_price_id : typing.Optional[str] + prevent_self_service_downgrade_button_text : typing.Optional[str] + + prevent_self_service_downgrade_url : typing.Optional[str] + trial_days : typing.Optional[int] trial_expiry_plan_id : typing.Optional[str] @@ -325,10 +364,13 @@ def update_plan_group( ) ], prevent_downgrades_when_over_limit=True, + prevent_self_service_downgrade=True, + proration_behavior="create_prorations", + show_as_monthly_prices=True, show_credits=True, show_period_toggle=True, show_zero_price_as_free=True, - sync_customer_billing_details_for_tax=True, + sync_customer_billing_details=True, ) """ _response = self._raw_client.update_plan_group( @@ -342,16 +384,21 @@ def update_plan_group( ordered_bundle_list=ordered_bundle_list, ordered_plans=ordered_plans, prevent_downgrades_when_over_limit=prevent_downgrades_when_over_limit, + prevent_self_service_downgrade=prevent_self_service_downgrade, + proration_behavior=proration_behavior, + show_as_monthly_prices=show_as_monthly_prices, show_credits=show_credits, show_period_toggle=show_period_toggle, show_zero_price_as_free=show_zero_price_as_free, - sync_customer_billing_details_for_tax=sync_customer_billing_details_for_tax, + sync_customer_billing_details=sync_customer_billing_details, add_on_compatibilities=add_on_compatibilities, custom_plan_config=custom_plan_config, custom_plan_id=custom_plan_id, fallback_plan_id=fallback_plan_id, initial_plan_id=initial_plan_id, initial_plan_price_id=initial_plan_price_id, + prevent_self_service_downgrade_button_text=prevent_self_service_downgrade_button_text, + prevent_self_service_downgrade_url=prevent_self_service_downgrade_url, trial_days=trial_days, trial_expiry_plan_id=trial_expiry_plan_id, trial_expiry_plan_price_id=trial_expiry_plan_price_id, @@ -420,16 +467,21 @@ async def create_plan_group( ordered_bundle_list: typing.Sequence[PlanGroupBundleOrder], ordered_plans: typing.Sequence[OrderedPlansInGroup], prevent_downgrades_when_over_limit: bool, + prevent_self_service_downgrade: bool, + proration_behavior: ProrationBehavior, + show_as_monthly_prices: bool, show_credits: bool, show_period_toggle: bool, show_zero_price_as_free: bool, - sync_customer_billing_details_for_tax: bool, + sync_customer_billing_details: bool, add_on_compatibilities: typing.Optional[typing.Sequence[CompatiblePlans]] = OMIT, custom_plan_config: typing.Optional[CustomPlanConfig] = OMIT, custom_plan_id: typing.Optional[str] = OMIT, fallback_plan_id: typing.Optional[str] = OMIT, initial_plan_id: typing.Optional[str] = OMIT, initial_plan_price_id: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_button_text: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_url: typing.Optional[str] = OMIT, trial_days: typing.Optional[int] = OMIT, trial_expiry_plan_id: typing.Optional[str] = OMIT, trial_expiry_plan_price_id: typing.Optional[str] = OMIT, @@ -458,13 +510,19 @@ async def create_plan_group( prevent_downgrades_when_over_limit : bool + prevent_self_service_downgrade : bool + + proration_behavior : ProrationBehavior + + show_as_monthly_prices : bool + show_credits : bool show_period_toggle : bool show_zero_price_as_free : bool - sync_customer_billing_details_for_tax : bool + sync_customer_billing_details : bool add_on_compatibilities : typing.Optional[typing.Sequence[CompatiblePlans]] @@ -478,6 +536,10 @@ async def create_plan_group( initial_plan_price_id : typing.Optional[str] + prevent_self_service_downgrade_button_text : typing.Optional[str] + + prevent_self_service_downgrade_url : typing.Optional[str] + trial_days : typing.Optional[int] trial_expiry_plan_id : typing.Optional[str] @@ -528,10 +590,13 @@ async def main() -> None: ) ], prevent_downgrades_when_over_limit=True, + prevent_self_service_downgrade=True, + proration_behavior="create_prorations", + show_as_monthly_prices=True, show_credits=True, show_period_toggle=True, show_zero_price_as_free=True, - sync_customer_billing_details_for_tax=True, + sync_customer_billing_details=True, ) @@ -547,16 +612,21 @@ async def main() -> None: ordered_bundle_list=ordered_bundle_list, ordered_plans=ordered_plans, prevent_downgrades_when_over_limit=prevent_downgrades_when_over_limit, + prevent_self_service_downgrade=prevent_self_service_downgrade, + proration_behavior=proration_behavior, + show_as_monthly_prices=show_as_monthly_prices, show_credits=show_credits, show_period_toggle=show_period_toggle, show_zero_price_as_free=show_zero_price_as_free, - sync_customer_billing_details_for_tax=sync_customer_billing_details_for_tax, + sync_customer_billing_details=sync_customer_billing_details, add_on_compatibilities=add_on_compatibilities, custom_plan_config=custom_plan_config, custom_plan_id=custom_plan_id, fallback_plan_id=fallback_plan_id, initial_plan_id=initial_plan_id, initial_plan_price_id=initial_plan_price_id, + prevent_self_service_downgrade_button_text=prevent_self_service_downgrade_button_text, + prevent_self_service_downgrade_url=prevent_self_service_downgrade_url, trial_days=trial_days, trial_expiry_plan_id=trial_expiry_plan_id, trial_expiry_plan_price_id=trial_expiry_plan_price_id, @@ -578,16 +648,21 @@ async def update_plan_group( ordered_bundle_list: typing.Sequence[PlanGroupBundleOrder], ordered_plans: typing.Sequence[OrderedPlansInGroup], prevent_downgrades_when_over_limit: bool, + prevent_self_service_downgrade: bool, + proration_behavior: ProrationBehavior, + show_as_monthly_prices: bool, show_credits: bool, show_period_toggle: bool, show_zero_price_as_free: bool, - sync_customer_billing_details_for_tax: bool, + sync_customer_billing_details: bool, add_on_compatibilities: typing.Optional[typing.Sequence[CompatiblePlans]] = OMIT, custom_plan_config: typing.Optional[CustomPlanConfig] = OMIT, custom_plan_id: typing.Optional[str] = OMIT, fallback_plan_id: typing.Optional[str] = OMIT, initial_plan_id: typing.Optional[str] = OMIT, initial_plan_price_id: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_button_text: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_url: typing.Optional[str] = OMIT, trial_days: typing.Optional[int] = OMIT, trial_expiry_plan_id: typing.Optional[str] = OMIT, trial_expiry_plan_price_id: typing.Optional[str] = OMIT, @@ -619,13 +694,19 @@ async def update_plan_group( prevent_downgrades_when_over_limit : bool + prevent_self_service_downgrade : bool + + proration_behavior : ProrationBehavior + + show_as_monthly_prices : bool + show_credits : bool show_period_toggle : bool show_zero_price_as_free : bool - sync_customer_billing_details_for_tax : bool + sync_customer_billing_details : bool add_on_compatibilities : typing.Optional[typing.Sequence[CompatiblePlans]] @@ -639,6 +720,10 @@ async def update_plan_group( initial_plan_price_id : typing.Optional[str] + prevent_self_service_downgrade_button_text : typing.Optional[str] + + prevent_self_service_downgrade_url : typing.Optional[str] + trial_days : typing.Optional[int] trial_expiry_plan_id : typing.Optional[str] @@ -690,10 +775,13 @@ async def main() -> None: ) ], prevent_downgrades_when_over_limit=True, + prevent_self_service_downgrade=True, + proration_behavior="create_prorations", + show_as_monthly_prices=True, show_credits=True, show_period_toggle=True, show_zero_price_as_free=True, - sync_customer_billing_details_for_tax=True, + sync_customer_billing_details=True, ) @@ -710,16 +798,21 @@ async def main() -> None: ordered_bundle_list=ordered_bundle_list, ordered_plans=ordered_plans, prevent_downgrades_when_over_limit=prevent_downgrades_when_over_limit, + prevent_self_service_downgrade=prevent_self_service_downgrade, + proration_behavior=proration_behavior, + show_as_monthly_prices=show_as_monthly_prices, show_credits=show_credits, show_period_toggle=show_period_toggle, show_zero_price_as_free=show_zero_price_as_free, - sync_customer_billing_details_for_tax=sync_customer_billing_details_for_tax, + sync_customer_billing_details=sync_customer_billing_details, add_on_compatibilities=add_on_compatibilities, custom_plan_config=custom_plan_config, custom_plan_id=custom_plan_id, fallback_plan_id=fallback_plan_id, initial_plan_id=initial_plan_id, initial_plan_price_id=initial_plan_price_id, + prevent_self_service_downgrade_button_text=prevent_self_service_downgrade_button_text, + prevent_self_service_downgrade_url=prevent_self_service_downgrade_url, trial_days=trial_days, trial_expiry_plan_id=trial_expiry_plan_id, trial_expiry_plan_price_id=trial_expiry_plan_price_id, diff --git a/src/schematic/plangroups/raw_client.py b/src/schematic/plangroups/raw_client.py index daa8cd9..2ac49a2 100644 --- a/src/schematic/plangroups/raw_client.py +++ b/src/schematic/plangroups/raw_client.py @@ -20,6 +20,7 @@ from ..types.custom_plan_config import CustomPlanConfig from ..types.ordered_plans_in_group import OrderedPlansInGroup from ..types.plan_group_bundle_order import PlanGroupBundleOrder +from ..types.proration_behavior import ProrationBehavior from .types.create_plan_group_response import CreatePlanGroupResponse from .types.get_plan_group_response import GetPlanGroupResponse from .types.update_plan_group_response import UpdatePlanGroupResponse @@ -126,16 +127,21 @@ def create_plan_group( ordered_bundle_list: typing.Sequence[PlanGroupBundleOrder], ordered_plans: typing.Sequence[OrderedPlansInGroup], prevent_downgrades_when_over_limit: bool, + prevent_self_service_downgrade: bool, + proration_behavior: ProrationBehavior, + show_as_monthly_prices: bool, show_credits: bool, show_period_toggle: bool, show_zero_price_as_free: bool, - sync_customer_billing_details_for_tax: bool, + sync_customer_billing_details: bool, add_on_compatibilities: typing.Optional[typing.Sequence[CompatiblePlans]] = OMIT, custom_plan_config: typing.Optional[CustomPlanConfig] = OMIT, custom_plan_id: typing.Optional[str] = OMIT, fallback_plan_id: typing.Optional[str] = OMIT, initial_plan_id: typing.Optional[str] = OMIT, initial_plan_price_id: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_button_text: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_url: typing.Optional[str] = OMIT, trial_days: typing.Optional[int] = OMIT, trial_expiry_plan_id: typing.Optional[str] = OMIT, trial_expiry_plan_price_id: typing.Optional[str] = OMIT, @@ -164,13 +170,19 @@ def create_plan_group( prevent_downgrades_when_over_limit : bool + prevent_self_service_downgrade : bool + + proration_behavior : ProrationBehavior + + show_as_monthly_prices : bool + show_credits : bool show_period_toggle : bool show_zero_price_as_free : bool - sync_customer_billing_details_for_tax : bool + sync_customer_billing_details : bool add_on_compatibilities : typing.Optional[typing.Sequence[CompatiblePlans]] @@ -184,6 +196,10 @@ def create_plan_group( initial_plan_price_id : typing.Optional[str] + prevent_self_service_downgrade_button_text : typing.Optional[str] + + prevent_self_service_downgrade_url : typing.Optional[str] + trial_days : typing.Optional[int] trial_expiry_plan_id : typing.Optional[str] @@ -229,10 +245,15 @@ def create_plan_group( object_=ordered_plans, annotation=typing.Sequence[OrderedPlansInGroup], direction="write" ), "prevent_downgrades_when_over_limit": prevent_downgrades_when_over_limit, + "prevent_self_service_downgrade": prevent_self_service_downgrade, + "prevent_self_service_downgrade_button_text": prevent_self_service_downgrade_button_text, + "prevent_self_service_downgrade_url": prevent_self_service_downgrade_url, + "proration_behavior": proration_behavior, + "show_as_monthly_prices": show_as_monthly_prices, "show_credits": show_credits, "show_period_toggle": show_period_toggle, "show_zero_price_as_free": show_zero_price_as_free, - "sync_customer_billing_details_for_tax": sync_customer_billing_details_for_tax, + "sync_customer_billing_details": sync_customer_billing_details, "trial_days": trial_days, "trial_expiry_plan_id": trial_expiry_plan_id, "trial_expiry_plan_price_id": trial_expiry_plan_price_id, @@ -331,16 +352,21 @@ def update_plan_group( ordered_bundle_list: typing.Sequence[PlanGroupBundleOrder], ordered_plans: typing.Sequence[OrderedPlansInGroup], prevent_downgrades_when_over_limit: bool, + prevent_self_service_downgrade: bool, + proration_behavior: ProrationBehavior, + show_as_monthly_prices: bool, show_credits: bool, show_period_toggle: bool, show_zero_price_as_free: bool, - sync_customer_billing_details_for_tax: bool, + sync_customer_billing_details: bool, add_on_compatibilities: typing.Optional[typing.Sequence[CompatiblePlans]] = OMIT, custom_plan_config: typing.Optional[CustomPlanConfig] = OMIT, custom_plan_id: typing.Optional[str] = OMIT, fallback_plan_id: typing.Optional[str] = OMIT, initial_plan_id: typing.Optional[str] = OMIT, initial_plan_price_id: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_button_text: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_url: typing.Optional[str] = OMIT, trial_days: typing.Optional[int] = OMIT, trial_expiry_plan_id: typing.Optional[str] = OMIT, trial_expiry_plan_price_id: typing.Optional[str] = OMIT, @@ -372,13 +398,19 @@ def update_plan_group( prevent_downgrades_when_over_limit : bool + prevent_self_service_downgrade : bool + + proration_behavior : ProrationBehavior + + show_as_monthly_prices : bool + show_credits : bool show_period_toggle : bool show_zero_price_as_free : bool - sync_customer_billing_details_for_tax : bool + sync_customer_billing_details : bool add_on_compatibilities : typing.Optional[typing.Sequence[CompatiblePlans]] @@ -392,6 +424,10 @@ def update_plan_group( initial_plan_price_id : typing.Optional[str] + prevent_self_service_downgrade_button_text : typing.Optional[str] + + prevent_self_service_downgrade_url : typing.Optional[str] + trial_days : typing.Optional[int] trial_expiry_plan_id : typing.Optional[str] @@ -437,10 +473,15 @@ def update_plan_group( object_=ordered_plans, annotation=typing.Sequence[OrderedPlansInGroup], direction="write" ), "prevent_downgrades_when_over_limit": prevent_downgrades_when_over_limit, + "prevent_self_service_downgrade": prevent_self_service_downgrade, + "prevent_self_service_downgrade_button_text": prevent_self_service_downgrade_button_text, + "prevent_self_service_downgrade_url": prevent_self_service_downgrade_url, + "proration_behavior": proration_behavior, + "show_as_monthly_prices": show_as_monthly_prices, "show_credits": show_credits, "show_period_toggle": show_period_toggle, "show_zero_price_as_free": show_zero_price_as_free, - "sync_customer_billing_details_for_tax": sync_customer_billing_details_for_tax, + "sync_customer_billing_details": sync_customer_billing_details, "trial_days": trial_days, "trial_expiry_plan_id": trial_expiry_plan_id, "trial_expiry_plan_price_id": trial_expiry_plan_price_id, @@ -625,16 +666,21 @@ async def create_plan_group( ordered_bundle_list: typing.Sequence[PlanGroupBundleOrder], ordered_plans: typing.Sequence[OrderedPlansInGroup], prevent_downgrades_when_over_limit: bool, + prevent_self_service_downgrade: bool, + proration_behavior: ProrationBehavior, + show_as_monthly_prices: bool, show_credits: bool, show_period_toggle: bool, show_zero_price_as_free: bool, - sync_customer_billing_details_for_tax: bool, + sync_customer_billing_details: bool, add_on_compatibilities: typing.Optional[typing.Sequence[CompatiblePlans]] = OMIT, custom_plan_config: typing.Optional[CustomPlanConfig] = OMIT, custom_plan_id: typing.Optional[str] = OMIT, fallback_plan_id: typing.Optional[str] = OMIT, initial_plan_id: typing.Optional[str] = OMIT, initial_plan_price_id: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_button_text: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_url: typing.Optional[str] = OMIT, trial_days: typing.Optional[int] = OMIT, trial_expiry_plan_id: typing.Optional[str] = OMIT, trial_expiry_plan_price_id: typing.Optional[str] = OMIT, @@ -663,13 +709,19 @@ async def create_plan_group( prevent_downgrades_when_over_limit : bool + prevent_self_service_downgrade : bool + + proration_behavior : ProrationBehavior + + show_as_monthly_prices : bool + show_credits : bool show_period_toggle : bool show_zero_price_as_free : bool - sync_customer_billing_details_for_tax : bool + sync_customer_billing_details : bool add_on_compatibilities : typing.Optional[typing.Sequence[CompatiblePlans]] @@ -683,6 +735,10 @@ async def create_plan_group( initial_plan_price_id : typing.Optional[str] + prevent_self_service_downgrade_button_text : typing.Optional[str] + + prevent_self_service_downgrade_url : typing.Optional[str] + trial_days : typing.Optional[int] trial_expiry_plan_id : typing.Optional[str] @@ -728,10 +784,15 @@ async def create_plan_group( object_=ordered_plans, annotation=typing.Sequence[OrderedPlansInGroup], direction="write" ), "prevent_downgrades_when_over_limit": prevent_downgrades_when_over_limit, + "prevent_self_service_downgrade": prevent_self_service_downgrade, + "prevent_self_service_downgrade_button_text": prevent_self_service_downgrade_button_text, + "prevent_self_service_downgrade_url": prevent_self_service_downgrade_url, + "proration_behavior": proration_behavior, + "show_as_monthly_prices": show_as_monthly_prices, "show_credits": show_credits, "show_period_toggle": show_period_toggle, "show_zero_price_as_free": show_zero_price_as_free, - "sync_customer_billing_details_for_tax": sync_customer_billing_details_for_tax, + "sync_customer_billing_details": sync_customer_billing_details, "trial_days": trial_days, "trial_expiry_plan_id": trial_expiry_plan_id, "trial_expiry_plan_price_id": trial_expiry_plan_price_id, @@ -830,16 +891,21 @@ async def update_plan_group( ordered_bundle_list: typing.Sequence[PlanGroupBundleOrder], ordered_plans: typing.Sequence[OrderedPlansInGroup], prevent_downgrades_when_over_limit: bool, + prevent_self_service_downgrade: bool, + proration_behavior: ProrationBehavior, + show_as_monthly_prices: bool, show_credits: bool, show_period_toggle: bool, show_zero_price_as_free: bool, - sync_customer_billing_details_for_tax: bool, + sync_customer_billing_details: bool, add_on_compatibilities: typing.Optional[typing.Sequence[CompatiblePlans]] = OMIT, custom_plan_config: typing.Optional[CustomPlanConfig] = OMIT, custom_plan_id: typing.Optional[str] = OMIT, fallback_plan_id: typing.Optional[str] = OMIT, initial_plan_id: typing.Optional[str] = OMIT, initial_plan_price_id: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_button_text: typing.Optional[str] = OMIT, + prevent_self_service_downgrade_url: typing.Optional[str] = OMIT, trial_days: typing.Optional[int] = OMIT, trial_expiry_plan_id: typing.Optional[str] = OMIT, trial_expiry_plan_price_id: typing.Optional[str] = OMIT, @@ -871,13 +937,19 @@ async def update_plan_group( prevent_downgrades_when_over_limit : bool + prevent_self_service_downgrade : bool + + proration_behavior : ProrationBehavior + + show_as_monthly_prices : bool + show_credits : bool show_period_toggle : bool show_zero_price_as_free : bool - sync_customer_billing_details_for_tax : bool + sync_customer_billing_details : bool add_on_compatibilities : typing.Optional[typing.Sequence[CompatiblePlans]] @@ -891,6 +963,10 @@ async def update_plan_group( initial_plan_price_id : typing.Optional[str] + prevent_self_service_downgrade_button_text : typing.Optional[str] + + prevent_self_service_downgrade_url : typing.Optional[str] + trial_days : typing.Optional[int] trial_expiry_plan_id : typing.Optional[str] @@ -936,10 +1012,15 @@ async def update_plan_group( object_=ordered_plans, annotation=typing.Sequence[OrderedPlansInGroup], direction="write" ), "prevent_downgrades_when_over_limit": prevent_downgrades_when_over_limit, + "prevent_self_service_downgrade": prevent_self_service_downgrade, + "prevent_self_service_downgrade_button_text": prevent_self_service_downgrade_button_text, + "prevent_self_service_downgrade_url": prevent_self_service_downgrade_url, + "proration_behavior": proration_behavior, + "show_as_monthly_prices": show_as_monthly_prices, "show_credits": show_credits, "show_period_toggle": show_period_toggle, "show_zero_price_as_free": show_zero_price_as_free, - "sync_customer_billing_details_for_tax": sync_customer_billing_details_for_tax, + "sync_customer_billing_details": sync_customer_billing_details, "trial_days": trial_days, "trial_expiry_plan_id": trial_expiry_plan_id, "trial_expiry_plan_price_id": trial_expiry_plan_price_id, diff --git a/src/schematic/plans/__init__.py b/src/schematic/plans/__init__.py index fb9f17d..1a6930d 100644 --- a/src/schematic/plans/__init__.py +++ b/src/schematic/plans/__init__.py @@ -8,43 +8,31 @@ if typing.TYPE_CHECKING: from .types import ( CountPlansParams, - CountPlansRequestPlanType, CountPlansResponse, - CountPlansResponseParamsPlanType, - CreatePlanRequestBodyPlanType, CreatePlanResponse, DeletePlanResponse, GetPlanResponse, ListPlanIssuesParams, ListPlanIssuesResponse, ListPlansParams, - ListPlansRequestPlanType, ListPlansResponse, - ListPlansResponseParamsPlanType, UpdateCompanyPlansResponse, UpdatePlanResponse, UpsertBillingProductPlanResponse, - UpsertBillingProductRequestBodyChargeType, ) _dynamic_imports: typing.Dict[str, str] = { "CountPlansParams": ".types", - "CountPlansRequestPlanType": ".types", "CountPlansResponse": ".types", - "CountPlansResponseParamsPlanType": ".types", - "CreatePlanRequestBodyPlanType": ".types", "CreatePlanResponse": ".types", "DeletePlanResponse": ".types", "GetPlanResponse": ".types", "ListPlanIssuesParams": ".types", "ListPlanIssuesResponse": ".types", "ListPlansParams": ".types", - "ListPlansRequestPlanType": ".types", "ListPlansResponse": ".types", - "ListPlansResponseParamsPlanType": ".types", "UpdateCompanyPlansResponse": ".types", "UpdatePlanResponse": ".types", "UpsertBillingProductPlanResponse": ".types", - "UpsertBillingProductRequestBodyChargeType": ".types", } @@ -71,21 +59,15 @@ def __dir__(): __all__ = [ "CountPlansParams", - "CountPlansRequestPlanType", "CountPlansResponse", - "CountPlansResponseParamsPlanType", - "CreatePlanRequestBodyPlanType", "CreatePlanResponse", "DeletePlanResponse", "GetPlanResponse", "ListPlanIssuesParams", "ListPlanIssuesResponse", "ListPlansParams", - "ListPlansRequestPlanType", "ListPlansResponse", - "ListPlansResponseParamsPlanType", "UpdateCompanyPlansResponse", "UpdatePlanResponse", "UpsertBillingProductPlanResponse", - "UpsertBillingProductRequestBodyChargeType", ] diff --git a/src/schematic/plans/client.py b/src/schematic/plans/client.py index 51cc3c0..012ba1c 100644 --- a/src/schematic/plans/client.py +++ b/src/schematic/plans/client.py @@ -4,20 +4,18 @@ from ..core.client_wrapper import AsyncClientWrapper, SyncClientWrapper from ..core.request_options import RequestOptions +from ..types.charge_type import ChargeType +from ..types.plan_type import PlanType from .raw_client import AsyncRawPlansClient, RawPlansClient -from .types.count_plans_request_plan_type import CountPlansRequestPlanType from .types.count_plans_response import CountPlansResponse -from .types.create_plan_request_body_plan_type import CreatePlanRequestBodyPlanType from .types.create_plan_response import CreatePlanResponse from .types.delete_plan_response import DeletePlanResponse from .types.get_plan_response import GetPlanResponse from .types.list_plan_issues_response import ListPlanIssuesResponse -from .types.list_plans_request_plan_type import ListPlansRequestPlanType from .types.list_plans_response import ListPlansResponse from .types.update_company_plans_response import UpdateCompanyPlansResponse from .types.update_plan_response import UpdatePlanResponse from .types.upsert_billing_product_plan_response import UpsertBillingProductPlanResponse -from .types.upsert_billing_product_request_body_charge_type import UpsertBillingProductRequestBodyChargeType # this is used as the default value for optional parameters OMIT = typing.cast(typing.Any, ...) @@ -90,11 +88,9 @@ def list_plans( for_trial_expiry_plan: typing.Optional[bool] = None, has_product_id: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - plan_type: typing.Optional[ListPlansRequestPlanType] = None, + plan_type: typing.Optional[PlanType] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, without_entitlement_for: typing.Optional[str] = None, - without_product_id: typing.Optional[bool] = None, without_paid_product_id: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -119,20 +115,14 @@ def list_plans( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - plan_type : typing.Optional[ListPlansRequestPlanType] + plan_type : typing.Optional[PlanType] Filter by plan type q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for plans that require a payment method (inverse of ForInitialPlan) - without_entitlement_for : typing.Optional[str] Filter out plans that already have a plan entitlement for the specified feature ID - without_product_id : typing.Optional[bool] - Filter out plans that have a billing product ID - without_paid_product_id : typing.Optional[bool] Filter out plans that have a paid billing product ID @@ -165,9 +155,7 @@ def list_plans( has_product_id=True, plan_type="plan", q="q", - requires_payment_method=True, without_entitlement_for="without_entitlement_for", - without_product_id=True, without_paid_product_id=True, limit=1, offset=1, @@ -182,9 +170,7 @@ def list_plans( ids=ids, plan_type=plan_type, q=q, - requires_payment_method=requires_payment_method, without_entitlement_for=without_entitlement_for, - without_product_id=without_product_id, without_paid_product_id=without_paid_product_id, limit=limit, offset=offset, @@ -197,7 +183,7 @@ def create_plan( *, description: str, name: str, - plan_type: CreatePlanRequestBodyPlanType, + plan_type: PlanType, icon: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> CreatePlanResponse: @@ -208,7 +194,7 @@ def create_plan( name : str - plan_type : CreatePlanRequestBodyPlanType + plan_type : PlanType icon : typing.Optional[str] @@ -348,7 +334,7 @@ def upsert_billing_product_plan( self, plan_id: str, *, - charge_type: UpsertBillingProductRequestBodyChargeType, + charge_type: ChargeType, is_trialable: bool, billing_product_id: typing.Optional[str] = OMIT, currency: typing.Optional[str] = OMIT, @@ -367,7 +353,7 @@ def upsert_billing_product_plan( plan_id : str plan_id - charge_type : UpsertBillingProductRequestBodyChargeType + charge_type : ChargeType is_trialable : bool @@ -406,7 +392,7 @@ def upsert_billing_product_plan( ) client.plans.upsert_billing_product_plan( plan_id="plan_id", - charge_type="one_time", + charge_type="free", is_trialable=True, ) """ @@ -436,11 +422,9 @@ def count_plans( for_trial_expiry_plan: typing.Optional[bool] = None, has_product_id: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - plan_type: typing.Optional[CountPlansRequestPlanType] = None, + plan_type: typing.Optional[PlanType] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, without_entitlement_for: typing.Optional[str] = None, - without_product_id: typing.Optional[bool] = None, without_paid_product_id: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -465,20 +449,14 @@ def count_plans( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - plan_type : typing.Optional[CountPlansRequestPlanType] + plan_type : typing.Optional[PlanType] Filter by plan type q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for plans that require a payment method (inverse of ForInitialPlan) - without_entitlement_for : typing.Optional[str] Filter out plans that already have a plan entitlement for the specified feature ID - without_product_id : typing.Optional[bool] - Filter out plans that have a billing product ID - without_paid_product_id : typing.Optional[bool] Filter out plans that have a paid billing product ID @@ -511,9 +489,7 @@ def count_plans( has_product_id=True, plan_type="plan", q="q", - requires_payment_method=True, without_entitlement_for="without_entitlement_for", - without_product_id=True, without_paid_product_id=True, limit=1, offset=1, @@ -528,9 +504,7 @@ def count_plans( ids=ids, plan_type=plan_type, q=q, - requires_payment_method=requires_payment_method, without_entitlement_for=without_entitlement_for, - without_product_id=without_product_id, without_paid_product_id=without_paid_product_id, limit=limit, offset=offset, @@ -644,11 +618,9 @@ async def list_plans( for_trial_expiry_plan: typing.Optional[bool] = None, has_product_id: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - plan_type: typing.Optional[ListPlansRequestPlanType] = None, + plan_type: typing.Optional[PlanType] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, without_entitlement_for: typing.Optional[str] = None, - without_product_id: typing.Optional[bool] = None, without_paid_product_id: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -673,20 +645,14 @@ async def list_plans( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - plan_type : typing.Optional[ListPlansRequestPlanType] + plan_type : typing.Optional[PlanType] Filter by plan type q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for plans that require a payment method (inverse of ForInitialPlan) - without_entitlement_for : typing.Optional[str] Filter out plans that already have a plan entitlement for the specified feature ID - without_product_id : typing.Optional[bool] - Filter out plans that have a billing product ID - without_paid_product_id : typing.Optional[bool] Filter out plans that have a paid billing product ID @@ -724,9 +690,7 @@ async def main() -> None: has_product_id=True, plan_type="plan", q="q", - requires_payment_method=True, without_entitlement_for="without_entitlement_for", - without_product_id=True, without_paid_product_id=True, limit=1, offset=1, @@ -744,9 +708,7 @@ async def main() -> None: ids=ids, plan_type=plan_type, q=q, - requires_payment_method=requires_payment_method, without_entitlement_for=without_entitlement_for, - without_product_id=without_product_id, without_paid_product_id=without_paid_product_id, limit=limit, offset=offset, @@ -759,7 +721,7 @@ async def create_plan( *, description: str, name: str, - plan_type: CreatePlanRequestBodyPlanType, + plan_type: PlanType, icon: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> CreatePlanResponse: @@ -770,7 +732,7 @@ async def create_plan( name : str - plan_type : CreatePlanRequestBodyPlanType + plan_type : PlanType icon : typing.Optional[str] @@ -944,7 +906,7 @@ async def upsert_billing_product_plan( self, plan_id: str, *, - charge_type: UpsertBillingProductRequestBodyChargeType, + charge_type: ChargeType, is_trialable: bool, billing_product_id: typing.Optional[str] = OMIT, currency: typing.Optional[str] = OMIT, @@ -963,7 +925,7 @@ async def upsert_billing_product_plan( plan_id : str plan_id - charge_type : UpsertBillingProductRequestBodyChargeType + charge_type : ChargeType is_trialable : bool @@ -1007,7 +969,7 @@ async def upsert_billing_product_plan( async def main() -> None: await client.plans.upsert_billing_product_plan( plan_id="plan_id", - charge_type="one_time", + charge_type="free", is_trialable=True, ) @@ -1040,11 +1002,9 @@ async def count_plans( for_trial_expiry_plan: typing.Optional[bool] = None, has_product_id: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - plan_type: typing.Optional[CountPlansRequestPlanType] = None, + plan_type: typing.Optional[PlanType] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, without_entitlement_for: typing.Optional[str] = None, - without_product_id: typing.Optional[bool] = None, without_paid_product_id: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -1069,20 +1029,14 @@ async def count_plans( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - plan_type : typing.Optional[CountPlansRequestPlanType] + plan_type : typing.Optional[PlanType] Filter by plan type q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for plans that require a payment method (inverse of ForInitialPlan) - without_entitlement_for : typing.Optional[str] Filter out plans that already have a plan entitlement for the specified feature ID - without_product_id : typing.Optional[bool] - Filter out plans that have a billing product ID - without_paid_product_id : typing.Optional[bool] Filter out plans that have a paid billing product ID @@ -1120,9 +1074,7 @@ async def main() -> None: has_product_id=True, plan_type="plan", q="q", - requires_payment_method=True, without_entitlement_for="without_entitlement_for", - without_product_id=True, without_paid_product_id=True, limit=1, offset=1, @@ -1140,9 +1092,7 @@ async def main() -> None: ids=ids, plan_type=plan_type, q=q, - requires_payment_method=requires_payment_method, without_entitlement_for=without_entitlement_for, - without_product_id=without_product_id, without_paid_product_id=without_paid_product_id, limit=limit, offset=offset, diff --git a/src/schematic/plans/raw_client.py b/src/schematic/plans/raw_client.py index bb77c7f..fde1d2f 100644 --- a/src/schematic/plans/raw_client.py +++ b/src/schematic/plans/raw_client.py @@ -15,19 +15,17 @@ from ..errors.not_found_error import NotFoundError from ..errors.unauthorized_error import UnauthorizedError from ..types.api_error import ApiError as types_api_error_ApiError -from .types.count_plans_request_plan_type import CountPlansRequestPlanType +from ..types.charge_type import ChargeType +from ..types.plan_type import PlanType from .types.count_plans_response import CountPlansResponse -from .types.create_plan_request_body_plan_type import CreatePlanRequestBodyPlanType from .types.create_plan_response import CreatePlanResponse from .types.delete_plan_response import DeletePlanResponse from .types.get_plan_response import GetPlanResponse from .types.list_plan_issues_response import ListPlanIssuesResponse -from .types.list_plans_request_plan_type import ListPlansRequestPlanType from .types.list_plans_response import ListPlansResponse from .types.update_company_plans_response import UpdateCompanyPlansResponse from .types.update_plan_response import UpdatePlanResponse from .types.upsert_billing_product_plan_response import UpsertBillingProductPlanResponse -from .types.upsert_billing_product_request_body_charge_type import UpsertBillingProductRequestBodyChargeType # this is used as the default value for optional parameters OMIT = typing.cast(typing.Any, ...) @@ -159,11 +157,9 @@ def list_plans( for_trial_expiry_plan: typing.Optional[bool] = None, has_product_id: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - plan_type: typing.Optional[ListPlansRequestPlanType] = None, + plan_type: typing.Optional[PlanType] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, without_entitlement_for: typing.Optional[str] = None, - without_product_id: typing.Optional[bool] = None, without_paid_product_id: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -188,20 +184,14 @@ def list_plans( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - plan_type : typing.Optional[ListPlansRequestPlanType] + plan_type : typing.Optional[PlanType] Filter by plan type q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for plans that require a payment method (inverse of ForInitialPlan) - without_entitlement_for : typing.Optional[str] Filter out plans that already have a plan entitlement for the specified feature ID - without_product_id : typing.Optional[bool] - Filter out plans that have a billing product ID - without_paid_product_id : typing.Optional[bool] Filter out plans that have a paid billing product ID @@ -231,9 +221,7 @@ def list_plans( "ids": ids, "plan_type": plan_type, "q": q, - "requires_payment_method": requires_payment_method, "without_entitlement_for": without_entitlement_for, - "without_product_id": without_product_id, "without_paid_product_id": without_paid_product_id, "limit": limit, "offset": offset, @@ -319,7 +307,7 @@ def create_plan( *, description: str, name: str, - plan_type: CreatePlanRequestBodyPlanType, + plan_type: PlanType, icon: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[CreatePlanResponse]: @@ -330,7 +318,7 @@ def create_plan( name : str - plan_type : CreatePlanRequestBodyPlanType + plan_type : PlanType icon : typing.Optional[str] @@ -733,7 +721,7 @@ def upsert_billing_product_plan( self, plan_id: str, *, - charge_type: UpsertBillingProductRequestBodyChargeType, + charge_type: ChargeType, is_trialable: bool, billing_product_id: typing.Optional[str] = OMIT, currency: typing.Optional[str] = OMIT, @@ -752,7 +740,7 @@ def upsert_billing_product_plan( plan_id : str plan_id - charge_type : UpsertBillingProductRequestBodyChargeType + charge_type : ChargeType is_trialable : bool @@ -887,11 +875,9 @@ def count_plans( for_trial_expiry_plan: typing.Optional[bool] = None, has_product_id: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - plan_type: typing.Optional[CountPlansRequestPlanType] = None, + plan_type: typing.Optional[PlanType] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, without_entitlement_for: typing.Optional[str] = None, - without_product_id: typing.Optional[bool] = None, without_paid_product_id: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -916,20 +902,14 @@ def count_plans( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - plan_type : typing.Optional[CountPlansRequestPlanType] + plan_type : typing.Optional[PlanType] Filter by plan type q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for plans that require a payment method (inverse of ForInitialPlan) - without_entitlement_for : typing.Optional[str] Filter out plans that already have a plan entitlement for the specified feature ID - without_product_id : typing.Optional[bool] - Filter out plans that have a billing product ID - without_paid_product_id : typing.Optional[bool] Filter out plans that have a paid billing product ID @@ -959,9 +939,7 @@ def count_plans( "ids": ids, "plan_type": plan_type, "q": q, - "requires_payment_method": requires_payment_method, "without_entitlement_for": without_entitlement_for, - "without_product_id": without_product_id, "without_paid_product_id": without_paid_product_id, "limit": limit, "offset": offset, @@ -1267,11 +1245,9 @@ async def list_plans( for_trial_expiry_plan: typing.Optional[bool] = None, has_product_id: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - plan_type: typing.Optional[ListPlansRequestPlanType] = None, + plan_type: typing.Optional[PlanType] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, without_entitlement_for: typing.Optional[str] = None, - without_product_id: typing.Optional[bool] = None, without_paid_product_id: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -1296,20 +1272,14 @@ async def list_plans( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - plan_type : typing.Optional[ListPlansRequestPlanType] + plan_type : typing.Optional[PlanType] Filter by plan type q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for plans that require a payment method (inverse of ForInitialPlan) - without_entitlement_for : typing.Optional[str] Filter out plans that already have a plan entitlement for the specified feature ID - without_product_id : typing.Optional[bool] - Filter out plans that have a billing product ID - without_paid_product_id : typing.Optional[bool] Filter out plans that have a paid billing product ID @@ -1339,9 +1309,7 @@ async def list_plans( "ids": ids, "plan_type": plan_type, "q": q, - "requires_payment_method": requires_payment_method, "without_entitlement_for": without_entitlement_for, - "without_product_id": without_product_id, "without_paid_product_id": without_paid_product_id, "limit": limit, "offset": offset, @@ -1427,7 +1395,7 @@ async def create_plan( *, description: str, name: str, - plan_type: CreatePlanRequestBodyPlanType, + plan_type: PlanType, icon: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[CreatePlanResponse]: @@ -1438,7 +1406,7 @@ async def create_plan( name : str - plan_type : CreatePlanRequestBodyPlanType + plan_type : PlanType icon : typing.Optional[str] @@ -1841,7 +1809,7 @@ async def upsert_billing_product_plan( self, plan_id: str, *, - charge_type: UpsertBillingProductRequestBodyChargeType, + charge_type: ChargeType, is_trialable: bool, billing_product_id: typing.Optional[str] = OMIT, currency: typing.Optional[str] = OMIT, @@ -1860,7 +1828,7 @@ async def upsert_billing_product_plan( plan_id : str plan_id - charge_type : UpsertBillingProductRequestBodyChargeType + charge_type : ChargeType is_trialable : bool @@ -1995,11 +1963,9 @@ async def count_plans( for_trial_expiry_plan: typing.Optional[bool] = None, has_product_id: typing.Optional[bool] = None, ids: typing.Optional[typing.Union[str, typing.Sequence[str]]] = None, - plan_type: typing.Optional[CountPlansRequestPlanType] = None, + plan_type: typing.Optional[PlanType] = None, q: typing.Optional[str] = None, - requires_payment_method: typing.Optional[bool] = None, without_entitlement_for: typing.Optional[str] = None, - without_product_id: typing.Optional[bool] = None, without_paid_product_id: typing.Optional[bool] = None, limit: typing.Optional[int] = None, offset: typing.Optional[int] = None, @@ -2024,20 +1990,14 @@ async def count_plans( ids : typing.Optional[typing.Union[str, typing.Sequence[str]]] - plan_type : typing.Optional[CountPlansRequestPlanType] + plan_type : typing.Optional[PlanType] Filter by plan type q : typing.Optional[str] - requires_payment_method : typing.Optional[bool] - Filter for plans that require a payment method (inverse of ForInitialPlan) - without_entitlement_for : typing.Optional[str] Filter out plans that already have a plan entitlement for the specified feature ID - without_product_id : typing.Optional[bool] - Filter out plans that have a billing product ID - without_paid_product_id : typing.Optional[bool] Filter out plans that have a paid billing product ID @@ -2067,9 +2027,7 @@ async def count_plans( "ids": ids, "plan_type": plan_type, "q": q, - "requires_payment_method": requires_payment_method, "without_entitlement_for": without_entitlement_for, - "without_product_id": without_product_id, "without_paid_product_id": without_paid_product_id, "limit": limit, "offset": offset, diff --git a/src/schematic/plans/types/__init__.py b/src/schematic/plans/types/__init__.py index da619d2..16c4ede 100644 --- a/src/schematic/plans/types/__init__.py +++ b/src/schematic/plans/types/__init__.py @@ -7,42 +7,30 @@ if typing.TYPE_CHECKING: from .count_plans_params import CountPlansParams - from .count_plans_request_plan_type import CountPlansRequestPlanType from .count_plans_response import CountPlansResponse - from .count_plans_response_params_plan_type import CountPlansResponseParamsPlanType - from .create_plan_request_body_plan_type import CreatePlanRequestBodyPlanType from .create_plan_response import CreatePlanResponse from .delete_plan_response import DeletePlanResponse from .get_plan_response import GetPlanResponse from .list_plan_issues_params import ListPlanIssuesParams from .list_plan_issues_response import ListPlanIssuesResponse from .list_plans_params import ListPlansParams - from .list_plans_request_plan_type import ListPlansRequestPlanType from .list_plans_response import ListPlansResponse - from .list_plans_response_params_plan_type import ListPlansResponseParamsPlanType from .update_company_plans_response import UpdateCompanyPlansResponse from .update_plan_response import UpdatePlanResponse from .upsert_billing_product_plan_response import UpsertBillingProductPlanResponse - from .upsert_billing_product_request_body_charge_type import UpsertBillingProductRequestBodyChargeType _dynamic_imports: typing.Dict[str, str] = { "CountPlansParams": ".count_plans_params", - "CountPlansRequestPlanType": ".count_plans_request_plan_type", "CountPlansResponse": ".count_plans_response", - "CountPlansResponseParamsPlanType": ".count_plans_response_params_plan_type", - "CreatePlanRequestBodyPlanType": ".create_plan_request_body_plan_type", "CreatePlanResponse": ".create_plan_response", "DeletePlanResponse": ".delete_plan_response", "GetPlanResponse": ".get_plan_response", "ListPlanIssuesParams": ".list_plan_issues_params", "ListPlanIssuesResponse": ".list_plan_issues_response", "ListPlansParams": ".list_plans_params", - "ListPlansRequestPlanType": ".list_plans_request_plan_type", "ListPlansResponse": ".list_plans_response", - "ListPlansResponseParamsPlanType": ".list_plans_response_params_plan_type", "UpdateCompanyPlansResponse": ".update_company_plans_response", "UpdatePlanResponse": ".update_plan_response", "UpsertBillingProductPlanResponse": ".upsert_billing_product_plan_response", - "UpsertBillingProductRequestBodyChargeType": ".upsert_billing_product_request_body_charge_type", } @@ -69,21 +57,15 @@ def __dir__(): __all__ = [ "CountPlansParams", - "CountPlansRequestPlanType", "CountPlansResponse", - "CountPlansResponseParamsPlanType", - "CreatePlanRequestBodyPlanType", "CreatePlanResponse", "DeletePlanResponse", "GetPlanResponse", "ListPlanIssuesParams", "ListPlanIssuesResponse", "ListPlansParams", - "ListPlansRequestPlanType", "ListPlansResponse", - "ListPlansResponseParamsPlanType", "UpdateCompanyPlansResponse", "UpdatePlanResponse", "UpsertBillingProductPlanResponse", - "UpsertBillingProductRequestBodyChargeType", ] diff --git a/src/schematic/plans/types/count_plans_params.py b/src/schematic/plans/types/count_plans_params.py index fd0ffdc..36daeab 100644 --- a/src/schematic/plans/types/count_plans_params.py +++ b/src/schematic/plans/types/count_plans_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .count_plans_response_params_plan_type import CountPlansResponseParamsPlanType +from ...types.plan_type import PlanType class CountPlansParams(UniversalBaseModel): @@ -44,17 +44,8 @@ class CountPlansParams(UniversalBaseModel): Page offset (default 0) """ - plan_type: typing.Optional[CountPlansResponseParamsPlanType] = pydantic.Field(default=None) - """ - Filter by plan type - """ - + plan_type: typing.Optional[PlanType] = None q: typing.Optional[str] = None - requires_payment_method: typing.Optional[bool] = pydantic.Field(default=None) - """ - Filter for plans that require a payment method (inverse of ForInitialPlan) - """ - without_entitlement_for: typing.Optional[str] = pydantic.Field(default=None) """ Filter out plans that already have a plan entitlement for the specified feature ID @@ -65,11 +56,6 @@ class CountPlansParams(UniversalBaseModel): Filter out plans that have a paid billing product ID """ - without_product_id: typing.Optional[bool] = pydantic.Field(default=None) - """ - Filter out plans that have a billing product ID - """ - if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 else: diff --git a/src/schematic/plans/types/count_plans_request_plan_type.py b/src/schematic/plans/types/count_plans_request_plan_type.py deleted file mode 100644 index ce6d343..0000000 --- a/src/schematic/plans/types/count_plans_request_plan_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountPlansRequestPlanType = typing.Union[typing.Literal["plan", "add_on"], typing.Any] diff --git a/src/schematic/plans/types/count_plans_response_params_plan_type.py b/src/schematic/plans/types/count_plans_response_params_plan_type.py deleted file mode 100644 index d340226..0000000 --- a/src/schematic/plans/types/count_plans_response_params_plan_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CountPlansResponseParamsPlanType = typing.Union[typing.Literal["plan", "add_on"], typing.Any] diff --git a/src/schematic/plans/types/create_plan_request_body_plan_type.py b/src/schematic/plans/types/create_plan_request_body_plan_type.py deleted file mode 100644 index 6bd0367..0000000 --- a/src/schematic/plans/types/create_plan_request_body_plan_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreatePlanRequestBodyPlanType = typing.Union[typing.Literal["plan", "add_on"], typing.Any] diff --git a/src/schematic/plans/types/list_plans_params.py b/src/schematic/plans/types/list_plans_params.py index 56f9f4f..f4a459d 100644 --- a/src/schematic/plans/types/list_plans_params.py +++ b/src/schematic/plans/types/list_plans_params.py @@ -4,7 +4,7 @@ import pydantic from ...core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .list_plans_response_params_plan_type import ListPlansResponseParamsPlanType +from ...types.plan_type import PlanType class ListPlansParams(UniversalBaseModel): @@ -44,17 +44,8 @@ class ListPlansParams(UniversalBaseModel): Page offset (default 0) """ - plan_type: typing.Optional[ListPlansResponseParamsPlanType] = pydantic.Field(default=None) - """ - Filter by plan type - """ - + plan_type: typing.Optional[PlanType] = None q: typing.Optional[str] = None - requires_payment_method: typing.Optional[bool] = pydantic.Field(default=None) - """ - Filter for plans that require a payment method (inverse of ForInitialPlan) - """ - without_entitlement_for: typing.Optional[str] = pydantic.Field(default=None) """ Filter out plans that already have a plan entitlement for the specified feature ID @@ -65,11 +56,6 @@ class ListPlansParams(UniversalBaseModel): Filter out plans that have a paid billing product ID """ - without_product_id: typing.Optional[bool] = pydantic.Field(default=None) - """ - Filter out plans that have a billing product ID - """ - if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 else: diff --git a/src/schematic/plans/types/list_plans_request_plan_type.py b/src/schematic/plans/types/list_plans_request_plan_type.py deleted file mode 100644 index 0ab6b17..0000000 --- a/src/schematic/plans/types/list_plans_request_plan_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListPlansRequestPlanType = typing.Union[typing.Literal["plan", "add_on"], typing.Any] diff --git a/src/schematic/plans/types/list_plans_response_params_plan_type.py b/src/schematic/plans/types/list_plans_response_params_plan_type.py deleted file mode 100644 index 13ff96a..0000000 --- a/src/schematic/plans/types/list_plans_response_params_plan_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -ListPlansResponseParamsPlanType = typing.Union[typing.Literal["plan", "add_on"], typing.Any] diff --git a/src/schematic/plans/types/upsert_billing_product_request_body_charge_type.py b/src/schematic/plans/types/upsert_billing_product_request_body_charge_type.py deleted file mode 100644 index 84305ba..0000000 --- a/src/schematic/plans/types/upsert_billing_product_request_body_charge_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpsertBillingProductRequestBodyChargeType = typing.Union[typing.Literal["one_time", "recurring", "free"], typing.Any] diff --git a/src/schematic/types/__init__.py b/src/schematic/types/__init__.py index eb3a6f4..f232549 100644 --- a/src/schematic/types/__init__.py +++ b/src/schematic/types/__init__.py @@ -11,35 +11,53 @@ from .api_key_request_list_response_data import ApiKeyRequestListResponseData from .api_key_request_response_data import ApiKeyRequestResponseData from .api_key_response_data import ApiKeyResponseData + from .api_key_scope import ApiKeyScope from .billing_coupon_response_data import BillingCouponResponseData from .billing_credit_bundle_response_data import BillingCreditBundleResponseData + from .billing_credit_bundle_status import BillingCreditBundleStatus + from .billing_credit_bundle_type import BillingCreditBundleType from .billing_credit_bundle_view import BillingCreditBundleView + from .billing_credit_burn_strategy import BillingCreditBurnStrategy + from .billing_credit_expiry_type import BillingCreditExpiryType + from .billing_credit_expiry_unit import BillingCreditExpiryUnit + from .billing_credit_grant_reason import BillingCreditGrantReason from .billing_credit_grant_response_data import BillingCreditGrantResponseData + from .billing_credit_grant_zeroed_out_reason import BillingCreditGrantZeroedOutReason from .billing_credit_ledger_response_data import BillingCreditLedgerResponseData from .billing_credit_response_data import BillingCreditResponseData + from .billing_credit_rollover_policy import BillingCreditRolloverPolicy from .billing_customer_response_data import BillingCustomerResponseData from .billing_customer_subscription import BillingCustomerSubscription from .billing_customer_with_subscriptions_response_data import BillingCustomerWithSubscriptionsResponseData from .billing_meter_response_data import BillingMeterResponseData + from .billing_plan_credit_grant_reset_cadence import BillingPlanCreditGrantResetCadence + from .billing_plan_credit_grant_reset_start import BillingPlanCreditGrantResetStart + from .billing_plan_credit_grant_reset_type import BillingPlanCreditGrantResetType from .billing_plan_credit_grant_response_data import BillingPlanCreditGrantResponseData from .billing_price_response_data import BillingPriceResponseData + from .billing_price_scheme import BillingPriceScheme + from .billing_price_usage_type import BillingPriceUsageType from .billing_price_view import BillingPriceView from .billing_product_detail_response_data import BillingProductDetailResponseData from .billing_product_for_subscription_response_data import BillingProductForSubscriptionResponseData from .billing_product_plan_response_data import BillingProductPlanResponseData + from .billing_product_price_interval import BillingProductPriceInterval from .billing_product_price_response_data import BillingProductPriceResponseData from .billing_product_price_tier_response_data import BillingProductPriceTierResponseData from .billing_product_pricing import BillingProductPricing - from .billing_product_pricing_usage_type import BillingProductPricingUsageType from .billing_product_response_data import BillingProductResponseData from .billing_subscription_discount import BillingSubscriptionDiscount from .billing_subscription_discount_view import BillingSubscriptionDiscountView from .billing_subscription_response_data import BillingSubscriptionResponseData + from .billing_subscription_trial_end_setting import BillingSubscriptionTrialEndSetting from .billing_subscription_view import BillingSubscriptionView + from .billing_tiers_mode import BillingTiersMode from .change_subscription_internal_request_body import ChangeSubscriptionInternalRequestBody from .change_subscription_request_body import ChangeSubscriptionRequestBody + from .charge_type import ChargeType from .check_flag_request_body import CheckFlagRequestBody from .check_flag_response_data import CheckFlagResponseData + from .check_flags_bulk_response_data import CheckFlagsBulkResponseData from .check_flags_response_data import CheckFlagsResponseData from .checkout_data_response_data import CheckoutDataResponseData from .checkout_settings_response_data import CheckoutSettingsResponseData @@ -53,6 +71,7 @@ from .company_override_note_response_data import CompanyOverrideNoteResponseData from .company_override_response_data import CompanyOverrideResponseData from .company_plan_detail_response_data import CompanyPlanDetailResponseData + from .company_plan_invalid_reason import CompanyPlanInvalidReason from .company_plan_with_billing_sub_view import CompanyPlanWithBillingSubView from .company_response_data import CompanyResponseData from .company_subscription_response_data import CompanySubscriptionResponseData @@ -61,9 +80,13 @@ from .compatible_plans_response_data import CompatiblePlansResponseData from .component_capabilities import ComponentCapabilities from .component_checkout_settings import ComponentCheckoutSettings + from .component_display_settings import ComponentDisplaySettings + from .component_entity_type import ComponentEntityType from .component_hydrate_response_data import ComponentHydrateResponseData from .component_preview_response_data import ComponentPreviewResponseData from .component_response_data import ComponentResponseData + from .component_settings_response_data import ComponentSettingsResponseData + from .component_state import ComponentState from .condition import Condition from .condition_condition_type import ConditionConditionType from .condition_group import ConditionGroup @@ -78,9 +101,7 @@ from .create_entitlement_req_common_metric_period_month_reset import ( CreateEntitlementReqCommonMetricPeriodMonthReset, ) - from .create_entitlement_req_common_value_type import CreateEntitlementReqCommonValueType from .create_event_request_body import CreateEventRequestBody - from .create_event_request_body_event_type import CreateEventRequestBodyEventType from .create_flag_request_body import CreateFlagRequestBody from .create_or_update_condition_group_request_body import CreateOrUpdateConditionGroupRequestBody from .create_or_update_condition_request_body import CreateOrUpdateConditionRequestBody @@ -94,17 +115,14 @@ from .create_or_update_rule_request_body import CreateOrUpdateRuleRequestBody from .create_or_update_rule_request_body_rule_type import CreateOrUpdateRuleRequestBodyRuleType from .create_price_tier_request_body import CreatePriceTierRequestBody + from .credit_auto_topup_amount_type import CreditAutoTopupAmountType from .credit_bundle_purchase_response_data import CreditBundlePurchaseResponseData from .credit_company_grant_view import CreditCompanyGrantView from .credit_grant_detail import CreditGrantDetail - from .credit_grant_detail_grant_reason import CreditGrantDetailGrantReason from .credit_grant_expiry_request_body import CreditGrantExpiryRequestBody - from .credit_grant_expiry_request_body_expiry_type import CreditGrantExpiryRequestBodyExpiryType - from .credit_grant_expiry_request_body_expiry_unit import CreditGrantExpiryRequestBodyExpiryUnit - from .credit_grant_expiry_request_body_reset_cadence import CreditGrantExpiryRequestBodyResetCadence - from .credit_grant_expiry_request_body_reset_start import CreditGrantExpiryRequestBodyResetStart - from .credit_grant_expiry_request_body_reset_type import CreditGrantExpiryRequestBodyResetType + from .credit_grant_sort_order import CreditGrantSortOrder from .credit_ledger_enriched_entry_response_data import CreditLedgerEnrichedEntryResponseData + from .credit_ledger_period import CreditLedgerPeriod from .credit_trigger_config import CreditTriggerConfig from .credit_usage import CreditUsage from .credit_usage_response_data import CreditUsageResponseData @@ -114,10 +132,17 @@ from .crm_product_response_data import CrmProductResponseData from .custom_plan_config import CustomPlanConfig from .custom_plan_view_config_response_data import CustomPlanViewConfigResponseData + from .data_export_output_file_type import DataExportOutputFileType from .data_export_response_data import DataExportResponseData + from .data_export_status import DataExportStatus + from .data_export_type import DataExportType from .decimal import Decimal from .delete_response import DeleteResponse + from .duplicate_plan_entitlements_response_response_data import DuplicatePlanEntitlementsResponseResponseData + from .entitlement_price_behavior import EntitlementPriceBehavior from .entitlement_trigger_config import EntitlementTriggerConfig + from .entitlement_type import EntitlementType + from .entitlement_value_type import EntitlementValueType from .entitlements_in_plan import EntitlementsInPlan from .entity_key_definition_response_data import EntityKeyDefinitionResponseData from .entity_key_detail_response_data import EntityKeyDetailResponseData @@ -126,8 +151,10 @@ from .entity_trait_detail_response_data import EntityTraitDetailResponseData from .entity_trait_response_data import EntityTraitResponseData from .entity_trait_value import EntityTraitValue + from .entity_type import EntityType from .environment_detail_response_data import EnvironmentDetailResponseData from .environment_response_data import EnvironmentResponseData + from .environment_type import EnvironmentType from .event_body import EventBody from .event_body_flag_check import EventBodyFlagCheck from .event_body_identify import EventBodyIdentify @@ -135,22 +162,22 @@ from .event_body_track import EventBodyTrack from .event_detail_response_data import EventDetailResponseData from .event_response_data import EventResponseData + from .event_status import EventStatus from .event_summary_response_data import EventSummaryResponseData + from .event_type import EventType from .feature_company_response_data import FeatureCompanyResponseData - from .feature_company_response_data_allocation_type import FeatureCompanyResponseDataAllocationType - from .feature_company_response_data_credit_grant_reason import FeatureCompanyResponseDataCreditGrantReason from .feature_company_user_response_data import FeatureCompanyUserResponseData - from .feature_company_user_response_data_allocation_type import FeatureCompanyUserResponseDataAllocationType from .feature_detail_response_data import FeatureDetailResponseData from .feature_ledger_response_data import FeatureLedgerResponseData + from .feature_lifecycle_phase import FeatureLifecyclePhase from .feature_response_data import FeatureResponseData + from .feature_type import FeatureType from .feature_usage_data_response_data import FeatureUsageDataResponseData from .feature_usage_detail_response_data import FeatureUsageDetailResponseData from .feature_usage_response_data import FeatureUsageResponseData - from .feature_usage_response_data_allocation_type import FeatureUsageResponseDataAllocationType - from .feature_usage_response_data_credit_grant_reason import FeatureUsageResponseDataCreditGrantReason from .flag_detail_response_data import FlagDetailResponseData from .flag_response_data import FlagResponseData + from .flag_type import FlagType from .generic_preview_object import GenericPreviewObject from .invoice_request_body import InvoiceRequestBody from .invoice_response_data import InvoiceResponseData @@ -163,11 +190,12 @@ from .ordered_plans_in_group import OrderedPlansInGroup from .payment_method_request_body import PaymentMethodRequestBody from .payment_method_response_data import PaymentMethodResponseData + from .plan_change_action import PlanChangeAction + from .plan_change_actor_type import PlanChangeActorType + from .plan_change_base_plan_action import PlanChangeBasePlanAction from .plan_change_response_data import PlanChangeResponseData - from .plan_change_response_data_action import PlanChangeResponseDataAction - from .plan_change_response_data_actor_type import PlanChangeResponseDataActorType - from .plan_change_response_data_base_plan_action import PlanChangeResponseDataBasePlanAction - from .plan_change_response_data_subscription_change_action import PlanChangeResponseDataSubscriptionChangeAction + from .plan_change_subscription_action import PlanChangeSubscriptionAction + from .plan_controlled_by_type import PlanControlledByType from .plan_credit_grant_view import PlanCreditGrantView from .plan_detail_response_data import PlanDetailResponseData from .plan_entitlement_response_data import PlanEntitlementResponseData @@ -182,11 +210,13 @@ from .plan_selection import PlanSelection from .plan_snapshot_view import PlanSnapshotView from .plan_trait_response_data import PlanTraitResponseData + from .plan_type import PlanType from .preview_object import PreviewObject from .preview_object_response_data import PreviewObjectResponseData from .preview_subscription_change_response_data import PreviewSubscriptionChangeResponseData from .preview_subscription_finance_response_data import PreviewSubscriptionFinanceResponseData from .preview_subscription_upcoming_invoice_line_items import PreviewSubscriptionUpcomingInvoiceLineItems + from .proration_behavior import ProrationBehavior from .quickstart_resp import QuickstartResp from .raw_event_batch_response_data import RawEventBatchResponseData from .raw_event_response_data import RawEventResponseData @@ -199,13 +229,42 @@ from .rule_response_data import RuleResponseData from .rule_rule_type import RuleRuleType from .rules_detail_response_data import RulesDetailResponseData + from .rules_engine_schema_version import RulesEngineSchemaVersion + from .rulesengine_check_flag_result import RulesengineCheckFlagResult + from .rulesengine_check_flag_result_feature_usage_period import RulesengineCheckFlagResultFeatureUsagePeriod + from .rulesengine_check_flag_result_rule_type import RulesengineCheckFlagResultRuleType + from .rulesengine_company import RulesengineCompany + from .rulesengine_company_metric import RulesengineCompanyMetric + from .rulesengine_company_metric_month_reset import RulesengineCompanyMetricMonthReset + from .rulesengine_company_metric_period import RulesengineCompanyMetricPeriod + from .rulesengine_condition import RulesengineCondition + from .rulesengine_condition_condition_type import RulesengineConditionConditionType + from .rulesengine_condition_group import RulesengineConditionGroup + from .rulesengine_condition_metric_period import RulesengineConditionMetricPeriod + from .rulesengine_condition_metric_period_month_reset import RulesengineConditionMetricPeriodMonthReset + from .rulesengine_condition_operator import RulesengineConditionOperator + from .rulesengine_entity_type import RulesengineEntityType + from .rulesengine_flag import RulesengineFlag + from .rulesengine_rule import RulesengineRule + from .rulesengine_rule_rule_type import RulesengineRuleRuleType + from .rulesengine_subscription import RulesengineSubscription + from .rulesengine_trait import RulesengineTrait + from .rulesengine_trait_definition import RulesengineTraitDefinition + from .rulesengine_trait_definition_comparable_type import RulesengineTraitDefinitionComparableType + from .rulesengine_user import RulesengineUser from .segment_status_resp import SegmentStatusResp + from .skipped_entitlement_error_response_data import SkippedEntitlementErrorResponseData + from .skipped_entitlement_response_data import SkippedEntitlementResponseData + from .sort_direction import SortDirection from .stripe_embed_info import StripeEmbedInfo + from .subscription_status import SubscriptionStatus from .subscription_trait_update import SubscriptionTraitUpdate + from .subscription_type import SubscriptionType + from .temporary_access_token_resource_type import TemporaryAccessTokenResourceType from .temporary_access_token_response_data import TemporaryAccessTokenResponseData from .trait_definition import TraitDefinition from .trait_definition_comparable_type import TraitDefinitionComparableType - from .trait_definition_entity_type import TraitDefinitionEntityType + from .trait_type import TraitType from .update_add_on_request_body import UpdateAddOnRequestBody from .update_credit_bundle_request_body import UpdateCreditBundleRequestBody from .update_entitlement_req_common import UpdateEntitlementReqCommon @@ -213,7 +272,6 @@ from .update_entitlement_req_common_metric_period_month_reset import ( UpdateEntitlementReqCommonMetricPeriodMonthReset, ) - from .update_entitlement_req_common_value_type import UpdateEntitlementReqCommonValueType from .update_pay_in_advance_request_body import UpdatePayInAdvanceRequestBody from .update_plan_trait_trait_request_body import UpdatePlanTraitTraitRequestBody from .update_rule_request_body import UpdateRuleRequestBody @@ -222,48 +280,68 @@ from .upsert_user_request_body import UpsertUserRequestBody from .upsert_user_sub_request_body import UpsertUserSubRequestBody from .usage_based_entitlement_request_body import UsageBasedEntitlementRequestBody - from .usage_based_entitlement_request_body_price_behavior import UsageBasedEntitlementRequestBodyPriceBehavior from .usage_based_entitlement_response_data import UsageBasedEntitlementResponseData from .user_detail_response_data import UserDetailResponseData from .user_response_data import UserResponseData from .webhook_event_detail_response_data import WebhookEventDetailResponseData from .webhook_event_response_data import WebhookEventResponseData + from .webhook_event_status import WebhookEventStatus + from .webhook_request_type import WebhookRequestType from .webhook_response_data import WebhookResponseData + from .webhook_status import WebhookStatus _dynamic_imports: typing.Dict[str, str] = { "ApiError": ".api_error", "ApiKeyCreateResponseData": ".api_key_create_response_data", "ApiKeyRequestListResponseData": ".api_key_request_list_response_data", "ApiKeyRequestResponseData": ".api_key_request_response_data", "ApiKeyResponseData": ".api_key_response_data", + "ApiKeyScope": ".api_key_scope", "BillingCouponResponseData": ".billing_coupon_response_data", "BillingCreditBundleResponseData": ".billing_credit_bundle_response_data", + "BillingCreditBundleStatus": ".billing_credit_bundle_status", + "BillingCreditBundleType": ".billing_credit_bundle_type", "BillingCreditBundleView": ".billing_credit_bundle_view", + "BillingCreditBurnStrategy": ".billing_credit_burn_strategy", + "BillingCreditExpiryType": ".billing_credit_expiry_type", + "BillingCreditExpiryUnit": ".billing_credit_expiry_unit", + "BillingCreditGrantReason": ".billing_credit_grant_reason", "BillingCreditGrantResponseData": ".billing_credit_grant_response_data", + "BillingCreditGrantZeroedOutReason": ".billing_credit_grant_zeroed_out_reason", "BillingCreditLedgerResponseData": ".billing_credit_ledger_response_data", "BillingCreditResponseData": ".billing_credit_response_data", + "BillingCreditRolloverPolicy": ".billing_credit_rollover_policy", "BillingCustomerResponseData": ".billing_customer_response_data", "BillingCustomerSubscription": ".billing_customer_subscription", "BillingCustomerWithSubscriptionsResponseData": ".billing_customer_with_subscriptions_response_data", "BillingMeterResponseData": ".billing_meter_response_data", + "BillingPlanCreditGrantResetCadence": ".billing_plan_credit_grant_reset_cadence", + "BillingPlanCreditGrantResetStart": ".billing_plan_credit_grant_reset_start", + "BillingPlanCreditGrantResetType": ".billing_plan_credit_grant_reset_type", "BillingPlanCreditGrantResponseData": ".billing_plan_credit_grant_response_data", "BillingPriceResponseData": ".billing_price_response_data", + "BillingPriceScheme": ".billing_price_scheme", + "BillingPriceUsageType": ".billing_price_usage_type", "BillingPriceView": ".billing_price_view", "BillingProductDetailResponseData": ".billing_product_detail_response_data", "BillingProductForSubscriptionResponseData": ".billing_product_for_subscription_response_data", "BillingProductPlanResponseData": ".billing_product_plan_response_data", + "BillingProductPriceInterval": ".billing_product_price_interval", "BillingProductPriceResponseData": ".billing_product_price_response_data", "BillingProductPriceTierResponseData": ".billing_product_price_tier_response_data", "BillingProductPricing": ".billing_product_pricing", - "BillingProductPricingUsageType": ".billing_product_pricing_usage_type", "BillingProductResponseData": ".billing_product_response_data", "BillingSubscriptionDiscount": ".billing_subscription_discount", "BillingSubscriptionDiscountView": ".billing_subscription_discount_view", "BillingSubscriptionResponseData": ".billing_subscription_response_data", + "BillingSubscriptionTrialEndSetting": ".billing_subscription_trial_end_setting", "BillingSubscriptionView": ".billing_subscription_view", + "BillingTiersMode": ".billing_tiers_mode", "ChangeSubscriptionInternalRequestBody": ".change_subscription_internal_request_body", "ChangeSubscriptionRequestBody": ".change_subscription_request_body", + "ChargeType": ".charge_type", "CheckFlagRequestBody": ".check_flag_request_body", "CheckFlagResponseData": ".check_flag_response_data", + "CheckFlagsBulkResponseData": ".check_flags_bulk_response_data", "CheckFlagsResponseData": ".check_flags_response_data", "CheckoutDataResponseData": ".checkout_data_response_data", "CheckoutSettingsResponseData": ".checkout_settings_response_data", @@ -277,6 +355,7 @@ "CompanyOverrideNoteResponseData": ".company_override_note_response_data", "CompanyOverrideResponseData": ".company_override_response_data", "CompanyPlanDetailResponseData": ".company_plan_detail_response_data", + "CompanyPlanInvalidReason": ".company_plan_invalid_reason", "CompanyPlanWithBillingSubView": ".company_plan_with_billing_sub_view", "CompanyResponseData": ".company_response_data", "CompanySubscriptionResponseData": ".company_subscription_response_data", @@ -285,9 +364,13 @@ "CompatiblePlansResponseData": ".compatible_plans_response_data", "ComponentCapabilities": ".component_capabilities", "ComponentCheckoutSettings": ".component_checkout_settings", + "ComponentDisplaySettings": ".component_display_settings", + "ComponentEntityType": ".component_entity_type", "ComponentHydrateResponseData": ".component_hydrate_response_data", "ComponentPreviewResponseData": ".component_preview_response_data", "ComponentResponseData": ".component_response_data", + "ComponentSettingsResponseData": ".component_settings_response_data", + "ComponentState": ".component_state", "Condition": ".condition", "ConditionConditionType": ".condition_condition_type", "ConditionGroup": ".condition_group", @@ -300,9 +383,7 @@ "CreateEntitlementReqCommon": ".create_entitlement_req_common", "CreateEntitlementReqCommonMetricPeriod": ".create_entitlement_req_common_metric_period", "CreateEntitlementReqCommonMetricPeriodMonthReset": ".create_entitlement_req_common_metric_period_month_reset", - "CreateEntitlementReqCommonValueType": ".create_entitlement_req_common_value_type", "CreateEventRequestBody": ".create_event_request_body", - "CreateEventRequestBodyEventType": ".create_event_request_body_event_type", "CreateFlagRequestBody": ".create_flag_request_body", "CreateOrUpdateConditionGroupRequestBody": ".create_or_update_condition_group_request_body", "CreateOrUpdateConditionRequestBody": ".create_or_update_condition_request_body", @@ -314,17 +395,14 @@ "CreateOrUpdateRuleRequestBody": ".create_or_update_rule_request_body", "CreateOrUpdateRuleRequestBodyRuleType": ".create_or_update_rule_request_body_rule_type", "CreatePriceTierRequestBody": ".create_price_tier_request_body", + "CreditAutoTopupAmountType": ".credit_auto_topup_amount_type", "CreditBundlePurchaseResponseData": ".credit_bundle_purchase_response_data", "CreditCompanyGrantView": ".credit_company_grant_view", "CreditGrantDetail": ".credit_grant_detail", - "CreditGrantDetailGrantReason": ".credit_grant_detail_grant_reason", "CreditGrantExpiryRequestBody": ".credit_grant_expiry_request_body", - "CreditGrantExpiryRequestBodyExpiryType": ".credit_grant_expiry_request_body_expiry_type", - "CreditGrantExpiryRequestBodyExpiryUnit": ".credit_grant_expiry_request_body_expiry_unit", - "CreditGrantExpiryRequestBodyResetCadence": ".credit_grant_expiry_request_body_reset_cadence", - "CreditGrantExpiryRequestBodyResetStart": ".credit_grant_expiry_request_body_reset_start", - "CreditGrantExpiryRequestBodyResetType": ".credit_grant_expiry_request_body_reset_type", + "CreditGrantSortOrder": ".credit_grant_sort_order", "CreditLedgerEnrichedEntryResponseData": ".credit_ledger_enriched_entry_response_data", + "CreditLedgerPeriod": ".credit_ledger_period", "CreditTriggerConfig": ".credit_trigger_config", "CreditUsage": ".credit_usage", "CreditUsageResponseData": ".credit_usage_response_data", @@ -334,10 +412,17 @@ "CrmProductResponseData": ".crm_product_response_data", "CustomPlanConfig": ".custom_plan_config", "CustomPlanViewConfigResponseData": ".custom_plan_view_config_response_data", + "DataExportOutputFileType": ".data_export_output_file_type", "DataExportResponseData": ".data_export_response_data", + "DataExportStatus": ".data_export_status", + "DataExportType": ".data_export_type", "Decimal": ".decimal", "DeleteResponse": ".delete_response", + "DuplicatePlanEntitlementsResponseResponseData": ".duplicate_plan_entitlements_response_response_data", + "EntitlementPriceBehavior": ".entitlement_price_behavior", "EntitlementTriggerConfig": ".entitlement_trigger_config", + "EntitlementType": ".entitlement_type", + "EntitlementValueType": ".entitlement_value_type", "EntitlementsInPlan": ".entitlements_in_plan", "EntityKeyDefinitionResponseData": ".entity_key_definition_response_data", "EntityKeyDetailResponseData": ".entity_key_detail_response_data", @@ -346,8 +431,10 @@ "EntityTraitDetailResponseData": ".entity_trait_detail_response_data", "EntityTraitResponseData": ".entity_trait_response_data", "EntityTraitValue": ".entity_trait_value", + "EntityType": ".entity_type", "EnvironmentDetailResponseData": ".environment_detail_response_data", "EnvironmentResponseData": ".environment_response_data", + "EnvironmentType": ".environment_type", "EventBody": ".event_body", "EventBodyFlagCheck": ".event_body_flag_check", "EventBodyIdentify": ".event_body_identify", @@ -355,22 +442,22 @@ "EventBodyTrack": ".event_body_track", "EventDetailResponseData": ".event_detail_response_data", "EventResponseData": ".event_response_data", + "EventStatus": ".event_status", "EventSummaryResponseData": ".event_summary_response_data", + "EventType": ".event_type", "FeatureCompanyResponseData": ".feature_company_response_data", - "FeatureCompanyResponseDataAllocationType": ".feature_company_response_data_allocation_type", - "FeatureCompanyResponseDataCreditGrantReason": ".feature_company_response_data_credit_grant_reason", "FeatureCompanyUserResponseData": ".feature_company_user_response_data", - "FeatureCompanyUserResponseDataAllocationType": ".feature_company_user_response_data_allocation_type", "FeatureDetailResponseData": ".feature_detail_response_data", "FeatureLedgerResponseData": ".feature_ledger_response_data", + "FeatureLifecyclePhase": ".feature_lifecycle_phase", "FeatureResponseData": ".feature_response_data", + "FeatureType": ".feature_type", "FeatureUsageDataResponseData": ".feature_usage_data_response_data", "FeatureUsageDetailResponseData": ".feature_usage_detail_response_data", "FeatureUsageResponseData": ".feature_usage_response_data", - "FeatureUsageResponseDataAllocationType": ".feature_usage_response_data_allocation_type", - "FeatureUsageResponseDataCreditGrantReason": ".feature_usage_response_data_credit_grant_reason", "FlagDetailResponseData": ".flag_detail_response_data", "FlagResponseData": ".flag_response_data", + "FlagType": ".flag_type", "GenericPreviewObject": ".generic_preview_object", "InvoiceRequestBody": ".invoice_request_body", "InvoiceResponseData": ".invoice_response_data", @@ -383,11 +470,12 @@ "OrderedPlansInGroup": ".ordered_plans_in_group", "PaymentMethodRequestBody": ".payment_method_request_body", "PaymentMethodResponseData": ".payment_method_response_data", + "PlanChangeAction": ".plan_change_action", + "PlanChangeActorType": ".plan_change_actor_type", + "PlanChangeBasePlanAction": ".plan_change_base_plan_action", "PlanChangeResponseData": ".plan_change_response_data", - "PlanChangeResponseDataAction": ".plan_change_response_data_action", - "PlanChangeResponseDataActorType": ".plan_change_response_data_actor_type", - "PlanChangeResponseDataBasePlanAction": ".plan_change_response_data_base_plan_action", - "PlanChangeResponseDataSubscriptionChangeAction": ".plan_change_response_data_subscription_change_action", + "PlanChangeSubscriptionAction": ".plan_change_subscription_action", + "PlanControlledByType": ".plan_controlled_by_type", "PlanCreditGrantView": ".plan_credit_grant_view", "PlanDetailResponseData": ".plan_detail_response_data", "PlanEntitlementResponseData": ".plan_entitlement_response_data", @@ -402,11 +490,13 @@ "PlanSelection": ".plan_selection", "PlanSnapshotView": ".plan_snapshot_view", "PlanTraitResponseData": ".plan_trait_response_data", + "PlanType": ".plan_type", "PreviewObject": ".preview_object", "PreviewObjectResponseData": ".preview_object_response_data", "PreviewSubscriptionChangeResponseData": ".preview_subscription_change_response_data", "PreviewSubscriptionFinanceResponseData": ".preview_subscription_finance_response_data", "PreviewSubscriptionUpcomingInvoiceLineItems": ".preview_subscription_upcoming_invoice_line_items", + "ProrationBehavior": ".proration_behavior", "QuickstartResp": ".quickstart_resp", "RawEventBatchResponseData": ".raw_event_batch_response_data", "RawEventResponseData": ".raw_event_response_data", @@ -419,19 +509,47 @@ "RuleResponseData": ".rule_response_data", "RuleRuleType": ".rule_rule_type", "RulesDetailResponseData": ".rules_detail_response_data", + "RulesEngineSchemaVersion": ".rules_engine_schema_version", + "RulesengineCheckFlagResult": ".rulesengine_check_flag_result", + "RulesengineCheckFlagResultFeatureUsagePeriod": ".rulesengine_check_flag_result_feature_usage_period", + "RulesengineCheckFlagResultRuleType": ".rulesengine_check_flag_result_rule_type", + "RulesengineCompany": ".rulesengine_company", + "RulesengineCompanyMetric": ".rulesengine_company_metric", + "RulesengineCompanyMetricMonthReset": ".rulesengine_company_metric_month_reset", + "RulesengineCompanyMetricPeriod": ".rulesengine_company_metric_period", + "RulesengineCondition": ".rulesengine_condition", + "RulesengineConditionConditionType": ".rulesengine_condition_condition_type", + "RulesengineConditionGroup": ".rulesengine_condition_group", + "RulesengineConditionMetricPeriod": ".rulesengine_condition_metric_period", + "RulesengineConditionMetricPeriodMonthReset": ".rulesengine_condition_metric_period_month_reset", + "RulesengineConditionOperator": ".rulesengine_condition_operator", + "RulesengineEntityType": ".rulesengine_entity_type", + "RulesengineFlag": ".rulesengine_flag", + "RulesengineRule": ".rulesengine_rule", + "RulesengineRuleRuleType": ".rulesengine_rule_rule_type", + "RulesengineSubscription": ".rulesengine_subscription", + "RulesengineTrait": ".rulesengine_trait", + "RulesengineTraitDefinition": ".rulesengine_trait_definition", + "RulesengineTraitDefinitionComparableType": ".rulesengine_trait_definition_comparable_type", + "RulesengineUser": ".rulesengine_user", "SegmentStatusResp": ".segment_status_resp", + "SkippedEntitlementErrorResponseData": ".skipped_entitlement_error_response_data", + "SkippedEntitlementResponseData": ".skipped_entitlement_response_data", + "SortDirection": ".sort_direction", "StripeEmbedInfo": ".stripe_embed_info", + "SubscriptionStatus": ".subscription_status", "SubscriptionTraitUpdate": ".subscription_trait_update", + "SubscriptionType": ".subscription_type", + "TemporaryAccessTokenResourceType": ".temporary_access_token_resource_type", "TemporaryAccessTokenResponseData": ".temporary_access_token_response_data", "TraitDefinition": ".trait_definition", "TraitDefinitionComparableType": ".trait_definition_comparable_type", - "TraitDefinitionEntityType": ".trait_definition_entity_type", + "TraitType": ".trait_type", "UpdateAddOnRequestBody": ".update_add_on_request_body", "UpdateCreditBundleRequestBody": ".update_credit_bundle_request_body", "UpdateEntitlementReqCommon": ".update_entitlement_req_common", "UpdateEntitlementReqCommonMetricPeriod": ".update_entitlement_req_common_metric_period", "UpdateEntitlementReqCommonMetricPeriodMonthReset": ".update_entitlement_req_common_metric_period_month_reset", - "UpdateEntitlementReqCommonValueType": ".update_entitlement_req_common_value_type", "UpdatePayInAdvanceRequestBody": ".update_pay_in_advance_request_body", "UpdatePlanTraitTraitRequestBody": ".update_plan_trait_trait_request_body", "UpdateRuleRequestBody": ".update_rule_request_body", @@ -440,13 +558,15 @@ "UpsertUserRequestBody": ".upsert_user_request_body", "UpsertUserSubRequestBody": ".upsert_user_sub_request_body", "UsageBasedEntitlementRequestBody": ".usage_based_entitlement_request_body", - "UsageBasedEntitlementRequestBodyPriceBehavior": ".usage_based_entitlement_request_body_price_behavior", "UsageBasedEntitlementResponseData": ".usage_based_entitlement_response_data", "UserDetailResponseData": ".user_detail_response_data", "UserResponseData": ".user_response_data", "WebhookEventDetailResponseData": ".webhook_event_detail_response_data", "WebhookEventResponseData": ".webhook_event_response_data", + "WebhookEventStatus": ".webhook_event_status", + "WebhookRequestType": ".webhook_request_type", "WebhookResponseData": ".webhook_response_data", + "WebhookStatus": ".webhook_status", } @@ -477,35 +597,53 @@ def __dir__(): "ApiKeyRequestListResponseData", "ApiKeyRequestResponseData", "ApiKeyResponseData", + "ApiKeyScope", "BillingCouponResponseData", "BillingCreditBundleResponseData", + "BillingCreditBundleStatus", + "BillingCreditBundleType", "BillingCreditBundleView", + "BillingCreditBurnStrategy", + "BillingCreditExpiryType", + "BillingCreditExpiryUnit", + "BillingCreditGrantReason", "BillingCreditGrantResponseData", + "BillingCreditGrantZeroedOutReason", "BillingCreditLedgerResponseData", "BillingCreditResponseData", + "BillingCreditRolloverPolicy", "BillingCustomerResponseData", "BillingCustomerSubscription", "BillingCustomerWithSubscriptionsResponseData", "BillingMeterResponseData", + "BillingPlanCreditGrantResetCadence", + "BillingPlanCreditGrantResetStart", + "BillingPlanCreditGrantResetType", "BillingPlanCreditGrantResponseData", "BillingPriceResponseData", + "BillingPriceScheme", + "BillingPriceUsageType", "BillingPriceView", "BillingProductDetailResponseData", "BillingProductForSubscriptionResponseData", "BillingProductPlanResponseData", + "BillingProductPriceInterval", "BillingProductPriceResponseData", "BillingProductPriceTierResponseData", "BillingProductPricing", - "BillingProductPricingUsageType", "BillingProductResponseData", "BillingSubscriptionDiscount", "BillingSubscriptionDiscountView", "BillingSubscriptionResponseData", + "BillingSubscriptionTrialEndSetting", "BillingSubscriptionView", + "BillingTiersMode", "ChangeSubscriptionInternalRequestBody", "ChangeSubscriptionRequestBody", + "ChargeType", "CheckFlagRequestBody", "CheckFlagResponseData", + "CheckFlagsBulkResponseData", "CheckFlagsResponseData", "CheckoutDataResponseData", "CheckoutSettingsResponseData", @@ -519,6 +657,7 @@ def __dir__(): "CompanyOverrideNoteResponseData", "CompanyOverrideResponseData", "CompanyPlanDetailResponseData", + "CompanyPlanInvalidReason", "CompanyPlanWithBillingSubView", "CompanyResponseData", "CompanySubscriptionResponseData", @@ -527,9 +666,13 @@ def __dir__(): "CompatiblePlansResponseData", "ComponentCapabilities", "ComponentCheckoutSettings", + "ComponentDisplaySettings", + "ComponentEntityType", "ComponentHydrateResponseData", "ComponentPreviewResponseData", "ComponentResponseData", + "ComponentSettingsResponseData", + "ComponentState", "Condition", "ConditionConditionType", "ConditionGroup", @@ -542,9 +685,7 @@ def __dir__(): "CreateEntitlementReqCommon", "CreateEntitlementReqCommonMetricPeriod", "CreateEntitlementReqCommonMetricPeriodMonthReset", - "CreateEntitlementReqCommonValueType", "CreateEventRequestBody", - "CreateEventRequestBodyEventType", "CreateFlagRequestBody", "CreateOrUpdateConditionGroupRequestBody", "CreateOrUpdateConditionRequestBody", @@ -556,17 +697,14 @@ def __dir__(): "CreateOrUpdateRuleRequestBody", "CreateOrUpdateRuleRequestBodyRuleType", "CreatePriceTierRequestBody", + "CreditAutoTopupAmountType", "CreditBundlePurchaseResponseData", "CreditCompanyGrantView", "CreditGrantDetail", - "CreditGrantDetailGrantReason", "CreditGrantExpiryRequestBody", - "CreditGrantExpiryRequestBodyExpiryType", - "CreditGrantExpiryRequestBodyExpiryUnit", - "CreditGrantExpiryRequestBodyResetCadence", - "CreditGrantExpiryRequestBodyResetStart", - "CreditGrantExpiryRequestBodyResetType", + "CreditGrantSortOrder", "CreditLedgerEnrichedEntryResponseData", + "CreditLedgerPeriod", "CreditTriggerConfig", "CreditUsage", "CreditUsageResponseData", @@ -576,10 +714,17 @@ def __dir__(): "CrmProductResponseData", "CustomPlanConfig", "CustomPlanViewConfigResponseData", + "DataExportOutputFileType", "DataExportResponseData", + "DataExportStatus", + "DataExportType", "Decimal", "DeleteResponse", + "DuplicatePlanEntitlementsResponseResponseData", + "EntitlementPriceBehavior", "EntitlementTriggerConfig", + "EntitlementType", + "EntitlementValueType", "EntitlementsInPlan", "EntityKeyDefinitionResponseData", "EntityKeyDetailResponseData", @@ -588,8 +733,10 @@ def __dir__(): "EntityTraitDetailResponseData", "EntityTraitResponseData", "EntityTraitValue", + "EntityType", "EnvironmentDetailResponseData", "EnvironmentResponseData", + "EnvironmentType", "EventBody", "EventBodyFlagCheck", "EventBodyIdentify", @@ -597,22 +744,22 @@ def __dir__(): "EventBodyTrack", "EventDetailResponseData", "EventResponseData", + "EventStatus", "EventSummaryResponseData", + "EventType", "FeatureCompanyResponseData", - "FeatureCompanyResponseDataAllocationType", - "FeatureCompanyResponseDataCreditGrantReason", "FeatureCompanyUserResponseData", - "FeatureCompanyUserResponseDataAllocationType", "FeatureDetailResponseData", "FeatureLedgerResponseData", + "FeatureLifecyclePhase", "FeatureResponseData", + "FeatureType", "FeatureUsageDataResponseData", "FeatureUsageDetailResponseData", "FeatureUsageResponseData", - "FeatureUsageResponseDataAllocationType", - "FeatureUsageResponseDataCreditGrantReason", "FlagDetailResponseData", "FlagResponseData", + "FlagType", "GenericPreviewObject", "InvoiceRequestBody", "InvoiceResponseData", @@ -625,11 +772,12 @@ def __dir__(): "OrderedPlansInGroup", "PaymentMethodRequestBody", "PaymentMethodResponseData", + "PlanChangeAction", + "PlanChangeActorType", + "PlanChangeBasePlanAction", "PlanChangeResponseData", - "PlanChangeResponseDataAction", - "PlanChangeResponseDataActorType", - "PlanChangeResponseDataBasePlanAction", - "PlanChangeResponseDataSubscriptionChangeAction", + "PlanChangeSubscriptionAction", + "PlanControlledByType", "PlanCreditGrantView", "PlanDetailResponseData", "PlanEntitlementResponseData", @@ -644,11 +792,13 @@ def __dir__(): "PlanSelection", "PlanSnapshotView", "PlanTraitResponseData", + "PlanType", "PreviewObject", "PreviewObjectResponseData", "PreviewSubscriptionChangeResponseData", "PreviewSubscriptionFinanceResponseData", "PreviewSubscriptionUpcomingInvoiceLineItems", + "ProrationBehavior", "QuickstartResp", "RawEventBatchResponseData", "RawEventResponseData", @@ -661,19 +811,47 @@ def __dir__(): "RuleResponseData", "RuleRuleType", "RulesDetailResponseData", + "RulesEngineSchemaVersion", + "RulesengineCheckFlagResult", + "RulesengineCheckFlagResultFeatureUsagePeriod", + "RulesengineCheckFlagResultRuleType", + "RulesengineCompany", + "RulesengineCompanyMetric", + "RulesengineCompanyMetricMonthReset", + "RulesengineCompanyMetricPeriod", + "RulesengineCondition", + "RulesengineConditionConditionType", + "RulesengineConditionGroup", + "RulesengineConditionMetricPeriod", + "RulesengineConditionMetricPeriodMonthReset", + "RulesengineConditionOperator", + "RulesengineEntityType", + "RulesengineFlag", + "RulesengineRule", + "RulesengineRuleRuleType", + "RulesengineSubscription", + "RulesengineTrait", + "RulesengineTraitDefinition", + "RulesengineTraitDefinitionComparableType", + "RulesengineUser", "SegmentStatusResp", + "SkippedEntitlementErrorResponseData", + "SkippedEntitlementResponseData", + "SortDirection", "StripeEmbedInfo", + "SubscriptionStatus", "SubscriptionTraitUpdate", + "SubscriptionType", + "TemporaryAccessTokenResourceType", "TemporaryAccessTokenResponseData", "TraitDefinition", "TraitDefinitionComparableType", - "TraitDefinitionEntityType", + "TraitType", "UpdateAddOnRequestBody", "UpdateCreditBundleRequestBody", "UpdateEntitlementReqCommon", "UpdateEntitlementReqCommonMetricPeriod", "UpdateEntitlementReqCommonMetricPeriodMonthReset", - "UpdateEntitlementReqCommonValueType", "UpdatePayInAdvanceRequestBody", "UpdatePlanTraitTraitRequestBody", "UpdateRuleRequestBody", @@ -682,11 +860,13 @@ def __dir__(): "UpsertUserRequestBody", "UpsertUserSubRequestBody", "UsageBasedEntitlementRequestBody", - "UsageBasedEntitlementRequestBodyPriceBehavior", "UsageBasedEntitlementResponseData", "UserDetailResponseData", "UserResponseData", "WebhookEventDetailResponseData", "WebhookEventResponseData", + "WebhookEventStatus", + "WebhookRequestType", "WebhookResponseData", + "WebhookStatus", ] diff --git a/src/schematic/types/api_key_create_response_data.py b/src/schematic/types/api_key_create_response_data.py index 8b9c15a..176a58c 100644 --- a/src/schematic/types/api_key_create_response_data.py +++ b/src/schematic/types/api_key_create_response_data.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .api_key_scope import ApiKeyScope class ApiKeyCreateResponseData(UniversalBaseModel): @@ -14,7 +15,7 @@ class ApiKeyCreateResponseData(UniversalBaseModel): id: str last_used_at: typing.Optional[dt.datetime] = None name: str - scopes: typing.List[str] + scopes: typing.List[ApiKeyScope] secret: str updated_at: dt.datetime diff --git a/src/schematic/types/api_key_response_data.py b/src/schematic/types/api_key_response_data.py index 636c6ec..fa4c41c 100644 --- a/src/schematic/types/api_key_response_data.py +++ b/src/schematic/types/api_key_response_data.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .api_key_scope import ApiKeyScope class ApiKeyResponseData(UniversalBaseModel): @@ -14,7 +15,7 @@ class ApiKeyResponseData(UniversalBaseModel): id: str last_used_at: typing.Optional[dt.datetime] = None name: str - scopes: typing.List[str] + scopes: typing.List[ApiKeyScope] updated_at: dt.datetime if IS_PYDANTIC_V2: diff --git a/src/schematic/types/api_key_scope.py b/src/schematic/types/api_key_scope.py new file mode 100644 index 0000000..8943072 --- /dev/null +++ b/src/schematic/types/api_key_scope.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +ApiKeyScope = typing.Union[typing.Literal["admin", "capture", "read", "write"], typing.Any] diff --git a/src/schematic/types/billing_credit_bundle_response_data.py b/src/schematic/types/billing_credit_bundle_response_data.py index 5ea7a8d..54b7298 100644 --- a/src/schematic/types/billing_credit_bundle_response_data.py +++ b/src/schematic/types/billing_credit_bundle_response_data.py @@ -5,19 +5,23 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_bundle_status import BillingCreditBundleStatus +from .billing_credit_bundle_type import BillingCreditBundleType +from .billing_credit_expiry_type import BillingCreditExpiryType +from .billing_credit_expiry_unit import BillingCreditExpiryUnit from .billing_price_response_data import BillingPriceResponseData class BillingCreditBundleResponseData(UniversalBaseModel): billing_invoice_id: typing.Optional[str] = None - bundle_type: str + bundle_type: BillingCreditBundleType = "fixed" created_at: dt.datetime credit_description: typing.Optional[str] = None credit_icon: typing.Optional[str] = None credit_id: str credit_name: str - expiry_type: str - expiry_unit: str + expiry_type: BillingCreditExpiryType + expiry_unit: BillingCreditExpiryUnit expiry_unit_count: typing.Optional[int] = None has_grants: bool id: str @@ -26,7 +30,7 @@ class BillingCreditBundleResponseData(UniversalBaseModel): price: typing.Optional[BillingPriceResponseData] = None quantity: typing.Optional[int] = None singular_name: typing.Optional[str] = None - status: str + status: BillingCreditBundleStatus unit_price: typing.Optional[BillingPriceResponseData] = None updated_at: dt.datetime diff --git a/src/schematic/types/billing_credit_bundle_status.py b/src/schematic/types/billing_credit_bundle_status.py new file mode 100644 index 0000000..3a0b354 --- /dev/null +++ b/src/schematic/types/billing_credit_bundle_status.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingCreditBundleStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any] diff --git a/src/schematic/types/billing_credit_bundle_type.py b/src/schematic/types/billing_credit_bundle_type.py new file mode 100644 index 0000000..31356f9 --- /dev/null +++ b/src/schematic/types/billing_credit_bundle_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingCreditBundleType = typing.Literal["fixed"] diff --git a/src/schematic/types/billing_credit_bundle_view.py b/src/schematic/types/billing_credit_bundle_view.py index 1460e05..d9c5256 100644 --- a/src/schematic/types/billing_credit_bundle_view.py +++ b/src/schematic/types/billing_credit_bundle_view.py @@ -5,19 +5,23 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_bundle_status import BillingCreditBundleStatus +from .billing_credit_bundle_type import BillingCreditBundleType +from .billing_credit_expiry_type import BillingCreditExpiryType +from .billing_credit_expiry_unit import BillingCreditExpiryUnit from .billing_product_price_response_data import BillingProductPriceResponseData class BillingCreditBundleView(UniversalBaseModel): billing_invoice_id: typing.Optional[str] = None - bundle_type: str + bundle_type: BillingCreditBundleType = "fixed" created_at: dt.datetime credit_description: typing.Optional[str] = None credit_icon: typing.Optional[str] = None credit_id: str credit_name: str - expiry_type: str - expiry_unit: str + expiry_type: BillingCreditExpiryType + expiry_unit: BillingCreditExpiryUnit expiry_unit_count: typing.Optional[int] = None has_grants: bool id: str @@ -26,7 +30,7 @@ class BillingCreditBundleView(UniversalBaseModel): price: typing.Optional[BillingProductPriceResponseData] = None quantity: typing.Optional[int] = None singular_name: typing.Optional[str] = None - status: str + status: BillingCreditBundleStatus unit_price: typing.Optional[BillingProductPriceResponseData] = None updated_at: dt.datetime diff --git a/src/schematic/credits/types/create_billing_credit_request_body_burn_strategy.py b/src/schematic/types/billing_credit_burn_strategy.py similarity index 82% rename from src/schematic/credits/types/create_billing_credit_request_body_burn_strategy.py rename to src/schematic/types/billing_credit_burn_strategy.py index 3232491..87b36e9 100644 --- a/src/schematic/credits/types/create_billing_credit_request_body_burn_strategy.py +++ b/src/schematic/types/billing_credit_burn_strategy.py @@ -2,12 +2,12 @@ import typing -CreateBillingCreditRequestBodyBurnStrategy = typing.Union[ +BillingCreditBurnStrategy = typing.Union[ typing.Literal[ - "plan_first_then_credit_bundles_first_in_first_out", + "expiration_priority", "first_in_first_out", "last_in_first_out", - "expiration_priority", + "plan_first_then_credit_bundles_first_in_first_out", ], typing.Any, ] diff --git a/src/schematic/types/billing_credit_expiry_type.py b/src/schematic/types/billing_credit_expiry_type.py new file mode 100644 index 0000000..36342f9 --- /dev/null +++ b/src/schematic/types/billing_credit_expiry_type.py @@ -0,0 +1,8 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingCreditExpiryType = typing.Union[ + typing.Literal["duration", "end_of_billing_period", "end_of_next_billing_period", "end_of_trial", "no_expiry"], + typing.Any, +] diff --git a/src/schematic/types/billing_credit_expiry_unit.py b/src/schematic/types/billing_credit_expiry_unit.py new file mode 100644 index 0000000..98474a4 --- /dev/null +++ b/src/schematic/types/billing_credit_expiry_unit.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingCreditExpiryUnit = typing.Union[typing.Literal["billing_periods", "days"], typing.Any] diff --git a/src/schematic/types/billing_credit_grant_reason.py b/src/schematic/types/billing_credit_grant_reason.py new file mode 100644 index 0000000..b799a89 --- /dev/null +++ b/src/schematic/types/billing_credit_grant_reason.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingCreditGrantReason = typing.Union[ + typing.Literal["billing_credit_auto_topup", "free", "plan", "purchased"], typing.Any +] diff --git a/src/schematic/types/billing_credit_grant_response_data.py b/src/schematic/types/billing_credit_grant_response_data.py index 46ea21d..58ff3bf 100644 --- a/src/schematic/types/billing_credit_grant_response_data.py +++ b/src/schematic/types/billing_credit_grant_response_data.py @@ -5,6 +5,8 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_grant_reason import BillingCreditGrantReason +from .billing_credit_grant_zeroed_out_reason import BillingCreditGrantZeroedOutReason from .billing_price_response_data import BillingPriceResponseData @@ -16,7 +18,7 @@ class BillingCreditGrantResponseData(UniversalBaseModel): credit_id: str credit_name: str expires_at: typing.Optional[dt.datetime] = None - grant_reason: str + grant_reason: BillingCreditGrantReason id: str plan_id: typing.Optional[str] = None plan_name: typing.Optional[str] = None @@ -28,7 +30,7 @@ class BillingCreditGrantResponseData(UniversalBaseModel): updated_at: dt.datetime valid_from: typing.Optional[dt.datetime] = None zeroed_out_date: typing.Optional[dt.datetime] = None - zeroed_out_reason: typing.Optional[str] = None + zeroed_out_reason: typing.Optional[BillingCreditGrantZeroedOutReason] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/billing_credit_grant_zeroed_out_reason.py b/src/schematic/types/billing_credit_grant_zeroed_out_reason.py new file mode 100644 index 0000000..60795f7 --- /dev/null +++ b/src/schematic/types/billing_credit_grant_zeroed_out_reason.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingCreditGrantZeroedOutReason = typing.Union[ + typing.Literal["expired", "manual", "plan_change", "plan_period_reset"], typing.Any +] diff --git a/src/schematic/types/billing_credit_response_data.py b/src/schematic/types/billing_credit_response_data.py index 8e412d0..dce1b20 100644 --- a/src/schematic/types/billing_credit_response_data.py +++ b/src/schematic/types/billing_credit_response_data.py @@ -5,16 +5,19 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_burn_strategy import BillingCreditBurnStrategy +from .billing_credit_expiry_unit import BillingCreditExpiryUnit +from .billing_credit_rollover_policy import BillingCreditRolloverPolicy from .billing_price_response_data import BillingPriceResponseData from .billing_product_response_data import BillingProductResponseData class BillingCreditResponseData(UniversalBaseModel): - burn_strategy: str + burn_strategy: BillingCreditBurnStrategy created_at: dt.datetime - default_expiry_unit: str + default_expiry_unit: BillingCreditExpiryUnit default_expiry_unit_count: typing.Optional[int] = None - default_rollover_policy: str + default_rollover_policy: BillingCreditRolloverPolicy description: str icon: typing.Optional[str] = None id: str diff --git a/src/schematic/types/billing_credit_rollover_policy.py b/src/schematic/types/billing_credit_rollover_policy.py new file mode 100644 index 0000000..d41bc99 --- /dev/null +++ b/src/schematic/types/billing_credit_rollover_policy.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingCreditRolloverPolicy = typing.Union[typing.Literal["expire", "none", "rollover"], typing.Any] diff --git a/src/schematic/types/billing_plan_credit_grant_reset_cadence.py b/src/schematic/types/billing_plan_credit_grant_reset_cadence.py new file mode 100644 index 0000000..6a72401 --- /dev/null +++ b/src/schematic/types/billing_plan_credit_grant_reset_cadence.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingPlanCreditGrantResetCadence = typing.Union[typing.Literal["daily", "monthly", "weekly", "yearly"], typing.Any] diff --git a/src/schematic/types/billing_plan_credit_grant_reset_start.py b/src/schematic/types/billing_plan_credit_grant_reset_start.py new file mode 100644 index 0000000..b83bc7c --- /dev/null +++ b/src/schematic/types/billing_plan_credit_grant_reset_start.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingPlanCreditGrantResetStart = typing.Union[typing.Literal["billing_period", "first_of_month"], typing.Any] diff --git a/src/schematic/types/billing_plan_credit_grant_reset_type.py b/src/schematic/types/billing_plan_credit_grant_reset_type.py new file mode 100644 index 0000000..a53c431 --- /dev/null +++ b/src/schematic/types/billing_plan_credit_grant_reset_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingPlanCreditGrantResetType = typing.Union[typing.Literal["no_reset", "plan_period"], typing.Any] diff --git a/src/schematic/types/billing_plan_credit_grant_response_data.py b/src/schematic/types/billing_plan_credit_grant_response_data.py index b6c144c..56389bf 100644 --- a/src/schematic/types/billing_plan_credit_grant_response_data.py +++ b/src/schematic/types/billing_plan_credit_grant_response_data.py @@ -5,24 +5,36 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_expiry_type import BillingCreditExpiryType +from .billing_credit_expiry_unit import BillingCreditExpiryUnit +from .billing_plan_credit_grant_reset_cadence import BillingPlanCreditGrantResetCadence +from .billing_plan_credit_grant_reset_start import BillingPlanCreditGrantResetStart +from .billing_plan_credit_grant_reset_type import BillingPlanCreditGrantResetType class BillingPlanCreditGrantResponseData(UniversalBaseModel): + auto_topup_amount: typing.Optional[int] = None + auto_topup_amount_type: typing.Optional[str] = None + auto_topup_enabled: bool + auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = None + auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = None + auto_topup_expiry_unit_count: typing.Optional[int] = None + auto_topup_threshold_percent: typing.Optional[int] = None created_at: dt.datetime credit_amount: int credit_id: str credit_name: str credit_plural_name: typing.Optional[str] = None credit_singular_name: typing.Optional[str] = None - expiry_type: typing.Optional[str] = None - expiry_unit: typing.Optional[str] = None + expiry_type: typing.Optional[BillingCreditExpiryType] = None + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = None expiry_unit_count: typing.Optional[int] = None id: str plan_id: str plan_name: str - reset_cadence: str - reset_start: str - reset_type: typing.Optional[str] = None + reset_cadence: BillingPlanCreditGrantResetCadence + reset_start: BillingPlanCreditGrantResetStart + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = None updated_at: dt.datetime if IS_PYDANTIC_V2: diff --git a/src/schematic/types/billing_price_response_data.py b/src/schematic/types/billing_price_response_data.py index a359e6a..a724267 100644 --- a/src/schematic/types/billing_price_response_data.py +++ b/src/schematic/types/billing_price_response_data.py @@ -4,16 +4,18 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_price_scheme import BillingPriceScheme +from .billing_product_price_interval import BillingProductPriceInterval class BillingPriceResponseData(UniversalBaseModel): currency: str external_price_id: str id: str - interval: str + interval: BillingProductPriceInterval price: int price_decimal: typing.Optional[str] = None - scheme: str + scheme: BillingPriceScheme if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/billing_price_scheme.py b/src/schematic/types/billing_price_scheme.py new file mode 100644 index 0000000..f838a21 --- /dev/null +++ b/src/schematic/types/billing_price_scheme.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingPriceScheme = typing.Union[typing.Literal["per_unit", "tiered"], typing.Any] diff --git a/src/schematic/types/billing_price_usage_type.py b/src/schematic/types/billing_price_usage_type.py new file mode 100644 index 0000000..1b969cc --- /dev/null +++ b/src/schematic/types/billing_price_usage_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingPriceUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/types/billing_price_view.py b/src/schematic/types/billing_price_view.py index ee564d2..e3c08f5 100644 --- a/src/schematic/types/billing_price_view.py +++ b/src/schematic/types/billing_price_view.py @@ -5,15 +5,19 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_price_scheme import BillingPriceScheme +from .billing_price_usage_type import BillingPriceUsageType +from .billing_product_price_interval import BillingProductPriceInterval from .billing_product_price_tier_response_data import BillingProductPriceTierResponseData +from .billing_tiers_mode import BillingTiersMode class BillingPriceView(UniversalBaseModel): - billing_scheme: str + billing_scheme: BillingPriceScheme created_at: dt.datetime currency: str id: str - interval: str + interval: BillingProductPriceInterval is_active: bool meter_event_name: typing.Optional[str] = None meter_event_payload_key: typing.Optional[str] = None @@ -27,9 +31,9 @@ class BillingPriceView(UniversalBaseModel): product_external_id: str product_id: str product_name: str - tiers_mode: typing.Optional[str] = None + tiers_mode: typing.Optional[BillingTiersMode] = None updated_at: dt.datetime - usage_type: str + usage_type: BillingPriceUsageType if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/billing_product_for_subscription_response_data.py b/src/schematic/types/billing_product_for_subscription_response_data.py index 14c1ddd..899ea8b 100644 --- a/src/schematic/types/billing_product_for_subscription_response_data.py +++ b/src/schematic/types/billing_product_for_subscription_response_data.py @@ -5,11 +5,13 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_price_scheme import BillingPriceScheme +from .billing_price_usage_type import BillingPriceUsageType from .billing_product_price_tier_response_data import BillingProductPriceTierResponseData class BillingProductForSubscriptionResponseData(UniversalBaseModel): - billing_scheme: str + billing_scheme: BillingPriceScheme billing_threshold: typing.Optional[int] = None created_at: dt.datetime currency: str @@ -29,7 +31,7 @@ class BillingProductForSubscriptionResponseData(UniversalBaseModel): subscription_id: str subscription_item_external_id: typing.Optional[str] = None updated_at: dt.datetime - usage_type: str + usage_type: BillingPriceUsageType if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/billing_product_plan_response_data.py b/src/schematic/types/billing_product_plan_response_data.py index a3237f0..9222c24 100644 --- a/src/schematic/types/billing_product_plan_response_data.py +++ b/src/schematic/types/billing_product_plan_response_data.py @@ -4,13 +4,15 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .charge_type import ChargeType +from .plan_controlled_by_type import PlanControlledByType class BillingProductPlanResponseData(UniversalBaseModel): account_id: str billing_product_id: str - charge_type: str - controlled_by: str + charge_type: ChargeType + controlled_by: PlanControlledByType environment_id: str is_trialable: bool monthly_price_id: typing.Optional[str] = None diff --git a/src/schematic/types/billing_product_price_interval.py b/src/schematic/types/billing_product_price_interval.py new file mode 100644 index 0000000..fb9bfd7 --- /dev/null +++ b/src/schematic/types/billing_product_price_interval.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingProductPriceInterval = typing.Union[typing.Literal["day", "month", "one-time", "year"], typing.Any] diff --git a/src/schematic/types/billing_product_price_response_data.py b/src/schematic/types/billing_product_price_response_data.py index b16cba5..4b68ad2 100644 --- a/src/schematic/types/billing_product_price_response_data.py +++ b/src/schematic/types/billing_product_price_response_data.py @@ -5,14 +5,18 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_price_scheme import BillingPriceScheme +from .billing_price_usage_type import BillingPriceUsageType +from .billing_product_price_interval import BillingProductPriceInterval +from .billing_tiers_mode import BillingTiersMode class BillingProductPriceResponseData(UniversalBaseModel): - billing_scheme: str + billing_scheme: BillingPriceScheme created_at: dt.datetime currency: str id: str - interval: str + interval: BillingProductPriceInterval is_active: bool meter_id: typing.Optional[str] = None package_size: int @@ -20,9 +24,9 @@ class BillingProductPriceResponseData(UniversalBaseModel): price_decimal: typing.Optional[str] = None price_external_id: str product_external_id: str - tiers_mode: typing.Optional[str] = None + tiers_mode: typing.Optional[BillingTiersMode] = None updated_at: dt.datetime - usage_type: str + usage_type: BillingPriceUsageType if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/billing_product_pricing.py b/src/schematic/types/billing_product_pricing.py index 26ea22e..941efa4 100644 --- a/src/schematic/types/billing_product_pricing.py +++ b/src/schematic/types/billing_product_pricing.py @@ -4,7 +4,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .billing_product_pricing_usage_type import BillingProductPricingUsageType +from .billing_price_usage_type import BillingPriceUsageType class BillingProductPricing(UniversalBaseModel): @@ -19,7 +19,7 @@ class BillingProductPricing(UniversalBaseModel): product_external_id: str quantity: int subscription_item_external_id: typing.Optional[str] = None - usage_type: BillingProductPricingUsageType + usage_type: BillingPriceUsageType if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/billing_product_pricing_usage_type.py b/src/schematic/types/billing_product_pricing_usage_type.py deleted file mode 100644 index b8ddd6b..0000000 --- a/src/schematic/types/billing_product_pricing_usage_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -BillingProductPricingUsageType = typing.Union[typing.Literal["licensed", "metered"], typing.Any] diff --git a/src/schematic/types/billing_subscription_response_data.py b/src/schematic/types/billing_subscription_response_data.py index 01c896a..b939f06 100644 --- a/src/schematic/types/billing_subscription_response_data.py +++ b/src/schematic/types/billing_subscription_response_data.py @@ -5,9 +5,11 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_subscription_trial_end_setting import BillingSubscriptionTrialEndSetting class BillingSubscriptionResponseData(UniversalBaseModel): + application_id: typing.Optional[str] = None cancel_at: typing.Optional[int] = None cancel_at_period_end: bool company_id: typing.Optional[str] = None @@ -25,7 +27,7 @@ class BillingSubscriptionResponseData(UniversalBaseModel): subscription_external_id: str total_price: int trial_end: typing.Optional[int] = None - trial_end_setting: typing.Optional[str] = None + trial_end_setting: typing.Optional[BillingSubscriptionTrialEndSetting] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/billing_subscription_trial_end_setting.py b/src/schematic/types/billing_subscription_trial_end_setting.py new file mode 100644 index 0000000..c093419 --- /dev/null +++ b/src/schematic/types/billing_subscription_trial_end_setting.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingSubscriptionTrialEndSetting = typing.Union[typing.Literal["cancel", "subscribe"], typing.Any] diff --git a/src/schematic/types/billing_subscription_view.py b/src/schematic/types/billing_subscription_view.py index 056efb9..049fb81 100644 --- a/src/schematic/types/billing_subscription_view.py +++ b/src/schematic/types/billing_subscription_view.py @@ -7,11 +7,13 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .billing_product_for_subscription_response_data import BillingProductForSubscriptionResponseData from .billing_subscription_discount_view import BillingSubscriptionDiscountView +from .billing_subscription_trial_end_setting import BillingSubscriptionTrialEndSetting from .invoice_response_data import InvoiceResponseData from .payment_method_response_data import PaymentMethodResponseData class BillingSubscriptionView(UniversalBaseModel): + application_id: typing.Optional[str] = None cancel_at: typing.Optional[int] = None cancel_at_period_end: bool company_id: typing.Optional[str] = None @@ -33,7 +35,7 @@ class BillingSubscriptionView(UniversalBaseModel): subscription_external_id: str total_price: int trial_end: typing.Optional[int] = None - trial_end_setting: typing.Optional[str] = None + trial_end_setting: typing.Optional[BillingSubscriptionTrialEndSetting] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/billing_tiers_mode.py b/src/schematic/types/billing_tiers_mode.py new file mode 100644 index 0000000..27fbc1e --- /dev/null +++ b/src/schematic/types/billing_tiers_mode.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +BillingTiersMode = typing.Union[typing.Literal["graduated", "volume"], typing.Any] diff --git a/src/schematic/types/charge_type.py b/src/schematic/types/charge_type.py new file mode 100644 index 0000000..03d40e9 --- /dev/null +++ b/src/schematic/types/charge_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +ChargeType = typing.Union[typing.Literal["free", "one_time", "recurring"], typing.Any] diff --git a/src/schematic/types/check_flags_bulk_response_data.py b/src/schematic/types/check_flags_bulk_response_data.py new file mode 100644 index 0000000..be701b9 --- /dev/null +++ b/src/schematic/types/check_flags_bulk_response_data.py @@ -0,0 +1,20 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .check_flags_response_data import CheckFlagsResponseData + + +class CheckFlagsBulkResponseData(UniversalBaseModel): + data: typing.List[CheckFlagsResponseData] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/checkout_subscription.py b/src/schematic/types/checkout_subscription.py index daf4032..4efacb0 100644 --- a/src/schematic/types/checkout_subscription.py +++ b/src/schematic/types/checkout_subscription.py @@ -5,9 +5,11 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_subscription_trial_end_setting import BillingSubscriptionTrialEndSetting class CheckoutSubscription(UniversalBaseModel): + application_id: typing.Optional[str] = None cancel_at: typing.Optional[int] = None cancel_at_period_end: bool company_id: typing.Optional[str] = None @@ -27,7 +29,7 @@ class CheckoutSubscription(UniversalBaseModel): subscription_external_id: str total_price: int trial_end: typing.Optional[int] = None - trial_end_setting: typing.Optional[str] = None + trial_end_setting: typing.Optional[BillingSubscriptionTrialEndSetting] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/company_override_response_data.py b/src/schematic/types/company_override_response_data.py index cbf056c..c88040d 100644 --- a/src/schematic/types/company_override_response_data.py +++ b/src/schematic/types/company_override_response_data.py @@ -7,6 +7,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .company_detail_response_data import CompanyDetailResponseData from .company_override_note_response_data import CompanyOverrideNoteResponseData +from .entitlement_value_type import EntitlementValueType from .entity_trait_definition_response_data import EntityTraitDefinitionResponseData from .feature_response_data import FeatureResponseData @@ -31,7 +32,7 @@ class CompanyOverrideResponseData(UniversalBaseModel): value_numeric: typing.Optional[int] = None value_trait: typing.Optional[EntityTraitDefinitionResponseData] = None value_trait_id: typing.Optional[str] = None - value_type: str + value_type: EntitlementValueType if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/company_plan_detail_response_data.py b/src/schematic/types/company_plan_detail_response_data.py index e7a7b40..7d5d536 100644 --- a/src/schematic/types/company_plan_detail_response_data.py +++ b/src/schematic/types/company_plan_detail_response_data.py @@ -7,21 +7,25 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .billing_price_response_data import BillingPriceResponseData from .billing_product_detail_response_data import BillingProductDetailResponseData +from .charge_type import ChargeType +from .company_plan_invalid_reason import CompanyPlanInvalidReason from .custom_plan_config import CustomPlanConfig from .feature_detail_response_data import FeatureDetailResponseData from .feature_usage_response_data import FeatureUsageResponseData +from .plan_controlled_by_type import PlanControlledByType from .plan_credit_grant_view import PlanCreditGrantView from .plan_entitlement_response_data import PlanEntitlementResponseData +from .plan_type import PlanType class CompanyPlanDetailResponseData(UniversalBaseModel): audience_type: typing.Optional[str] = None billing_product: typing.Optional[BillingProductDetailResponseData] = None - charge_type: str + charge_type: ChargeType company_can_trial: bool company_count: int compatible_plan_ids: typing.List[str] - controlled_by: str + controlled_by: PlanControlledByType created_at: dt.datetime current: bool custom: bool @@ -32,6 +36,7 @@ class CompanyPlanDetailResponseData(UniversalBaseModel): icon: str id: str included_credit_grants: typing.List[PlanCreditGrantView] + invalid_reason: typing.Optional[CompanyPlanInvalidReason] = None is_custom: bool is_default: bool is_free: bool @@ -39,7 +44,7 @@ class CompanyPlanDetailResponseData(UniversalBaseModel): monthly_price: typing.Optional[BillingPriceResponseData] = None name: str one_time_price: typing.Optional[BillingPriceResponseData] = None - plan_type: str + plan_type: PlanType trial_days: typing.Optional[int] = None updated_at: dt.datetime usage_violations: typing.List[FeatureUsageResponseData] diff --git a/src/schematic/types/company_plan_invalid_reason.py b/src/schematic/types/company_plan_invalid_reason.py new file mode 100644 index 0000000..e7a008a --- /dev/null +++ b/src/schematic/types/company_plan_invalid_reason.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +CompanyPlanInvalidReason = typing.Union[typing.Literal["downgrade_not_permitted", "feature_usage_exceeded"], typing.Any] diff --git a/src/schematic/types/company_plan_with_billing_sub_view.py b/src/schematic/types/company_plan_with_billing_sub_view.py index 4caf6aa..dafcf34 100644 --- a/src/schematic/types/company_plan_with_billing_sub_view.py +++ b/src/schematic/types/company_plan_with_billing_sub_view.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .plan_credit_grant_view import PlanCreditGrantView class CompanyPlanWithBillingSubView(UniversalBaseModel): @@ -14,6 +15,7 @@ class CompanyPlanWithBillingSubView(UniversalBaseModel): description: typing.Optional[str] = None id: str image_url: typing.Optional[str] = None + included_credit_grants: typing.List[PlanCreditGrantView] name: str plan_period: typing.Optional[str] = None plan_price: typing.Optional[int] = None diff --git a/src/schematic/types/component_display_settings.py b/src/schematic/types/component_display_settings.py new file mode 100644 index 0000000..5f7f221 --- /dev/null +++ b/src/schematic/types/component_display_settings.py @@ -0,0 +1,22 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel + + +class ComponentDisplaySettings(UniversalBaseModel): + show_as_monthly_prices: bool + show_credits: bool + show_period_toggle: bool + show_zero_price_as_free: bool + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/component_entity_type.py b/src/schematic/types/component_entity_type.py new file mode 100644 index 0000000..7e44ddc --- /dev/null +++ b/src/schematic/types/component_entity_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +ComponentEntityType = typing.Union[typing.Literal["billing", "entitlement"], typing.Any] diff --git a/src/schematic/types/component_hydrate_response_data.py b/src/schematic/types/component_hydrate_response_data.py index 8b01344..69d666f 100644 --- a/src/schematic/types/component_hydrate_response_data.py +++ b/src/schematic/types/component_hydrate_response_data.py @@ -11,6 +11,7 @@ from .compatible_plans import CompatiblePlans from .component_capabilities import ComponentCapabilities from .component_checkout_settings import ComponentCheckoutSettings +from .component_display_settings import ComponentDisplaySettings from .component_response_data import ComponentResponseData from .credit_company_grant_view import CreditCompanyGrantView from .feature_usage_detail_response_data import FeatureUsageDetailResponseData @@ -32,8 +33,13 @@ class ComponentHydrateResponseData(UniversalBaseModel): credit_bundles: typing.List[BillingCreditBundleView] credit_grants: typing.List[CreditCompanyGrantView] default_plan: typing.Optional[PlanDetailResponseData] = None + display_settings: ComponentDisplaySettings feature_usage: typing.Optional[FeatureUsageDetailResponseData] = None post_trial_plan: typing.Optional[PlanDetailResponseData] = None + prevent_self_service_downgrade: bool + prevent_self_service_downgrade_button_text: typing.Optional[str] = None + prevent_self_service_downgrade_url: typing.Optional[str] = None + show_as_monthly_prices: bool show_credits: bool show_period_toggle: bool show_zero_price_as_free: bool diff --git a/src/schematic/types/component_preview_response_data.py b/src/schematic/types/component_preview_response_data.py index 7e7bbed..2b84ee4 100644 --- a/src/schematic/types/component_preview_response_data.py +++ b/src/schematic/types/component_preview_response_data.py @@ -11,6 +11,7 @@ from .compatible_plans import CompatiblePlans from .component_capabilities import ComponentCapabilities from .component_checkout_settings import ComponentCheckoutSettings +from .component_display_settings import ComponentDisplaySettings from .component_response_data import ComponentResponseData from .credit_company_grant_view import CreditCompanyGrantView from .feature_usage_detail_response_data import FeatureUsageDetailResponseData @@ -32,9 +33,14 @@ class ComponentPreviewResponseData(UniversalBaseModel): credit_bundles: typing.List[BillingCreditBundleView] credit_grants: typing.List[CreditCompanyGrantView] default_plan: typing.Optional[PlanDetailResponseData] = None + display_settings: ComponentDisplaySettings feature_usage: typing.Optional[FeatureUsageDetailResponseData] = None invoices: typing.List[InvoiceResponseData] post_trial_plan: typing.Optional[PlanDetailResponseData] = None + prevent_self_service_downgrade: bool + prevent_self_service_downgrade_button_text: typing.Optional[str] = None + prevent_self_service_downgrade_url: typing.Optional[str] = None + show_as_monthly_prices: bool show_credits: bool show_period_toggle: bool show_zero_price_as_free: bool diff --git a/src/schematic/types/component_response_data.py b/src/schematic/types/component_response_data.py index 91dbcad..deddd0b 100644 --- a/src/schematic/types/component_response_data.py +++ b/src/schematic/types/component_response_data.py @@ -5,6 +5,8 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .component_entity_type import ComponentEntityType +from .component_state import ComponentState class ComponentResponseData(UniversalBaseModel): @@ -12,8 +14,8 @@ class ComponentResponseData(UniversalBaseModel): created_at: dt.datetime id: str name: str - state: str - type: str + state: ComponentState + type: ComponentEntityType updated_at: dt.datetime if IS_PYDANTIC_V2: diff --git a/src/schematic/types/component_settings_response_data.py b/src/schematic/types/component_settings_response_data.py new file mode 100644 index 0000000..1c213cc --- /dev/null +++ b/src/schematic/types/component_settings_response_data.py @@ -0,0 +1,22 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel + + +class ComponentSettingsResponseData(UniversalBaseModel): + show_as_monthly_prices: bool + show_credits: bool + show_period_toggle: bool + show_zero_price_as_free: bool + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/component_state.py b/src/schematic/types/component_state.py new file mode 100644 index 0000000..623f75b --- /dev/null +++ b/src/schematic/types/component_state.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +ComponentState = typing.Union[typing.Literal["draft", "live"], typing.Any] diff --git a/src/schematic/types/create_entitlement_req_common.py b/src/schematic/types/create_entitlement_req_common.py index 6dddb10..c9720cc 100644 --- a/src/schematic/types/create_entitlement_req_common.py +++ b/src/schematic/types/create_entitlement_req_common.py @@ -6,7 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .create_entitlement_req_common_metric_period import CreateEntitlementReqCommonMetricPeriod from .create_entitlement_req_common_metric_period_month_reset import CreateEntitlementReqCommonMetricPeriodMonthReset -from .create_entitlement_req_common_value_type import CreateEntitlementReqCommonValueType +from .entitlement_value_type import EntitlementValueType class CreateEntitlementReqCommon(UniversalBaseModel): @@ -18,7 +18,7 @@ class CreateEntitlementReqCommon(UniversalBaseModel): value_credit_id: typing.Optional[str] = None value_numeric: typing.Optional[int] = None value_trait_id: typing.Optional[str] = None - value_type: CreateEntitlementReqCommonValueType + value_type: EntitlementValueType if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/create_entitlement_req_common_value_type.py b/src/schematic/types/create_entitlement_req_common_value_type.py deleted file mode 100644 index 4829ab0..0000000 --- a/src/schematic/types/create_entitlement_req_common_value_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateEntitlementReqCommonValueType = typing.Union[ - typing.Literal["boolean", "credit", "numeric", "trait", "unlimited"], typing.Any -] diff --git a/src/schematic/types/create_event_request_body.py b/src/schematic/types/create_event_request_body.py index a8d7020..94248f7 100644 --- a/src/schematic/types/create_event_request_body.py +++ b/src/schematic/types/create_event_request_body.py @@ -5,17 +5,13 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .create_event_request_body_event_type import CreateEventRequestBodyEventType from .event_body import EventBody +from .event_type import EventType class CreateEventRequestBody(UniversalBaseModel): body: typing.Optional[EventBody] = None - event_type: CreateEventRequestBodyEventType = pydantic.Field() - """ - Either 'identify' or 'track' - """ - + event_type: EventType sent_at: typing.Optional[dt.datetime] = pydantic.Field(default=None) """ Optionally provide a timestamp at which the event was sent to Schematic diff --git a/src/schematic/types/create_event_request_body_event_type.py b/src/schematic/types/create_event_request_body_event_type.py deleted file mode 100644 index b7ba268..0000000 --- a/src/schematic/types/create_event_request_body_event_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateEventRequestBodyEventType = typing.Union[typing.Literal["identify", "track", "flag_check"], typing.Any] diff --git a/src/schematic/types/create_flag_request_body.py b/src/schematic/types/create_flag_request_body.py index 4863bda..e16f1d5 100644 --- a/src/schematic/types/create_flag_request_body.py +++ b/src/schematic/types/create_flag_request_body.py @@ -4,13 +4,14 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .flag_type import FlagType class CreateFlagRequestBody(UniversalBaseModel): default_value: bool description: str feature_id: typing.Optional[str] = None - flag_type: typing.Literal["boolean"] = "boolean" + flag_type: FlagType = "boolean" key: str maintainer_id: typing.Optional[str] = None name: str diff --git a/src/schematic/types/create_or_update_flag_request_body.py b/src/schematic/types/create_or_update_flag_request_body.py index c4bad9d..e7e40eb 100644 --- a/src/schematic/types/create_or_update_flag_request_body.py +++ b/src/schematic/types/create_or_update_flag_request_body.py @@ -4,13 +4,14 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .flag_type import FlagType class CreateOrUpdateFlagRequestBody(UniversalBaseModel): default_value: bool description: str feature_id: typing.Optional[str] = None - flag_type: typing.Literal["boolean"] = "boolean" + flag_type: FlagType = "boolean" id: typing.Optional[str] = None key: str maintainer_id: typing.Optional[str] = None diff --git a/src/schematic/types/credit_auto_topup_amount_type.py b/src/schematic/types/credit_auto_topup_amount_type.py new file mode 100644 index 0000000..bc8a202 --- /dev/null +++ b/src/schematic/types/credit_auto_topup_amount_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +CreditAutoTopupAmountType = typing.Literal["credit"] diff --git a/src/schematic/types/credit_company_grant_view.py b/src/schematic/types/credit_company_grant_view.py index d4d971b..7ec474c 100644 --- a/src/schematic/types/credit_company_grant_view.py +++ b/src/schematic/types/credit_company_grant_view.py @@ -5,6 +5,10 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_expiry_type import BillingCreditExpiryType +from .billing_credit_expiry_unit import BillingCreditExpiryUnit +from .billing_credit_grant_reason import BillingCreditGrantReason +from .billing_credit_grant_zeroed_out_reason import BillingCreditGrantZeroedOutReason from .billing_product_price_response_data import BillingProductPriceResponseData @@ -17,11 +21,12 @@ class CreditCompanyGrantView(UniversalBaseModel): credit_description: str credit_icon: typing.Optional[str] = None credit_name: str + exhausted_at: typing.Optional[dt.datetime] = None expires_at: typing.Optional[dt.datetime] = None - expiry_type: typing.Optional[str] = None - expiry_unit: typing.Optional[str] = None + expiry_type: typing.Optional[BillingCreditExpiryType] = None + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = None expiry_unit_count: typing.Optional[int] = None - grant_reason: str + grant_reason: BillingCreditGrantReason id: str plan_id: typing.Optional[str] = None plan_name: typing.Optional[str] = None @@ -35,7 +40,7 @@ class CreditCompanyGrantView(UniversalBaseModel): updated_at: dt.datetime valid_from: typing.Optional[dt.datetime] = None zeroed_out_date: typing.Optional[dt.datetime] = None - zeroed_out_reason: typing.Optional[str] = None + zeroed_out_reason: typing.Optional[BillingCreditGrantZeroedOutReason] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/credit_grant_detail.py b/src/schematic/types/credit_grant_detail.py index 385631b..ed981e4 100644 --- a/src/schematic/types/credit_grant_detail.py +++ b/src/schematic/types/credit_grant_detail.py @@ -5,13 +5,13 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .credit_grant_detail_grant_reason import CreditGrantDetailGrantReason +from .billing_credit_grant_reason import BillingCreditGrantReason class CreditGrantDetail(UniversalBaseModel): credit_type_icon: typing.Optional[str] = None expires_at: typing.Optional[dt.datetime] = None - grant_reason: CreditGrantDetailGrantReason + grant_reason: BillingCreditGrantReason quantity: float if IS_PYDANTIC_V2: diff --git a/src/schematic/types/credit_grant_detail_grant_reason.py b/src/schematic/types/credit_grant_detail_grant_reason.py deleted file mode 100644 index ec000f7..0000000 --- a/src/schematic/types/credit_grant_detail_grant_reason.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreditGrantDetailGrantReason = typing.Union[typing.Literal["free", "plan", "purchased"], typing.Any] diff --git a/src/schematic/types/credit_grant_expiry_request_body.py b/src/schematic/types/credit_grant_expiry_request_body.py index beabf67..231d240 100644 --- a/src/schematic/types/credit_grant_expiry_request_body.py +++ b/src/schematic/types/credit_grant_expiry_request_body.py @@ -4,20 +4,20 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .credit_grant_expiry_request_body_expiry_type import CreditGrantExpiryRequestBodyExpiryType -from .credit_grant_expiry_request_body_expiry_unit import CreditGrantExpiryRequestBodyExpiryUnit -from .credit_grant_expiry_request_body_reset_cadence import CreditGrantExpiryRequestBodyResetCadence -from .credit_grant_expiry_request_body_reset_start import CreditGrantExpiryRequestBodyResetStart -from .credit_grant_expiry_request_body_reset_type import CreditGrantExpiryRequestBodyResetType +from .billing_credit_expiry_type import BillingCreditExpiryType +from .billing_credit_expiry_unit import BillingCreditExpiryUnit +from .billing_plan_credit_grant_reset_cadence import BillingPlanCreditGrantResetCadence +from .billing_plan_credit_grant_reset_start import BillingPlanCreditGrantResetStart +from .billing_plan_credit_grant_reset_type import BillingPlanCreditGrantResetType class CreditGrantExpiryRequestBody(UniversalBaseModel): - expiry_type: typing.Optional[CreditGrantExpiryRequestBodyExpiryType] = None - expiry_unit: typing.Optional[CreditGrantExpiryRequestBodyExpiryUnit] = None + expiry_type: typing.Optional[BillingCreditExpiryType] = None + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = None expiry_unit_count: typing.Optional[int] = None - reset_cadence: CreditGrantExpiryRequestBodyResetCadence - reset_start: CreditGrantExpiryRequestBodyResetStart - reset_type: typing.Optional[CreditGrantExpiryRequestBodyResetType] = None + reset_cadence: BillingPlanCreditGrantResetCadence + reset_start: BillingPlanCreditGrantResetStart + reset_type: typing.Optional[BillingPlanCreditGrantResetType] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/credit_grant_expiry_request_body_expiry_type.py b/src/schematic/types/credit_grant_expiry_request_body_expiry_type.py deleted file mode 100644 index eff235a..0000000 --- a/src/schematic/types/credit_grant_expiry_request_body_expiry_type.py +++ /dev/null @@ -1,8 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreditGrantExpiryRequestBodyExpiryType = typing.Union[ - typing.Literal["duration", "no_expiry", "end_of_trial", "end_of_billing_period", "end_of_next_billing_period"], - typing.Any, -] diff --git a/src/schematic/types/credit_grant_expiry_request_body_expiry_unit.py b/src/schematic/types/credit_grant_expiry_request_body_expiry_unit.py deleted file mode 100644 index d14f22b..0000000 --- a/src/schematic/types/credit_grant_expiry_request_body_expiry_unit.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreditGrantExpiryRequestBodyExpiryUnit = typing.Union[typing.Literal["days", "billing_periods"], typing.Any] diff --git a/src/schematic/types/credit_grant_expiry_request_body_reset_cadence.py b/src/schematic/types/credit_grant_expiry_request_body_reset_cadence.py deleted file mode 100644 index 8678e02..0000000 --- a/src/schematic/types/credit_grant_expiry_request_body_reset_cadence.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreditGrantExpiryRequestBodyResetCadence = typing.Union[ - typing.Literal["monthly", "yearly", "daily", "weekly"], typing.Any -] diff --git a/src/schematic/types/credit_grant_expiry_request_body_reset_start.py b/src/schematic/types/credit_grant_expiry_request_body_reset_start.py deleted file mode 100644 index 35ab912..0000000 --- a/src/schematic/types/credit_grant_expiry_request_body_reset_start.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreditGrantExpiryRequestBodyResetStart = typing.Union[typing.Literal["billing_period", "first_of_month"], typing.Any] diff --git a/src/schematic/types/credit_grant_expiry_request_body_reset_type.py b/src/schematic/types/credit_grant_expiry_request_body_reset_type.py deleted file mode 100644 index fa4388e..0000000 --- a/src/schematic/types/credit_grant_expiry_request_body_reset_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreditGrantExpiryRequestBodyResetType = typing.Union[typing.Literal["plan_period", "no_reset"], typing.Any] diff --git a/src/schematic/credits/types/list_company_grants_request_order.py b/src/schematic/types/credit_grant_sort_order.py similarity index 79% rename from src/schematic/credits/types/list_company_grants_request_order.py rename to src/schematic/types/credit_grant_sort_order.py index aea9313..74b2a0d 100644 --- a/src/schematic/credits/types/list_company_grants_request_order.py +++ b/src/schematic/types/credit_grant_sort_order.py @@ -2,6 +2,6 @@ import typing -ListCompanyGrantsRequestOrder = typing.Union[ +CreditGrantSortOrder = typing.Union[ typing.Literal["created_at", "expires_at", "quantity", "quantity_remaining"], typing.Any ] diff --git a/src/schematic/types/credit_ledger_enriched_entry_response_data.py b/src/schematic/types/credit_ledger_enriched_entry_response_data.py index bb78461..8565028 100644 --- a/src/schematic/types/credit_ledger_enriched_entry_response_data.py +++ b/src/schematic/types/credit_ledger_enriched_entry_response_data.py @@ -11,6 +11,7 @@ class CreditLedgerEnrichedEntryResponseData(UniversalBaseModel): + billing_credit_auto_topup_grant_count: int billing_credit_id: str company: typing.Optional[CompanyLedgerResponseData] = None company_id: str diff --git a/src/schematic/types/credit_ledger_period.py b/src/schematic/types/credit_ledger_period.py new file mode 100644 index 0000000..ee8e454 --- /dev/null +++ b/src/schematic/types/credit_ledger_period.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +CreditLedgerPeriod = typing.Union[typing.Literal["daily", "monthly", "raw", "weekly"], typing.Any] diff --git a/src/schematic/types/data_export_output_file_type.py b/src/schematic/types/data_export_output_file_type.py new file mode 100644 index 0000000..b1fa266 --- /dev/null +++ b/src/schematic/types/data_export_output_file_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DataExportOutputFileType = typing.Literal["csv"] diff --git a/src/schematic/types/data_export_response_data.py b/src/schematic/types/data_export_response_data.py index 947792a..9974bd1 100644 --- a/src/schematic/types/data_export_response_data.py +++ b/src/schematic/types/data_export_response_data.py @@ -5,17 +5,20 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .data_export_output_file_type import DataExportOutputFileType +from .data_export_status import DataExportStatus +from .data_export_type import DataExportType class DataExportResponseData(UniversalBaseModel): account_id: str created_at: dt.datetime environment_id: str - export_type: str + export_type: DataExportType = "company-feature-usage" id: str metadata: str - output_file_type: str - status: str + output_file_type: DataExportOutputFileType = "csv" + status: DataExportStatus updated_at: dt.datetime if IS_PYDANTIC_V2: diff --git a/src/schematic/types/data_export_status.py b/src/schematic/types/data_export_status.py new file mode 100644 index 0000000..76f41df --- /dev/null +++ b/src/schematic/types/data_export_status.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DataExportStatus = typing.Union[typing.Literal["failure", "pending", "success"], typing.Any] diff --git a/src/schematic/types/data_export_type.py b/src/schematic/types/data_export_type.py new file mode 100644 index 0000000..0a2408a --- /dev/null +++ b/src/schematic/types/data_export_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +DataExportType = typing.Literal["company-feature-usage"] diff --git a/src/schematic/types/duplicate_plan_entitlements_response_response_data.py b/src/schematic/types/duplicate_plan_entitlements_response_response_data.py new file mode 100644 index 0000000..5690c0a --- /dev/null +++ b/src/schematic/types/duplicate_plan_entitlements_response_response_data.py @@ -0,0 +1,22 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .plan_entitlement_response_data import PlanEntitlementResponseData +from .skipped_entitlement_response_data import SkippedEntitlementResponseData + + +class DuplicatePlanEntitlementsResponseResponseData(UniversalBaseModel): + data: typing.List[PlanEntitlementResponseData] + skipped: typing.List[SkippedEntitlementResponseData] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/entitlement_price_behavior.py b/src/schematic/types/entitlement_price_behavior.py new file mode 100644 index 0000000..66d960f --- /dev/null +++ b/src/schematic/types/entitlement_price_behavior.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +EntitlementPriceBehavior = typing.Union[ + typing.Literal["credit_burndown", "overage", "pay_as_you_go", "pay_in_advance", "tier"], typing.Any +] diff --git a/src/schematic/types/entitlement_type.py b/src/schematic/types/entitlement_type.py new file mode 100644 index 0000000..6dba857 --- /dev/null +++ b/src/schematic/types/entitlement_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +EntitlementType = typing.Union[typing.Literal["company_override", "plan_entitlement", "unknown"], typing.Any] diff --git a/src/schematic/types/entitlement_value_type.py b/src/schematic/types/entitlement_value_type.py new file mode 100644 index 0000000..2193301 --- /dev/null +++ b/src/schematic/types/entitlement_value_type.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +EntitlementValueType = typing.Union[ + typing.Literal["boolean", "credit", "numeric", "trait", "unknown", "unlimited"], typing.Any +] diff --git a/src/schematic/types/entity_key_definition_response_data.py b/src/schematic/types/entity_key_definition_response_data.py index edd84fe..0d38068 100644 --- a/src/schematic/types/entity_key_definition_response_data.py +++ b/src/schematic/types/entity_key_definition_response_data.py @@ -5,11 +5,12 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .entity_type import EntityType class EntityKeyDefinitionResponseData(UniversalBaseModel): created_at: dt.datetime - entity_type: str + entity_type: EntityType id: str key: str updated_at: dt.datetime diff --git a/src/schematic/types/entity_key_detail_response_data.py b/src/schematic/types/entity_key_detail_response_data.py index 9d633f5..f1c5897 100644 --- a/src/schematic/types/entity_key_detail_response_data.py +++ b/src/schematic/types/entity_key_detail_response_data.py @@ -6,6 +6,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .entity_key_definition_response_data import EntityKeyDefinitionResponseData +from .entity_type import EntityType class EntityKeyDetailResponseData(UniversalBaseModel): @@ -13,7 +14,7 @@ class EntityKeyDetailResponseData(UniversalBaseModel): definition: typing.Optional[EntityKeyDefinitionResponseData] = None definition_id: str entity_id: str - entity_type: str + entity_type: EntityType environment_id: str id: str key: str diff --git a/src/schematic/types/entity_key_response_data.py b/src/schematic/types/entity_key_response_data.py index 52361c7..1b54e11 100644 --- a/src/schematic/types/entity_key_response_data.py +++ b/src/schematic/types/entity_key_response_data.py @@ -5,13 +5,14 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .entity_type import EntityType class EntityKeyResponseData(UniversalBaseModel): created_at: dt.datetime definition_id: str entity_id: str - entity_type: str + entity_type: EntityType environment_id: str id: str key: str diff --git a/src/schematic/types/entity_trait_definition_response_data.py b/src/schematic/types/entity_trait_definition_response_data.py index 61b35d9..e2de762 100644 --- a/src/schematic/types/entity_trait_definition_response_data.py +++ b/src/schematic/types/entity_trait_definition_response_data.py @@ -5,15 +5,17 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .entity_type import EntityType +from .trait_type import TraitType class EntityTraitDefinitionResponseData(UniversalBaseModel): created_at: dt.datetime display_name: str - entity_type: str + entity_type: EntityType hierarchy: typing.List[str] id: str - trait_type: str + trait_type: TraitType updated_at: dt.datetime if IS_PYDANTIC_V2: diff --git a/src/schematic/types/entity_type.py b/src/schematic/types/entity_type.py new file mode 100644 index 0000000..5c2a8ed --- /dev/null +++ b/src/schematic/types/entity_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +EntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/types/environment_detail_response_data.py b/src/schematic/types/environment_detail_response_data.py index c5f19dc..93f9b92 100644 --- a/src/schematic/types/environment_detail_response_data.py +++ b/src/schematic/types/environment_detail_response_data.py @@ -6,12 +6,13 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .api_key_response_data import ApiKeyResponseData +from .environment_type import EnvironmentType class EnvironmentDetailResponseData(UniversalBaseModel): api_keys: typing.List[ApiKeyResponseData] created_at: dt.datetime - environment_type: str + environment_type: EnvironmentType id: str name: str updated_at: dt.datetime diff --git a/src/schematic/types/environment_response_data.py b/src/schematic/types/environment_response_data.py index 395a1d7..060ae79 100644 --- a/src/schematic/types/environment_response_data.py +++ b/src/schematic/types/environment_response_data.py @@ -5,11 +5,12 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .environment_type import EnvironmentType class EnvironmentResponseData(UniversalBaseModel): created_at: dt.datetime - environment_type: str + environment_type: EnvironmentType id: str name: str updated_at: dt.datetime diff --git a/src/schematic/types/environment_type.py b/src/schematic/types/environment_type.py new file mode 100644 index 0000000..ef6ac0e --- /dev/null +++ b/src/schematic/types/environment_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +EnvironmentType = typing.Union[typing.Literal["development", "production", "staging"], typing.Any] diff --git a/src/schematic/types/event_detail_response_data.py b/src/schematic/types/event_detail_response_data.py index 9b70eab..8d17d00 100644 --- a/src/schematic/types/event_detail_response_data.py +++ b/src/schematic/types/event_detail_response_data.py @@ -5,6 +5,8 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .event_status import EventStatus +from .event_type import EventType from .preview_object import PreviewObject @@ -25,9 +27,9 @@ class EventDetailResponseData(UniversalBaseModel): processed_at: typing.Optional[dt.datetime] = None quantity: int sent_at: typing.Optional[dt.datetime] = None - status: str + status: EventStatus subtype: typing.Optional[str] = None - type: str + type: EventType updated_at: dt.datetime user: typing.Optional[PreviewObject] = None user_id: typing.Optional[str] = None diff --git a/src/schematic/types/event_response_data.py b/src/schematic/types/event_response_data.py index 1bd4f67..1acb4c2 100644 --- a/src/schematic/types/event_response_data.py +++ b/src/schematic/types/event_response_data.py @@ -5,6 +5,8 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .event_status import EventStatus +from .event_type import EventType class EventResponseData(UniversalBaseModel): @@ -22,9 +24,9 @@ class EventResponseData(UniversalBaseModel): processed_at: typing.Optional[dt.datetime] = None quantity: int sent_at: typing.Optional[dt.datetime] = None - status: str + status: EventStatus subtype: typing.Optional[str] = None - type: str + type: EventType updated_at: dt.datetime user_id: typing.Optional[str] = None diff --git a/src/schematic/types/event_status.py b/src/schematic/types/event_status.py new file mode 100644 index 0000000..77da28c --- /dev/null +++ b/src/schematic/types/event_status.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +EventStatus = typing.Union[typing.Literal["enriched", "failed", "pending", "processed", "unknown"], typing.Any] diff --git a/src/schematic/types/event_type.py b/src/schematic/types/event_type.py new file mode 100644 index 0000000..f82e7b1 --- /dev/null +++ b/src/schematic/types/event_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +EventType = typing.Union[typing.Literal["flag_check", "identify", "track"], typing.Any] diff --git a/src/schematic/types/feature_company_response_data.py b/src/schematic/types/feature_company_response_data.py index b0056bc..03be715 100644 --- a/src/schematic/types/feature_company_response_data.py +++ b/src/schematic/types/feature_company_response_data.py @@ -5,13 +5,15 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_grant_reason import BillingCreditGrantReason from .billing_price_view import BillingPriceView from .company_detail_response_data import CompanyDetailResponseData from .company_override_response_data import CompanyOverrideResponseData from .credit_grant_detail import CreditGrantDetail from .credit_usage import CreditUsage -from .feature_company_response_data_allocation_type import FeatureCompanyResponseDataAllocationType -from .feature_company_response_data_credit_grant_reason import FeatureCompanyResponseDataCreditGrantReason +from .entitlement_price_behavior import EntitlementPriceBehavior +from .entitlement_type import EntitlementType +from .entitlement_value_type import EntitlementValueType from .feature_detail_response_data import FeatureDetailResponseData from .plan_entitlement_response_data import PlanEntitlementResponseData from .plan_response_data import PlanResponseData @@ -28,11 +30,7 @@ class FeatureCompanyResponseData(UniversalBaseModel): The maximum amount of usage that is permitted; a null value indicates that unlimited usage is permitted. """ - allocation_type: FeatureCompanyResponseDataAllocationType = pydantic.Field() - """ - The type of allocation that is being used. - """ - + allocation_type: EntitlementValueType company: typing.Optional[CompanyDetailResponseData] = None company_override: typing.Optional[CompanyOverrideResponseData] = None credit_consumption_rate: typing.Optional[float] = pydantic.Field(default=None) @@ -42,11 +40,7 @@ class FeatureCompanyResponseData(UniversalBaseModel): credit_grant_counts: typing.Optional[typing.Dict[str, float]] = None credit_grant_details: typing.Optional[typing.List[CreditGrantDetail]] = None - credit_grant_reason: typing.Optional[FeatureCompanyResponseDataCreditGrantReason] = pydantic.Field(default=None) - """ - Reason for the credit grant - """ - + credit_grant_reason: typing.Optional[BillingCreditGrantReason] = None credit_remaining: typing.Optional[float] = None credit_total: typing.Optional[float] = None credit_type_icon: typing.Optional[str] = pydantic.Field(default=None) @@ -73,7 +67,7 @@ class FeatureCompanyResponseData(UniversalBaseModel): Source of the entitlement (plan or company_override) """ - entitlement_type: str + entitlement_type: EntitlementType feature: typing.Optional[FeatureDetailResponseData] = None has_valid_allocation: typing.Optional[bool] = pydantic.Field(default=None) """ @@ -113,7 +107,7 @@ class FeatureCompanyResponseData(UniversalBaseModel): plan: typing.Optional[PlanResponseData] = None plan_entitlement: typing.Optional[PlanEntitlementResponseData] = None - price_behavior: typing.Optional[str] = None + price_behavior: typing.Optional[EntitlementPriceBehavior] = None soft_limit: typing.Optional[int] = pydantic.Field(default=None) """ The soft limit for the feature usage. Available only for overage price behavior diff --git a/src/schematic/types/feature_company_response_data_allocation_type.py b/src/schematic/types/feature_company_response_data_allocation_type.py deleted file mode 100644 index 68b803b..0000000 --- a/src/schematic/types/feature_company_response_data_allocation_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -FeatureCompanyResponseDataAllocationType = typing.Union[ - typing.Literal["boolean", "numeric", "trait", "unlimited"], typing.Any -] diff --git a/src/schematic/types/feature_company_response_data_credit_grant_reason.py b/src/schematic/types/feature_company_response_data_credit_grant_reason.py deleted file mode 100644 index 7ff7fe8..0000000 --- a/src/schematic/types/feature_company_response_data_credit_grant_reason.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -FeatureCompanyResponseDataCreditGrantReason = typing.Union[typing.Literal["free", "plan", "purchased"], typing.Any] diff --git a/src/schematic/types/feature_company_user_response_data.py b/src/schematic/types/feature_company_user_response_data.py index e1dc7d6..5bf9977 100644 --- a/src/schematic/types/feature_company_user_response_data.py +++ b/src/schematic/types/feature_company_user_response_data.py @@ -6,7 +6,8 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .company_detail_response_data import CompanyDetailResponseData -from .feature_company_user_response_data_allocation_type import FeatureCompanyUserResponseDataAllocationType +from .entitlement_type import EntitlementType +from .entitlement_value_type import EntitlementValueType from .feature_detail_response_data import FeatureDetailResponseData from .plan_response_data import PlanResponseData from .user_response_data import UserResponseData @@ -23,14 +24,10 @@ class FeatureCompanyUserResponseData(UniversalBaseModel): The maximum amount of usage that is permitted; a null value indicates that unlimited usage is permitted. """ - allocation_type: FeatureCompanyUserResponseDataAllocationType = pydantic.Field() - """ - The type of allocation that is being used. - """ - + allocation_type: EntitlementValueType company: typing.Optional[CompanyDetailResponseData] = None entitlement_id: str - entitlement_type: str + entitlement_type: EntitlementType feature: typing.Optional[FeatureDetailResponseData] = None metric_reset_at: typing.Optional[dt.datetime] = pydantic.Field(default=None) """ diff --git a/src/schematic/types/feature_company_user_response_data_allocation_type.py b/src/schematic/types/feature_company_user_response_data_allocation_type.py deleted file mode 100644 index 649ed5f..0000000 --- a/src/schematic/types/feature_company_user_response_data_allocation_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -FeatureCompanyUserResponseDataAllocationType = typing.Union[ - typing.Literal["boolean", "numeric", "trait", "unlimited", "unknown"], typing.Any -] diff --git a/src/schematic/types/feature_detail_response_data.py b/src/schematic/types/feature_detail_response_data.py index 12d3501..8cc1e22 100644 --- a/src/schematic/types/feature_detail_response_data.py +++ b/src/schematic/types/feature_detail_response_data.py @@ -7,6 +7,8 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .entity_trait_definition_response_data import EntityTraitDefinitionResponseData from .event_summary_response_data import EventSummaryResponseData +from .feature_lifecycle_phase import FeatureLifecyclePhase +from .feature_type import FeatureType from .flag_detail_response_data import FlagDetailResponseData from .preview_object import PreviewObject @@ -16,11 +18,11 @@ class FeatureDetailResponseData(UniversalBaseModel): description: str event_subtype: typing.Optional[str] = None event_summary: typing.Optional[EventSummaryResponseData] = None - feature_type: str + feature_type: FeatureType flags: typing.List[FlagDetailResponseData] icon: str id: str - lifecycle_phase: typing.Optional[str] = None + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = None maintainer_id: typing.Optional[str] = None name: str plans: typing.List[PreviewObject] diff --git a/src/schematic/features/types/update_feature_request_body_lifecycle_phase.py b/src/schematic/types/feature_lifecycle_phase.py similarity index 59% rename from src/schematic/features/types/update_feature_request_body_lifecycle_phase.py rename to src/schematic/types/feature_lifecycle_phase.py index 2c56e00..c641b8b 100644 --- a/src/schematic/features/types/update_feature_request_body_lifecycle_phase.py +++ b/src/schematic/types/feature_lifecycle_phase.py @@ -2,7 +2,7 @@ import typing -UpdateFeatureRequestBodyLifecyclePhase = typing.Union[ - typing.Literal["add_on", "alpha", "beta", "deprecated", "ga", "in_plan", "inactive", "internal_testing", "legacy"], +FeatureLifecyclePhase = typing.Union[ + typing.Literal["add_on", "alpha", "beta", "deprecated", "ga", "inactive", "in_plan", "internal_testing", "legacy"], typing.Any, ] diff --git a/src/schematic/types/feature_response_data.py b/src/schematic/types/feature_response_data.py index c2fac97..cb4f330 100644 --- a/src/schematic/types/feature_response_data.py +++ b/src/schematic/types/feature_response_data.py @@ -5,16 +5,18 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .feature_lifecycle_phase import FeatureLifecyclePhase +from .feature_type import FeatureType class FeatureResponseData(UniversalBaseModel): created_at: dt.datetime description: str event_subtype: typing.Optional[str] = None - feature_type: str + feature_type: FeatureType icon: str id: str - lifecycle_phase: typing.Optional[str] = None + lifecycle_phase: typing.Optional[FeatureLifecyclePhase] = None maintainer_id: typing.Optional[str] = None name: str plural_name: typing.Optional[str] = None diff --git a/src/schematic/types/feature_type.py b/src/schematic/types/feature_type.py new file mode 100644 index 0000000..e5a9360 --- /dev/null +++ b/src/schematic/types/feature_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +FeatureType = typing.Union[typing.Literal["boolean", "event", "trait"], typing.Any] diff --git a/src/schematic/types/feature_usage_data_response_data.py b/src/schematic/types/feature_usage_data_response_data.py index befa8b3..f040a5f 100644 --- a/src/schematic/types/feature_usage_data_response_data.py +++ b/src/schematic/types/feature_usage_data_response_data.py @@ -7,6 +7,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .billing_price_view import BillingPriceView from .credit_usage_response_data import CreditUsageResponseData +from .feature_type import FeatureType class FeatureUsageDataResponseData(UniversalBaseModel): @@ -16,7 +17,7 @@ class FeatureUsageDataResponseData(UniversalBaseModel): entitlement_value_type: str feature_id: str feature_name: str - feature_type: str + feature_type: FeatureType hard_limit: str has_access: bool metric_reset_at: typing.Optional[dt.datetime] = None diff --git a/src/schematic/types/feature_usage_response_data.py b/src/schematic/types/feature_usage_response_data.py index 5bd7f65..a05931b 100644 --- a/src/schematic/types/feature_usage_response_data.py +++ b/src/schematic/types/feature_usage_response_data.py @@ -5,12 +5,14 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_grant_reason import BillingCreditGrantReason from .billing_price_view import BillingPriceView from .company_override_response_data import CompanyOverrideResponseData from .credit_grant_detail import CreditGrantDetail +from .entitlement_price_behavior import EntitlementPriceBehavior +from .entitlement_type import EntitlementType +from .entitlement_value_type import EntitlementValueType from .feature_detail_response_data import FeatureDetailResponseData -from .feature_usage_response_data_allocation_type import FeatureUsageResponseDataAllocationType -from .feature_usage_response_data_credit_grant_reason import FeatureUsageResponseDataCreditGrantReason from .plan_entitlement_response_data import PlanEntitlementResponseData from .plan_response_data import PlanResponseData @@ -26,11 +28,7 @@ class FeatureUsageResponseData(UniversalBaseModel): The maximum amount of usage that is permitted; a null value indicates that unlimited usage is permitted. """ - allocation_type: FeatureUsageResponseDataAllocationType = pydantic.Field() - """ - The type of allocation that is being used. - """ - + allocation_type: EntitlementValueType company_override: typing.Optional[CompanyOverrideResponseData] = None credit_consumption_rate: typing.Optional[float] = pydantic.Field(default=None) """ @@ -39,11 +37,7 @@ class FeatureUsageResponseData(UniversalBaseModel): credit_grant_counts: typing.Optional[typing.Dict[str, float]] = None credit_grant_details: typing.Optional[typing.List[CreditGrantDetail]] = None - credit_grant_reason: typing.Optional[FeatureUsageResponseDataCreditGrantReason] = pydantic.Field(default=None) - """ - Reason for the credit grant - """ - + credit_grant_reason: typing.Optional[BillingCreditGrantReason] = None credit_remaining: typing.Optional[float] = None credit_total: typing.Optional[float] = None credit_type_icon: typing.Optional[str] = pydantic.Field(default=None) @@ -69,7 +63,7 @@ class FeatureUsageResponseData(UniversalBaseModel): Source of the entitlement (plan or company_override) """ - entitlement_type: str + entitlement_type: EntitlementType feature: typing.Optional[FeatureDetailResponseData] = None has_valid_allocation: typing.Optional[bool] = pydantic.Field(default=None) """ @@ -109,7 +103,7 @@ class FeatureUsageResponseData(UniversalBaseModel): plan: typing.Optional[PlanResponseData] = None plan_entitlement: typing.Optional[PlanEntitlementResponseData] = None - price_behavior: typing.Optional[str] = None + price_behavior: typing.Optional[EntitlementPriceBehavior] = None soft_limit: typing.Optional[int] = pydantic.Field(default=None) """ The soft limit for the feature usage. Available only for overage price behavior diff --git a/src/schematic/types/feature_usage_response_data_allocation_type.py b/src/schematic/types/feature_usage_response_data_allocation_type.py deleted file mode 100644 index dbabb1c..0000000 --- a/src/schematic/types/feature_usage_response_data_allocation_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -FeatureUsageResponseDataAllocationType = typing.Union[ - typing.Literal["boolean", "numeric", "trait", "unlimited"], typing.Any -] diff --git a/src/schematic/types/feature_usage_response_data_credit_grant_reason.py b/src/schematic/types/feature_usage_response_data_credit_grant_reason.py deleted file mode 100644 index 9abbc79..0000000 --- a/src/schematic/types/feature_usage_response_data_credit_grant_reason.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -FeatureUsageResponseDataCreditGrantReason = typing.Union[typing.Literal["free", "plan", "purchased"], typing.Any] diff --git a/src/schematic/types/flag_detail_response_data.py b/src/schematic/types/flag_detail_response_data.py index bb88aed..f4e17a7 100644 --- a/src/schematic/types/flag_detail_response_data.py +++ b/src/schematic/types/flag_detail_response_data.py @@ -6,6 +6,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .feature_response_data import FeatureResponseData +from .flag_type import FlagType from .rule_detail_response_data import RuleDetailResponseData @@ -15,7 +16,7 @@ class FlagDetailResponseData(UniversalBaseModel): description: str feature: typing.Optional[FeatureResponseData] = None feature_id: typing.Optional[str] = None - flag_type: str + flag_type: FlagType = "boolean" id: str key: str last_checked_at: typing.Optional[dt.datetime] = None diff --git a/src/schematic/types/flag_response_data.py b/src/schematic/types/flag_response_data.py index 0383fbf..0d20e68 100644 --- a/src/schematic/types/flag_response_data.py +++ b/src/schematic/types/flag_response_data.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .flag_type import FlagType class FlagResponseData(UniversalBaseModel): @@ -12,7 +13,7 @@ class FlagResponseData(UniversalBaseModel): default_value: bool description: str feature_id: typing.Optional[str] = None - flag_type: str + flag_type: FlagType = "boolean" id: str key: str maintainer_id: typing.Optional[str] = None diff --git a/src/schematic/types/flag_type.py b/src/schematic/types/flag_type.py new file mode 100644 index 0000000..b2dbb88 --- /dev/null +++ b/src/schematic/types/flag_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +FlagType = typing.Literal["boolean"] diff --git a/src/schematic/types/issue_temporary_access_token_response_data.py b/src/schematic/types/issue_temporary_access_token_response_data.py index 4b11605..6528928 100644 --- a/src/schematic/types/issue_temporary_access_token_response_data.py +++ b/src/schematic/types/issue_temporary_access_token_response_data.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .temporary_access_token_resource_type import TemporaryAccessTokenResourceType class IssueTemporaryAccessTokenResponseData(UniversalBaseModel): @@ -13,7 +14,7 @@ class IssueTemporaryAccessTokenResponseData(UniversalBaseModel): environment_id: str expired_at: dt.datetime id: str - resource_type: str + resource_type: TemporaryAccessTokenResourceType = "company" token: str updated_at: dt.datetime diff --git a/src/schematic/types/manage_plan_request.py b/src/schematic/types/manage_plan_request.py index 109da6f..d33dc09 100644 --- a/src/schematic/types/manage_plan_request.py +++ b/src/schematic/types/manage_plan_request.py @@ -1,5 +1,6 @@ # This file was auto-generated by Fern from our API Definition. +import datetime as dt import typing import pydantic @@ -13,12 +14,23 @@ class ManagePlanRequest(UniversalBaseModel): add_on_selections: typing.List[PlanSelection] base_plan_id: typing.Optional[str] = None base_plan_price_id: typing.Optional[str] = None + cancel_immediately: typing.Optional[bool] = pydantic.Field(default=None) + """ + If false, subscription cancels at period end. Only applies when removing all plans. Defaults to true. + """ + company_id: str coupon_external_id: typing.Optional[str] = None credit_bundles: typing.List[UpdateCreditBundleRequestBody] pay_in_advance_entitlements: typing.List[UpdatePayInAdvanceRequestBody] payment_method_external_id: typing.Optional[str] = None promo_code: typing.Optional[str] = None + prorate: typing.Optional[bool] = pydantic.Field(default=None) + """ + If true and cancel_immediately is true, issue prorated credit. Only applies when removing all plans. Defaults to true. + """ + + trial_end: typing.Optional[dt.datetime] = None if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/plan_change_response_data_action.py b/src/schematic/types/plan_change_action.py similarity index 85% rename from src/schematic/types/plan_change_response_data_action.py rename to src/schematic/types/plan_change_action.py index b90cac9..838aaa8 100644 --- a/src/schematic/types/plan_change_response_data_action.py +++ b/src/schematic/types/plan_change_action.py @@ -2,7 +2,7 @@ import typing -PlanChangeResponseDataAction = typing.Union[ +PlanChangeAction = typing.Union[ typing.Literal[ "checkout", "company_upsert", @@ -11,6 +11,7 @@ "migration", "plan_billing_product_changed", "plan_deleted", + "plan_trait_change", "quickstart", "subscription_change", ], diff --git a/src/schematic/types/plan_change_actor_type.py b/src/schematic/types/plan_change_actor_type.py new file mode 100644 index 0000000..60b1b31 --- /dev/null +++ b/src/schematic/types/plan_change_actor_type.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +PlanChangeActorType = typing.Union[ + typing.Literal["api_key", "app_user", "system", "temporary_access_token"], typing.Any +] diff --git a/src/schematic/types/plan_change_base_plan_action.py b/src/schematic/types/plan_change_base_plan_action.py new file mode 100644 index 0000000..8ec955f --- /dev/null +++ b/src/schematic/types/plan_change_base_plan_action.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +PlanChangeBasePlanAction = typing.Union[typing.Literal["fallback", "initial", "trait", "trial_expiry"], typing.Any] diff --git a/src/schematic/types/plan_change_response_data.py b/src/schematic/types/plan_change_response_data.py index 7b0cbb3..b22683a 100644 --- a/src/schematic/types/plan_change_response_data.py +++ b/src/schematic/types/plan_change_response_data.py @@ -8,27 +8,23 @@ from .api_key_request_list_response_data import ApiKeyRequestListResponseData from .api_key_response_data import ApiKeyResponseData from .company_response_data import CompanyResponseData -from .plan_change_response_data_action import PlanChangeResponseDataAction -from .plan_change_response_data_actor_type import PlanChangeResponseDataActorType -from .plan_change_response_data_base_plan_action import PlanChangeResponseDataBasePlanAction -from .plan_change_response_data_subscription_change_action import PlanChangeResponseDataSubscriptionChangeAction +from .plan_change_action import PlanChangeAction +from .plan_change_actor_type import PlanChangeActorType +from .plan_change_base_plan_action import PlanChangeBasePlanAction +from .plan_change_subscription_action import PlanChangeSubscriptionAction from .plan_snapshot_view import PlanSnapshotView from .subscription_trait_update import SubscriptionTraitUpdate class PlanChangeResponseData(UniversalBaseModel): - action: PlanChangeResponseDataAction - actor_type: PlanChangeResponseDataActorType + action: PlanChangeAction + actor_type: PlanChangeActorType add_ons_added: typing.List[PlanSnapshotView] add_ons_removed: typing.List[PlanSnapshotView] api_key: typing.Optional[ApiKeyResponseData] = None api_key_request: typing.Optional[ApiKeyRequestListResponseData] = None base_plan: typing.Optional[PlanSnapshotView] = None - base_plan_action: typing.Optional[PlanChangeResponseDataBasePlanAction] = pydantic.Field(default=None) - """ - Any special behavior that affected the assignment of the base plan during this change. - """ - + base_plan_action: typing.Optional[PlanChangeBasePlanAction] = None company: typing.Optional[CompanyResponseData] = None company_id: str created_at: dt.datetime @@ -36,13 +32,7 @@ class PlanChangeResponseData(UniversalBaseModel): id: str previous_base_plan: typing.Optional[PlanSnapshotView] = None request_id: typing.Optional[str] = None - subscription_change_action: typing.Optional[PlanChangeResponseDataSubscriptionChangeAction] = pydantic.Field( - default=None - ) - """ - If a subscription was changed as a part of this plan change, indicates the type of change that was made. - """ - + subscription_change_action: typing.Optional[PlanChangeSubscriptionAction] = None traits_updated: typing.List[SubscriptionTraitUpdate] = pydantic.Field() """ Any traits were updated as part of this plan change (via pay-in-advance entitlements). diff --git a/src/schematic/types/plan_change_response_data_actor_type.py b/src/schematic/types/plan_change_response_data_actor_type.py deleted file mode 100644 index 0539458..0000000 --- a/src/schematic/types/plan_change_response_data_actor_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -PlanChangeResponseDataActorType = typing.Union[ - typing.Literal["app_user", "api_key", "system", "temporary_access_token"], typing.Any -] diff --git a/src/schematic/types/plan_change_response_data_base_plan_action.py b/src/schematic/types/plan_change_response_data_base_plan_action.py deleted file mode 100644 index 68df41c..0000000 --- a/src/schematic/types/plan_change_response_data_base_plan_action.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -PlanChangeResponseDataBasePlanAction = typing.Union[ - typing.Literal["fallback", "initial", "trait", "trial_expiry"], typing.Any -] diff --git a/src/schematic/types/plan_change_response_data_subscription_change_action.py b/src/schematic/types/plan_change_subscription_action.py similarity index 75% rename from src/schematic/types/plan_change_response_data_subscription_change_action.py rename to src/schematic/types/plan_change_subscription_action.py index 1046419..93376c7 100644 --- a/src/schematic/types/plan_change_response_data_subscription_change_action.py +++ b/src/schematic/types/plan_change_subscription_action.py @@ -2,6 +2,6 @@ import typing -PlanChangeResponseDataSubscriptionChangeAction = typing.Union[ +PlanChangeSubscriptionAction = typing.Union[ typing.Literal["downgrade", "invalid", "subscribe", "unsubscribe", "upgrade", "upgrade_trial"], typing.Any ] diff --git a/src/schematic/types/plan_controlled_by_type.py b/src/schematic/types/plan_controlled_by_type.py new file mode 100644 index 0000000..57c1260 --- /dev/null +++ b/src/schematic/types/plan_controlled_by_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +PlanControlledByType = typing.Union[typing.Literal["schematic", "stripe"], typing.Any] diff --git a/src/schematic/types/plan_credit_grant_view.py b/src/schematic/types/plan_credit_grant_view.py index 83b6014..19b0584 100644 --- a/src/schematic/types/plan_credit_grant_view.py +++ b/src/schematic/types/plan_credit_grant_view.py @@ -5,25 +5,37 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_credit_expiry_type import BillingCreditExpiryType +from .billing_credit_expiry_unit import BillingCreditExpiryUnit +from .billing_plan_credit_grant_reset_cadence import BillingPlanCreditGrantResetCadence +from .billing_plan_credit_grant_reset_start import BillingPlanCreditGrantResetStart +from .billing_plan_credit_grant_reset_type import BillingPlanCreditGrantResetType class PlanCreditGrantView(UniversalBaseModel): + billing_credit_auto_topup_amount: typing.Optional[int] = None + billing_credit_auto_topup_amount_type: typing.Optional[str] = None + billing_credit_auto_topup_enabled: bool + billing_credit_auto_topup_expiry_type: typing.Optional[BillingCreditExpiryType] = None + billing_credit_auto_topup_expiry_unit: typing.Optional[BillingCreditExpiryUnit] = None + billing_credit_auto_topup_expiry_unit_count: typing.Optional[int] = None + billing_credit_auto_topup_threshold_percent: typing.Optional[int] = None created_at: dt.datetime credit_amount: int credit_description: str credit_icon: typing.Optional[str] = None credit_id: str credit_name: str - expiry_type: typing.Optional[str] = None - expiry_unit: typing.Optional[str] = None + expiry_type: typing.Optional[BillingCreditExpiryType] = None + expiry_unit: typing.Optional[BillingCreditExpiryUnit] = None expiry_unit_count: typing.Optional[int] = None id: str plan_id: str plan_name: str plural_name: typing.Optional[str] = None - reset_cadence: str - reset_start: str - reset_type: str + reset_cadence: BillingPlanCreditGrantResetCadence + reset_start: BillingPlanCreditGrantResetStart + reset_type: BillingPlanCreditGrantResetType singular_name: typing.Optional[str] = None updated_at: dt.datetime diff --git a/src/schematic/types/plan_detail_response_data.py b/src/schematic/types/plan_detail_response_data.py index f34d1c7..9524bf8 100644 --- a/src/schematic/types/plan_detail_response_data.py +++ b/src/schematic/types/plan_detail_response_data.py @@ -8,15 +8,18 @@ from .billing_plan_credit_grant_response_data import BillingPlanCreditGrantResponseData from .billing_price_response_data import BillingPriceResponseData from .billing_product_detail_response_data import BillingProductDetailResponseData +from .charge_type import ChargeType from .feature_detail_response_data import FeatureDetailResponseData +from .plan_controlled_by_type import PlanControlledByType +from .plan_type import PlanType class PlanDetailResponseData(UniversalBaseModel): audience_type: typing.Optional[str] = None billing_product: typing.Optional[BillingProductDetailResponseData] = None - charge_type: str + charge_type: ChargeType company_count: int - controlled_by: str + controlled_by: PlanControlledByType created_at: dt.datetime description: str features: typing.List[FeatureDetailResponseData] @@ -29,7 +32,7 @@ class PlanDetailResponseData(UniversalBaseModel): monthly_price: typing.Optional[BillingPriceResponseData] = None name: str one_time_price: typing.Optional[BillingPriceResponseData] = None - plan_type: str + plan_type: PlanType trial_days: typing.Optional[int] = None updated_at: dt.datetime yearly_price: typing.Optional[BillingPriceResponseData] = None diff --git a/src/schematic/types/plan_entitlement_response_data.py b/src/schematic/types/plan_entitlement_response_data.py index 676e01a..e30eb1d 100644 --- a/src/schematic/types/plan_entitlement_response_data.py +++ b/src/schematic/types/plan_entitlement_response_data.py @@ -8,6 +8,8 @@ from .billing_credit_response_data import BillingCreditResponseData from .billing_price_view import BillingPriceView from .billing_product_response_data import BillingProductResponseData +from .entitlement_price_behavior import EntitlementPriceBehavior +from .entitlement_value_type import EntitlementValueType from .entity_trait_definition_response_data import EntityTraitDefinitionResponseData from .feature_response_data import FeatureResponseData from .plan_response_data import PlanResponseData @@ -27,7 +29,7 @@ class PlanEntitlementResponseData(UniversalBaseModel): metric_period_month_reset: typing.Optional[str] = None plan: typing.Optional[PlanResponseData] = None plan_id: str - price_behavior: typing.Optional[str] = None + price_behavior: typing.Optional[EntitlementPriceBehavior] = None rule_id: str rule_id_usage_exceeded: typing.Optional[str] = None soft_limit: typing.Optional[int] = None @@ -38,7 +40,7 @@ class PlanEntitlementResponseData(UniversalBaseModel): value_numeric: typing.Optional[int] = None value_trait: typing.Optional[EntityTraitDefinitionResponseData] = None value_trait_id: typing.Optional[str] = None - value_type: str + value_type: EntitlementValueType if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/plan_group_detail_response_data.py b/src/schematic/types/plan_group_detail_response_data.py index b26f228..e530a53 100644 --- a/src/schematic/types/plan_group_detail_response_data.py +++ b/src/schematic/types/plan_group_detail_response_data.py @@ -4,8 +4,9 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel -from .billing_price_response_data import BillingPriceResponseData +from .billing_price_view import BillingPriceView from .checkout_settings_response_data import CheckoutSettingsResponseData +from .component_settings_response_data import ComponentSettingsResponseData from .custom_plan_view_config_response_data import CustomPlanViewConfigResponseData from .plan_group_bundle_order import PlanGroupBundleOrder from .plan_group_plan_detail_response_data import PlanGroupPlanDetailResponseData @@ -15,6 +16,7 @@ class PlanGroupDetailResponseData(UniversalBaseModel): add_ons: typing.List[PlanGroupPlanDetailResponseData] checkout_settings: CheckoutSettingsResponseData + component_settings: ComponentSettingsResponseData custom_plan_config: typing.Optional[CustomPlanViewConfigResponseData] = None custom_plan_id: typing.Optional[str] = None default_plan: typing.Optional[PlanGroupPlanDetailResponseData] = None @@ -24,22 +26,27 @@ class PlanGroupDetailResponseData(UniversalBaseModel): id: str initial_plan: typing.Optional[PlanGroupPlanDetailResponseData] = None initial_plan_id: typing.Optional[str] = None - initial_plan_price: typing.Optional[BillingPriceResponseData] = None + initial_plan_price: typing.Optional[BillingPriceView] = None initial_plan_price_id: typing.Optional[str] = None ordered_add_on_list: typing.List[PlanGroupPlanEntitlementsOrder] ordered_bundle_list: typing.List[PlanGroupBundleOrder] ordered_plan_list: typing.List[PlanGroupPlanEntitlementsOrder] plans: typing.List[PlanGroupPlanDetailResponseData] prevent_downgrades_when_over_limit: bool + prevent_self_service_downgrade: bool + prevent_self_service_downgrade_button_text: typing.Optional[str] = None + prevent_self_service_downgrade_url: typing.Optional[str] = None + proration_behavior: str + show_as_monthly_prices: bool show_credits: bool show_period_toggle: bool show_zero_price_as_free: bool - sync_customer_billing_details_for_tax: bool + sync_customer_billing_details: bool tax_collection_enabled: bool trial_days: typing.Optional[int] = None trial_expiry_plan: typing.Optional[PlanGroupPlanDetailResponseData] = None trial_expiry_plan_id: typing.Optional[str] = None - trial_expiry_plan_price: typing.Optional[BillingPriceResponseData] = None + trial_expiry_plan_price: typing.Optional[BillingPriceView] = None trial_expiry_plan_price_id: typing.Optional[str] = None trial_payment_method_required: typing.Optional[bool] = None diff --git a/src/schematic/types/plan_group_plan_detail_response_data.py b/src/schematic/types/plan_group_plan_detail_response_data.py index 14c3999..edda4cd 100644 --- a/src/schematic/types/plan_group_plan_detail_response_data.py +++ b/src/schematic/types/plan_group_plan_detail_response_data.py @@ -8,18 +8,21 @@ from .billing_plan_credit_grant_response_data import BillingPlanCreditGrantResponseData from .billing_price_response_data import BillingPriceResponseData from .billing_product_detail_response_data import BillingProductDetailResponseData +from .charge_type import ChargeType from .custom_plan_view_config_response_data import CustomPlanViewConfigResponseData from .feature_detail_response_data import FeatureDetailResponseData +from .plan_controlled_by_type import PlanControlledByType from .plan_entitlement_response_data import PlanEntitlementResponseData +from .plan_type import PlanType class PlanGroupPlanDetailResponseData(UniversalBaseModel): audience_type: typing.Optional[str] = None billing_product: typing.Optional[BillingProductDetailResponseData] = None - charge_type: str + charge_type: ChargeType company_count: int compatible_plan_ids: typing.List[str] - controlled_by: str + controlled_by: PlanControlledByType created_at: dt.datetime custom_plan_config: typing.Optional[CustomPlanViewConfigResponseData] = None description: str @@ -35,7 +38,7 @@ class PlanGroupPlanDetailResponseData(UniversalBaseModel): monthly_price: typing.Optional[BillingPriceResponseData] = None name: str one_time_price: typing.Optional[BillingPriceResponseData] = None - plan_type: str + plan_type: PlanType trial_days: typing.Optional[int] = None updated_at: dt.datetime yearly_price: typing.Optional[BillingPriceResponseData] = None diff --git a/src/schematic/types/plan_group_response_data.py b/src/schematic/types/plan_group_response_data.py index 673e726..d34b508 100644 --- a/src/schematic/types/plan_group_response_data.py +++ b/src/schematic/types/plan_group_response_data.py @@ -6,6 +6,7 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .checkout_settings_response_data import CheckoutSettingsResponseData from .compatible_plans_response_data import CompatiblePlansResponseData +from .component_settings_response_data import ComponentSettingsResponseData from .ordered_plans_in_group import OrderedPlansInGroup @@ -13,6 +14,7 @@ class PlanGroupResponseData(UniversalBaseModel): add_on_compatibilities: typing.List[CompatiblePlansResponseData] add_on_ids: typing.List[str] checkout_settings: CheckoutSettingsResponseData + component_settings: ComponentSettingsResponseData default_plan_id: typing.Optional[str] = None fallback_plan_id: typing.Optional[str] = None id: str @@ -21,10 +23,15 @@ class PlanGroupResponseData(UniversalBaseModel): ordered_add_on_ids: typing.List[OrderedPlansInGroup] plan_ids: typing.List[OrderedPlansInGroup] prevent_downgrades_when_over_limit: bool + prevent_self_service_downgrade: bool + prevent_self_service_downgrade_button_text: typing.Optional[str] = None + prevent_self_service_downgrade_url: typing.Optional[str] = None + proration_behavior: str + show_as_monthly_prices: bool show_credits: bool show_period_toggle: bool show_zero_price_as_free: bool - sync_customer_billing_details_for_tax: bool + sync_customer_billing_details: bool tax_collection_enabled: bool trial_days: typing.Optional[int] = None trial_expiry_plan_id: typing.Optional[str] = None diff --git a/src/schematic/types/plan_response_data.py b/src/schematic/types/plan_response_data.py index 627ac72..f877e2a 100644 --- a/src/schematic/types/plan_response_data.py +++ b/src/schematic/types/plan_response_data.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .plan_type import PlanType class PlanResponseData(UniversalBaseModel): @@ -14,7 +15,7 @@ class PlanResponseData(UniversalBaseModel): icon: str id: str name: str - plan_type: str + plan_type: PlanType updated_at: dt.datetime if IS_PYDANTIC_V2: diff --git a/src/schematic/types/plan_type.py b/src/schematic/types/plan_type.py new file mode 100644 index 0000000..957a13e --- /dev/null +++ b/src/schematic/types/plan_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +PlanType = typing.Union[typing.Literal["plan", "add_on"], typing.Any] diff --git a/src/schematic/types/preview_subscription_finance_response_data.py b/src/schematic/types/preview_subscription_finance_response_data.py index 16d3960..9f6fc15 100644 --- a/src/schematic/types/preview_subscription_finance_response_data.py +++ b/src/schematic/types/preview_subscription_finance_response_data.py @@ -19,6 +19,7 @@ class PreviewSubscriptionFinanceResponseData(UniversalBaseModel): tax_amount: typing.Optional[int] = None tax_display_name: typing.Optional[str] = None tax_require_billing_details: bool + total_per_billing_period: int trial_end: typing.Optional[dt.datetime] = None upcoming_invoice_line_items: typing.List[PreviewSubscriptionUpcomingInvoiceLineItems] diff --git a/src/schematic/types/proration_behavior.py b/src/schematic/types/proration_behavior.py new file mode 100644 index 0000000..6edf434 --- /dev/null +++ b/src/schematic/types/proration_behavior.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +ProrationBehavior = typing.Union[typing.Literal["create_prorations", "invoice_immediately"], typing.Any] diff --git a/src/schematic/types/rule_condition_detail_response_data.py b/src/schematic/types/rule_condition_detail_response_data.py index 6d61ec7..ff7a5ac 100644 --- a/src/schematic/types/rule_condition_detail_response_data.py +++ b/src/schematic/types/rule_condition_detail_response_data.py @@ -6,6 +6,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .entity_trait_definition_response_data import EntityTraitDefinitionResponseData +from .entity_type import EntityType from .preview_object_response_data import PreviewObjectResponseData @@ -27,7 +28,7 @@ class RuleConditionDetailResponseData(UniversalBaseModel): resources: typing.List[PreviewObjectResponseData] rule_id: str trait: typing.Optional[EntityTraitDefinitionResponseData] = None - trait_entity_type: typing.Optional[str] = None + trait_entity_type: typing.Optional[EntityType] = None trait_id: typing.Optional[str] = None trait_value: str updated_at: dt.datetime diff --git a/src/schematic/types/rule_condition_response_data.py b/src/schematic/types/rule_condition_response_data.py index f1f0242..f12c591 100644 --- a/src/schematic/types/rule_condition_response_data.py +++ b/src/schematic/types/rule_condition_response_data.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .entity_type import EntityType class RuleConditionResponseData(UniversalBaseModel): @@ -22,7 +23,7 @@ class RuleConditionResponseData(UniversalBaseModel): operator: str resource_ids: typing.List[str] rule_id: str - trait_entity_type: typing.Optional[str] = None + trait_entity_type: typing.Optional[EntityType] = None trait_id: typing.Optional[str] = None trait_value: str updated_at: dt.datetime diff --git a/src/schematic/types/rules_engine_schema_version.py b/src/schematic/types/rules_engine_schema_version.py new file mode 100644 index 0000000..ac884bc --- /dev/null +++ b/src/schematic/types/rules_engine_schema_version.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesEngineSchemaVersion = typing.Union[typing.Literal["549e6fea", "placeholder-for-fern-compatibility"], typing.Any] diff --git a/src/schematic/types/rulesengine_check_flag_result.py b/src/schematic/types/rulesengine_check_flag_result.py new file mode 100644 index 0000000..134ef16 --- /dev/null +++ b/src/schematic/types/rulesengine_check_flag_result.py @@ -0,0 +1,35 @@ +# This file was auto-generated by Fern from our API Definition. + +import datetime as dt +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_check_flag_result_feature_usage_period import RulesengineCheckFlagResultFeatureUsagePeriod +from .rulesengine_check_flag_result_rule_type import RulesengineCheckFlagResultRuleType + + +class RulesengineCheckFlagResult(UniversalBaseModel): + company_id: typing.Optional[str] = None + err: typing.Optional[str] = None + feature_allocation: typing.Optional[int] = None + feature_usage: typing.Optional[int] = None + feature_usage_event: typing.Optional[str] = None + feature_usage_period: typing.Optional[RulesengineCheckFlagResultFeatureUsagePeriod] = None + feature_usage_reset_at: typing.Optional[dt.datetime] = None + flag_id: typing.Optional[str] = None + flag_key: str + reason: str + rule_id: typing.Optional[str] = None + rule_type: typing.Optional[RulesengineCheckFlagResultRuleType] = None + user_id: typing.Optional[str] = None + value: bool + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_check_flag_result_feature_usage_period.py b/src/schematic/types/rulesengine_check_flag_result_feature_usage_period.py new file mode 100644 index 0000000..15e5b58 --- /dev/null +++ b/src/schematic/types/rulesengine_check_flag_result_feature_usage_period.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineCheckFlagResultFeatureUsagePeriod = typing.Union[ + typing.Literal["all_time", "current_day", "current_month", "current_week"], typing.Any +] diff --git a/src/schematic/types/rulesengine_check_flag_result_rule_type.py b/src/schematic/types/rulesengine_check_flag_result_rule_type.py new file mode 100644 index 0000000..d87c19a --- /dev/null +++ b/src/schematic/types/rulesengine_check_flag_result_rule_type.py @@ -0,0 +1,16 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineCheckFlagResultRuleType = typing.Union[ + typing.Literal[ + "default", + "global_override", + "company_override", + "company_override_usage_exceeded", + "plan_entitlement", + "plan_entitlement_usage_exceeded", + "standard", + ], + typing.Any, +] diff --git a/src/schematic/types/rulesengine_company.py b/src/schematic/types/rulesengine_company.py new file mode 100644 index 0000000..e56b20c --- /dev/null +++ b/src/schematic/types/rulesengine_company.py @@ -0,0 +1,35 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_company_metric import RulesengineCompanyMetric +from .rulesengine_rule import RulesengineRule +from .rulesengine_subscription import RulesengineSubscription +from .rulesengine_trait import RulesengineTrait + + +class RulesengineCompany(UniversalBaseModel): + account_id: str + base_plan_id: typing.Optional[str] = None + billing_product_ids: typing.List[str] + credit_balances: typing.Dict[str, float] + crm_product_ids: typing.List[str] + environment_id: str + id: str + keys: typing.Dict[str, str] + metrics: typing.List[RulesengineCompanyMetric] + plan_ids: typing.List[str] + rules: typing.List[RulesengineRule] + subscription: typing.Optional[RulesengineSubscription] = None + traits: typing.List[RulesengineTrait] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_company_metric.py b/src/schematic/types/rulesengine_company_metric.py new file mode 100644 index 0000000..d6cd2b4 --- /dev/null +++ b/src/schematic/types/rulesengine_company_metric.py @@ -0,0 +1,30 @@ +# This file was auto-generated by Fern from our API Definition. + +import datetime as dt +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_company_metric_month_reset import RulesengineCompanyMetricMonthReset +from .rulesengine_company_metric_period import RulesengineCompanyMetricPeriod + + +class RulesengineCompanyMetric(UniversalBaseModel): + account_id: str + company_id: str + created_at: dt.datetime + environment_id: str + event_subtype: str + month_reset: RulesengineCompanyMetricMonthReset + period: RulesengineCompanyMetricPeriod + valid_until: typing.Optional[dt.datetime] = None + value: int + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_company_metric_month_reset.py b/src/schematic/types/rulesengine_company_metric_month_reset.py new file mode 100644 index 0000000..340f821 --- /dev/null +++ b/src/schematic/types/rulesengine_company_metric_month_reset.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineCompanyMetricMonthReset = typing.Union[typing.Literal["first_of_month", "billing_cycle"], typing.Any] diff --git a/src/schematic/types/rulesengine_company_metric_period.py b/src/schematic/types/rulesengine_company_metric_period.py new file mode 100644 index 0000000..9dede5f --- /dev/null +++ b/src/schematic/types/rulesengine_company_metric_period.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineCompanyMetricPeriod = typing.Union[ + typing.Literal["all_time", "current_day", "current_month", "current_week"], typing.Any +] diff --git a/src/schematic/types/rulesengine_condition.py b/src/schematic/types/rulesengine_condition.py new file mode 100644 index 0000000..debbf00 --- /dev/null +++ b/src/schematic/types/rulesengine_condition.py @@ -0,0 +1,38 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_condition_condition_type import RulesengineConditionConditionType +from .rulesengine_condition_metric_period import RulesengineConditionMetricPeriod +from .rulesengine_condition_metric_period_month_reset import RulesengineConditionMetricPeriodMonthReset +from .rulesengine_condition_operator import RulesengineConditionOperator +from .rulesengine_trait_definition import RulesengineTraitDefinition + + +class RulesengineCondition(UniversalBaseModel): + account_id: str + comparison_trait_definition: typing.Optional[RulesengineTraitDefinition] = None + condition_type: RulesengineConditionConditionType + consumption_rate: typing.Optional[float] = None + credit_id: typing.Optional[str] = None + environment_id: str + event_subtype: typing.Optional[str] = None + id: str + metric_period: typing.Optional[RulesengineConditionMetricPeriod] = None + metric_period_month_reset: typing.Optional[RulesengineConditionMetricPeriodMonthReset] = None + metric_value: typing.Optional[int] = None + operator: RulesengineConditionOperator + resource_ids: typing.List[str] + trait_definition: typing.Optional[RulesengineTraitDefinition] = None + trait_value: str + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_condition_condition_type.py b/src/schematic/types/rulesengine_condition_condition_type.py new file mode 100644 index 0000000..b7db02e --- /dev/null +++ b/src/schematic/types/rulesengine_condition_condition_type.py @@ -0,0 +1,10 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineConditionConditionType = typing.Union[ + typing.Literal[ + "base_plan", "billing_product", "company", "credit", "crm_product", "metric", "plan", "trait", "user" + ], + typing.Any, +] diff --git a/src/schematic/types/rulesengine_condition_group.py b/src/schematic/types/rulesengine_condition_group.py new file mode 100644 index 0000000..666ce70 --- /dev/null +++ b/src/schematic/types/rulesengine_condition_group.py @@ -0,0 +1,20 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_condition import RulesengineCondition + + +class RulesengineConditionGroup(UniversalBaseModel): + conditions: typing.List[RulesengineCondition] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_condition_metric_period.py b/src/schematic/types/rulesengine_condition_metric_period.py new file mode 100644 index 0000000..c75e7cd --- /dev/null +++ b/src/schematic/types/rulesengine_condition_metric_period.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineConditionMetricPeriod = typing.Union[ + typing.Literal["all_time", "current_day", "current_month", "current_week"], typing.Any +] diff --git a/src/schematic/types/rulesengine_condition_metric_period_month_reset.py b/src/schematic/types/rulesengine_condition_metric_period_month_reset.py new file mode 100644 index 0000000..b0b6b62 --- /dev/null +++ b/src/schematic/types/rulesengine_condition_metric_period_month_reset.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineConditionMetricPeriodMonthReset = typing.Union[typing.Literal["first_of_month", "billing_cycle"], typing.Any] diff --git a/src/schematic/types/rulesengine_condition_operator.py b/src/schematic/types/rulesengine_condition_operator.py new file mode 100644 index 0000000..18f1aae --- /dev/null +++ b/src/schematic/types/rulesengine_condition_operator.py @@ -0,0 +1,7 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineConditionOperator = typing.Union[ + typing.Literal["eq", "ne", "gt", "lt", "gte", "lte", "is_empty", "not_empty"], typing.Any +] diff --git a/src/schematic/types/rulesengine_entity_type.py b/src/schematic/types/rulesengine_entity_type.py new file mode 100644 index 0000000..fdb5046 --- /dev/null +++ b/src/schematic/types/rulesengine_entity_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineEntityType = typing.Union[typing.Literal["company", "user"], typing.Any] diff --git a/src/schematic/types/rulesengine_flag.py b/src/schematic/types/rulesengine_flag.py new file mode 100644 index 0000000..d651015 --- /dev/null +++ b/src/schematic/types/rulesengine_flag.py @@ -0,0 +1,25 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_rule import RulesengineRule + + +class RulesengineFlag(UniversalBaseModel): + account_id: str + default_value: bool + environment_id: str + id: str + key: str + rules: typing.List[RulesengineRule] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_rule.py b/src/schematic/types/rulesengine_rule.py new file mode 100644 index 0000000..0927399 --- /dev/null +++ b/src/schematic/types/rulesengine_rule.py @@ -0,0 +1,31 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_condition import RulesengineCondition +from .rulesengine_condition_group import RulesengineConditionGroup +from .rulesengine_rule_rule_type import RulesengineRuleRuleType + + +class RulesengineRule(UniversalBaseModel): + account_id: str + condition_groups: typing.List[RulesengineConditionGroup] + conditions: typing.List[RulesengineCondition] + environment_id: str + flag_id: typing.Optional[str] = None + id: str + name: str + priority: int + rule_type: RulesengineRuleRuleType + value: bool + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_rule_rule_type.py b/src/schematic/types/rulesengine_rule_rule_type.py new file mode 100644 index 0000000..894250a --- /dev/null +++ b/src/schematic/types/rulesengine_rule_rule_type.py @@ -0,0 +1,16 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineRuleRuleType = typing.Union[ + typing.Literal[ + "default", + "global_override", + "company_override", + "company_override_usage_exceeded", + "plan_entitlement", + "plan_entitlement_usage_exceeded", + "standard", + ], + typing.Any, +] diff --git a/src/schematic/types/rulesengine_subscription.py b/src/schematic/types/rulesengine_subscription.py new file mode 100644 index 0000000..d12ce0e --- /dev/null +++ b/src/schematic/types/rulesengine_subscription.py @@ -0,0 +1,22 @@ +# This file was auto-generated by Fern from our API Definition. + +import datetime as dt +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel + + +class RulesengineSubscription(UniversalBaseModel): + id: str + period_end: dt.datetime + period_start: dt.datetime + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_trait.py b/src/schematic/types/rulesengine_trait.py new file mode 100644 index 0000000..b6cbaf0 --- /dev/null +++ b/src/schematic/types/rulesengine_trait.py @@ -0,0 +1,21 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_trait_definition import RulesengineTraitDefinition + + +class RulesengineTrait(UniversalBaseModel): + trait_definition: typing.Optional[RulesengineTraitDefinition] = None + value: str + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_trait_definition.py b/src/schematic/types/rulesengine_trait_definition.py new file mode 100644 index 0000000..53c02ca --- /dev/null +++ b/src/schematic/types/rulesengine_trait_definition.py @@ -0,0 +1,23 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_entity_type import RulesengineEntityType +from .rulesengine_trait_definition_comparable_type import RulesengineTraitDefinitionComparableType + + +class RulesengineTraitDefinition(UniversalBaseModel): + comparable_type: RulesengineTraitDefinitionComparableType + entity_type: RulesengineEntityType + id: str + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/rulesengine_trait_definition_comparable_type.py b/src/schematic/types/rulesengine_trait_definition_comparable_type.py new file mode 100644 index 0000000..62403df --- /dev/null +++ b/src/schematic/types/rulesengine_trait_definition_comparable_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +RulesengineTraitDefinitionComparableType = typing.Union[typing.Literal["bool", "date", "int", "string"], typing.Any] diff --git a/src/schematic/types/rulesengine_user.py b/src/schematic/types/rulesengine_user.py new file mode 100644 index 0000000..704aa64 --- /dev/null +++ b/src/schematic/types/rulesengine_user.py @@ -0,0 +1,26 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .rulesengine_rule import RulesengineRule +from .rulesengine_trait import RulesengineTrait + + +class RulesengineUser(UniversalBaseModel): + account_id: str + environment_id: str + id: str + keys: typing.Dict[str, str] + rules: typing.List[RulesengineRule] + traits: typing.List[RulesengineTrait] + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/skipped_entitlement_error_response_data.py b/src/schematic/types/skipped_entitlement_error_response_data.py new file mode 100644 index 0000000..35c0ef5 --- /dev/null +++ b/src/schematic/types/skipped_entitlement_error_response_data.py @@ -0,0 +1,19 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel + + +class SkippedEntitlementErrorResponseData(UniversalBaseModel): + message: str + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/skipped_entitlement_response_data.py b/src/schematic/types/skipped_entitlement_response_data.py new file mode 100644 index 0000000..7ab6524 --- /dev/null +++ b/src/schematic/types/skipped_entitlement_response_data.py @@ -0,0 +1,23 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +import pydantic +from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .skipped_entitlement_error_response_data import SkippedEntitlementErrorResponseData + + +class SkippedEntitlementResponseData(UniversalBaseModel): + entitlement_id: str + errors: typing.List[SkippedEntitlementErrorResponseData] + feature_id: str + feature_name: str + + if IS_PYDANTIC_V2: + model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 + else: + + class Config: + frozen = True + smart_union = True + extra = pydantic.Extra.allow diff --git a/src/schematic/types/sort_direction.py b/src/schematic/types/sort_direction.py new file mode 100644 index 0000000..4832af0 --- /dev/null +++ b/src/schematic/types/sort_direction.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +SortDirection = typing.Union[typing.Literal["asc", "desc"], typing.Any] diff --git a/src/schematic/types/subscription_status.py b/src/schematic/types/subscription_status.py new file mode 100644 index 0000000..33a24ba --- /dev/null +++ b/src/schematic/types/subscription_status.py @@ -0,0 +1,10 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +SubscriptionStatus = typing.Union[ + typing.Literal[ + "active", "canceled", "expired", "incomplete", "incomplete_expired", "past_due", "paused", "trialing", "unpaid" + ], + typing.Any, +] diff --git a/src/schematic/types/subscription_trait_update.py b/src/schematic/types/subscription_trait_update.py index 0b04297..66c8129 100644 --- a/src/schematic/types/subscription_trait_update.py +++ b/src/schematic/types/subscription_trait_update.py @@ -4,6 +4,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .trait_type import TraitType class SubscriptionTraitUpdate(UniversalBaseModel): @@ -12,7 +13,7 @@ class SubscriptionTraitUpdate(UniversalBaseModel): reason: str trait_id: str trait_name: str - trait_type: str + trait_type: TraitType value: str if IS_PYDANTIC_V2: diff --git a/src/schematic/types/subscription_type.py b/src/schematic/types/subscription_type.py new file mode 100644 index 0000000..76b7989 --- /dev/null +++ b/src/schematic/types/subscription_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +SubscriptionType = typing.Union[typing.Literal["free", "one_time", "paid", "trial"], typing.Any] diff --git a/src/schematic/types/temporary_access_token_resource_type.py b/src/schematic/types/temporary_access_token_resource_type.py new file mode 100644 index 0000000..72072df --- /dev/null +++ b/src/schematic/types/temporary_access_token_resource_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +TemporaryAccessTokenResourceType = typing.Literal["company"] diff --git a/src/schematic/types/temporary_access_token_response_data.py b/src/schematic/types/temporary_access_token_response_data.py index d864566..3ce804f 100644 --- a/src/schematic/types/temporary_access_token_response_data.py +++ b/src/schematic/types/temporary_access_token_response_data.py @@ -5,6 +5,7 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .temporary_access_token_resource_type import TemporaryAccessTokenResourceType class TemporaryAccessTokenResponseData(UniversalBaseModel): @@ -13,7 +14,7 @@ class TemporaryAccessTokenResponseData(UniversalBaseModel): environment_id: str expired_at: dt.datetime id: str - resource_type: str + resource_type: TemporaryAccessTokenResourceType = "company" updated_at: dt.datetime if IS_PYDANTIC_V2: diff --git a/src/schematic/types/trait_definition.py b/src/schematic/types/trait_definition.py index c6524a9..5903415 100644 --- a/src/schematic/types/trait_definition.py +++ b/src/schematic/types/trait_definition.py @@ -4,13 +4,13 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .entity_type import EntityType from .trait_definition_comparable_type import TraitDefinitionComparableType -from .trait_definition_entity_type import TraitDefinitionEntityType class TraitDefinition(UniversalBaseModel): comparable_type: TraitDefinitionComparableType - entity_type: TraitDefinitionEntityType + entity_type: EntityType id: str if IS_PYDANTIC_V2: diff --git a/src/schematic/types/trait_definition_entity_type.py b/src/schematic/types/trait_definition_entity_type.py deleted file mode 100644 index 08718f9..0000000 --- a/src/schematic/types/trait_definition_entity_type.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -TraitDefinitionEntityType = typing.Union[typing.Literal["user", "company"], typing.Any] diff --git a/src/schematic/types/trait_type.py b/src/schematic/types/trait_type.py new file mode 100644 index 0000000..61b0918 --- /dev/null +++ b/src/schematic/types/trait_type.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +TraitType = typing.Union[typing.Literal["boolean", "currency", "date", "number", "string", "url"], typing.Any] diff --git a/src/schematic/types/update_entitlement_req_common.py b/src/schematic/types/update_entitlement_req_common.py index a28acbc..88ef8df 100644 --- a/src/schematic/types/update_entitlement_req_common.py +++ b/src/schematic/types/update_entitlement_req_common.py @@ -4,9 +4,9 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .entitlement_value_type import EntitlementValueType from .update_entitlement_req_common_metric_period import UpdateEntitlementReqCommonMetricPeriod from .update_entitlement_req_common_metric_period_month_reset import UpdateEntitlementReqCommonMetricPeriodMonthReset -from .update_entitlement_req_common_value_type import UpdateEntitlementReqCommonValueType class UpdateEntitlementReqCommon(UniversalBaseModel): @@ -17,7 +17,7 @@ class UpdateEntitlementReqCommon(UniversalBaseModel): value_credit_id: typing.Optional[str] = None value_numeric: typing.Optional[int] = None value_trait_id: typing.Optional[str] = None - value_type: UpdateEntitlementReqCommonValueType + value_type: EntitlementValueType if IS_PYDANTIC_V2: model_config: typing.ClassVar[pydantic.ConfigDict] = pydantic.ConfigDict(extra="allow", frozen=True) # type: ignore # Pydantic v2 diff --git a/src/schematic/types/update_entitlement_req_common_value_type.py b/src/schematic/types/update_entitlement_req_common_value_type.py deleted file mode 100644 index e058e40..0000000 --- a/src/schematic/types/update_entitlement_req_common_value_type.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateEntitlementReqCommonValueType = typing.Union[ - typing.Literal["boolean", "credit", "numeric", "trait", "unlimited"], typing.Any -] diff --git a/src/schematic/types/usage_based_entitlement_request_body.py b/src/schematic/types/usage_based_entitlement_request_body.py index d932b05..5dab360 100644 --- a/src/schematic/types/usage_based_entitlement_request_body.py +++ b/src/schematic/types/usage_based_entitlement_request_body.py @@ -4,8 +4,9 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .billing_tiers_mode import BillingTiersMode from .create_price_tier_request_body import CreatePriceTierRequestBody -from .usage_based_entitlement_request_body_price_behavior import UsageBasedEntitlementRequestBodyPriceBehavior +from .entitlement_price_behavior import EntitlementPriceBehavior class UsageBasedEntitlementRequestBody(UniversalBaseModel): @@ -17,14 +18,14 @@ class UsageBasedEntitlementRequestBody(UniversalBaseModel): monthly_unit_price: typing.Optional[int] = None monthly_unit_price_decimal: typing.Optional[str] = None overage_billing_product_id: typing.Optional[str] = None - price_behavior: typing.Optional[UsageBasedEntitlementRequestBodyPriceBehavior] = None + price_behavior: typing.Optional[EntitlementPriceBehavior] = None price_tiers: typing.Optional[typing.List[CreatePriceTierRequestBody]] = pydantic.Field(default=None) """ Use MonthlyPriceTiers or YearlyPriceTiers instead """ soft_limit: typing.Optional[int] = None - tier_mode: typing.Optional[str] = None + tier_mode: typing.Optional[BillingTiersMode] = None yearly_metered_price_id: typing.Optional[str] = None yearly_price_tiers: typing.Optional[typing.List[CreatePriceTierRequestBody]] = None yearly_unit_price: typing.Optional[int] = None diff --git a/src/schematic/types/usage_based_entitlement_request_body_price_behavior.py b/src/schematic/types/usage_based_entitlement_request_body_price_behavior.py deleted file mode 100644 index 82c69cd..0000000 --- a/src/schematic/types/usage_based_entitlement_request_body_price_behavior.py +++ /dev/null @@ -1,7 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UsageBasedEntitlementRequestBodyPriceBehavior = typing.Union[ - typing.Literal["pay_as_you_go", "pay_in_advance", "overage", "credit_burndown", "tier"], typing.Any -] diff --git a/src/schematic/types/usage_based_entitlement_response_data.py b/src/schematic/types/usage_based_entitlement_response_data.py index d055418..a0ae808 100644 --- a/src/schematic/types/usage_based_entitlement_response_data.py +++ b/src/schematic/types/usage_based_entitlement_response_data.py @@ -5,6 +5,8 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .billing_price_view import BillingPriceView +from .entitlement_price_behavior import EntitlementPriceBehavior +from .entitlement_value_type import EntitlementValueType class UsageBasedEntitlementResponseData(UniversalBaseModel): @@ -15,10 +17,10 @@ class UsageBasedEntitlementResponseData(UniversalBaseModel): metric_period: typing.Optional[str] = None metric_period_month_reset: typing.Optional[str] = None monthly_usage_based_price: typing.Optional[BillingPriceView] = None - price_behavior: typing.Optional[str] = None + price_behavior: typing.Optional[EntitlementPriceBehavior] = None value_bool: typing.Optional[bool] = None value_numeric: typing.Optional[int] = None - value_type: str + value_type: EntitlementValueType yearly_usage_based_price: typing.Optional[BillingPriceView] = None if IS_PYDANTIC_V2: diff --git a/src/schematic/types/webhook_event_detail_response_data.py b/src/schematic/types/webhook_event_detail_response_data.py index 7911613..2383120 100644 --- a/src/schematic/types/webhook_event_detail_response_data.py +++ b/src/schematic/types/webhook_event_detail_response_data.py @@ -5,6 +5,8 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .webhook_event_status import WebhookEventStatus +from .webhook_request_type import WebhookRequestType from .webhook_response_data import WebhookResponseData @@ -12,10 +14,10 @@ class WebhookEventDetailResponseData(UniversalBaseModel): created_at: dt.datetime id: str payload: typing.Optional[str] = None - request_type: str + request_type: WebhookRequestType response_code: typing.Optional[int] = None sent_at: typing.Optional[dt.datetime] = None - status: str + status: WebhookEventStatus updated_at: dt.datetime webhook: typing.Optional[WebhookResponseData] = None webhook_id: str diff --git a/src/schematic/types/webhook_event_response_data.py b/src/schematic/types/webhook_event_response_data.py index 1e6b221..1d38ebf 100644 --- a/src/schematic/types/webhook_event_response_data.py +++ b/src/schematic/types/webhook_event_response_data.py @@ -5,16 +5,18 @@ import pydantic from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel +from .webhook_event_status import WebhookEventStatus +from .webhook_request_type import WebhookRequestType class WebhookEventResponseData(UniversalBaseModel): created_at: dt.datetime id: str payload: typing.Optional[str] = None - request_type: str + request_type: WebhookRequestType response_code: typing.Optional[int] = None sent_at: typing.Optional[dt.datetime] = None - status: str + status: WebhookEventStatus updated_at: dt.datetime webhook_id: str diff --git a/src/schematic/types/webhook_event_status.py b/src/schematic/types/webhook_event_status.py new file mode 100644 index 0000000..849d661 --- /dev/null +++ b/src/schematic/types/webhook_event_status.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +WebhookEventStatus = typing.Union[typing.Literal["failure", "pending", "success"], typing.Any] diff --git a/src/schematic/webhooks/types/update_webhook_request_body_request_types_item.py b/src/schematic/types/webhook_request_type.py similarity index 89% rename from src/schematic/webhooks/types/update_webhook_request_body_request_types_item.py rename to src/schematic/types/webhook_request_type.py index 76c47b7..40e81fa 100644 --- a/src/schematic/webhooks/types/update_webhook_request_body_request_types_item.py +++ b/src/schematic/types/webhook_request_type.py @@ -2,41 +2,43 @@ import typing -UpdateWebhookRequestBodyRequestTypesItem = typing.Union[ +WebhookRequestType = typing.Union[ typing.Literal[ - "company.updated", - "user.updated", - "plan.updated", - "plan.entitlement.updated", - "company.override.updated", - "feature.updated", - "flag.updated", - "flag_rules.updated", + "subscription.trial.ended", "company.created", - "user.created", - "plan.created", - "plan.entitlement.created", + "company.deleted", "company.override.created", + "company.override.deleted", + "company.override.expired", + "company.override.updated", + "company.plan_changed", + "company.updated", + "credit.limit.reached", + "credit.limit.warning", + "entitlement.limit.reached", + "entitlement.limit.warning", + "entitlement.soft_limit.reached", + "entitlement.soft_limit.warning", + "entitlement.tier_limit.reached", + "entitlement.tier_limit.warning", "feature.created", + "feature.deleted", + "feature.updated", "flag.created", - "company.deleted", - "user.deleted", + "flag.deleted", + "flag_rules.updated", + "flag.updated", + "plan.created", "plan.deleted", + "plan.entitlement.created", "plan.entitlement.deleted", - "company.override.deleted", - "feature.deleted", - "flag.deleted", + "plan.entitlement.updated", + "plan.updated", + "rule.deleted", "test.send", - "subscription.trial.ended", - "entitlement.limit.warning", - "entitlement.limit.reached", - "entitlement.soft_limit.warning", - "entitlement.soft_limit.reached", - "entitlement.tier_limit.warning", - "entitlement.tier_limit.reached", - "credit.limit.warning", - "credit.limit.reached", - "company.plan_change", + "user.created", + "user.deleted", + "user.updated", ], typing.Any, ] diff --git a/src/schematic/types/webhook_response_data.py b/src/schematic/types/webhook_response_data.py index 39c09a7..b426dd3 100644 --- a/src/schematic/types/webhook_response_data.py +++ b/src/schematic/types/webhook_response_data.py @@ -7,6 +7,8 @@ from ..core.pydantic_utilities import IS_PYDANTIC_V2, UniversalBaseModel from .credit_trigger_config import CreditTriggerConfig from .entitlement_trigger_config import EntitlementTriggerConfig +from .webhook_request_type import WebhookRequestType +from .webhook_status import WebhookStatus class WebhookResponseData(UniversalBaseModel): @@ -15,9 +17,9 @@ class WebhookResponseData(UniversalBaseModel): entitlement_trigger_configs: typing.Optional[typing.List[EntitlementTriggerConfig]] = None id: str name: str - request_types: typing.List[str] + request_types: typing.List[WebhookRequestType] secret: str - status: str + status: WebhookStatus updated_at: dt.datetime url: str diff --git a/src/schematic/types/webhook_status.py b/src/schematic/types/webhook_status.py new file mode 100644 index 0000000..2e827e6 --- /dev/null +++ b/src/schematic/types/webhook_status.py @@ -0,0 +1,5 @@ +# This file was auto-generated by Fern from our API Definition. + +import typing + +WebhookStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any] diff --git a/src/schematic/webhooks/__init__.py b/src/schematic/webhooks/__init__.py index ed83105..f3b8204 100644 --- a/src/schematic/webhooks/__init__.py +++ b/src/schematic/webhooks/__init__.py @@ -11,7 +11,6 @@ CountWebhookEventsResponse, CountWebhooksParams, CountWebhooksResponse, - CreateWebhookRequestBodyRequestTypesItem, CreateWebhookResponse, DeleteWebhookResponse, GetWebhookEventResponse, @@ -20,8 +19,6 @@ ListWebhookEventsResponse, ListWebhooksParams, ListWebhooksResponse, - UpdateWebhookRequestBodyRequestTypesItem, - UpdateWebhookRequestBodyStatus, UpdateWebhookResponse, ) _dynamic_imports: typing.Dict[str, str] = { @@ -29,7 +26,6 @@ "CountWebhookEventsResponse": ".types", "CountWebhooksParams": ".types", "CountWebhooksResponse": ".types", - "CreateWebhookRequestBodyRequestTypesItem": ".types", "CreateWebhookResponse": ".types", "DeleteWebhookResponse": ".types", "GetWebhookEventResponse": ".types", @@ -38,8 +34,6 @@ "ListWebhookEventsResponse": ".types", "ListWebhooksParams": ".types", "ListWebhooksResponse": ".types", - "UpdateWebhookRequestBodyRequestTypesItem": ".types", - "UpdateWebhookRequestBodyStatus": ".types", "UpdateWebhookResponse": ".types", } @@ -70,7 +64,6 @@ def __dir__(): "CountWebhookEventsResponse", "CountWebhooksParams", "CountWebhooksResponse", - "CreateWebhookRequestBodyRequestTypesItem", "CreateWebhookResponse", "DeleteWebhookResponse", "GetWebhookEventResponse", @@ -79,7 +72,5 @@ def __dir__(): "ListWebhookEventsResponse", "ListWebhooksParams", "ListWebhooksResponse", - "UpdateWebhookRequestBodyRequestTypesItem", - "UpdateWebhookRequestBodyStatus", "UpdateWebhookResponse", ] diff --git a/src/schematic/webhooks/client.py b/src/schematic/webhooks/client.py index 427fd77..b621cfb 100644 --- a/src/schematic/webhooks/client.py +++ b/src/schematic/webhooks/client.py @@ -6,18 +6,17 @@ from ..core.request_options import RequestOptions from ..types.credit_trigger_config import CreditTriggerConfig from ..types.entitlement_trigger_config import EntitlementTriggerConfig +from ..types.webhook_request_type import WebhookRequestType +from ..types.webhook_status import WebhookStatus from .raw_client import AsyncRawWebhooksClient, RawWebhooksClient from .types.count_webhook_events_response import CountWebhookEventsResponse from .types.count_webhooks_response import CountWebhooksResponse -from .types.create_webhook_request_body_request_types_item import CreateWebhookRequestBodyRequestTypesItem from .types.create_webhook_response import CreateWebhookResponse from .types.delete_webhook_response import DeleteWebhookResponse from .types.get_webhook_event_response import GetWebhookEventResponse from .types.get_webhook_response import GetWebhookResponse from .types.list_webhook_events_response import ListWebhookEventsResponse from .types.list_webhooks_response import ListWebhooksResponse -from .types.update_webhook_request_body_request_types_item import UpdateWebhookRequestBodyRequestTypesItem -from .types.update_webhook_request_body_status import UpdateWebhookRequestBodyStatus from .types.update_webhook_response import UpdateWebhookResponse # this is used as the default value for optional parameters @@ -221,7 +220,7 @@ def create_webhook( self, *, name: str, - request_types: typing.Sequence[CreateWebhookRequestBodyRequestTypesItem], + request_types: typing.Sequence[WebhookRequestType], url: str, credit_trigger_configs: typing.Optional[typing.Sequence[CreditTriggerConfig]] = OMIT, entitlement_trigger_configs: typing.Optional[typing.Sequence[EntitlementTriggerConfig]] = OMIT, @@ -232,7 +231,7 @@ def create_webhook( ---------- name : str - request_types : typing.Sequence[CreateWebhookRequestBodyRequestTypesItem] + request_types : typing.Sequence[WebhookRequestType] url : str @@ -257,7 +256,7 @@ def create_webhook( ) client.webhooks.create_webhook( name="name", - request_types=["company.updated"], + request_types=["subscription.trial.ended"], url="url", ) """ @@ -309,8 +308,8 @@ def update_webhook( credit_trigger_configs: typing.Optional[typing.Sequence[CreditTriggerConfig]] = OMIT, entitlement_trigger_configs: typing.Optional[typing.Sequence[EntitlementTriggerConfig]] = OMIT, name: typing.Optional[str] = OMIT, - request_types: typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]] = OMIT, - status: typing.Optional[UpdateWebhookRequestBodyStatus] = OMIT, + request_types: typing.Optional[typing.Sequence[WebhookRequestType]] = OMIT, + status: typing.Optional[WebhookStatus] = OMIT, url: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateWebhookResponse: @@ -326,9 +325,9 @@ def update_webhook( name : typing.Optional[str] - request_types : typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]] + request_types : typing.Optional[typing.Sequence[WebhookRequestType]] - status : typing.Optional[UpdateWebhookRequestBodyStatus] + status : typing.Optional[WebhookStatus] url : typing.Optional[str] @@ -669,7 +668,7 @@ async def create_webhook( self, *, name: str, - request_types: typing.Sequence[CreateWebhookRequestBodyRequestTypesItem], + request_types: typing.Sequence[WebhookRequestType], url: str, credit_trigger_configs: typing.Optional[typing.Sequence[CreditTriggerConfig]] = OMIT, entitlement_trigger_configs: typing.Optional[typing.Sequence[EntitlementTriggerConfig]] = OMIT, @@ -680,7 +679,7 @@ async def create_webhook( ---------- name : str - request_types : typing.Sequence[CreateWebhookRequestBodyRequestTypesItem] + request_types : typing.Sequence[WebhookRequestType] url : str @@ -710,7 +709,7 @@ async def create_webhook( async def main() -> None: await client.webhooks.create_webhook( name="name", - request_types=["company.updated"], + request_types=["subscription.trial.ended"], url="url", ) @@ -773,8 +772,8 @@ async def update_webhook( credit_trigger_configs: typing.Optional[typing.Sequence[CreditTriggerConfig]] = OMIT, entitlement_trigger_configs: typing.Optional[typing.Sequence[EntitlementTriggerConfig]] = OMIT, name: typing.Optional[str] = OMIT, - request_types: typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]] = OMIT, - status: typing.Optional[UpdateWebhookRequestBodyStatus] = OMIT, + request_types: typing.Optional[typing.Sequence[WebhookRequestType]] = OMIT, + status: typing.Optional[WebhookStatus] = OMIT, url: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> UpdateWebhookResponse: @@ -790,9 +789,9 @@ async def update_webhook( name : typing.Optional[str] - request_types : typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]] + request_types : typing.Optional[typing.Sequence[WebhookRequestType]] - status : typing.Optional[UpdateWebhookRequestBodyStatus] + status : typing.Optional[WebhookStatus] url : typing.Optional[str] diff --git a/src/schematic/webhooks/raw_client.py b/src/schematic/webhooks/raw_client.py index 7da2df3..0b05e3d 100644 --- a/src/schematic/webhooks/raw_client.py +++ b/src/schematic/webhooks/raw_client.py @@ -18,17 +18,16 @@ from ..types.api_error import ApiError as types_api_error_ApiError from ..types.credit_trigger_config import CreditTriggerConfig from ..types.entitlement_trigger_config import EntitlementTriggerConfig +from ..types.webhook_request_type import WebhookRequestType +from ..types.webhook_status import WebhookStatus from .types.count_webhook_events_response import CountWebhookEventsResponse from .types.count_webhooks_response import CountWebhooksResponse -from .types.create_webhook_request_body_request_types_item import CreateWebhookRequestBodyRequestTypesItem from .types.create_webhook_response import CreateWebhookResponse from .types.delete_webhook_response import DeleteWebhookResponse from .types.get_webhook_event_response import GetWebhookEventResponse from .types.get_webhook_response import GetWebhookResponse from .types.list_webhook_events_response import ListWebhookEventsResponse from .types.list_webhooks_response import ListWebhooksResponse -from .types.update_webhook_request_body_request_types_item import UpdateWebhookRequestBodyRequestTypesItem -from .types.update_webhook_request_body_status import UpdateWebhookRequestBodyStatus from .types.update_webhook_response import UpdateWebhookResponse # this is used as the default value for optional parameters @@ -477,7 +476,7 @@ def create_webhook( self, *, name: str, - request_types: typing.Sequence[CreateWebhookRequestBodyRequestTypesItem], + request_types: typing.Sequence[WebhookRequestType], url: str, credit_trigger_configs: typing.Optional[typing.Sequence[CreditTriggerConfig]] = OMIT, entitlement_trigger_configs: typing.Optional[typing.Sequence[EntitlementTriggerConfig]] = OMIT, @@ -488,7 +487,7 @@ def create_webhook( ---------- name : str - request_types : typing.Sequence[CreateWebhookRequestBodyRequestTypesItem] + request_types : typing.Sequence[WebhookRequestType] url : str @@ -692,8 +691,8 @@ def update_webhook( credit_trigger_configs: typing.Optional[typing.Sequence[CreditTriggerConfig]] = OMIT, entitlement_trigger_configs: typing.Optional[typing.Sequence[EntitlementTriggerConfig]] = OMIT, name: typing.Optional[str] = OMIT, - request_types: typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]] = OMIT, - status: typing.Optional[UpdateWebhookRequestBodyStatus] = OMIT, + request_types: typing.Optional[typing.Sequence[WebhookRequestType]] = OMIT, + status: typing.Optional[WebhookStatus] = OMIT, url: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> HttpResponse[UpdateWebhookResponse]: @@ -709,9 +708,9 @@ def update_webhook( name : typing.Optional[str] - request_types : typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]] + request_types : typing.Optional[typing.Sequence[WebhookRequestType]] - status : typing.Optional[UpdateWebhookRequestBodyStatus] + status : typing.Optional[WebhookStatus] url : typing.Optional[str] @@ -1470,7 +1469,7 @@ async def create_webhook( self, *, name: str, - request_types: typing.Sequence[CreateWebhookRequestBodyRequestTypesItem], + request_types: typing.Sequence[WebhookRequestType], url: str, credit_trigger_configs: typing.Optional[typing.Sequence[CreditTriggerConfig]] = OMIT, entitlement_trigger_configs: typing.Optional[typing.Sequence[EntitlementTriggerConfig]] = OMIT, @@ -1481,7 +1480,7 @@ async def create_webhook( ---------- name : str - request_types : typing.Sequence[CreateWebhookRequestBodyRequestTypesItem] + request_types : typing.Sequence[WebhookRequestType] url : str @@ -1685,8 +1684,8 @@ async def update_webhook( credit_trigger_configs: typing.Optional[typing.Sequence[CreditTriggerConfig]] = OMIT, entitlement_trigger_configs: typing.Optional[typing.Sequence[EntitlementTriggerConfig]] = OMIT, name: typing.Optional[str] = OMIT, - request_types: typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]] = OMIT, - status: typing.Optional[UpdateWebhookRequestBodyStatus] = OMIT, + request_types: typing.Optional[typing.Sequence[WebhookRequestType]] = OMIT, + status: typing.Optional[WebhookStatus] = OMIT, url: typing.Optional[str] = OMIT, request_options: typing.Optional[RequestOptions] = None, ) -> AsyncHttpResponse[UpdateWebhookResponse]: @@ -1702,9 +1701,9 @@ async def update_webhook( name : typing.Optional[str] - request_types : typing.Optional[typing.Sequence[UpdateWebhookRequestBodyRequestTypesItem]] + request_types : typing.Optional[typing.Sequence[WebhookRequestType]] - status : typing.Optional[UpdateWebhookRequestBodyStatus] + status : typing.Optional[WebhookStatus] url : typing.Optional[str] diff --git a/src/schematic/webhooks/types/__init__.py b/src/schematic/webhooks/types/__init__.py index 7a24a65..bff22ec 100644 --- a/src/schematic/webhooks/types/__init__.py +++ b/src/schematic/webhooks/types/__init__.py @@ -10,7 +10,6 @@ from .count_webhook_events_response import CountWebhookEventsResponse from .count_webhooks_params import CountWebhooksParams from .count_webhooks_response import CountWebhooksResponse - from .create_webhook_request_body_request_types_item import CreateWebhookRequestBodyRequestTypesItem from .create_webhook_response import CreateWebhookResponse from .delete_webhook_response import DeleteWebhookResponse from .get_webhook_event_response import GetWebhookEventResponse @@ -19,15 +18,12 @@ from .list_webhook_events_response import ListWebhookEventsResponse from .list_webhooks_params import ListWebhooksParams from .list_webhooks_response import ListWebhooksResponse - from .update_webhook_request_body_request_types_item import UpdateWebhookRequestBodyRequestTypesItem - from .update_webhook_request_body_status import UpdateWebhookRequestBodyStatus from .update_webhook_response import UpdateWebhookResponse _dynamic_imports: typing.Dict[str, str] = { "CountWebhookEventsParams": ".count_webhook_events_params", "CountWebhookEventsResponse": ".count_webhook_events_response", "CountWebhooksParams": ".count_webhooks_params", "CountWebhooksResponse": ".count_webhooks_response", - "CreateWebhookRequestBodyRequestTypesItem": ".create_webhook_request_body_request_types_item", "CreateWebhookResponse": ".create_webhook_response", "DeleteWebhookResponse": ".delete_webhook_response", "GetWebhookEventResponse": ".get_webhook_event_response", @@ -36,8 +32,6 @@ "ListWebhookEventsResponse": ".list_webhook_events_response", "ListWebhooksParams": ".list_webhooks_params", "ListWebhooksResponse": ".list_webhooks_response", - "UpdateWebhookRequestBodyRequestTypesItem": ".update_webhook_request_body_request_types_item", - "UpdateWebhookRequestBodyStatus": ".update_webhook_request_body_status", "UpdateWebhookResponse": ".update_webhook_response", } @@ -68,7 +62,6 @@ def __dir__(): "CountWebhookEventsResponse", "CountWebhooksParams", "CountWebhooksResponse", - "CreateWebhookRequestBodyRequestTypesItem", "CreateWebhookResponse", "DeleteWebhookResponse", "GetWebhookEventResponse", @@ -77,7 +70,5 @@ def __dir__(): "ListWebhookEventsResponse", "ListWebhooksParams", "ListWebhooksResponse", - "UpdateWebhookRequestBodyRequestTypesItem", - "UpdateWebhookRequestBodyStatus", "UpdateWebhookResponse", ] diff --git a/src/schematic/webhooks/types/create_webhook_request_body_request_types_item.py b/src/schematic/webhooks/types/create_webhook_request_body_request_types_item.py deleted file mode 100644 index ebf86a6..0000000 --- a/src/schematic/webhooks/types/create_webhook_request_body_request_types_item.py +++ /dev/null @@ -1,42 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -CreateWebhookRequestBodyRequestTypesItem = typing.Union[ - typing.Literal[ - "company.updated", - "user.updated", - "plan.updated", - "plan.entitlement.updated", - "company.override.updated", - "feature.updated", - "flag.updated", - "flag_rules.updated", - "company.created", - "user.created", - "plan.created", - "plan.entitlement.created", - "company.override.created", - "feature.created", - "flag.created", - "company.deleted", - "user.deleted", - "plan.deleted", - "plan.entitlement.deleted", - "company.override.deleted", - "feature.deleted", - "flag.deleted", - "test.send", - "subscription.trial.ended", - "entitlement.limit.warning", - "entitlement.limit.reached", - "entitlement.soft_limit.warning", - "entitlement.soft_limit.reached", - "entitlement.tier_limit.warning", - "entitlement.tier_limit.reached", - "credit.limit.warning", - "credit.limit.reached", - "company.plan_change", - ], - typing.Any, -] diff --git a/src/schematic/webhooks/types/update_webhook_request_body_status.py b/src/schematic/webhooks/types/update_webhook_request_body_status.py deleted file mode 100644 index a8889cb..0000000 --- a/src/schematic/webhooks/types/update_webhook_request_body_status.py +++ /dev/null @@ -1,5 +0,0 @@ -# This file was auto-generated by Fern from our API Definition. - -import typing - -UpdateWebhookRequestBodyStatus = typing.Union[typing.Literal["active", "inactive"], typing.Any]