schematichq 1.4.0 → 1.4.2

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 (279) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +4 -4
  3. data/.fern/replay.lock +10 -0
  4. data/.fernignore +3 -0
  5. data/README.md +1 -1
  6. data/lib/schematic/accounts/client.rb +76 -0
  7. data/lib/schematic/accounts/types/get_account_member_response.rb +12 -0
  8. data/lib/schematic/accounts/types/list_account_members_params.rb +15 -0
  9. data/lib/schematic/accounts/types/list_account_members_request.rb +14 -0
  10. data/lib/schematic/accounts/types/list_account_members_response.rb +12 -0
  11. data/lib/schematic/billing/client.rb +6 -2
  12. data/lib/schematic/billing/types/count_billing_products_params.rb +1 -0
  13. data/lib/schematic/billing/types/count_billing_products_request.rb +1 -0
  14. data/lib/schematic/billing/types/create_billing_price_request_body.rb +2 -0
  15. data/lib/schematic/billing/types/create_billing_subscription_request_body.rb +1 -0
  16. data/lib/schematic/billing/types/create_meter_request_body.rb +1 -0
  17. data/lib/schematic/billing/types/list_billing_products_params.rb +1 -0
  18. data/lib/schematic/billing/types/list_billing_products_request.rb +1 -0
  19. data/lib/schematic/cache.rb +7 -4
  20. data/lib/schematic/client.rb +14 -4
  21. data/lib/schematic/companies/client.rb +8 -105
  22. data/lib/schematic/companies/types/count_companies_params.rb +1 -0
  23. data/lib/schematic/companies/types/count_companies_request.rb +1 -0
  24. data/lib/schematic/companies/types/list_companies_params.rb +1 -0
  25. data/lib/schematic/companies/types/list_companies_request.rb +1 -0
  26. data/lib/schematic/companies/types/list_plan_changes_params.rb +2 -2
  27. data/lib/schematic/companies/types/list_plan_changes_request.rb +2 -2
  28. data/lib/schematic/credits/client.rb +44 -2
  29. data/lib/schematic/credits/types/count_billing_plan_credit_grants_params.rb +1 -0
  30. data/lib/schematic/credits/types/count_billing_plan_credit_grants_request.rb +1 -0
  31. data/lib/schematic/credits/types/list_billing_plan_credit_grants_params.rb +1 -0
  32. data/lib/schematic/credits/types/list_billing_plan_credit_grants_request.rb +1 -0
  33. data/lib/schematic/credits/types/list_company_credit_balances_params.rb +12 -0
  34. data/lib/schematic/credits/types/list_company_credit_balances_request.rb +11 -0
  35. data/lib/schematic/credits/types/list_company_credit_balances_response.rb +12 -0
  36. data/lib/schematic/datastream/client.rb +28 -21
  37. data/lib/schematic/datastream/websocket_client.rb +32 -1
  38. data/lib/schematic/entitlements/client.rb +38 -2
  39. data/lib/schematic/entitlements/types/count_feature_usage_params.rb +1 -0
  40. data/lib/schematic/entitlements/types/count_feature_usage_request.rb +1 -0
  41. data/lib/schematic/entitlements/types/create_billing_linked_plan_entitlement_request_body.rb +44 -0
  42. data/lib/schematic/entitlements/types/create_company_override_request_body.rb +2 -2
  43. data/lib/schematic/entitlements/types/create_plan_entitlement_request_body.rb +6 -2
  44. data/lib/schematic/entitlements/types/list_feature_usage_params.rb +1 -0
  45. data/lib/schematic/entitlements/types/list_feature_usage_request.rb +1 -0
  46. data/lib/schematic/entitlements/types/update_company_override_request_body.rb +2 -2
  47. data/lib/schematic/entitlements/types/update_plan_entitlement_request_body.rb +6 -2
  48. data/lib/schematic/entitlements/types/upsert_plan_entitlement_for_billing_product_response.rb +12 -0
  49. data/lib/schematic/event_buffer.rb +10 -2
  50. data/lib/schematic/events/client.rb +3 -1
  51. data/lib/schematic/events/types/list_events_params.rb +1 -0
  52. data/lib/schematic/events/types/list_events_request.rb +1 -0
  53. data/lib/schematic/features/client.rb +50 -14
  54. data/lib/schematic/features/types/count_features_params.rb +1 -0
  55. data/lib/schematic/features/types/count_features_request.rb +4 -3
  56. data/lib/schematic/features/types/create_billing_linked_feature_request_body.rb +23 -0
  57. data/lib/schematic/features/types/create_feature_request_body.rb +1 -1
  58. data/lib/schematic/features/types/list_features_params.rb +1 -0
  59. data/lib/schematic/features/types/list_features_request.rb +4 -3
  60. data/lib/schematic/features/types/update_feature_request_body.rb +1 -1
  61. data/lib/schematic/features/types/upsert_feature_for_billing_product_response.rb +12 -0
  62. data/lib/schematic/insights/client.rb +251 -0
  63. data/lib/schematic/insights/types/get_activity_params.rb +12 -0
  64. data/lib/schematic/insights/types/get_activity_request.rb +11 -0
  65. data/lib/schematic/insights/types/get_activity_response.rb +12 -0
  66. data/lib/schematic/insights/types/get_environment_feature_usage_time_series_params.rb +15 -0
  67. data/lib/schematic/insights/types/get_environment_feature_usage_time_series_request.rb +14 -0
  68. data/lib/schematic/insights/types/get_environment_feature_usage_time_series_response.rb +12 -0
  69. data/lib/schematic/insights/types/get_environment_trait_usage_time_series_params.rb +15 -0
  70. data/lib/schematic/insights/types/get_environment_trait_usage_time_series_request.rb +14 -0
  71. data/lib/schematic/insights/types/get_environment_trait_usage_time_series_response.rb +12 -0
  72. data/lib/schematic/insights/types/get_plan_growth_params.rb +12 -0
  73. data/lib/schematic/insights/types/get_plan_growth_request.rb +11 -0
  74. data/lib/schematic/insights/types/get_plan_growth_response.rb +12 -0
  75. data/lib/schematic/{companies/types/create_plan_trait_response.rb → insights/types/get_summary_response.rb} +3 -3
  76. data/lib/schematic/insights/types/get_top_features_by_usage_params.rb +14 -0
  77. data/lib/schematic/insights/types/get_top_features_by_usage_request.rb +13 -0
  78. data/lib/schematic/insights/types/get_top_features_by_usage_response.rb +12 -0
  79. data/lib/schematic/integrationsapi/client.rb +223 -0
  80. data/lib/schematic/integrationsapi/types/get_integration_webhook_url_response.rb +12 -0
  81. data/lib/schematic/integrationsapi/types/list_integrations_params.rb +18 -0
  82. data/lib/schematic/integrationsapi/types/list_integrations_request.rb +17 -0
  83. data/lib/schematic/integrationsapi/types/list_integrations_response.rb +12 -0
  84. data/lib/schematic/integrationsapi/types/load_sample_data_set_v_2_response.rb +12 -0
  85. data/lib/schematic/integrationsapi/types/run_integration_response.rb +12 -0
  86. data/lib/schematic/integrationsapi/types/start_data_import_request_body.rb +13 -0
  87. data/lib/schematic/integrationsapi/types/start_data_import_response.rb +12 -0
  88. data/lib/schematic/{companies/types/delete_plan_trait_response.rb → integrationsapi/types/uninstall_integration_response.rb} +2 -2
  89. data/lib/schematic/planbundle/client.rb +32 -0
  90. data/lib/schematic/planbundle/types/create_custom_plan_bundle_request_body.rb +13 -0
  91. data/lib/schematic/planbundle/types/create_custom_plan_bundle_response.rb +12 -0
  92. data/lib/schematic/plans/client.rb +251 -2
  93. data/lib/schematic/plans/types/count_billing_product_match_companies_params.rb +15 -0
  94. data/lib/schematic/plans/types/count_billing_product_match_companies_request.rb +14 -0
  95. data/lib/schematic/plans/types/count_billing_product_match_companies_response.rb +12 -0
  96. data/lib/schematic/plans/types/count_plans_params.rb +3 -0
  97. data/lib/schematic/plans/types/count_plans_request.rb +3 -0
  98. data/lib/schematic/plans/types/create_billing_linked_plan_request_body.rb +17 -0
  99. data/lib/schematic/plans/types/create_custom_plan_request_body.rb +15 -0
  100. data/lib/schematic/{companies/types/update_plan_trait_response.rb → plans/types/create_custom_plan_response.rb} +3 -3
  101. data/lib/schematic/plans/types/list_billing_product_match_companies_params.rb +15 -0
  102. data/lib/schematic/plans/types/list_billing_product_match_companies_request.rb +14 -0
  103. data/lib/schematic/plans/types/list_billing_product_match_companies_response.rb +12 -0
  104. data/lib/schematic/plans/types/list_custom_plan_billings_params.rb +17 -0
  105. data/lib/schematic/plans/types/list_custom_plan_billings_request.rb +16 -0
  106. data/lib/schematic/plans/types/list_custom_plan_billings_response.rb +12 -0
  107. data/lib/schematic/plans/types/list_plans_params.rb +3 -0
  108. data/lib/schematic/plans/types/list_plans_request.rb +3 -0
  109. data/lib/schematic/plans/types/publish_plan_version_request_body.rb +4 -0
  110. data/lib/schematic/plans/types/retry_custom_plan_billing_request_body.rb +15 -0
  111. data/lib/schematic/plans/types/retry_custom_plan_billing_response.rb +12 -0
  112. data/lib/schematic/plans/types/upsert_plan_for_billing_product_response.rb +12 -0
  113. data/lib/schematic/redis_cache.rb +5 -2
  114. data/lib/schematic/schematic_client.rb +0 -1
  115. data/lib/schematic/types/account_member_permission.rb +25 -0
  116. data/lib/schematic/types/account_member_response_data.rb +16 -0
  117. data/lib/schematic/types/{rulesengine_company_metric_month_reset.rb → account_member_role.rb} +3 -3
  118. data/lib/schematic/types/activity_entry_response_data.rb +14 -0
  119. data/lib/schematic/types/activity_response_response_data.rb +9 -0
  120. data/lib/schematic/types/api_key_create_response_data.rb +2 -0
  121. data/lib/schematic/types/api_key_integration_response_data.rb +11 -0
  122. data/lib/schematic/types/api_key_response_data.rb +2 -0
  123. data/lib/schematic/types/audit_log_list_response_data.rb +2 -0
  124. data/lib/schematic/types/audit_log_response_data.rb +2 -0
  125. data/lib/schematic/types/billing_credit_bundle_view.rb +1 -1
  126. data/lib/schematic/types/billing_credit_view.rb +1 -0
  127. data/lib/schematic/types/billing_linked_resource_response_data.rb +11 -0
  128. data/lib/schematic/types/billing_plan_credit_grant_response_data.rb +2 -0
  129. data/lib/schematic/types/billing_price_response_data.rb +2 -0
  130. data/lib/schematic/types/billing_price_view.rb +2 -0
  131. data/lib/schematic/types/billing_product_for_subscription_response_data.rb +1 -0
  132. data/lib/schematic/types/billing_product_plan_response_data.rb +2 -1
  133. data/lib/schematic/types/billing_product_price_response_data.rb +2 -0
  134. data/lib/schematic/types/billing_provider_type.rb +1 -0
  135. data/lib/schematic/types/billing_strategy.rb +13 -0
  136. data/lib/schematic/types/change_subscription_internal_request_body.rb +1 -0
  137. data/lib/schematic/types/change_subscription_request_body.rb +1 -0
  138. data/lib/schematic/types/charge_type.rb +1 -0
  139. data/lib/schematic/types/check_flag_response_data.rb +2 -2
  140. data/lib/schematic/types/checkout_subscription.rb +1 -0
  141. data/lib/schematic/types/clerk_integration_config.rb +10 -0
  142. data/lib/schematic/types/company_credit_balance_response_data.rb +12 -0
  143. data/lib/schematic/types/company_detail_response_data.rb +1 -0
  144. data/lib/schematic/types/company_event_period_metrics_response_data.rb +2 -2
  145. data/lib/schematic/types/company_matching_criteria.rb +12 -0
  146. data/lib/schematic/types/company_override_response_data.rb +2 -2
  147. data/lib/schematic/types/company_plan_credit_grant_view.rb +40 -0
  148. data/lib/schematic/types/company_plan_detail_response_data.rb +9 -3
  149. data/lib/schematic/types/company_plan_with_billing_sub_view.rb +1 -1
  150. data/lib/schematic/types/company_subscription_response_data.rb +1 -0
  151. data/lib/schematic/types/{condition_operator.rb → comparable_operator.rb} +4 -4
  152. data/lib/schematic/types/condition.rb +4 -4
  153. data/lib/schematic/types/condition_response_data.rb +4 -4
  154. data/lib/schematic/types/{condition_condition_type.rb → condition_type.rb} +1 -1
  155. data/lib/schematic/types/condition_view.rb +4 -4
  156. data/lib/schematic/types/create_billing_plan_credit_grant_request_body.rb +2 -0
  157. data/lib/schematic/types/create_custom_plan_bundle_plan_request_body.rb +12 -0
  158. data/lib/schematic/types/create_entitlement_in_bundle_request_body.rb +6 -2
  159. data/lib/schematic/types/create_entitlement_req_common.rb +2 -2
  160. data/lib/schematic/types/create_event_request_body.rb +3 -0
  161. data/lib/schematic/types/create_flag_request_body.rb +1 -1
  162. data/lib/schematic/types/create_or_update_condition_request_body.rb +4 -4
  163. data/lib/schematic/types/create_or_update_flag_request_body.rb +1 -1
  164. data/lib/schematic/types/create_or_update_rule_request_body.rb +1 -1
  165. data/lib/schematic/types/create_plan_request_body.rb +1 -1
  166. data/lib/schematic/types/credit_currency_price.rb +10 -0
  167. data/lib/schematic/types/currency_price_request_body.rb +3 -0
  168. data/lib/schematic/types/custom_plan_activation_strategy.rb +12 -0
  169. data/lib/schematic/types/custom_plan_billing_response_data.rb +19 -0
  170. data/lib/schematic/types/custom_plan_billing_status.rb +14 -0
  171. data/lib/schematic/types/data_event_payload.rb +3 -0
  172. data/lib/schematic/types/datastream_company_plan.rb +1 -0
  173. data/lib/schematic/types/duplicate_plan_entitlements_response_response_data.rb +1 -0
  174. data/lib/schematic/types/entitlement_currency_prices_response_data.rb +1 -0
  175. data/lib/schematic/types/environment_feature_usage_time_series_response_data.rb +11 -0
  176. data/lib/schematic/types/environment_trait_usage_time_series_response_data.rb +11 -0
  177. data/lib/schematic/types/environment_usage_point_response_data.rb +10 -0
  178. data/lib/schematic/types/event_detail_response_data.rb +2 -0
  179. data/lib/schematic/types/event_response_data.rb +1 -0
  180. data/lib/schematic/types/feature_company_response_data.rb +4 -3
  181. data/lib/schematic/types/feature_company_user_response_data.rb +2 -2
  182. data/lib/schematic/types/feature_detail_response_data.rb +3 -1
  183. data/lib/schematic/types/feature_entitlement.rb +2 -2
  184. data/lib/schematic/types/feature_in_plan_response_data.rb +26 -0
  185. data/lib/schematic/types/feature_response_data.rb +1 -1
  186. data/lib/schematic/types/feature_usage_response_data.rb +4 -3
  187. data/lib/schematic/types/feature_view.rb +1 -1
  188. data/lib/schematic/types/flag_detail_response_data.rb +2 -1
  189. data/lib/schematic/types/flag_in_plan_response_data.rb +21 -0
  190. data/lib/schematic/types/flag_response_data.rb +1 -1
  191. data/lib/schematic/types/flag_view.rb +0 -1
  192. data/lib/schematic/types/insights_summary_response_data.rb +14 -0
  193. data/lib/schematic/types/integration_capabilities.rb +11 -0
  194. data/lib/schematic/types/integration_config.rb +15 -0
  195. data/lib/schematic/types/integration_response_data.rb +13 -0
  196. data/lib/schematic/types/integration_state.rb +13 -0
  197. data/lib/schematic/types/{plan_controlled_by_type.rb → integration_type.rb} +4 -2
  198. data/lib/schematic/types/integration_webhook_url_response_data.rb +10 -0
  199. data/lib/schematic/types/integrations_data_set_response_data.rb +9 -0
  200. data/lib/schematic/types/integrations_list_response_data.rb +15 -0
  201. data/lib/schematic/types/integrations_response_data.rb +13 -0
  202. data/lib/schematic/types/{condition_metric_period.rb → metric_period.rb} +1 -1
  203. data/lib/schematic/types/{feature_entitlement_month_reset.rb → metric_period_month_reset.rb} +2 -2
  204. data/lib/schematic/types/mrr_response_data.rb +10 -0
  205. data/lib/schematic/types/orb_integration_config.rb +9 -0
  206. data/lib/schematic/types/plan_credit_grant_view.rb +2 -0
  207. data/lib/schematic/types/plan_currency_price_request_body.rb +1 -0
  208. data/lib/schematic/types/plan_currency_prices_response_data.rb +1 -0
  209. data/lib/schematic/types/plan_detail_response_data.rb +9 -3
  210. data/lib/schematic/types/plan_entitlement_response_data.rb +4 -2
  211. data/lib/schematic/types/plan_group_plan_detail_response_data.rb +9 -3
  212. data/lib/schematic/types/plan_growth_point_response_data.rb +12 -0
  213. data/lib/schematic/types/plan_growth_response_data.rb +9 -0
  214. data/lib/schematic/types/plan_icon.rb +35 -0
  215. data/lib/schematic/types/plan_response_data.rb +3 -1
  216. data/lib/schematic/types/plan_version_response_data.rb +1 -1
  217. data/lib/schematic/types/plan_view_public_response_data.rb +9 -3
  218. data/lib/schematic/types/rule.rb +1 -1
  219. data/lib/schematic/types/rule_condition_detail_response_data.rb +4 -4
  220. data/lib/schematic/types/rule_condition_response_data.rb +4 -4
  221. data/lib/schematic/types/rule_detail_response_data.rb +1 -1
  222. data/lib/schematic/types/rule_response_data.rb +1 -1
  223. data/lib/schematic/types/{rule_rule_type.rb → rule_type.rb} +3 -3
  224. data/lib/schematic/types/rule_view.rb +1 -1
  225. data/lib/schematic/types/rules_engine_schema_version.rb +1 -1
  226. data/lib/schematic/types/rulesengine_check_flag_result.rb +2 -2
  227. data/lib/schematic/types/rulesengine_company_metric.rb +2 -2
  228. data/lib/schematic/types/rulesengine_condition.rb +4 -4
  229. data/lib/schematic/types/{rulesengine_condition_condition_type.rb → rulesengine_condition_type.rb} +1 -1
  230. data/lib/schematic/types/rulesengine_feature_entitlement.rb +2 -2
  231. data/lib/schematic/types/{feature_entitlement_metric_period.rb → rulesengine_metric_period.rb} +1 -1
  232. data/lib/schematic/types/{condition_metric_period_month_reset.rb → rulesengine_metric_period_month_reset.rb} +2 -2
  233. data/lib/schematic/types/rulesengine_rule.rb +1 -1
  234. data/lib/schematic/types/{rulesengine_rule_rule_type.rb → rulesengine_rule_type.rb} +3 -3
  235. data/lib/schematic/types/stripe_integration_config.rb +15 -0
  236. data/lib/schematic/types/top_feature_by_usage_response_data.rb +14 -0
  237. data/lib/schematic/types/top_features_by_usage_response_data.rb +9 -0
  238. data/lib/schematic/types/trial_status.rb +13 -0
  239. data/lib/schematic/types/update_auto_topup_override_request_body.rb +12 -0
  240. data/lib/schematic/types/update_billing_plan_credit_grant_request_body.rb +2 -0
  241. data/lib/schematic/types/update_entitlement_req_common.rb +2 -2
  242. data/lib/schematic/types/update_plan_request_body.rb +1 -1
  243. data/lib/schematic/types/upsert_billing_product_request_body.rb +3 -0
  244. data/lib/schematic/types/usage_based_entitlement_request_body.rb +4 -0
  245. data/lib/schematic/types/usage_based_entitlement_response_data.rb +3 -2
  246. data/lib/schematic/types/webhook_url.rb +10 -0
  247. data/lib/schematic/version.rb +1 -1
  248. data/lib/schematic.rb +121 -57
  249. data/reference.md +2910 -886
  250. metadata +110 -45
  251. data/lib/schematic/companies/types/create_plan_trait_request_body.rb +0 -13
  252. data/lib/schematic/companies/types/update_plan_trait_request_body.rb +0 -13
  253. data/lib/schematic/entitlements/types/create_company_override_request_body_metric_period.rb +0 -16
  254. data/lib/schematic/entitlements/types/create_company_override_request_body_metric_period_month_reset.rb +0 -14
  255. data/lib/schematic/entitlements/types/create_plan_entitlement_request_body_metric_period.rb +0 -16
  256. data/lib/schematic/entitlements/types/create_plan_entitlement_request_body_metric_period_month_reset.rb +0 -14
  257. data/lib/schematic/entitlements/types/update_company_override_request_body_metric_period.rb +0 -16
  258. data/lib/schematic/entitlements/types/update_company_override_request_body_metric_period_month_reset.rb +0 -14
  259. data/lib/schematic/entitlements/types/update_plan_entitlement_request_body_metric_period.rb +0 -16
  260. data/lib/schematic/entitlements/types/update_plan_entitlement_request_body_metric_period_month_reset.rb +0 -14
  261. data/lib/schematic/types/create_entitlement_in_bundle_request_body_metric_period.rb +0 -14
  262. data/lib/schematic/types/create_entitlement_in_bundle_request_body_metric_period_month_reset.rb +0 -12
  263. data/lib/schematic/types/create_entitlement_req_common_metric_period.rb +0 -14
  264. data/lib/schematic/types/create_entitlement_req_common_metric_period_month_reset.rb +0 -12
  265. data/lib/schematic/types/create_or_update_condition_request_body_condition_type.rb +0 -17
  266. data/lib/schematic/types/create_or_update_condition_request_body_metric_period.rb +0 -14
  267. data/lib/schematic/types/create_or_update_condition_request_body_metric_period_month_reset.rb +0 -12
  268. data/lib/schematic/types/create_or_update_condition_request_body_operator.rb +0 -18
  269. data/lib/schematic/types/create_or_update_rule_request_body_rule_type.rb +0 -15
  270. data/lib/schematic/types/rulesengine_check_flag_result_feature_usage_period.rb +0 -14
  271. data/lib/schematic/types/rulesengine_check_flag_result_rule_type.rb +0 -17
  272. data/lib/schematic/types/rulesengine_company_metric_period.rb +0 -14
  273. data/lib/schematic/types/rulesengine_condition_metric_period.rb +0 -14
  274. data/lib/schematic/types/rulesengine_condition_metric_period_month_reset.rb +0 -12
  275. data/lib/schematic/types/rulesengine_condition_operator.rb +0 -18
  276. data/lib/schematic/types/rulesengine_feature_entitlement_metric_period.rb +0 -14
  277. data/lib/schematic/types/rulesengine_feature_entitlement_month_reset.rb +0 -12
  278. data/lib/schematic/types/update_entitlement_req_common_metric_period.rb +0 -14
  279. data/lib/schematic/types/update_entitlement_req_common_metric_period_month_reset.rb +0 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4a37f9b78f97beda5bfbe730f7f2379af6ebc839d78effba80bb721937c4c543
