schematichq 1.5.2 → 1.5.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (273) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +4 -4
  3. data/.fern/replay.lock +14 -338
  4. data/.fernignore +8 -0
  5. data/.rubocop.yml +4 -0
  6. data/README.md +141 -0
  7. data/WASM_VERSION +1 -1
  8. data/custom.gemspec.rb +6 -0
  9. data/lib/schematic/accesstokens/client.rb +9 -1
  10. data/lib/schematic/accounts/client.rb +183 -21
  11. data/lib/schematic/accounts/types/update_environment_request_body.rb +2 -0
  12. data/lib/schematic/billing/client.rb +325 -34
  13. data/lib/schematic/billing/types/create_billing_price_request_body.rb +1 -1
  14. data/lib/schematic/billing/types/create_billing_product_request_body.rb +1 -1
  15. data/lib/schematic/billing/types/create_billing_subscription_request_body.rb +1 -1
  16. data/lib/schematic/billing/types/create_coupon_request_body.rb +2 -2
  17. data/lib/schematic/billing/types/create_invoice_request_body.rb +1 -1
  18. data/lib/schematic/billing/types/get_billing_settings_response.rb +13 -0
  19. data/lib/schematic/billing/types/list_billing_prices_params.rb +1 -1
  20. data/lib/schematic/billing/types/list_billing_prices_request.rb +1 -1
  21. data/lib/schematic/billing/types/list_billing_product_prices_params.rb +1 -1
  22. data/lib/schematic/billing/types/list_billing_product_prices_request.rb +1 -1
  23. data/lib/schematic/billing/types/update_billing_settings_request_body.rb +11 -0
  24. data/lib/schematic/billing/types/update_billing_settings_response.rb +13 -0
  25. data/lib/schematic/catalogs/client.rb +121 -14
  26. data/lib/schematic/checkout/client.rb +80 -9
  27. data/lib/schematic/checkout/types/checkout_data_request_body.rb +1 -1
  28. data/lib/schematic/client.rb +5 -3
  29. data/lib/schematic/companies/client.rb +380 -44
  30. data/lib/schematic/components/client.rb +70 -8
  31. data/lib/schematic/components/types/create_component_request_body.rb +1 -1
  32. data/lib/schematic/components/types/update_component_request_body.rb +1 -1
  33. data/lib/schematic/componentspublic/client.rb +8 -1
  34. data/lib/schematic/credits/client.rb +458 -46
  35. data/lib/schematic/credits/leases/check.rb +477 -0
  36. data/lib/schematic/credits/leases/lease_manager.rb +565 -0
  37. data/lib/schematic/credits/leases/lease_store.rb +240 -0
  38. data/lib/schematic/credits/leases/redis_lease_store.rb +358 -0
  39. data/lib/schematic/credits/leases/redis_reservation_store.rb +326 -0
  40. data/lib/schematic/credits/leases/reservation_store.rb +161 -0
  41. data/lib/schematic/credits/leases/server_check.rb +237 -0
  42. data/lib/schematic/credits/leases/track.rb +66 -0
  43. data/lib/schematic/credits/leases/types.rb +329 -0
  44. data/lib/schematic/credits/leases/wire_client.rb +83 -0
  45. data/lib/schematic/credits/types/acquire_credit_lease_request_body.rb +3 -1
  46. data/lib/schematic/credits/types/create_billing_credit_request_body.rb +1 -1
  47. data/lib/schematic/credits/types/create_company_credit_grant.rb +1 -1
  48. data/lib/schematic/credits/types/create_credit_bundle_request_body.rb +1 -1
  49. data/lib/schematic/credits/types/create_credit_spend_policy_request_body.rb +5 -1
  50. data/lib/schematic/credits/types/extend_credit_lease_request_body.rb +3 -1
  51. data/lib/schematic/credits/types/get_credit_balance_time_series_params.rb +18 -0
  52. data/lib/schematic/credits/types/get_credit_balance_time_series_request.rb +17 -0
  53. data/lib/schematic/credits/types/get_credit_balance_time_series_response.rb +13 -0
  54. data/lib/schematic/credits/types/get_credit_spend_policy_usage_params.rb +16 -0
  55. data/lib/schematic/credits/types/get_credit_spend_policy_usage_request.rb +15 -0
  56. data/lib/schematic/credits/types/get_credit_spend_policy_usage_response.rb +13 -0
  57. data/lib/schematic/credits/types/reserve_credits_request_body.rb +1 -1
  58. data/lib/schematic/credits/types/update_credit_spend_policy_request_body.rb +5 -1
  59. data/lib/schematic/dataexports/client.rb +36 -6
  60. data/lib/schematic/datastream/client.rb +32 -2
  61. data/lib/schematic/entitlements/client.rb +406 -25
  62. data/lib/schematic/entitlements/types/count_company_user_usage_params.rb +24 -0
  63. data/lib/schematic/entitlements/types/count_company_user_usage_request.rb +23 -0
  64. data/lib/schematic/entitlements/types/count_company_user_usage_response.rb +13 -0
  65. data/lib/schematic/entitlements/types/create_billing_linked_plan_entitlement_request_body.rb +4 -2
  66. data/lib/schematic/entitlements/types/create_company_override_request_body.rb +3 -1
  67. data/lib/schematic/entitlements/types/create_plan_entitlement_request_body.rb +4 -2
  68. data/lib/schematic/entitlements/types/get_company_user_usage_metrics_params.rb +16 -0
  69. data/lib/schematic/entitlements/types/get_company_user_usage_metrics_request.rb +15 -0
  70. data/lib/schematic/entitlements/types/get_company_user_usage_metrics_response.rb +13 -0
  71. data/lib/schematic/entitlements/types/list_company_user_usage_params.rb +24 -0
  72. data/lib/schematic/entitlements/types/list_company_user_usage_request.rb +23 -0
  73. data/lib/schematic/entitlements/types/list_company_user_usage_response.rb +13 -0
  74. data/lib/schematic/entitlements/types/update_company_override_request_body.rb +3 -1
  75. data/lib/schematic/entitlements/types/update_plan_entitlement_request_body.rb +4 -2
  76. data/lib/schematic/errors/connection_error.rb +11 -0
  77. data/lib/schematic/errors/response_error.rb +23 -2
  78. data/lib/schematic/events/client.rb +78 -9
  79. data/lib/schematic/features/client.rb +160 -18
  80. data/lib/schematic/features/types/check_and_reserve_flag_request_body.rb +1 -1
  81. data/lib/schematic/features/types/create_billing_linked_feature_request_body.rb +2 -0
  82. data/lib/schematic/features/types/create_feature_request_body.rb +2 -0
  83. data/lib/schematic/features/types/update_feature_request_body.rb +2 -0
  84. data/lib/schematic/insights/client.rb +48 -6
  85. data/lib/schematic/integrationsapi/client.rb +120 -14
  86. data/lib/schematic/internal/http/base_request.rb +30 -0
  87. data/lib/schematic/internal/http/raw_client.rb +35 -5
  88. data/lib/schematic/internal/iterators/cursor_item_iterator.rb +7 -2
  89. data/lib/schematic/internal/iterators/cursor_page_iterator.rb +68 -14
  90. data/lib/schematic/internal/iterators/item_iterator.rb +61 -15
  91. data/lib/schematic/internal/iterators/offset_item_iterator.rb +7 -2
  92. data/lib/schematic/internal/iterators/offset_page_iterator.rb +57 -9
  93. data/lib/schematic/internal/json/request.rb +11 -2
  94. data/lib/schematic/internal/multipart/multipart_request.rb +1 -0
  95. data/lib/schematic/internal/types/model.rb +7 -3
  96. data/lib/schematic/internal/types/utils.rb +7 -0
  97. data/lib/schematic/licenses/client.rb +26 -3
  98. data/lib/schematic/planbundle/client.rb +27 -3
  99. data/lib/schematic/plangroups/client.rb +28 -3
  100. data/lib/schematic/plangroups/types/create_plan_group_request_body.rb +2 -0
  101. data/lib/schematic/plangroups/types/update_plan_group_request_body.rb +2 -0
  102. data/lib/schematic/planmigrations/client.rb +104 -11
  103. data/lib/schematic/planmigrations/types/count_migrations_params.rb +2 -0
  104. data/lib/schematic/planmigrations/types/count_migrations_request.rb +2 -0
  105. data/lib/schematic/planmigrations/types/create_migration_input.rb +2 -0
  106. data/lib/schematic/planmigrations/types/list_migrations_params.rb +2 -0
  107. data/lib/schematic/planmigrations/types/list_migrations_request.rb +2 -0
  108. data/lib/schematic/plans/client.rb +213 -23
  109. data/lib/schematic/plans/types/get_plan_version_diff_params.rb +12 -0
  110. data/lib/schematic/plans/types/get_plan_version_diff_request.rb +13 -0
  111. data/lib/schematic/plans/types/get_plan_version_diff_response.rb +13 -0
  112. data/lib/schematic/plans/types/publish_plan_version_request_body.rb +6 -0
  113. data/lib/schematic/plans/types/retry_custom_plan_billing_request_body.rb +2 -0
  114. data/lib/schematic/rules_engine.rb +49 -0
  115. data/lib/schematic/scheduledcheckout/client.rb +35 -4
  116. data/lib/schematic/schematic_client.rb +841 -33
  117. data/lib/schematic/types/billing_coupon_response_data.rb +2 -2
  118. data/lib/schematic/types/billing_credit_grant_response_data.rb +8 -8
  119. data/lib/schematic/types/billing_customer_subscription.rb +1 -1
  120. data/lib/schematic/types/billing_plan_credit_grant_response_data.rb +1 -1
  121. data/lib/schematic/types/billing_price_response_data.rb +1 -1
  122. data/lib/schematic/types/billing_price_view.rb +1 -1
  123. data/lib/schematic/types/billing_product_detail_response_data.rb +2 -2
  124. data/lib/schematic/types/billing_product_for_subscription_response_data.rb +2 -2
  125. data/lib/schematic/types/billing_product_price_response_data.rb +1 -1
  126. data/lib/schematic/types/billing_product_pricing.rb +1 -1
  127. data/lib/schematic/types/billing_product_response_data.rb +2 -2
  128. data/lib/schematic/types/billing_settings_response_data.rb +9 -0
  129. data/lib/schematic/types/billing_subscription_discount_view.rb +2 -2
  130. data/lib/schematic/types/billing_subscription_response_data.rb +1 -1
  131. data/lib/schematic/types/billing_subscription_view.rb +1 -1
  132. data/lib/schematic/types/capture_raw_event.rb +4 -0
  133. data/lib/schematic/types/catalog_config_ordered_plan.rb +2 -0
  134. data/lib/schematic/types/catalog_config_ordered_plan_response_data.rb +2 -0
  135. data/lib/schematic/types/catalog_config_plan_credit.rb +11 -0
  136. data/lib/schematic/types/catalog_config_plan_credit_response_data.rb +11 -0
  137. data/lib/schematic/types/change_subscription_internal_request_body.rb +1 -1
  138. data/lib/schematic/types/change_subscription_request_body.rb +1 -1
  139. data/lib/schematic/types/check_flags_response_data.rb +2 -0
  140. data/lib/schematic/types/checkout_problem_code.rb +54 -0
  141. data/lib/schematic/types/checkout_problem_response_data.rb +31 -0
  142. data/lib/schematic/types/checkout_problem_source.rb +13 -0
  143. data/lib/schematic/types/checkout_subscription.rb +1 -1
  144. data/lib/schematic/types/company_billing_entity_subscription_response_data.rb +1 -1
  145. data/lib/schematic/types/company_credit_balance.rb +3 -3
  146. data/lib/schematic/types/company_credit_balance_response_data.rb +4 -4
  147. data/lib/schematic/types/company_detail_response_data.rb +3 -1
  148. data/lib/schematic/types/company_override_response_data.rb +3 -1
  149. data/lib/schematic/types/company_plan_credit_grant_view.rb +1 -1
  150. data/lib/schematic/types/company_plan_detail_response_data.rb +4 -0
  151. data/lib/schematic/types/company_subscription_response_data.rb +1 -1
  152. data/lib/schematic/types/company_user_usage_metrics_response_data.rb +15 -0
  153. data/lib/schematic/types/company_user_usage_response_data.rb +19 -0
  154. data/lib/schematic/types/company_user_usage_row_response_data.rb +17 -0
  155. data/lib/schematic/types/component_display_settings.rb +2 -0
  156. data/lib/schematic/types/component_response_data.rb +1 -1
  157. data/lib/schematic/types/component_settings_response_data.rb +2 -0
  158. data/lib/schematic/types/condition.rb +3 -1
  159. data/lib/schematic/types/condition_response_data.rb +3 -1
  160. data/lib/schematic/types/condition_view.rb +3 -1
  161. data/lib/schematic/types/coupon_request_body.rb +2 -2
  162. data/lib/schematic/types/create_billing_plan_credit_grant_request_body.rb +1 -1
  163. data/lib/schematic/types/create_entitlement_in_bundle_request_body.rb +4 -2
  164. data/lib/schematic/types/create_entitlement_req_common.rb +3 -1
  165. data/lib/schematic/types/create_or_update_condition_request_body.rb +1 -1
  166. data/lib/schematic/types/credit_balance_event_response_data.rb +21 -0
  167. data/lib/schematic/types/credit_balance_feature_consumption_response_data.rb +13 -0
  168. data/lib/schematic/types/credit_balance_point_response_data.rb +15 -0
  169. data/lib/schematic/types/credit_balance_time_series_response_data.rb +15 -0
  170. data/lib/schematic/types/credit_bundle_currency_price.rb +1 -1
  171. data/lib/schematic/types/credit_bundle_currency_price_request_body.rb +1 -1
  172. data/lib/schematic/types/credit_bundle_currency_price_response_data.rb +1 -1
  173. data/lib/schematic/types/credit_burn_breakdown_line.rb +15 -0
  174. data/lib/schematic/types/credit_company_grant_view.rb +8 -8
  175. data/lib/schematic/types/credit_currency_price.rb +1 -1
  176. data/lib/schematic/types/credit_currency_price_request_body.rb +1 -1
  177. data/lib/schematic/types/credit_currency_price_response_data.rb +1 -1
  178. data/lib/schematic/types/credit_event_ledger_response_data.rb +14 -6
  179. data/lib/schematic/types/credit_event_type.rb +3 -0
  180. data/lib/schematic/types/credit_grant_detail.rb +1 -1
  181. data/lib/schematic/types/credit_lease_response_data.rb +2 -2
  182. data/lib/schematic/types/credit_ledger_entry_kind.rb +17 -0
  183. data/lib/schematic/types/credit_reservation_response_data.rb +2 -2
  184. data/lib/schematic/types/credit_spend_policy.rb +25 -0
  185. data/lib/schematic/types/credit_spend_policy_response_data.rb +13 -1
  186. data/lib/schematic/types/credit_spend_window.rb +11 -0
  187. data/lib/schematic/types/credit_spend_window_unit.rb +13 -0
  188. data/lib/schematic/types/credit_transfer_response_data.rb +1 -1
  189. data/lib/schematic/types/credit_transfer_view.rb +1 -1
  190. data/lib/schematic/types/credit_usage.rb +5 -5
  191. data/lib/schematic/types/credit_usage_aggregation.rb +4 -4
  192. data/lib/schematic/types/credit_usage_reason.rb +1 -0
  193. data/lib/schematic/types/credits_in_plan.rb +11 -0
  194. data/lib/schematic/types/currency.rb +144 -0
  195. data/lib/schematic/types/currency_price_request_body.rb +1 -1
  196. data/lib/schematic/types/custom_plan_billing_response_data.rb +8 -0
  197. data/lib/schematic/types/entitlement_currency_prices_response_data.rb +1 -1
  198. data/lib/schematic/types/environment_detail_response_data.rb +2 -0
  199. data/lib/schematic/types/environment_response_data.rb +2 -0
  200. data/lib/schematic/types/estimated_plan_total.rb +13 -0
  201. data/lib/schematic/types/feature_company_response_data.rb +7 -7
  202. data/lib/schematic/types/feature_detail_response_data.rb +2 -0
  203. data/lib/schematic/types/feature_entitlement.rb +8 -6
  204. data/lib/schematic/types/feature_event_source.rb +12 -0
  205. data/lib/schematic/types/feature_in_plan_response_data.rb +2 -0
  206. data/lib/schematic/types/feature_response_data.rb +2 -0
  207. data/lib/schematic/types/feature_usage_response_data.rb +7 -7
  208. data/lib/schematic/types/feature_view.rb +2 -0
  209. data/lib/schematic/types/flag_check_reservation_response_data.rb +3 -3
  210. data/lib/schematic/types/insights_summary_response_data.rb +1 -1
  211. data/lib/schematic/types/invoice_request_body.rb +1 -1
  212. data/lib/schematic/types/invoice_response_data.rb +1 -1
  213. data/lib/schematic/types/manage_plan_preview_response_response_data.rb +2 -0
  214. data/lib/schematic/types/manage_plan_request.rb +3 -1
  215. data/lib/schematic/types/manage_plan_response_response_data.rb +4 -0
  216. data/lib/schematic/types/mrr_response_data.rb +1 -1
  217. data/lib/schematic/types/onboarding_milestone_view.rb +1 -1
  218. data/lib/schematic/types/ordered_plans_in_group.rb +2 -0
  219. data/lib/schematic/types/pending_migration_response_data.rb +6 -0
  220. data/lib/schematic/types/plan_billing_source.rb +1 -0
  221. data/lib/schematic/types/plan_change_action.rb +1 -0
  222. data/lib/schematic/types/plan_change_amendment_status.rb +15 -0
  223. data/lib/schematic/types/plan_change_response_data.rb +4 -0
  224. data/lib/schematic/types/plan_credit_grant_view.rb +1 -1
  225. data/lib/schematic/types/plan_credit_order.rb +11 -0
  226. data/lib/schematic/types/plan_credit_visibility.rb +11 -0
  227. data/lib/schematic/types/plan_currency_price_request_body.rb +1 -1
  228. data/lib/schematic/types/plan_currency_prices_response_data.rb +1 -1
  229. data/lib/schematic/types/plan_entitlement_response_data.rb +3 -1
  230. data/lib/schematic/types/plan_group_plan_entitlements_order.rb +2 -0
  231. data/lib/schematic/types/plan_version_billing_product_change_response_data.rb +11 -0
  232. data/lib/schematic/types/plan_version_credit_grant_change_response_data.rb +17 -0
  233. data/lib/schematic/types/plan_version_diff_change_type.rb +13 -0
  234. data/lib/schematic/types/plan_version_diff_price_cadence.rb +14 -0
  235. data/lib/schematic/types/plan_version_diff_response_data.rb +23 -0
  236. data/lib/schematic/types/plan_version_entitlement_change_response_data.rb +17 -0
  237. data/lib/schematic/types/plan_version_field_change_response_data.rb +13 -0
  238. data/lib/schematic/types/plan_version_migration_response_data.rb +2 -0
  239. data/lib/schematic/types/plan_version_migration_strategy.rb +1 -0
  240. data/lib/schematic/types/plan_version_price_change_response_data.rb +15 -0
  241. data/lib/schematic/types/plan_view_public_response_data.rb +2 -0
  242. data/lib/schematic/types/preflight_request_body.rb +1 -1
  243. data/lib/schematic/types/preview_subscription_change_response_data.rb +3 -1
  244. data/lib/schematic/types/preview_subscription_discount_response_data.rb +2 -2
  245. data/lib/schematic/types/preview_subscription_finance_response_data.rb +2 -2
  246. data/lib/schematic/types/rules_engine_schema_version.rb +1 -1
  247. data/lib/schematic/types/rulesengine_company.rb +3 -1
  248. data/lib/schematic/types/rulesengine_condition.rb +3 -1
  249. data/lib/schematic/types/rulesengine_credit_postpaid_config.rb +1 -1
  250. data/lib/schematic/types/rulesengine_credit_spend_policy.rb +25 -0
  251. data/lib/schematic/types/rulesengine_credit_spend_policy_scope.rb +13 -0
  252. data/lib/schematic/types/rulesengine_credit_spend_window.rb +11 -0
  253. data/lib/schematic/types/rulesengine_feature_entitlement.rb +8 -6
  254. data/lib/schematic/types/rulesengine_user.rb +2 -0
  255. data/lib/schematic/types/scheduled_downgrade_response_data.rb +1 -1
  256. data/lib/schematic/types/top_feature_by_usage_response_data.rb +1 -1
  257. data/lib/schematic/types/upcoming_invoice_response_data.rb +1 -1
  258. data/lib/schematic/types/update_billing_plan_credit_grant_request_body.rb +1 -1
  259. data/lib/schematic/types/update_entitlement_req_common.rb +3 -1
  260. data/lib/schematic/types/upsert_billing_product_request_body.rb +1 -1
  261. data/lib/schematic/types/usage_based_entitlement_request_body.rb +1 -1
  262. data/lib/schematic/types/usage_based_entitlement_response_data.rb +1 -1
  263. data/lib/schematic/types/user_credit_usage_response_data.rb +2 -2
  264. data/lib/schematic/types/user_daily_credit_point_response_data.rb +1 -1
  265. data/lib/schematic/types/user_feature_usage_response_data.rb +1 -1
  266. data/lib/schematic/types/user_usage_metric.rb +12 -0
  267. data/lib/schematic/version.rb +1 -1
  268. data/lib/schematic/wasm/rulesengine.wasm +0 -0
  269. data/lib/schematic/webhooks/client.rb +88 -10
  270. data/lib/schematic.rb +64 -5
  271. data/lib/schematichq.rb +10 -0
  272. data/reference.md +888 -127
  273. metadata +71 -2
