schematichq 1.4.9 → 1.4.11

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 (107) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +2 -2
  3. data/.fern/replay.lock +350 -2
  4. data/WASM_VERSION +1 -1
  5. data/lib/schematic/accounts/client.rb +6 -2
  6. data/lib/schematic/accounts/types/count_account_members_params.rb +1 -0
  7. data/lib/schematic/accounts/types/count_account_members_request.rb +1 -0
  8. data/lib/schematic/accounts/types/list_account_members_params.rb +1 -0
  9. data/lib/schematic/accounts/types/list_account_members_request.rb +1 -0
  10. data/lib/schematic/catalogs/client.rb +480 -0
  11. data/lib/schematic/catalogs/types/create_catalog_request_body.rb +13 -0
  12. data/lib/schematic/catalogs/types/create_catalog_response.rb +12 -0
  13. data/lib/schematic/catalogs/types/delete_catalog_response.rb +12 -0
  14. data/lib/schematic/catalogs/types/get_catalog_response.rb +12 -0
  15. data/lib/schematic/catalogs/types/get_configuration_response.rb +12 -0
  16. data/lib/schematic/catalogs/types/get_credit_bundles_in_catalog_response.rb +12 -0
  17. data/lib/schematic/catalogs/types/get_derived_features_response.rb +12 -0
  18. data/lib/schematic/catalogs/types/get_plans_in_catalog_response.rb +12 -0
  19. data/lib/schematic/catalogs/types/list_catalogs_params.rb +15 -0
  20. data/lib/schematic/catalogs/types/list_catalogs_request.rb +14 -0
  21. data/lib/schematic/catalogs/types/list_catalogs_response.rb +12 -0
  22. data/lib/schematic/catalogs/types/update_catalog_configuration_request_body.rb +20 -0
  23. data/lib/schematic/catalogs/types/update_catalog_request_body.rb +14 -0
  24. data/lib/schematic/catalogs/types/update_catalog_response.rb +12 -0
  25. data/lib/schematic/catalogs/types/update_configuration_response.rb +12 -0
  26. data/lib/schematic/checkout/client.rb +69 -0
  27. data/lib/schematic/checkout/types/get_company_billing_details_response.rb +12 -0
  28. data/lib/schematic/checkout/types/update_company_billing_details_request_body.rb +15 -0
  29. data/lib/schematic/checkout/types/update_company_billing_details_response.rb +12 -0
  30. data/lib/schematic/client.rb +11 -1
  31. data/lib/schematic/components/client.rb +37 -0
  32. data/lib/schematic/components/types/bind_catalog_request_body.rb +12 -0
  33. data/lib/schematic/components/types/bind_catalog_response.rb +12 -0
  34. data/lib/schematic/dataexports/client.rb +76 -0
  35. data/lib/schematic/dataexports/types/create_data_export_request_body.rb +3 -3
  36. data/lib/schematic/dataexports/types/get_data_export_response.rb +12 -0
  37. data/lib/schematic/dataexports/types/list_data_exports_params.rb +15 -0
  38. data/lib/schematic/dataexports/types/list_data_exports_request.rb +14 -0
  39. data/lib/schematic/dataexports/types/list_data_exports_response.rb +12 -0
  40. data/lib/schematic/licenses/client.rb +138 -0
  41. data/lib/schematic/licenses/types/count_licenses_params.rb +16 -0
  42. data/lib/schematic/licenses/types/count_licenses_request.rb +15 -0
  43. data/lib/schematic/licenses/types/count_licenses_response.rb +12 -0
  44. data/lib/schematic/licenses/types/get_single_license_response.rb +12 -0
  45. data/lib/schematic/licenses/types/list_licenses_params.rb +16 -0
  46. data/lib/schematic/licenses/types/list_licenses_request.rb +15 -0
  47. data/lib/schematic/licenses/types/list_licenses_response.rb +12 -0
  48. data/lib/schematic/planbundle/types/create_custom_plan_bundle_request_body.rb +1 -0
  49. data/lib/schematic/planmigrations/client.rb +32 -0
  50. data/lib/schematic/planmigrations/types/preview_migration_request_body.rb +14 -0
  51. data/lib/schematic/planmigrations/types/preview_migration_response.rb +12 -0
  52. data/lib/schematic/types/audit_log_export_metadata.rb +13 -0
  53. data/lib/schematic/types/billing_credit_grant_zeroed_out_reason.rb +1 -0
  54. data/lib/schematic/types/catalog_config_ordered_bundle.rb +9 -0
  55. data/lib/schematic/types/catalog_config_ordered_bundle_response_data.rb +9 -0
  56. data/lib/schematic/types/catalog_config_ordered_entitlement.rb +10 -0
  57. data/lib/schematic/types/catalog_config_ordered_entitlement_response_data.rb +10 -0
  58. data/lib/schematic/types/catalog_config_ordered_plan.rb +10 -0
  59. data/lib/schematic/types/catalog_config_ordered_plan_response_data.rb +10 -0
  60. data/lib/schematic/types/catalog_configuration_response_data.rb +19 -0
  61. data/lib/schematic/types/catalog_credit_bundle_i_ds_response_data.rb +9 -0
  62. data/lib/schematic/types/catalog_derived_feature_response_data.rb +11 -0
  63. data/lib/schematic/types/catalog_derived_features_response_data.rb +9 -0
  64. data/lib/schematic/types/catalog_plan_i_ds_response_data.rb +9 -0
  65. data/lib/schematic/types/catalog_response_data.rb +22 -0
  66. data/lib/schematic/types/company_billing_address_view.rb +14 -0
  67. data/lib/schematic/types/company_billing_checkout_settings.rb +11 -0
  68. data/lib/schematic/types/company_billing_details_response_data.rb +13 -0
  69. data/lib/schematic/types/company_billing_details_view.rb +13 -0
  70. data/lib/schematic/types/company_feature_usage_export_metadata.rb +25 -0
  71. data/lib/schematic/types/company_plan_detail_response_data.rb +1 -0
  72. data/lib/schematic/types/component_response_data.rb +1 -0
  73. data/lib/schematic/types/create_entitlement_in_bundle_request_body.rb +1 -0
  74. data/lib/schematic/types/credits_auto_topup_success.rb +12 -0
  75. data/lib/schematic/types/credits_credit_purchase_success.rb +14 -0
  76. data/lib/schematic/types/credits_webhook_company_summary.rb +10 -0
  77. data/lib/schematic/types/credits_webhook_credit_summary.rb +10 -0
  78. data/lib/schematic/types/customer_billing_address.rb +14 -0
  79. data/lib/schematic/types/data_export_metadata.rb +14 -0
  80. data/lib/schematic/types/data_export_output_file_type.rb +3 -14
  81. data/lib/schematic/types/data_export_response_data.rb +3 -3
  82. data/lib/schematic/types/data_export_type.rb +3 -14
  83. data/lib/schematic/types/feature_detail_response_data.rb +3 -0
  84. data/lib/schematic/types/feature_entitlement.rb +1 -0
  85. data/lib/schematic/types/feature_in_plan_response_data.rb +2 -0
  86. data/lib/schematic/types/feature_response_data.rb +2 -0
  87. data/lib/schematic/types/feature_type.rb +1 -0
  88. data/lib/schematic/types/feature_view.rb +2 -0
  89. data/lib/schematic/types/license_response_data.rb +12 -0
  90. data/lib/schematic/types/plan_catalog_membership_response_data.rb +10 -0
  91. data/lib/schematic/types/plan_detail_response_data.rb +1 -0
  92. data/lib/schematic/types/plan_group_plan_detail_response_data.rb +1 -0
  93. data/lib/schematic/types/plan_version_migration_preview_company_response_data.rb +14 -0
  94. data/lib/schematic/types/plan_version_migration_preview_response_data.rb +9 -0
  95. data/lib/schematic/types/plan_view_public_response_data.rb +1 -0
  96. data/lib/schematic/types/preview_subscription_discount_response_data.rb +19 -0
  97. data/lib/schematic/types/preview_subscription_finance_response_data.rb +2 -0
  98. data/lib/schematic/types/rulesengine_feature_entitlement.rb +1 -0
  99. data/lib/schematic/types/rulesengine_warning_tier.rb +10 -0
  100. data/lib/schematic/types/upsert_company_request_body.rb +2 -0
  101. data/lib/schematic/types/warning_tier.rb +10 -0
  102. data/lib/schematic/types/webhook_request_type.rb +2 -0
  103. data/lib/schematic/version.rb +1 -1
  104. data/lib/schematic/wasm/rulesengine.wasm +0 -0
  105. data/lib/schematic.rb +105 -39
  106. data/reference.md +1800 -301
  107. metadata +68 -2