4
- data.tar.gz: 5023b82060064243de4b6e1819d4f8b3d7c28d5a04c120d76d1625208ce2767b
3
+ metadata.gz: 3d21af200007a5f9fad7ebc682971bbad191e98c0b5f7cd10b691627651069c7
4
+ data.tar.gz: e944d620948b8acdb24d375eed9365982edf50c8ff089a6f4c74821cbb88a4c3
5
5
  SHA512:
6
- metadata.gz: f794285eeef51f342e46facd95319bb2a9dac39d862f062889076f11bab49fa2dc10626363135e12058c2380db85ab6bf3b6b60a77c6387961596d7e59f1f580
7
- data.tar.gz: a2f5fe984d629ac16dc9886c7419bb65790707f263936e0674d506dda69b57df1bae5c472a9e2823dfd5dd0a6c8e850beff8d3e529ca93d91063a7c36adc7910
6
+ metadata.gz: 980692b9e74fbbf6683623e2502bd5ef153d78f5c20245bdb5d3cc26787eaa142f6ac345ba5873acfb29a2fa93a2e0c0beab40717c692e5f3154d731219fad9d
7
+ data.tar.gz: 0f16bc4c9d391123750a85530d21a7a4a841cf8962d2cc867912f2935f0627e732cbff5c1c56ed677302704636290f962794066c18d9cb6f4e2d74dc63f3890d
data/.fern/metadata.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
- "cliVersion": "4.43.1",
2
+ "cliVersion": "5.6.0",
3
3
  "generatorName": "fernapi/fern-ruby-sdk",