@@ -3,7 +3,7 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class PlanCurrencyPricesResponseData < Internal::Types::Model
6
- field :currency, -> { String }, optional: false, nullable: false
6
+ field :currency, -> { Schematic::Types::Currency }, optional: false, nullable: false
7
7
 
8
8
  field :monthly_price, -> { Schematic::Types::BillingPriceResponseData }, optional: true, nullable: false
9
9
 
@@ -7,7 +7,7 @@ module Schematic
7
7
 
8
8
  field :billing_threshold, -> { Integer }, optional: true, nullable: false
9
9
 
10
- field :consumption_rate, -> { Integer }, optional: true, nullable: false
10
+ field :consumption_rate, -> { Float }, optional: true, nullable: false
11
11
 
12
12
  field :created_at, -> { String }, optional: false, nullable: false
13
13
 
@@ -41,6 +41,8 @@ module Schematic
41
41
 
42
42
  field :price_behavior, -> { Schematic::Types::EntitlementPriceBehavior }, optional: true, nullable: false
43
43
 
44
+ field :quantity_rates, -> { Internal::Types::Hash[String, Float] }, optional: true, nullable: false
45
+
44
46
  field :rule_id, -> { String }, optional: false, nullable: false
45
47
 
46
48
  field :rule_id_usage_exceeded, -> { String }, optional: true, nullable: false