@@ -5,6 +5,7 @@ module Schematic
5
5
  module Types
6
6
  class CreateCustomPlanBundleRequestBody < Internal::Types::Model
7
7
  field :billing_product, -> { Schematic::Types::UpsertBillingProductRequestBody }, optional: true, nullable: false
8
+ field :credit_grants, -> { Internal::Types::Array[Schematic::Types::PlanBundleCreditGrantRequestBody] }, optional: true, nullable: false
8
9
  field :entitlements, -> { Internal::Types::Array[Schematic::Types::PlanBundleEntitlementRequestBody] }, optional: false, nullable: false
9
10
  field :plan, -> { Schematic::Types::CreateCustomPlanBundlePlanRequestBody }, optional: true, nullable: false
10
11
  end
@@ -322,6 +322,38 @@ module Schematic
322
322
  raise error_class.new(response.body, code: code)
323
323
  end
324
324
  end
325
+
326
+ # @param request_options [Hash]
327
+ # @param params [Schematic::Planmigrations::Types::PreviewMigrationRequestBody]
328
+ # @option request_options [String] :base_url
329
+ # @option request_options [Hash{String => Object}] :additional_headers
330
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
331
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
332
+ # @option request_options [Integer] :timeout_in_seconds
333
+ #
334
+ # @return [Schematic::Planmigrations::Types::PreviewMigrationResponse]
335
+ def preview_migration(request_options: {}, **params)
336
+ params = Schematic::Internal::Types::Utils.normalize_keys(params)
337
+ request = Schematic::Internal::JSON::Request.new(
338
+ base_url: request_options[:base_url],
339
+ method: "POST",
340
+ path: "plan-version-migrations/preview",
341
+ body: Schematic::Planmigrations::Types::PreviewMigrationRequestBody.new(params).to_h,
342
+ request_options: request_options
343
+ )
344
+ begin
345
+ response = @client.send(request)
346
+ rescue Net::HTTPRequestTimeout
347
+ raise Schematic::Errors::TimeoutError
348
+ end
349
+ code = response.code.to_i
350
+ if code.between?(200, 299)
351
+ Schematic::Planmigrations::Types::PreviewMigrationResponse.load(response.body)
352
+ else
353
+ error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
354
+ raise error_class.new(response.body, code: code)
355
+ end
356
+ end
325
357
  end