4
- "generatorVersion": "1.1.11",
4
+ "generatorVersion": "1.1.13",
5
5
  "generatorConfig": {
6
6
  "module": "SchematicHQ",
7
7
  "rubocopVariableNumberStyle": "disabled",
@@ -13,6 +13,6 @@
13
13
  "webrick": ">= 1.0"
14
14
  }
15
15
  },
16
- "originGitCommit": "42e108eda47d554722530a9d404ee80ba2da1b28",
17
- "sdkVersion": "1.4.0"
16
+ "originGitCommit": "3dc12b536625ca1efbb649f6c55df7da258c7e05",
17
+ "sdkVersion": "1.4.2"
18
18
  }
data/.fern/replay.lock ADDED
@@ -0,0 +1,10 @@
1
+ # DO NOT EDIT MANUALLY - Managed by Fern Replay
2
+ version: "1.0"
3
+ generations:
4
+ - commit_sha: 298b1d0ee88b6637d99742bff32b353cfbd5b32e
5
+ tree_hash: 5e94ea993931a768a9df010fe0bccdf52d154846
6
+ timestamp: 2026-05-19T19:48:36.665Z
7
+ cli_version: unknown
8
+ generator_versions: {}
9
+ current_generation: 298b1d0ee88b6637d99742bff32b353cfbd5b32e
10
+ patches: []
data/.fernignore CHANGED
@@ -19,3 +19,6 @@ lib/schematichq.rb
19
19
  scripts/