@@ -3,6 +3,8 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class PlanGroupPlanEntitlementsOrder < Internal::Types::Model
6
+ field :credits, -> { Internal::Types::Array[Schematic::Types::PlanCreditOrder] }, optional: false, nullable: false
7
+
6
8
  field :entitlements, -> { Internal::Types::Array[Schematic::Types::PlanEntitlementsOrder] }, optional: true, nullable: false
7
9
 
8
10
  field :plan_id, -> { String }, optional: false, nullable: false
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class PlanVersionBillingProductChangeResponseData < Internal::Types::Model
6
+ field :new, -> { Schematic::Types::BillingProductDetailResponseData }, optional: true, nullable: false
7
+
8
+ field :old, -> { Schematic::Types::BillingProductDetailResponseData }, optional: true, nullable: false
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class PlanVersionCreditGrantChangeResponseData < Internal::Types::Model
6
+ field :change_type, -> { Schematic::Types::PlanVersionDiffChangeType }, optional: false, nullable: false
7
+
8
+ field :changed_fields, -> { Internal::Types::Array[String] }, optional: false, nullable: false
9
+
10
+ field :credit_id, -> { String }, optional: false, nullable: false
11
+
12
+ field :new, -> { Schematic::Types::BillingPlanCreditGrantResponseData }, optional: true, nullable: false
13
+
14
+ field :old, -> { Schematic::Types::BillingPlanCreditGrantResponseData }, optional: true, nullable: false
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ module PlanVersionDiffChangeType
6
+ extend Schematic::Internal::Types::Enum
7
+
8
+ ADDED = "added"
9
+ CHANGED = "changed"
10
+ REMOVED = "removed"
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ module PlanVersionDiffPriceCadence
6
+ extend Schematic::Internal::Types::Enum
7
+
8
+ MONTHLY = "monthly"
9
+ ONE_TIME = "one_time"
10
+ QUARTERLY = "quarterly"
11
+ YEARLY = "yearly"
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class PlanVersionDiffResponseData < Internal::Types::Model
6
+ field :billing_product, -> { Schematic::Types::PlanVersionBillingProductChangeResponseData }, optional: true, nullable: false
7
+
8
+ field :credit_grants, -> { Internal::Types::Array[Schematic::Types::PlanVersionCreditGrantChangeResponseData] }, optional: false, nullable: false
9
+
10
+ field :entitlements, -> { Internal::Types::Array[Schematic::Types::PlanVersionEntitlementChangeResponseData] }, optional: false, nullable: false
11
+
12
+ field :from, -> { Schematic::Types::PlanVersionResponseData }, optional: true, nullable: false
13
+
14
+ field :has_billing_changes, -> { Internal::Types::Boolean }, optional: false, nullable: false
15
+
16
+ field :plan_fields, -> { Internal::Types::Array[Schematic::Types::PlanVersionFieldChangeResponseData] }, optional: false, nullable: false
17
+
18
+ field :prices, -> { Internal::Types::Array[Schematic::Types::PlanVersionPriceChangeResponseData] }, optional: false, nullable: false
19
+
20
+ field :to, -> { Schematic::Types::PlanVersionResponseData }, optional: true, nullable: false
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class PlanVersionEntitlementChangeResponseData < Internal::Types::Model
6
+ field :change_type, -> { Schematic::Types::PlanVersionDiffChangeType }, optional: false, nullable: false
7
+
8
+ field :changed_fields, -> { Internal::Types::Array[String] }, optional: false, nullable: false
9
+
10
+ field :feature_id, -> { String }, optional: false, nullable: false
11
+
12
+ field :new, -> { Schematic::Types::PlanEntitlementResponseData }, optional: true, nullable: false
13
+
14
+ field :old, -> { Schematic::Types::PlanEntitlementResponseData }, optional: true, nullable: false
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class PlanVersionFieldChangeResponseData < Internal::Types::Model
6
+ field :field, -> { String }, optional: false, nullable: false
7
+
8
+ field :new, -> { String }, optional: false, nullable: false
9
+
10
+ field :old, -> { String }, optional: false, nullable: false
11
+ end
12
+ end
13
+ end
@@ -31,6 +31,8 @@ module Schematic
31
31
 