326
358
  end
327
359
  end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Planmigrations
5
+ module Types
6
+ class PreviewMigrationRequestBody < Internal::Types::Model
7
+ field :company_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
8
+ field :plan_id, -> { String }, optional: false, nullable: false
9
+ field :plan_version_id_to, -> { String }, optional: false, nullable: false
10
+ field :target_plan_type, -> { Schematic::Types::PlanType }, optional: false, 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 Planmigrations
5
+ module Types
6
+ class PreviewMigrationResponse < Internal::Types::Model
7
+ field :data, -> { Schematic::Types::PlanVersionMigrationPreviewResponseData }, 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,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class AuditLogExportMetadata < Internal::Types::Model
6
+ field :actor_type, -> { String }, optional: true, nullable: false
7
+ field :end_time, -> { String }, optional: true, nullable: false
8
+ field :notification_email_recipient_email_addresses, -> { Internal::Types::Array[String] }, optional: true, nullable: false
9
+ field :q, -> { String }, optional: true, nullable: false
10
+ field :start_time, -> { String }, optional: true, nullable: false
11
+ end
12
+ end
13
+ end
@@ -8,6 +8,7 @@ module Schematic
8
8
  CUSTOMER_ARCHIVED = "customer_archived"
9
9
  EXPIRED = "expired"
10
10
  INTEGRATION_UNINSTALLED = "integration_uninstalled"
11
+ LICENSE_RETIRED = "license_retired"
11
12
  MANUAL = "manual"
12
13
  PLAN_CHANGE = "plan_change"