20
20
  test/custom.test.rb
21
21
  testapp/
22
+ .fern/replay.lock
23
+ .fern/replay.yml
24
+ .gitattributes
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # schematic-ruby
1
+ # Schematic Ruby SDK
2
2
 
3
3
  ## Installation and Setup
4
4
 
@@ -10,6 +10,82 @@ module Schematic
10
10
  @client = client
11
11
  end
12
12
 
13
+ # @param request_options [Hash]
14
+ # @param params [Hash]
15
+ # @option request_options [String] :base_url
16
+ # @option request_options [Hash{String => Object}] :additional_headers
17
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
18
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
19
+ # @option request_options [Integer] :timeout_in_seconds
20
+ # @option params [String, nil] :ids
21
+ # @option params [String, nil] :q
22
+ # @option params [Integer, nil] :limit
23
+ # @option params [Integer, nil] :offset
24
+ #
25
+ # @return [Schematic::Accounts::Types::ListAccountMembersResponse]
26
+ def list_account_members(request_options: {}, **params)
27
+ params = Schematic::Internal::Types::Utils.normalize_keys(params)
28
+ query_param_names = %i[ids q limit offset]
29
+ query_params = {}
30
+ query_params["ids"] = params[:ids] if params.key?(:ids)
31
+ query_params["q"] = params[:q] if params.key?(:q)
32
+ query_params["limit"] = params[:limit] if params.key?(:limit)
33
+ query_params["offset"] = params[:offset] if params.key?(:offset)
34
+ params.except(*query_param_names)
35
+
36
+ request = Schematic::Internal::JSON::Request.new(
37
+ base_url: request_options[:base_url],
38
+ method: "GET",
39
+ path: "account-members",
40
+ query: query_params,
41
+ request_options: request_options
42
+ )
43
+ begin
44
+ response = @client.send(request)
45
+ rescue Net::HTTPRequestTimeout
46
+ raise Schematic::Errors::TimeoutError
47
+ end
48
+ code = response.code.to_i
49
+ if code.between?(200, 299)
50
+ Schematic::Accounts::Types::ListAccountMembersResponse.load(response.body)
51
+ else
52
+ error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
53
+ raise error_class.new(response.body, code: code)
54
+ end
55
+ end
56
+
57
+ # @param request_options [Hash]
58
+ # @param params [Hash]
59
+ # @option request_options [String] :base_url
60
+ # @option request_options [Hash{String => Object}] :additional_headers
61
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
62
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
63
+ # @option request_options [Integer] :timeout_in_seconds
64
+ # @option params [String] :account_member_id
65
+ #
66
+ # @return [Schematic::Accounts::Types::GetAccountMemberResponse]
67
+ def get_account_member(request_options: {}, **params)
68
+ params = Schematic::Internal::Types::Utils.normalize_keys(params)
69
+ request = Schematic::Internal::JSON::Request.new(
70
+ base_url: request_options[:base_url],
71
+ method: "GET",
72
+ path: "account-members/#{URI.encode_uri_component(params[:account_member_id].to_s)}",
73
+ request_options: request_options
74
+ )
75
+ begin
76
+ response = @client.send(request)
77
+ rescue Net::HTTPRequestTimeout
78
+ raise Schematic::Errors::TimeoutError
79
+ end
80
+ code = response.code.to_i
81
+ if code.between?(200, 299)
82
+ Schematic::Accounts::Types::GetAccountMemberResponse.load(response.body)
83
+ else
84
+ error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
85
+ raise error_class.new(response.body, code: code)
86
+ end
87
+ end
88
+
13
89
  # @param request_options [Hash]