32
32
  field :proration_behavior, -> { Schematic::Types::MigrationProrationBehavior }, optional: true, nullable: false
33
33
 
34
+ field :scheduled_at, -> { String }, optional: true, nullable: false
35
+
34
36
  field :skipped_companies, -> { Integer }, optional: false, nullable: false
35
37
 
36
38
  field :started_at, -> { String }, optional: true, nullable: false
@@ -8,6 +8,7 @@ module Schematic
8
8
  END_OF_BILLING_PERIOD = "end_of_billing_period"
9
9
  IMMEDIATE = "immediate"
10
10
  LEAVE = "leave"
11
+ SCHEDULED = "scheduled"
11
12
  end
12
13
  end
13
14
  end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class PlanVersionPriceChangeResponseData < Internal::Types::Model
6
+ field :cadence, -> { Schematic::Types::PlanVersionDiffPriceCadence }, optional: false, nullable: false
7
+
8
+ field :currency, -> { Schematic::Types::Currency }, optional: false, nullable: false
9
+
10
+ field :new, -> { Schematic::Types::BillingPriceResponseData }, optional: true, nullable: false
11
+
12
+ field :old, -> { Schematic::Types::BillingPriceResponseData }, optional: true, nullable: false
13
+ end
14
+ end
15
+ end
@@ -35,6 +35,8 @@ module Schematic
35
35
 