13
14
  PLAN_PERIOD_RESET = "plan_period_reset"
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogConfigOrderedBundle < Internal::Types::Model
6
+ field :bundle_id, -> { String }, optional: false, nullable: false
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogConfigOrderedBundleResponseData < Internal::Types::Model
6
+ field :bundle_id, -> { String }, optional: false, nullable: false
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogConfigOrderedEntitlement < Internal::Types::Model
6
+ field :plan_entitlement_id, -> { String }, optional: false, nullable: false
7
+ field :visible, -> { Internal::Types::Boolean }, optional: true, nullable: false
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogConfigOrderedEntitlementResponseData < Internal::Types::Model
6
+ field :plan_entitlement_id, -> { String }, optional: false, nullable: false
7
+ field :visible, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogConfigOrderedPlan < Internal::Types::Model
6
+ field :entitlements, -> { Internal::Types::Array[Schematic::Types::CatalogConfigOrderedEntitlement] }, optional: true, nullable: false
7
+ field :plan_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogConfigOrderedPlanResponseData < Internal::Types::Model
6
+ field :entitlements, -> { Internal::Types::Array[Schematic::Types::CatalogConfigOrderedEntitlementResponseData] }, optional: false, nullable: false
7
+ field :plan_id, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogConfigurationResponseData < Internal::Types::Model
6
+ field :add_ons, -> { Internal::Types::Array[Schematic::Types::PlanGroupPlanDetailResponseData] }, optional: false, nullable: false
7
+ field :custom_plan_cta_text, -> { String }, optional: true, nullable: false
8
+ field :custom_plan_cta_url, -> { String }, optional: true, nullable: false
9
+ field :custom_plan_price_text, -> { String }, optional: true, nullable: false
10
+ field :custom_plans_visible, -> { Internal::Types::Boolean }, optional: false, nullable: false
11
+ field :ordered_add_ons, -> { Internal::Types::Array[Schematic::Types::CatalogConfigOrderedPlanResponseData] }, optional: false, nullable: false
12
+ field :ordered_bundles, -> { Internal::Types::Array[Schematic::Types::CatalogConfigOrderedBundleResponseData] }, optional: false, nullable: false
13
+ field :ordered_plans, -> { Internal::Types::Array[Schematic::Types::CatalogConfigOrderedPlanResponseData] }, optional: false, nullable: false
14
+ field :plans, -> { Internal::Types::Array[Schematic::Types::PlanGroupPlanDetailResponseData] }, optional: false, nullable: false
15
+ field :pricing_model, -> { String }, optional: true, nullable: false
16
+ field :pricing_url, -> { String }, optional: true, nullable: false
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogCreditBundleIDsResponseData < Internal::Types::Model
6
+ field :credit_bundle_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogDerivedFeatureResponseData < Internal::Types::Model
6
+ field :icon, -> { String }, optional: false, nullable: false
7
+ field :id, -> { String }, optional: false, nullable: false
8
+ field :name, -> { String }, optional: false, nullable: false
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogDerivedFeaturesResponseData < Internal::Types::Model
6
+ field :features, -> { Internal::Types::Array[Schematic::Types::CatalogDerivedFeatureResponseData] }, optional: false, nullable: false
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogPlanIDsResponseData < Internal::Types::Model
6
+ field :plan_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CatalogResponseData < Internal::Types::Model
6
+ field :account_id, -> { String }, optional: false, nullable: false
7
+ field :created_at, -> { String }, optional: false, nullable: false
8
+ field :custom_plan_cta_text, -> { String }, optional: true, nullable: false
9
+ field :custom_plan_cta_url, -> { String }, optional: true, nullable: false
10
+ field :custom_plan_price_text, -> { String }, optional: true, nullable: false
11
+ field :custom_plans_visible, -> { Internal::Types::Boolean }, optional: false, nullable: false
12
+ field :description, -> { String }, optional: true, nullable: false
13
+ field :environment_id, -> { String }, optional: false, nullable: false
14
+ field :id, -> { String }, optional: false, nullable: false
15
+ field :is_default, -> { Internal::Types::Boolean }, optional: false, nullable: false
16
+ field :name, -> { String }, optional: false, nullable: false
17
+ field :pricing_model, -> { String }, optional: true, nullable: false
18
+ field :pricing_url, -> { String }, optional: true, nullable: false
19
+ field :updated_at, -> { String }, optional: false, nullable: false
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CompanyBillingAddressView < Internal::Types::Model
6
+ field :city, -> { String }, optional: false, nullable: false
7
+ field :country, -> { String }, optional: false, nullable: false
8
+ field :line_1, -> { String }, optional: false, nullable: false, api_name: "line1"
9
+ field :line_2, -> { String }, optional: false, nullable: false, api_name: "line2"
10
+ field :postal_code, -> { String }, optional: false, nullable: false
11
+ field :state, -> { String }, optional: false, nullable: false
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CompanyBillingCheckoutSettings < Internal::Types::Model
6
+ field :collect_address, -> { Internal::Types::Boolean }, optional: false, nullable: false
7
+ field :collect_email, -> { Internal::Types::Boolean }, optional: false, nullable: false
8
+ field :collect_phone, -> { Internal::Types::Boolean }, optional: false, nullable: false
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CompanyBillingDetailsResponseData < Internal::Types::Model
6
+ field :address, -> { Schematic::Types::CompanyBillingAddressView }, optional: true, nullable: false
7
+ field :checkout_settings, -> { Schematic::Types::CompanyBillingCheckoutSettings }, optional: false, nullable: false
8
+ field :custom_fields, -> { Internal::Types::Array[Schematic::Types::CheckoutFieldWithValue] }, optional: false, nullable: false
9
+ field :email, -> { String }, optional: true, nullable: false
10
+ field :phone, -> { String }, optional: true, nullable: false
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CompanyBillingDetailsView < Internal::Types::Model
6
+ field :address, -> { Schematic::Types::CompanyBillingAddressView }, optional: true, nullable: false
7
+ field :checkout_settings, -> { Schematic::Types::CompanyBillingCheckoutSettings }, optional: false, nullable: false
8
+ field :custom_fields, -> { Internal::Types::Array[Schematic::Types::CheckoutFieldWithValue] }, optional: false, nullable: false
9
+ field :email, -> { String }, optional: true, nullable: false
10
+ field :phone, -> { String }, optional: true, nullable: false
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CompanyFeatureUsageExportMetadata < Internal::Types::Model
6
+ field :company_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
7
+ field :credit_type_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
8
+ field :feature_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
9
+ field :has_scheduled_downgrade, -> { Internal::Types::Boolean }, optional: true, nullable: false
10
+ field :monetized_subscriptions, -> { Internal::Types::Boolean }, optional: true, nullable: false
11
+ field :notification_email_recipient_email_addresses, -> { Internal::Types::Array[String] }, optional: true, nullable: false
12
+ field :plan_id, -> { String }, optional: true, nullable: false
13
+ field :plan_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
14
+ field :plan_version_id, -> { String }, optional: true, nullable: false
15
+ field :q, -> { String }, optional: true, nullable: false
16
+ field :subscription_statuses, -> { Internal::Types::Array[String] }, optional: true, nullable: false
17
+ field :subscription_types, -> { Internal::Types::Array[String] }, optional: true, nullable: false
18
+ field :with_entitlement_for, -> { String }, optional: true, nullable: false
19
+ field :with_subscription, -> { Internal::Types::Boolean }, optional: true, nullable: false
20
+ field :without_feature_override_for, -> { String }, optional: true, nullable: false
21
+ field :without_plan, -> { Internal::Types::Boolean }, optional: true, nullable: false
22
+ field :without_subscription, -> { Internal::Types::Boolean }, optional: true, nullable: false
23
+ end
24
+ end
25
+ end
@@ -9,6 +9,7 @@ module Schematic
9
9
  field :billing_linked_resource, -> { Schematic::Types::BillingLinkedResourceResponseData }, optional: true, nullable: false