14
90
  # @param params [Hash]
15
91
  # @option request_options [String] :base_url
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Accounts
5
+ module Types
6
+ class GetAccountMemberResponse < Internal::Types::Model
7
+ field :data, -> { Schematic::Types::AccountMemberResponseData }, optional: false, nullable: false
8
+ field :params, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: false
9
+ end
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Accounts
5
+ module Types
6
+ # Input parameters
7
+ class ListAccountMembersParams < Internal::Types::Model
8
+ field :ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
9
+ field :limit, -> { Integer }, optional: true, nullable: false
10
+ field :offset, -> { Integer }, optional: true, nullable: false
11
+ field :q, -> { String }, optional: true, nullable: false
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Accounts
5
+ module Types
6
+ class ListAccountMembersRequest < Internal::Types::Model
7
+ field :ids, -> { String }, optional: true, nullable: false
8
+ field :q, -> { String }, optional: true, nullable: false
9
+ field :limit, -> { Integer }, optional: true, nullable: false
10
+ field :offset, -> { Integer }, optional: true, nullable: false
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Accounts
5
+ module Types
6
+ class ListAccountMembersResponse < Internal::Types::Model
7
+ field :data, -> { Internal::Types::Array[Schematic::Types::AccountMemberResponseData] }, optional: false, nullable: false
8
+ field :params, -> { Schematic::Accounts::Types::ListAccountMembersParams }, optional: false, nullable: false
9
+ end
10
+ end
11
+ end
12
+ end
@@ -719,6 +719,7 @@ module Schematic
719
719
  # @option params [Schematic::Types::BillingPriceUsageType, nil] :price_usage_type
720
720
  # @option params [Schematic::Types::BillingProviderType, nil] :provider_type
721
721
  # @option params [String, nil] :q
722
+ # @option params [Boolean, nil] :recurring_charges_only
722
723
  # @option params [Boolean, nil] :with_one_time_charges
723
724
  # @option params [Boolean, nil] :with_prices_only
724
725
  # @option params [Boolean, nil] :with_zero_price
@@ -729,7 +730,7 @@ module Schematic
729
730
  # @return [Schematic::Billing::Types::ListBillingProductsResponse]
730
731
  def list_billing_products(request_options: {}, **params)
731
732
  params = Schematic::Internal::Types::Utils.normalize_keys(params)
732
- query_param_names = %i[ids is_active name price_usage_type provider_type q with_one_time_charges with_prices_only with_zero_price without_linked_to_plan limit offset]
733
+ query_param_names = %i[ids is_active name price_usage_type provider_type q recurring_charges_only with_one_time_charges with_prices_only with_zero_price without_linked_to_plan limit offset]
733
734
  query_params = {}
734
735
  query_params["ids"] = params[:ids] if params.key?(:ids)
735
736
  query_params["is_active"] = params[:is_active] if params.key?(:is_active)
@@ -737,6 +738,7 @@ module Schematic
737
738
  query_params["price_usage_type"] = params[:price_usage_type] if params.key?(:price_usage_type)
738
739
  query_params["provider_type"] = params[:provider_type] if params.key?(:provider_type)
739
740
  query_params["q"] = params[:q] if params.key?(:q)
741
+ query_params["recurring_charges_only"] = params[:recurring_charges_only] if params.key?(:recurring_charges_only)
740
742
  query_params["with_one_time_charges"] = params[:with_one_time_charges] if params.key?(:with_one_time_charges)
741
743
  query_params["with_prices_only"] = params[:with_prices_only] if params.key?(:with_prices_only)
742
744
  query_params["with_zero_price"] = params[:with_zero_price] if params.key?(:with_zero_price)
@@ -779,6 +781,7 @@ module Schematic
779
781
  # @option params [Schematic::Types::BillingPriceUsageType, nil] :price_usage_type
780
782
  # @option params [Schematic::Types::BillingProviderType, nil] :provider_type
781
783
  # @option params [String, nil] :q
784
+ # @option params [Boolean, nil] :recurring_charges_only
782
785
  # @option params [Boolean, nil] :with_one_time_charges
783
786
  # @option params [Boolean, nil] :with_prices_only
784
787
  # @option params [Boolean, nil] :with_zero_price
@@ -789,7 +792,7 @@ module Schematic
789
792
  # @return [Schematic::Billing::Types::CountBillingProductsResponse]
790
793
  def count_billing_products(request_options: {}, **params)
791
794
  params = Schematic::Internal::Types::Utils.normalize_keys(params)
792
- query_param_names = %i[ids is_active name price_usage_type provider_type q with_one_time_charges with_prices_only with_zero_price without_linked_to_plan limit offset]
795
+ query_param_names = %i[ids is_active name price_usage_type provider_type q recurring_charges_only with_one_time_charges with_prices_only with_zero_price without_linked_to_plan limit offset]
793
796
  query_params = {}
794
797
  query_params["ids"] = params[:ids] if params.key?(:ids)
795
798
  query_params["is_active"] = params[:is_active] if params.key?(:is_active)
@@ -797,6 +800,7 @@ module Schematic
797
800
  query_params["price_usage_type"] = params[:price_usage_type] if params.key?(:price_usage_type)