36
36
  field :created_at, -> { String }, optional: false, nullable: false
37
37
 
38
+ field :credit_visibility, -> { Internal::Types::Array[Schematic::Types::PlanCreditVisibility] }, optional: true, nullable: false
39
+
38
40
  field :credits, -> { Internal::Types::Array[Schematic::Types::BillingCreditResponseData] }, optional: false, nullable: false
39
41
 
40
42
  field :currency_prices, -> { Internal::Types::Array[Schematic::Types::PlanCurrencyPricesResponseData] }, optional: false, nullable: false
@@ -3,7 +3,7 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class PreflightRequestBody < Internal::Types::Model
6
- field :credit_cost, -> { Internal::Types::Hash[String, Integer] }, optional: true, nullable: false
6
+ field :credit_cost, -> { Internal::Types::Hash[String, Float] }, optional: true, nullable: false
7
7
 
8
8
  field :event_usage, -> { Schematic::Types::PreflightEventUsageRequestBody }, optional: true, nullable: false
9
9
 
@@ -21,10 +21,12 @@ module Schematic
21
21
 
22
22
  field :payment_method_required, -> { Internal::Types::Boolean }, optional: false, nullable: false
23
23
 
24
- field :percent_off, -> { Integer }, optional: false, nullable: false
24
+ field :percent_off, -> { Float }, optional: false, nullable: false
25
25
 