10
10
  field :billing_product, -> { Schematic::Types::BillingProductDetailResponseData }, optional: true, nullable: false
11
11
  field :billing_strategy, -> { Schematic::Types::BillingStrategy }, optional: false, nullable: false
12
+ field :catalogs, -> { Internal::Types::Array[Schematic::Types::PlanCatalogMembershipResponseData] }, optional: true, nullable: false
12
13
  field :charge_type, -> { Schematic::Types::ChargeType }, optional: false, nullable: false
13
14
  field :company_can_trial, -> { Internal::Types::Boolean }, optional: false, nullable: false
14
15
  field :company_count, -> { Integer }, optional: false, nullable: false
@@ -4,6 +4,7 @@ module Schematic
4
4
  module Types
5
5
  class ComponentResponseData < Internal::Types::Model
6
6
  field :ast, -> { Internal::Types::Hash[String, Integer] }, optional: true, nullable: false
7
+ field :catalog_id, -> { String }, optional: true, nullable: false
7
8
  field :created_at, -> { String }, optional: false, nullable: false
8
9
  field :id, -> { String }, optional: false, nullable: false
9
10
  field :name, -> { String }, optional: false, nullable: false
@@ -32,6 +32,7 @@ module Schematic
32
32
  field :value_numeric, -> { Integer }, optional: true, nullable: false