798
801
  query_params["provider_type"] = params[:provider_type] if params.key?(:provider_type)
799
802
  query_params["q"] = params[:q] if params.key?(:q)
803
+ query_params["recurring_charges_only"] = params[:recurring_charges_only] if params.key?(:recurring_charges_only)
800
804
  query_params["with_one_time_charges"] = params[:with_one_time_charges] if params.key?(:with_one_time_charges)
801
805
  query_params["with_prices_only"] = params[:with_prices_only] if params.key?(:with_prices_only)
802
806
  query_params["with_zero_price"] = params[:with_zero_price] if params.key?(:with_zero_price)
@@ -13,6 +13,7 @@ module Schematic
13
13
  field :price_usage_type, -> { Schematic::Types::BillingPriceUsageType }, optional: true, nullable: false
14
14
  field :provider_type, -> { Schematic::Types::BillingProviderType }, optional: true, nullable: false
15
15
  field :q, -> { String }, optional: true, nullable: false
16
+ field :recurring_charges_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
16
17
  field :with_one_time_charges, -> { Internal::Types::Boolean }, optional: true, nullable: false
17
18
  field :with_prices_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
18
19
  field :with_zero_price, -> { Internal::Types::Boolean }, optional: true, nullable: false
@@ -10,6 +10,7 @@ module Schematic
10
10
  field :price_usage_type, -> { Schematic::Types::BillingPriceUsageType }, optional: true, nullable: false
11
11
  field :provider_type, -> { Schematic::Types::BillingProviderType }, optional: true, nullable: false
12
12
  field :q, -> { String }, optional: true, nullable: false
13
+ field :recurring_charges_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
13
14
  field :with_one_time_charges, -> { Internal::Types::Boolean }, optional: true, nullable: false
14
15
  field :with_prices_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
15
16
  field :with_zero_price, -> { Internal::Types::Boolean }, optional: true, nullable: false
@@ -8,8 +8,10 @@ module Schematic
8
8
  field :currency, -> { String }, optional: false, nullable: false
9
9
  field :external_account_id, -> { String }, optional: false, nullable: false
10
10
  field :interval, -> { String }, optional: false, nullable: false
11
+ field :interval_count, -> { Integer }, optional: true, nullable: false
11
12
  field :is_active, -> { Internal::Types::Boolean }, optional: false, nullable: false
12
13
  field :meter_id, -> { String }, optional: true, nullable: false
14
+ field :nickname, -> { String }, optional: true, nullable: false
13
15
  field :package_size, -> { Integer }, optional: true, nullable: false
14
16
  field :price, -> { Integer }, optional: false, nullable: false
15
17
  field :price_decimal, -> { String }, optional: true, nullable: false
@@ -18,6 +18,7 @@ module Schematic
18
18
  field :period_end, -> { Integer }, optional: true, nullable: false
19
19
  field :period_start, -> { Integer }, optional: true, nullable: false
20
20
  field :product_external_ids, -> { Internal::Types::Array[Schematic::Types::BillingProductPricing] }, optional: false, nullable: false
21
+ field :provider_type, -> { Schematic::Types::BillingProviderType }, optional: true, nullable: false
21
22
  field :status, -> { String }, optional: true, nullable: false
22
23
  field :subscription_external_id, -> { String }, optional: false, nullable: false
23
24
  field :total_price, -> { Integer }, optional: false, nullable: false
@@ -8,6 +8,7 @@ module Schematic
8
8
  field :event_name, -> { String }, optional: false, nullable: false
9
9
  field :event_payload_key, -> { String }, optional: false, nullable: false
10
10
  field :external_id, -> { String }, optional: false, nullable: false
11
+ field :provider_type, -> { Schematic::Types::BillingProviderType }, optional: true, nullable: false
11
12
  end
12
13
  end
13
14
  end
@@ -13,6 +13,7 @@ module Schematic
13
13
  field :price_usage_type, -> { Schematic::Types::BillingPriceUsageType }, optional: true, nullable: false
14
14
  field :provider_type, -> { Schematic::Types::BillingProviderType }, optional: true, nullable: false
15
15
  field :q, -> { String }, optional: true, nullable: false
16
+ field :recurring_charges_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
16
17
  field :with_one_time_charges, -> { Internal::Types::Boolean }, optional: true, nullable: false
17
18
  field :with_prices_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
18
19
  field :with_zero_price, -> { Internal::Types::Boolean }, optional: true, nullable: false
@@ -10,6 +10,7 @@ module Schematic
10
10
  field :price_usage_type, -> { Schematic::Types::BillingPriceUsageType }, optional: true, nullable: false
11
11
  field :provider_type, -> { Schematic::Types::BillingProviderType }, optional: true, nullable: false
12
12
  field :q, -> { String }, optional: true, nullable: false
13
+ field :recurring_charges_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
13
14
  field :with_one_time_charges, -> { Internal::Types::Boolean }, optional: true, nullable: false
14
15
  field :with_prices_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
15
16
  field :with_zero_price, -> { Internal::Types::Boolean }, optional: true, nullable: false
@@ -14,8 +14,11 @@ module Schematic
14
14
  raise NotImplementedError
15
15
  end
16
16
 
17
- def delete_missing(keys_to_keep)
18
- # Optional: remove all keys NOT in keys_to_keep
17
+ # Remove all keys matching `scope` that are NOT in `keys_to_keep`.
18
+ # `scope:` is required so shared caches (e.g. Redis) only prune their own
19
+ # namespace instead of wiping sibling caches that share a base key_prefix.
20
+ def delete_missing(keys_to_keep, scope:)
21
+ raise NotImplementedError
19
22
  end
20
23
  end
21
24
 
@@ -72,10 +75,10 @@ module Schematic
72
75
  end
73
76
  end
74
77
 
75
- def delete_missing(keys_to_keep)
78
+ def delete_missing(keys_to_keep, scope:)
76
79
  keep_set = keys_to_keep.to_set
77
80
  @mutex.synchronize do
78
- @cache.delete_if { |k, _| !keep_set.include?(k) }
81
+ @cache.delete_if { |k, _| k.start_with?(scope) && !keep_set.include?(k) }
79
82
  end
80
83
  end
81
84
 