26
26
  field :period_start, -> { String }, optional: false, nullable: false
27
27
 
28
+ field :problems, -> { Internal::Types::Array[Schematic::Types::CheckoutProblemResponseData] }, optional: false, nullable: false
29
+
28
30
  field :promo_code_applied, -> { Internal::Types::Boolean }, optional: false, nullable: false
29
31
 
30
32
  field :proration, -> { Integer }, optional: false, nullable: false
@@ -7,7 +7,7 @@ module Schematic
7
7
 
8
8
  field :coupon_name, -> { String }, optional: false, nullable: false
9
9
 
10
- field :currency, -> { String }, optional: true, nullable: false
10
+ field :currency, -> { Schematic::Types::Currency }, optional: true, nullable: false
11
11
 
12
12
  field :customer_facing_code, -> { String }, optional: true, nullable: false
13
13
 
@@ -19,7 +19,7 @@ module Schematic
19
19
 
20
20
  field :is_active, -> { Internal::Types::Boolean }, optional: false, nullable: false
21
21
 
22
- field :percent_off, -> { Integer }, optional: true, nullable: false
22
+ field :percent_off, -> { Float }, optional: true, nullable: false
23
23
 
24
24
  field :promo_code_external_id, -> { String }, optional: true, nullable: false
25
25
 
@@ -5,7 +5,7 @@ module Schematic
5
5
  class PreviewSubscriptionFinanceResponseData < Internal::Types::Model
6
6
  field :amount_off, -> { Integer }, optional: false, nullable: false
7
7
 
8
- field :currency, -> { String }, optional: false, nullable: false
8
+ field :currency, -> { Schematic::Types::Currency }, optional: false, nullable: false
9
9
 
10
10
  field :discount_amount, -> { Integer }, optional: false, nullable: false
11
11
 
@@ -15,7 +15,7 @@ module Schematic
15
15
 
16
16
  field :new_charges, -> { Integer }, optional: false, nullable: false
17
17
 
18
- field :percent_off, -> { Integer }, optional: false, nullable: false
18
+ field :percent_off, -> { Float }, optional: false, nullable: false
19
19
 
20
20
  field :period_end, -> { String }, optional: false, nullable: false
21
21
 
@@ -5,7 +5,7 @@ module Schematic
5
5
  module RulesEngineSchemaVersion
6
6
  extend Schematic::Internal::Types::Enum
7
7
 
8
- V_94_B_8_F_7_A_7 = "v94b8f7a7"
8
+ VF_4_A_06160 = "vf4a06160"
9
9
  PLACEHOLDER_FOR_FERN_COMPATIBILITY = "placeholder-for-fern-compatibility"
10
10
  end
11
11
  end
@@ -9,10 +9,12 @@ module Schematic
9
9
 
10
10
  field :billing_product_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
11
11
 
12
- field :credit_balances, -> { Internal::Types::Hash[String, Integer] }, optional: false, nullable: false
12
+ field :credit_balances, -> { Internal::Types::Hash[String, Float] }, optional: false, nullable: false
13
13
 