33
33
  field :value_trait_id, -> { String }, optional: true, nullable: false
34
34
  field :value_type, -> { Schematic::Types::EntitlementValueType }, optional: false, nullable: false
35
+ field :warning_tiers, -> { Internal::Types::Array[Schematic::Types::WarningTierRequestBody] }, optional: true, nullable: false
35
36
  field :yearly_metered_price_id, -> { String }, optional: true, nullable: false
36
37
  field :yearly_price_tiers, -> { Internal::Types::Array[Schematic::Types::CreatePriceTierRequestBody] }, optional: true, nullable: false
37
38
  field :yearly_unit_price, -> { Integer }, optional: true, nullable: false
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CreditsAutoTopupSuccess < Internal::Types::Model
6
+ field :company, -> { Schematic::Types::CreditsAutoTopupCompanySummary }, optional: true, nullable: false
7
+ field :credit, -> { Schematic::Types::CreditsAutoTopupCreditSummary }, optional: true, nullable: false
8
+ field :grant_id, -> { String }, optional: false, nullable: false
9
+ field :quantity, -> { Integer }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CreditsCreditPurchaseSuccess < Internal::Types::Model
6
+ field :bundle_id, -> { String }, optional: false, nullable: false
7
+ field :bundle_name, -> { String }, optional: false, nullable: false
8
+ field :company, -> { Schematic::Types::CreditsWebhookCompanySummary }, optional: true, nullable: false
9
+ field :credit, -> { Schematic::Types::CreditsWebhookCreditSummary }, optional: true, nullable: false
10
+ field :grant_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
11
+ field :quantity, -> { Integer }, optional: false, nullable: false
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CreditsWebhookCompanySummary < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+ field :name, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CreditsWebhookCreditSummary < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+ field :name, -> { String }, optional: false, nullable: false
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CustomerBillingAddress < Internal::Types::Model
6
+ field :city, -> { String }, optional: false, nullable: false
7
+ field :country, -> { String }, optional: false, nullable: false
8
+ field :line_1, -> { String }, optional: false, nullable: false, api_name: "line1"
9
+ field :line_2, -> { String }, optional: false, nullable: false, api_name: "line2"
10
+ field :postal_code, -> { String }, optional: false, nullable: false
11
+ field :state, -> { String }, optional: false, nullable: false
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class DataExportMetadata < Internal::Types::Model
6
+ extend Schematic::Internal::Types::Union
7
+
8
+ discriminant :export_type
9
+
10
+ member -> { Schematic::Types::AuditLogExportMetadata }, key: "AUDIT_LOG"
11
+ member -> { Schematic::Types::CompanyFeatureUsageExportMetadata }, key: "COMPANY_FEATURE_USAGE"
12
+ end
13
+ end
14
+ end
@@ -3,21 +3,10 @@
3
3
  module Schematic
4
4
  module Types
5
5
  module DataExportOutputFileType
6
- # DataExportOutputFileType is an alias for Object
6
+ extend Schematic::Internal::Types::Enum
7
7
 
8
- # @option str [String]
9
- #
10
- # @return [untyped]
11
- def self.load(str)
12
- ::JSON.parse(str)
13
- end
14
-
15
- # @option value [untyped]
16
- #
17
- # @return [String]
18
- def self.dump(value)
19
- ::JSON.generate(value)
20
- end
8
+ CSV = "csv"
9
+ CSV_GZ = "csv.gz"
21
10
  end