@@ -10,7 +10,7 @@ module Schematic
10
10
  @raw_client = Schematic::Internal::Http::RawClient.new(
11
11
  base_url: base_url || Schematic::Environment::DEFAULT,
12
12
  headers: {
13
- "User-Agent" => "schematichq/1.4.0",
13
+ "User-Agent" => "schematichq/1.4.2",
14
14
  "X-Fern-Language" => "Ruby",
15
15
  "X-Schematic-Api-Key" => api_key.to_s
16
16
  }
@@ -57,6 +57,11 @@ module Schematic
57
57
  @components ||= Schematic::Components::Client.new(client: @raw_client)
58
58
  end
59
59
 
60
+ # @return [Schematic::Planbundle::Client]
61
+ def planbundle
62
+ @planbundle ||= Schematic::Planbundle::Client.new(client: @raw_client)
63
+ end
64
+
60
65
  # @return [Schematic::Dataexports::Client]
61
66
  def dataexports
62
67
  @dataexports ||= Schematic::Dataexports::Client.new(client: @raw_client)
@@ -72,9 +77,14 @@ module Schematic
72
77
  @features ||= Schematic::Features::Client.new(client: @raw_client)
73
78
  end
74
79
 
75
- # @return [Schematic::Planbundle::Client]
76
- def planbundle
77
- @planbundle ||= Schematic::Planbundle::Client.new(client: @raw_client)
80
+ # @return [Schematic::Insights::Client]
81
+ def insights
82
+ @insights ||= Schematic::Insights::Client.new(client: @raw_client)
83
+ end
84
+
85
+ # @return [Schematic::Integrationsapi::Client]
86
+ def integrationsapi
87
+ @integrationsapi ||= Schematic::Integrationsapi::Client.new(client: @raw_client)
78
88
  end
79
89
 
80
90
  # @return [Schematic::Plangroups::Client]
@@ -18,6 +18,7 @@ module Schematic
18
18
  # @option request_options [Hash{String => Object}] :additional_body_parameters
19
19
  # @option request_options [Integer] :timeout_in_seconds
20
20
  # @option params [String, nil] :credit_type_ids
21
+ # @option params [Boolean, nil] :has_scheduled_downgrade
21
22
  # @option params [String, nil] :ids
22
23
  # @option params [Boolean, nil] :monetized_subscriptions
23
24
  # @option params [String, nil] :plan_id
@@ -39,9 +40,10 @@ module Schematic
39
40
  # @return [Schematic::Companies::Types::ListCompaniesResponse]
40
41
  def list_companies(request_options: {}, **params)
41
42
  params = Schematic::Internal::Types::Utils.normalize_keys(params)
42
- query_param_names = %i[credit_type_ids ids monetized_subscriptions plan_id plan_ids plan_version_id q sort_order_column sort_order_direction subscription_statuses subscription_types with_entitlement_for without_feature_override_for without_plan without_subscription with_subscription limit offset]
43
+ query_param_names = %i[credit_type_ids has_scheduled_downgrade ids monetized_subscriptions plan_id plan_ids plan_version_id q sort_order_column sort_order_direction subscription_statuses subscription_types with_entitlement_for without_feature_override_for without_plan without_subscription with_subscription limit offset]
43
44
  query_params = {}
44
45
  query_params["credit_type_ids"] = params[:credit_type_ids] if params.key?(:credit_type_ids)
46
+ query_params["has_scheduled_downgrade"] = params[:has_scheduled_downgrade] if params.key?(:has_scheduled_downgrade)
45
47
  query_params["ids"] = params[:ids] if params.key?(:ids)
46
48
  query_params["monetized_subscriptions"] = params[:monetized_subscriptions] if params.key?(:monetized_subscriptions)
47
49
  query_params["plan_id"] = params[:plan_id] if params.key?(:plan_id)
@@ -195,6 +197,7 @@ module Schematic
195
197
  # @option request_options [Hash{String => Object}] :additional_body_parameters
196
198
  # @option request_options [Integer] :timeout_in_seconds
197
199
  # @option params [String, nil] :credit_type_ids
200
+ # @option params [Boolean, nil] :has_scheduled_downgrade
198
201
  # @option params [String, nil] :ids
199
202
  # @option params [Boolean, nil] :monetized_subscriptions
200
203
  # @option params [String, nil] :plan_id
@@ -216,9 +219,10 @@ module Schematic
216
219
  # @return [Schematic::Companies::Types::CountCompaniesResponse]
217
220
  def count_companies(request_options: {}, **params)
218
221
  params = Schematic::Internal::Types::Utils.normalize_keys(params)
219
- query_param_names = %i[credit_type_ids ids monetized_subscriptions plan_id plan_ids plan_version_id q sort_order_column sort_order_direction subscription_statuses subscription_types with_entitlement_for without_feature_override_for without_plan without_subscription with_subscription limit offset]
222
+ query_param_names = %i[credit_type_ids has_scheduled_downgrade ids monetized_subscriptions plan_id plan_ids plan_version_id q sort_order_column sort_order_direction subscription_statuses subscription_types with_entitlement_for without_feature_override_for without_plan without_subscription with_subscription limit offset]
220
223
  query_params = {}
221
224
  query_params["credit_type_ids"] = params[:credit_type_ids] if params.key?(:credit_type_ids)
225
+ query_params["has_scheduled_downgrade"] = params[:has_scheduled_downgrade] if params.key?(:has_scheduled_downgrade)
222
226
  query_params["ids"] = params[:ids] if params.key?(:ids)
223
227
  query_params["monetized_subscriptions"] = params[:monetized_subscriptions] if params.key?(:monetized_subscriptions)
224
228
  query_params["plan_id"] = params[:plan_id] if params.key?(:plan_id)
@@ -895,8 +899,8 @@ module Schematic
895
899
  # @option request_options [Hash{String => Object}] :additional_query_parameters
896
900
  # @option request_options [Hash{String => Object}] :additional_body_parameters
897
901
  # @option request_options [Integer] :timeout_in_seconds
898
- # @option params [String, nil] :action
899
- # @option params [String, nil] :base_plan_action
902
+ # @option params [Schematic::Types::PlanChangeAction, nil] :action
903
+ # @option params [Schematic::Types::PlanChangeBasePlanAction, nil] :base_plan_action
900
904
  # @option params [String, nil] :company_id
901
905
  # @option params [String, nil] :company_ids
902
906
  # @option params [String, nil] :plan_ids
@@ -1018,38 +1022,6 @@ module Schematic
1018
1022
  end
1019
1023
  end
1020
1024
 
1021
- # @param request_options [Hash]
1022
- # @param params [Schematic::Companies::Types::CreatePlanTraitRequestBody]
1023
- # @option request_options [String] :base_url
1024
- # @option request_options [Hash{String => Object}] :additional_headers
1025
- # @option request_options [Hash{String => Object}] :additional_query_parameters
1026
- # @option request_options [Hash{String => Object}] :additional_body_parameters
1027
- # @option request_options [Integer] :timeout_in_seconds
1028
- #
1029
- # @return [Schematic::Companies::Types::CreatePlanTraitResponse]
1030
- def create_plan_trait(request_options: {}, **params)
1031
- params = Schematic::Internal::Types::Utils.normalize_keys(params)
1032
- request = Schematic::Internal::JSON::Request.new(
1033
- base_url: request_options[:base_url],
1034
- method: "POST",
1035
- path: "plan-traits",
1036
- body: Schematic::Companies::Types::CreatePlanTraitRequestBody.new(params).to_h,
1037
- request_options: request_options
1038
- )
1039
- begin
1040
- response = @client.send(request)
1041
- rescue Net::HTTPRequestTimeout
1042
- raise Schematic::Errors::TimeoutError
1043
- end
1044
- code = response.code.to_i
1045
- if code.between?(200, 299)
1046
- Schematic::Companies::Types::CreatePlanTraitResponse.load(response.body)
1047
- else
1048
- error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
1049
- raise error_class.new(response.body, code: code)
1050
- end
1051
- end
1052
-
1053
1025
  # @param request_options [Hash]
1054
1026
  # @param params [Hash]
1055
1027
  # @option request_options [String] :base_url
@@ -1082,75 +1054,6 @@ module Schematic
1082
1054
  end
1083
1055
  end
1084
1056
 
1085
- # @param request_options [Hash]
1086
- # @param params [Schematic::Companies::Types::UpdatePlanTraitRequestBody]
1087
- # @option request_options [String] :base_url
1088
- # @option request_options [Hash{String => Object}] :additional_headers
1089
- # @option request_options [Hash{String => Object}] :additional_query_parameters
1090
- # @option request_options [Hash{String => Object}] :additional_body_parameters
1091
- # @option request_options [Integer] :timeout_in_seconds
1092
- # @option params [String] :plan_trait_id
1093
- #
1094
- # @return [Schematic::Companies::Types::UpdatePlanTraitResponse]
1095
- def update_plan_trait(request_options: {}, **params)
1096
- params = Schematic::Internal::Types::Utils.normalize_keys(params)
1097
- request_data = Schematic::Companies::Types::UpdatePlanTraitRequestBody.new(params).to_h
1098
- non_body_param_names = ["plan_trait_id"]
1099
- body = request_data.except(*non_body_param_names)
1100
-
1101
- request = Schematic::Internal::JSON::Request.new(
1102
- base_url: request_options[:base_url],
1103
- method: "PUT",
1104
- path: "plan-traits/#{URI.encode_uri_component(params[:plan_trait_id].to_s)}",
1105
- body: body,
1106
- request_options: request_options
1107
- )
1108
- begin
1109
- response = @client.send(request)
1110
- rescue Net::HTTPRequestTimeout
1111
- raise Schematic::Errors::TimeoutError
1112
- end
1113
- code = response.code.to_i
1114
- if code.between?(200, 299)
1115
- Schematic::Companies::Types::UpdatePlanTraitResponse.load(response.body)
1116
- else
1117
- error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
1118
- raise error_class.new(response.body, code: code)
1119
- end
1120
- end
1121
-
1122
- # @param request_options [Hash]
1123
- # @param params [Hash]
1124
- # @option request_options [String] :base_url
1125
- # @option request_options [Hash{String => Object}] :additional_headers
1126
- # @option request_options [Hash{String => Object}] :additional_query_parameters
1127
- # @option request_options [Hash{String => Object}] :additional_body_parameters
1128
- # @option request_options [Integer] :timeout_in_seconds
1129
- # @option params [String] :plan_trait_id
1130
- #
1131
- # @return [Schematic::Companies::Types::DeletePlanTraitResponse]
1132
- def delete_plan_trait(request_options: {}, **params)
1133
- params = Schematic::Internal::Types::Utils.normalize_keys(params)
1134
- request = Schematic::Internal::JSON::Request.new(
1135
- base_url: request_options[:base_url],
1136
- method: "DELETE",
1137
- path: "plan-traits/#{URI.encode_uri_component(params[:plan_trait_id].to_s)}",
1138
- request_options: request_options
1139
- )
1140
- begin
1141
- response = @client.send(request)
1142
- rescue Net::HTTPRequestTimeout
1143
- raise Schematic::Errors::TimeoutError
1144
- end
1145
- code = response.code.to_i
1146
- if code.between?(200, 299)
1147
- Schematic::Companies::Types::DeletePlanTraitResponse.load(response.body)
1148
- else
1149
- error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
1150
- raise error_class.new(response.body, code: code)
1151
- end
1152
- end
1153
-
1154
1057
  # @param request_options [Hash]
1155
1058
  # @param params [Schematic::Companies::Types::UpdatePlanTraitBulkRequestBody]
1156
1059
  # @option request_options [String] :base_url
@@ -6,6 +6,7 @@ module Schematic
6
6
  # Input parameters
7
7
  class CountCompaniesParams < Internal::Types::Model
8
8
  field :credit_type_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
9
+ field :has_scheduled_downgrade, -> { Internal::Types::Boolean }, optional: true, nullable: false
9
10
  field :ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
10
11
  field :limit, -> { Integer }, optional: true, nullable: false
11
12
  field :monetized_subscriptions, -> { Internal::Types::Boolean }, optional: true, nullable: false
@@ -5,6 +5,7 @@ module Schematic
5
5
  module Types
6
6
  class CountCompaniesRequest < Internal::Types::Model
7
7
  field :credit_type_ids, -> { String }, optional: true, nullable: false
8
+ field :has_scheduled_downgrade, -> { Internal::Types::Boolean }, optional: true, nullable: false
8
9
  field :ids, -> { String }, optional: true, nullable: false
9
10
  field :monetized_subscriptions, -> { Internal::Types::Boolean }, optional: true, nullable: false
10
11
  field :plan_id, -> { String }, optional: true, nullable: false
@@ -6,6 +6,7 @@ module Schematic
6
6
  # Input parameters
7
7
  class ListCompaniesParams < Internal::Types::Model
8
8
  field :credit_type_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
9
+ field :has_scheduled_downgrade, -> { Internal::Types::Boolean }, optional: true, nullable: false
9
10
  field :ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
10
11
  field :limit, -> { Integer }, optional: true, nullable: false
11
12
  field :monetized_subscriptions, -> { Internal::Types::Boolean }, optional: true, nullable: false
@@ -5,6 +5,7 @@ module Schematic
5
5
  module Types
6
6
  class ListCompaniesRequest < Internal::Types::Model
7
7
  field :credit_type_ids, -> { String }, optional: true, nullable: false
8
+ field :has_scheduled_downgrade, -> { Internal::Types::Boolean }, optional: true, nullable: false
8
9
  field :ids, -> { String }, optional: true, nullable: false
9
10
  field :monetized_subscriptions, -> { Internal::Types::Boolean }, optional: true, nullable: false
10
11
  field :plan_id, -> { String }, optional: true, nullable: false
@@ -5,8 +5,8 @@ module Schematic
5
5
  module Types
6
6
  # Input parameters
7
7
  class ListPlanChangesParams < Internal::Types::Model
8
- field :action, -> { String }, optional: true, nullable: false
9
- field :base_plan_action, -> { String }, optional: true, nullable: false
8
+ field :action, -> { Schematic::Types::PlanChangeAction }, optional: true, nullable: false
9
+ field :base_plan_action, -> { Schematic::Types::PlanChangeBasePlanAction }, optional: true, nullable: false
10
10
  field :company_id, -> { String }, optional: true, nullable: false
11
11
  field :company_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
12
12
  field :limit, -> { Integer }, optional: true, nullable: false
@@ -4,8 +4,8 @@ module Schematic
4
4
  module Companies
5
5
  module Types
6
6
  class ListPlanChangesRequest < Internal::Types::Model
7
- field :action, -> { String }, optional: true, nullable: false
8
- field :base_plan_action, -> { String }, optional: true, nullable: false
7
+ field :action, -> { Schematic::Types::PlanChangeAction }, optional: true, nullable: false
8
+ field :base_plan_action, -> { Schematic::Types::PlanChangeBasePlanAction }, optional: true, nullable: false
9
9
  field :company_id, -> { String }, optional: true, nullable: false
10
10
  field :company_ids, -> { String }, optional: true, nullable: false
11
11
  field :plan_ids, -> { String }, optional: true, nullable: false