14
14
  field :credit_postpaid, -> { Internal::Types::Hash[String, Schematic::Types::RulesengineCreditPostpaidConfig] }, optional: true, nullable: false
15
15
 
16
+ field :credit_spend_policies, -> { Internal::Types::Array[Schematic::Types::RulesengineCreditSpendPolicy] }, optional: true, nullable: false
17
+
16
18
  field :entitlements, -> { Internal::Types::Array[Schematic::Types::RulesengineFeatureEntitlement] }, optional: true, nullable: false
17
19
 
18
20
  field :environment_id, -> { String }, optional: false, nullable: false
@@ -9,7 +9,7 @@ module Schematic
9
9
 
10
10
  field :condition_type, -> { Schematic::Types::RulesengineConditionType }, optional: false, nullable: false
11
11
 
12
- field :consumption_rate, -> { Integer }, optional: true, nullable: false
12
+ field :consumption_rate, -> { Float }, optional: true, nullable: false
13
13
 
14
14
  field :credit_id, -> { String }, optional: true, nullable: false
15
15
 
@@ -27,6 +27,8 @@ module Schematic
27
27
 
28
28
  field :operator, -> { Schematic::Types::RulesengineComparableOperator }, optional: false, nullable: false
29
29
 
30
+ field :quantity_rates, -> { Internal::Types::Hash[String, Float] }, optional: true, nullable: false
31
+
30
32
  field :resource_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
31
33
 
32
34
  field :trait_definition, -> { Schematic::Types::RulesengineTraitDefinition }, optional: true, nullable: false
@@ -3,7 +3,7 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class RulesengineCreditPostpaidConfig < Internal::Types::Model
6
- field :overdraft_limit, -> { Integer }, optional: true, nullable: false
6
+ field :overdraft_limit, -> { Float }, optional: true, nullable: false
7
7
  end
8
8
  end
9
9
  end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class RulesengineCreditSpendPolicy < Internal::Types::Model
6
+ field :consumed, -> { Float }, optional: true, nullable: false
7
+
8
+ field :credit_id, -> { String }, optional: false, nullable: false
9
+
10
+ field :id, -> { String }, optional: false, nullable: false
11
+
12
+ field :kind, -> { String }, optional: false, nullable: false
13
+
14
+ field :label, -> { String }, optional: true, nullable: false
15
+
16
+ field :limit, -> { Float }, optional: false, nullable: false
17
+
18
+ field :resets_at, -> { String }, optional: true, nullable: false
19
+
20
+ field :scope, -> { Schematic::Types::RulesengineCreditSpendPolicyScope }, optional: false, nullable: false
21
+
22
+ field :window, -> { Schematic::Types::RulesengineCreditSpendWindow }, optional: true, nullable: false
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ module RulesengineCreditSpendPolicyScope
6
+ extend Schematic::Internal::Types::Enum
7
+
8
+ COMPANY = "company"
9
+ USER = "user"
10
+ GROUP = "group"
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class RulesengineCreditSpendWindow < Internal::Types::Model
6
+ field :count, -> { Integer }, optional: false, nullable: false
7
+
8
+ field :unit, -> { String }, optional: false, nullable: false
9
+ end
10
+ end
11
+ end
@@ -5,19 +5,19 @@ module Schematic
5
5
  class RulesengineFeatureEntitlement < Internal::Types::Model
6
6
  field :allocation, -> { Integer }, optional: true, nullable: false
7
7
 
8
- field :consumption_rate, -> { Integer }, optional: true, nullable: false
8
+ field :consumption_rate, -> { Float }, optional: true, nullable: false
9
9
 
10
10
  field :credit_id, -> { String }, optional: true, nullable: false
11
11
 
12
- field :credit_remaining, -> { Integer }, optional: true, nullable: false
12
+ field :credit_remaining, -> { Float }, optional: true, nullable: false
13
13
 
14
- field :credit_reserved, -> { Integer }, optional: true, nullable: false
14
+ field :credit_reserved, -> { Float }, optional: true, nullable: false
15
15
 
16
- field :credit_settled, -> { Integer }, optional: true, nullable: false
16
+ field :credit_settled, -> { Float }, optional: true, nullable: false
17
17
 
18
- field :credit_total, -> { Integer }, optional: true, nullable: false
18
+ field :credit_total, -> { Float }, optional: true, nullable: false
19
19
 
20
- field :credit_used, -> { Integer }, optional: true, nullable: false
20
+ field :credit_used, -> { Float }, optional: true, nullable: false
21
21
 
22
22
  field :event_name, -> { String }, optional: true, nullable: false
23
23
 
@@ -33,6 +33,8 @@ module Schematic
33
33
 
34
34
  field :month_reset, -> { Schematic::Types::RulesengineMetricPeriodMonthReset }, optional: true, nullable: false
35
35
 
36
+ field :quantity_rates, -> { Internal::Types::Hash[String, Float] }, optional: true, nullable: false
37
+
36
38
  field :soft_limit, -> { Integer }, optional: true, nullable: false
37
39
 
38
40
  field :usage, -> { Integer }, optional: true, nullable: false
@@ -5,6 +5,8 @@ module Schematic
5
5
  class RulesengineUser < Internal::Types::Model
6
6
  field :account_id, -> { String }, optional: false, nullable: false
7
7
 
8
+ field :credit_spend_policies, -> { Internal::Types::Array[Schematic::Types::RulesengineCreditSpendPolicy] }, optional: true, nullable: false
9
+
8
10
  field :environment_id, -> { String }, optional: false, nullable: false
9
11
 
10
12
  field :id, -> { String }, optional: false, nullable: false