22
11
  end
23
12
  end
@@ -6,10 +6,10 @@ module Schematic
6
6
  field :account_id, -> { String }, optional: false, nullable: false
7
7
  field :created_at, -> { String }, optional: false, nullable: false
8
8
  field :environment_id, -> { String }, optional: false, nullable: false
9
- field :export_type, -> { String }, optional: false, nullable: false
9
+ field :export_type, -> { Schematic::Types::DataExportType }, optional: false, nullable: false
10
10
  field :id, -> { String }, optional: false, nullable: false
11
- field :metadata, -> { String }, optional: false, nullable: false
12
- field :output_file_type, -> { String }, optional: false, nullable: false
11
+ field :metadata, -> { Schematic::Types::DataExportMetadata }, optional: true, nullable: false
12
+ field :output_file_type, -> { Schematic::Types::DataExportOutputFileType }, optional: false, nullable: false
13
13
  field :status, -> { Schematic::Types::DataExportStatus }, optional: false, nullable: false
14
14
  field :updated_at, -> { String }, optional: false, nullable: false
15
15
  end
@@ -3,21 +3,10 @@
3
3
  module Schematic
4
4
  module Types
5
5
  module DataExportType
6
- # DataExportType is an alias for Object
6
+ extend Schematic::Internal::Types::Enum
7
7
 
8
- # @option str [String]
9
- #
10
- # @return [untyped]
11
- def self.load(str)
12
- ::JSON.parse(str)
13
- end
14
-
15
- # @option value [untyped]
16
- #
17
- # @return [String]
18
- def self.dump(value)
19
- ::JSON.generate(value)
20
- end
8
+ AUDIT_LOG = "audit-log"
9
+ COMPANY_FEATURE_USAGE = "company-feature-usage"
21
10
  end
22
11
  end
23
12
  end
@@ -4,6 +4,7 @@ module Schematic
4
4
  module Types
5
5
  class FeatureDetailResponseData < Internal::Types::Model
6
6
  field :billing_linked_resource, -> { Schematic::Types::BillingLinkedResourceResponseData }, optional: true, nullable: false
7
+ field :billing_product, -> { Schematic::Types::BillingProductResponseData }, optional: true, nullable: false
7
8
  field :created_at, -> { String }, optional: false, nullable: false
8
9
  field :description, -> { String }, optional: false, nullable: false
9
10
  field :event_subtype, -> { String }, optional: true, nullable: false
@@ -12,6 +13,7 @@ module Schematic
12
13
  field :flags, -> { Internal::Types::Array[Schematic::Types::FlagDetailResponseData] }, optional: false, nullable: false
13
14
  field :icon, -> { String }, optional: false, nullable: false
14
15
  field :id, -> { String }, optional: false, nullable: false
16
+ field :license_id, -> { String }, optional: true, nullable: false
15
17
  field :lifecycle_phase, -> { Schematic::Types::FeatureLifecyclePhase }, optional: true, nullable: false
16
18
  field :maintainer, -> { Schematic::Types::AccountMemberResponseData }, optional: true, nullable: false
17
19
  field :maintainer_account_member_id, -> { String }, optional: true, nullable: false
@@ -22,6 +24,7 @@ module Schematic
22
24
  field :trait, -> { Schematic::Types::EntityTraitDefinitionResponseData }, optional: true, nullable: false
23
25
  field :trait_id, -> { String }, optional: true, nullable: false
24
26
  field :updated_at, -> { String }, optional: false, nullable: false
27
+ field :usage_limit_trait_id, -> { String }, optional: true, nullable: false
25
28
  end
26
29
  end
27
30
  end
@@ -21,6 +21,7 @@ module Schematic
21
21
  field :soft_limit, -> { Integer }, optional: true, nullable: false
22
22
  field :usage, -> { Integer }, optional: true, nullable: false
23
23
  field :value_type, -> { Schematic::Types::EntitlementValueType }, optional: false, nullable: false
24
+ field :warning_tiers, -> { Internal::Types::Array[Schematic::Types::WarningTier] }, optional: true, nullable: false
24
25
  end
25
26
  end
26
27
  end
@@ -12,6 +12,7 @@ module Schematic
12
12
  field :flags, -> { Internal::Types::Array[Schematic::Types::FlagInPlanResponseData] }, optional: false, nullable: false
13
13
  field :icon, -> { String }, optional: false, nullable: false
14
14
  field :id, -> { String }, optional: false, nullable: false
15
+ field :license_id, -> { String }, optional: true, nullable: false
15
16
  field :lifecycle_phase, -> { Schematic::Types::FeatureLifecyclePhase }, optional: true, nullable: false
16
17
  field :maintainer_account_member_id, -> { String }, optional: true, nullable: false
17
18
  field :name, -> { String }, optional: false, nullable: false
@@ -21,6 +22,7 @@ module Schematic
21
22
  field :trait, -> { Schematic::Types::EntityTraitDefinitionResponseData }, optional: true, nullable: false
22
23
  field :trait_id, -> { String }, optional: true, nullable: false
23
24
  field :updated_at, -> { String }, optional: false, nullable: false
25
+ field :usage_limit_trait_id, -> { String }, optional: true, nullable: false
24
26
  end
25
27
  end
26
28
  end
@@ -9,6 +9,7 @@ module Schematic
9
9
  field :feature_type, -> { Schematic::Types::FeatureType }, optional: false, nullable: false
10
10
  field :icon, -> { String }, optional: false, nullable: false
11
11
  field :id, -> { String }, optional: false, nullable: false
12
+ field :license_id, -> { String }, optional: true, nullable: false
12
13
  field :lifecycle_phase, -> { Schematic::Types::FeatureLifecyclePhase }, optional: true, nullable: false
13
14
  field :maintainer_account_member_id, -> { String }, optional: true, nullable: false
14
15
  field :name, -> { String }, optional: false, nullable: false
@@ -16,6 +17,7 @@ module Schematic
16
17
  field :singular_name, -> { String }, optional: true, nullable: false
17
18
  field :trait_id, -> { String }, optional: true, nullable: false
18
19
  field :updated_at, -> { String }, optional: false, nullable: false
20
+ field :usage_limit_trait_id, -> { String }, optional: true, nullable: false
19
21
  end
20
22
  end
21
23
  end
@@ -7,6 +7,7 @@ module Schematic
7
7
 
8
8
  BOOLEAN = "boolean"
9
9
  EVENT = "event"
10
+ LICENSE = "license"
10
11
  TRAIT = "trait"
11
12
  end
12
13
  end
@@ -5,6 +5,7 @@ module Schematic
5
5
  class FeatureView < Internal::Types::Model
6
6
  field :account_id, -> { String }, optional: false, nullable: false
7
7
  field :billing_linked_resource, -> { Schematic::Types::BillingLinkedResourceResponseData }, optional: true, nullable: false
8
+ field :billing_product, -> { Schematic::Types::BillingProductResponseData }, optional: true, nullable: false
8
9
  field :created_at, -> { String }, optional: false, nullable: false
9
10
  field :description, -> { String }, optional: false, nullable: false
10
11
  field :event_subtype, -> { String }, optional: true, nullable: false
@@ -13,6 +14,7 @@ module Schematic
13
14
  field :flags, -> { Internal::Types::Array[Schematic::Types::FlagView] }, optional: false, nullable: false
14
15
  field :icon, -> { String }, optional: false, nullable: false
15
16
  field :id, -> { String }, optional: false, nullable: false
17
+ field :license_id, -> { String }, optional: true, nullable: false
16
18
  field :lifecycle_phase, -> { Schematic::Types::FeatureLifecyclePhase }, optional: true, nullable: false
17
19
  field :name, -> { String }, optional: false, nullable: false
18
20
  field :plans, -> { Internal::Types::Array[Schematic::Types::PreviewObject] }, optional: false, nullable: false
@@ -0,0 +1,12 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class LicenseResponseData < Internal::Types::Model
6
+ field :created_at, -> { String }, optional: false, nullable: false
7
+ field :id, -> { String }, optional: false, nullable: false
8
+ field :name, -> { String }, optional: false, nullable: false
9
+ field :updated_at, -> { String }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end