@@ -3,7 +3,7 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class ScheduledDowngradeResponseData < Internal::Types::Model
6
- field :currency, -> { String }, optional: false, nullable: false
6
+ field :currency, -> { Schematic::Types::Currency }, optional: false, nullable: false
7
7
 
8
8
  field :effective_after, -> { String }, optional: false, nullable: false
9
9
 
@@ -3,7 +3,7 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class TopFeatureByUsageResponseData < Internal::Types::Model
6
- field :change_pct, -> { Integer }, optional: true, nullable: false
6
+ field :change_pct, -> { Float }, optional: true, nullable: false
7
7
 
8
8
  field :feature_id, -> { String }, optional: false, nullable: false
9
9
 
@@ -15,7 +15,7 @@ module Schematic
15
15
 
16
16
  field :created_at, -> { String }, optional: false, nullable: false
17
17
 
18
- field :currency, -> { String }, optional: false, nullable: false
18
+ field :currency, -> { Schematic::Types::Currency }, optional: false, nullable: false
19
19
 
20
20
  field :customer_external_id, -> { String }, optional: false, nullable: false
21
21
 
@@ -45,7 +45,7 @@ module Schematic
45
45
 
46
46
  field :license_id, -> { String }, optional: true, nullable: false
47
47
 
48
- field :overdraft_limit, -> { Integer }, optional: true, nullable: false
48
+ field :overdraft_limit, -> { Float }, optional: true, nullable: false
49
49
 
50
50
  field :postpaid_enabled, -> { Internal::Types::Boolean }, optional: true, nullable: false
51
51
 
@@ -3,12 +3,14 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class UpdateEntitlementReqCommon < Internal::Types::Model
6
- field :credit_consumption_rate, -> { Integer }, optional: true, nullable: false
6
+ field :credit_consumption_rate, -> { Float }, optional: true, nullable: false
7
7
 
8
8
  field :metric_period, -> { Schematic::Types::MetricPeriod }, optional: true, nullable: false
9
9
 
10
10
  field :metric_period_month_reset, -> { Schematic::Types::MetricPeriodMonthReset }, optional: true, nullable: false
11
11
 
12
+ field :quantity_rates, -> { Internal::Types::Hash[String, Float] }, optional: true, nullable: false
13
+
12
14
  field :value_bool, -> { Internal::Types::Boolean }, optional: true, nullable: false
13
15
 
14
16
  field :value_credit_id, -> { String }, optional: true, nullable: false
@@ -9,7 +9,7 @@ module Schematic
9
9
 
10
10
  field :charge_type, -> { Schematic::Types::ChargeType }, optional: false, nullable: false
11
11
 
12
- field :currency, -> { String }, optional: true, nullable: false
12
+ field :currency, -> { Schematic::Types::Currency }, optional: true, nullable: false
13
13
 
14
14
  field :currency_prices, -> { Internal::Types::Array[Schematic::Types::PlanCurrencyPriceRequestBody] }, optional: true, nullable: false
15
15
 
@@ -7,7 +7,7 @@ module Schematic
7
7
 
8
8
  field :billing_threshold, -> { Integer }, optional: true, nullable: false
9
9
 
10
- field :currency, -> { String }, optional: true, nullable: false
10
+ field :currency, -> { Schematic::Types::Currency }, optional: true, nullable: false
11
11
 
12
12
  field :currency_prices, -> { Internal::Types::Array[Schematic::Types::CurrencyPriceRequestBody] }, optional: true, nullable: false
13
13
 
@@ -5,7 +5,7 @@ module Schematic
5
5
  class UsageBasedEntitlementResponseData < Internal::Types::Model
6
6
  field :billing_threshold, -> { Integer }, optional: true, nullable: false
7
7
 
8
- field :consumption_rate, -> { Integer }, optional: true, nullable: false
8
+ field :consumption_rate, -> { Float }, optional: true, nullable: false
9
9
 
10
10
  field :feature_id, -> { String }, optional: false, nullable: false
11
11
 
@@ -7,9 +7,9 @@ module Schematic
7
7
 
8
8
  field :credit_name, -> { String }, optional: false, nullable: false
9
9
 
10
- field :credits_used, -> { Integer }, optional: false, nullable: false
10
+ field :credits_used, -> { Float }, optional: false, nullable: false
11
11
 
12
- field :share, -> { Integer }, optional: false, nullable: false
12
+ field :share, -> { Float }, optional: false, nullable: false
13
13
 
14
14
  field :user, -> { Schematic::Types::UserResponseData }, optional: true, nullable: false
15
15
 
@@ -3,7 +3,7 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class UserDailyCreditPointResponseData < Internal::Types::Model
6
- field :credits_used, -> { Integer }, optional: false, nullable: false
6
+ field :credits_used, -> { Float }, optional: false, nullable: false
7
7
 
8
8
  field :date, -> { String }, optional: false, nullable: false
9
9
  end
@@ -7,7 +7,7 @@ module Schematic
7
7
 
8
8
  field :last_seen, -> { String }, optional: false, nullable: false
9
9
 
10
- field :share, -> { Integer }, optional: false, nullable: false
10
+ field :share, -> { Float }, optional: false, nullable: false
11
11
 
12
12
  field :user, -> { Schematic::Types::UserResponseData }, optional: true, nullable: false
13
13
 
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ module UserUsageMetric
6
+ extend Schematic::Internal::Types::Enum
7
+
8
+ CREDITS = "credits"
9
+ FEATURE = "feature"
10
+ end
11
+ end
12
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Schematic
4
- VERSION = "1.5.2"
4
+ VERSION = "1.5.4"
5
5
  end
Binary file