schematichq 1.4.15 → 1.4.17

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 (79) hide show
  1. checksums.yaml +4 -4
  2. data/.fern/metadata.json +4 -4
  3. data/.fern/replay.lock +15 -3
  4. data/WASM_VERSION +1 -1
  5. data/lib/schematic/accounts/types/update_onboarding_state_request_body.rb +4 -0
  6. data/lib/schematic/billing/client.rb +96 -0
  7. data/lib/schematic/billing/types/list_company_billing_profiles_params.rb +20 -0
  8. data/lib/schematic/billing/types/list_company_billing_profiles_request.rb +19 -0
  9. data/lib/schematic/billing/types/list_company_billing_profiles_response.rb +13 -0
  10. data/lib/schematic/billing/types/update_company_billing_profile_request_body.rb +23 -0
  11. data/lib/schematic/billing/types/update_company_billing_profile_response.rb +13 -0
  12. data/lib/schematic/client.rb +1 -1
  13. data/lib/schematic/credits/client.rb +266 -0
  14. data/lib/schematic/credits/types/count_credit_spend_policies_params.rb +24 -0
  15. data/lib/schematic/credits/types/count_credit_spend_policies_request.rb +23 -0
  16. data/lib/schematic/credits/types/count_credit_spend_policies_response.rb +13 -0
  17. data/lib/schematic/credits/types/create_credit_spend_policy_request_body.rb +19 -0
  18. data/lib/schematic/credits/types/create_credit_spend_policy_response.rb +13 -0
  19. data/lib/schematic/credits/types/delete_credit_spend_policy_response.rb +13 -0
  20. data/lib/schematic/credits/types/get_credit_spend_policy_response.rb +13 -0
  21. data/lib/schematic/credits/types/list_credit_spend_policies_params.rb +24 -0
  22. data/lib/schematic/credits/types/list_credit_spend_policies_request.rb +23 -0
  23. data/lib/schematic/credits/types/list_credit_spend_policies_response.rb +13 -0
  24. data/lib/schematic/credits/types/update_credit_spend_policy_request_body.rb +15 -0
  25. data/lib/schematic/credits/types/update_credit_spend_policy_response.rb +13 -0
  26. data/lib/schematic/datastream/resource_cache.rb +2 -4
  27. data/lib/schematic/events/client.rb +101 -0
  28. data/lib/schematic/events/types/delete_otlp_environment_settings_response.rb +13 -0
  29. data/lib/schematic/events/types/get_otlp_environment_settings_response.rb +13 -0
  30. data/lib/schematic/events/types/upsert_otlp_environment_settings_request_body.rb +19 -0
  31. data/lib/schematic/events/types/upsert_otlp_environment_settings_response.rb +13 -0
  32. data/lib/schematic/integrationsapi/client.rb +169 -0
  33. data/lib/schematic/integrationsapi/types/claim_stripe_sandbox_keys_request_body.rb +11 -0
  34. data/lib/schematic/integrationsapi/types/claim_stripe_sandbox_keys_response.rb +13 -0
  35. data/lib/schematic/integrationsapi/types/get_stripe_sandbox_claim_link_response.rb +13 -0
  36. data/lib/schematic/integrationsapi/types/get_stripe_sandbox_keys_response.rb +13 -0
  37. data/lib/schematic/integrationsapi/types/install_stripe_claimable_sandbox_response.rb +13 -0
  38. data/lib/schematic/integrationsapi/types/install_stripe_sandbox_request_body.rb +17 -0
  39. data/lib/schematic/integrationsapi/types/list_stripe_sandbox_countries_response.rb +13 -0
  40. data/lib/schematic/planmigrations/client.rb +80 -5
  41. data/lib/schematic/planmigrations/types/cancel_migration_response.rb +13 -0
  42. data/lib/schematic/planmigrations/types/complete_migration_now_request_body.rb +13 -0
  43. data/lib/schematic/planmigrations/types/complete_migration_now_response.rb +13 -0
  44. data/lib/schematic/plans/client.rb +1 -1
  45. data/lib/schematic/plans/types/publish_plan_version_request_body.rb +4 -0
  46. data/lib/schematic/plans/types/retry_custom_plan_billing_request_body.rb +4 -0
  47. data/lib/schematic/schematic_client.rb +11 -2
  48. data/lib/schematic/types/claimed_stripe_sandbox_keys_response_data.rb +13 -0
  49. data/lib/schematic/types/company_billing_profile_response_data.rb +35 -0
  50. data/lib/schematic/types/company_detail_response_data.rb +6 -0
  51. data/lib/schematic/types/company_override_response_data.rb +4 -0
  52. data/lib/schematic/types/credit_lease_response_data.rb +2 -0
  53. data/lib/schematic/types/credit_spend_policy_response_data.rb +25 -0
  54. data/lib/schematic/types/credit_spend_policy_scope.rb +13 -0
  55. data/lib/schematic/types/custom_plan_billing_response_data.rb +2 -0
  56. data/lib/schematic/types/event_body_inference.rb +2 -0
  57. data/lib/schematic/types/get_onboarding_state_resp.rb +12 -0
  58. data/lib/schematic/types/onboarding_requirement.rb +1 -0
  59. data/lib/schematic/types/onboarding_stripe_import.rb +13 -0
  60. data/lib/schematic/types/otlp_environment_settings_response_data.rb +23 -0
  61. data/lib/schematic/types/pending_migration_response_data.rb +19 -0
  62. data/lib/schematic/types/plan_version_company_migration_response_data.rb +2 -0
  63. data/lib/schematic/types/plan_version_company_migration_status.rb +1 -0
  64. data/lib/schematic/types/plan_version_migration_response_data.rb +2 -0
  65. data/lib/schematic/types/plan_version_migration_status.rb +1 -0
  66. data/lib/schematic/types/plan_version_migration_strategy.rb +1 -0
  67. data/lib/schematic/types/rule_condition_detail_response_data.rb +2 -0
  68. data/lib/schematic/types/rule_condition_plan_version_response_data.rb +15 -0
  69. data/lib/schematic/types/stripe_integration_config.rb +6 -0
  70. data/lib/schematic/types/stripe_sandbox_claim_link.rb +15 -0
  71. data/lib/schematic/types/stripe_sandbox_countries_response_data.rb +9 -0
  72. data/lib/schematic/types/stripe_sandbox_install_response_data.rb +21 -0
  73. data/lib/schematic/types/stripe_sandbox_keys_response_data.rb +13 -0
  74. data/lib/schematic/version.rb +1 -1
  75. data/lib/schematic/wasm/rulesengine.wasm +0 -0
  76. data/lib/schematic.rb +46 -3
  77. data/reference.md +3326 -2138
  78. data/testapp/app.rb +5 -1
  79. metadata +45 -2
@@ -27,7 +27,7 @@ module Schematic
27
27
  # client.planmigrations.list_company_migrations(
28
28
  # migration_id: "migration_id",
29
29
  # q: "q",
30
- # status: "completed",
30
+ # status: "cancelled",
31
31
  # limit: 1000000,
32
32
  # offset: 1000000
33
33
  # )
@@ -115,7 +115,7 @@ module Schematic
115
115
  # client.planmigrations.count_company_migrations(
116
116
  # migration_id: "migration_id",
117
117
  # q: "q",
118
- # status: "completed",
118
+ # status: "cancelled",
119
119
  # limit: 1000000,
120
120
  # offset: 1000000
121
121
  # )
@@ -166,7 +166,7 @@ module Schematic
166
166
  # @example
167
167
  # client.planmigrations.list_migrations(
168
168
  # plan_version_id: "plan_version_id",
169
- # status: "completed",
169
+ # status: "cancelled",
170
170
  # limit: 1000000,
171
171
  # offset: 1000000
172
172
  # )
@@ -213,7 +213,7 @@ module Schematic
213
213
  # client.planmigrations.create_migration(
214
214
  # plan_id: "plan_id",
215
215
  # plan_version_id_to: "plan_version_id_to",
216
- # strategy: "immediate",
216
+ # strategy: "end_of_billing_period",
217
217
  # target_plan_type: "plan"
218
218
  # )
219
219
  #
@@ -276,6 +276,81 @@ module Schematic
276
276
  end
277
277
  end
278
278
 
279
+ # @param request_options [Hash]
280
+ # @param params [Hash]
281
+ # @option request_options [String] :base_url
282
+ # @option request_options [Hash{String => Object}] :additional_headers
283
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
284
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
285
+ # @option request_options [Integer] :timeout_in_seconds
286
+ # @option params [String] :plan_version_migration_id
287
+ #
288
+ # @example
289
+ # client.planmigrations.cancel_migration(plan_version_migration_id: "plan_version_migration_id")
290
+ #
291
+ # @return [Schematic::Planmigrations::Types::CancelMigrationResponse]
292
+ def cancel_migration(request_options: {}, **params)
293
+ params = Schematic::Internal::Types::Utils.normalize_keys(params)
294
+ request = Schematic::Internal::JSON::Request.new(
295
+ base_url: request_options[:base_url],
296
+ method: "POST",
297
+ path: "plan-version-migrations/#{URI.encode_uri_component(params[:plan_version_migration_id].to_s)}/cancel",
298
+ request_options: request_options
299
+ )
300
+ begin
301
+ response = @client.send(request)
302
+ rescue Net::HTTPRequestTimeout
303
+ raise Schematic::Errors::TimeoutError
304
+ end
305
+ code = response.code.to_i
306
+ if code.between?(200, 299)
307
+ Schematic::Planmigrations::Types::CancelMigrationResponse.load(response.body)
308
+ else
309
+ error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
310
+ raise error_class.new(response.body, code: code)
311
+ end
312
+ end
313
+
314
+ # @param request_options [Hash]
315
+ # @param params [Schematic::Planmigrations::Types::CompleteMigrationNowRequestBody]
316
+ # @option request_options [String] :base_url
317
+ # @option request_options [Hash{String => Object}] :additional_headers
318
+ # @option request_options [Hash{String => Object}] :additional_query_parameters
319
+ # @option request_options [Hash{String => Object}] :additional_body_parameters
320
+ # @option request_options [Integer] :timeout_in_seconds
321
+ # @option params [String] :plan_version_migration_id
322
+ #
323
+ # @example
324
+ # client.planmigrations.complete_migration_now(plan_version_migration_id: "plan_version_migration_id")
325
+ #
326
+ # @return [Schematic::Planmigrations::Types::CompleteMigrationNowResponse]
327
+ def complete_migration_now(request_options: {}, **params)
328
+ params = Schematic::Internal::Types::Utils.normalize_keys(params)
329
+ request_data = Schematic::Planmigrations::Types::CompleteMigrationNowRequestBody.new(params).to_h
330
+ non_body_param_names = %w[plan_version_migration_id]
331
+ body = request_data.except(*non_body_param_names)
332
+
333
+ request = Schematic::Internal::JSON::Request.new(
334
+ base_url: request_options[:base_url],
335
+ method: "POST",
336
+ path: "plan-version-migrations/#{URI.encode_uri_component(params[:plan_version_migration_id].to_s)}/complete-now",
337
+ body: body,
338
+ request_options: request_options
339
+ )
340
+ begin
341
+ response = @client.send(request)
342
+ rescue Net::HTTPRequestTimeout
343
+ raise Schematic::Errors::TimeoutError
344
+ end
345
+ code = response.code.to_i
346
+ if code.between?(200, 299)
347
+ Schematic::Planmigrations::Types::CompleteMigrationNowResponse.load(response.body)
348
+ else
349
+ error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
350
+ raise error_class.new(response.body, code: code)
351
+ end
352
+ end
353
+
279
354
  # @param request_options [Hash]
280
355
  # @param params [Schematic::Planmigrations::Types::RetryMigrationRequestBody]
281
356
  # @option request_options [String] :base_url
@@ -334,7 +409,7 @@ module Schematic
334
409
  # @example
335
410
  # client.planmigrations.count_migrations(
336
411
  # plan_version_id: "plan_version_id",
337
- # status: "completed",
412
+ # status: "cancelled",
338
413
  # limit: 1000000,
339
414
  # offset: 1000000
340
415
  # )
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Planmigrations
5
+ module Types
6
+ class CancelMigrationResponse < Internal::Types::Model
7
+ field :data, -> { Schematic::Types::PlanVersionMigrationResponseData }, optional: false, nullable: false
8
+
9
+ field :params, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Planmigrations
5
+ module Types
6
+ class CompleteMigrationNowRequestBody < Internal::Types::Model
7
+ field :plan_version_migration_id, -> { String }, optional: false, nullable: false
8
+
9
+ field :proration_behavior, -> { Schematic::Types::MigrationProrationBehavior }, optional: true, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Planmigrations
5
+ module Types
6
+ class CompleteMigrationNowResponse < Internal::Types::Model
7
+ field :data, -> { Schematic::Types::PlanVersionMigrationResponseData }, optional: false, nullable: false
8
+
9
+ field :params, -> { Internal::Types::Hash[String, Object] }, optional: false, nullable: false
10
+ end
11
+ end
12
+ end
13
+ end
@@ -856,7 +856,7 @@ module Schematic
856
856
  # client.plans.publish_plan_version(
857
857
  # plan_version_id: "plan_version_id",
858
858
  # excluded_company_ids: ["excluded_company_ids"],
859
- # migration_strategy: "immediate"
859
+ # migration_strategy: "end_of_billing_period"
860
860
  # )
861
861
  #
862
862
  # @return [Schematic::Plans::Types::PublishPlanVersionResponse]
@@ -10,6 +10,8 @@ module Schematic
10
10
 
11
11
  field :address, -> { Schematic::Types::CustomerBillingAddress }, optional: true, nullable: false
12
12
 
13
+ field :billing_cycle_anchor, -> { String }, optional: true, nullable: false
14
+
13
15
  field :coupon_external_id, -> { String }, optional: true, nullable: false
14
16
 
15
17
  field :custom_field_values, -> { Internal::Types::Array[Schematic::Types::CheckoutFieldValue] }, optional: true, nullable: false
@@ -24,6 +26,8 @@ module Schematic
24
26
 
25
27
  field :phone, -> { String }, optional: true, nullable: false
26
28
 
29
+ field :prorate_first_period, -> { Internal::Types::Boolean }, optional: true, nullable: false
30
+
27
31
  field :proration_behavior, -> { Schematic::Types::MigrationProrationBehavior }, optional: true, nullable: false
28
32
 
29
33
  field :require_no_migration, -> { Internal::Types::Boolean }, optional: true, nullable: false
@@ -8,10 +8,14 @@ module Schematic
8
8
 
9
9
  field :activation_strategy, -> { Schematic::Types::CustomPlanActivationStrategy }, optional: true, nullable: false
10
10
 
11
+ field :billing_cycle_anchor, -> { String }, optional: true, nullable: false
12
+
11
13
  field :customer_email, -> { String }, optional: false, nullable: false
12
14
 
13
15
  field :days_until_due, -> { Integer }, optional: true, nullable: false
14
16
 
17
+ field :prorate_first_period, -> { Internal::Types::Boolean }, optional: true, nullable: false
18
+
15
19
  field :send_invoice, -> { Internal::Types::Boolean }, optional: true, nullable: false
16
20
  end
17
21
  end
@@ -202,7 +202,7 @@ module Schematic
202
202
  cache_key = build_cache_key(key, company, user)
203
203
  found = false
204
204
  @flag_check_cache_providers.each do |provider|
205
- cached = provider.get(cache_key)
205
+ cached = coerce_cached_response(provider.get(cache_key))
206
206
  next unless cached
207
207
 
208
208
  cached_results[key] = { flag: key, value: cached.value, reason: cached.reason }
@@ -384,11 +384,20 @@ module Schematic
384
384
 
385
385
  # --- Internal Flag Checking ---
386
386
 
387
+ # Cache providers that serialize (RedisCacheProvider) hand back a Hash, not
388
+ # the CheckFlagResponse that was stored; the in-memory cache returns the
389
+ # object itself. Normalize so callers can use the response API either way.
390
+ def coerce_cached_response(cached)
391
+ return cached unless cached.is_a?(Hash)
392
+
393
+ CheckFlagResponse.new(cached)
394
+ end
395
+
387
396
  def check_flag_via_api(flag_key, company, user)
388
397
  # Check cache
389
398
  cache_key = build_cache_key(flag_key, company, user)
390
399
  @flag_check_cache_providers.each do |provider|
391
- cached = provider.get(cache_key)
400
+ cached = coerce_cached_response(provider.get(cache_key))
392
401
  if cached
393
402
  @logger.debug("Flag '#{flag_key}' found in cache (value=#{cached.value})")
394
403
  return cached
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class ClaimedStripeSandboxKeysResponseData < Internal::Types::Model
6
+ field :publishable, -> { String }, optional: false, nullable: false
7
+
8
+ field :sandbox_id, -> { String }, optional: false, nullable: false
9
+
10
+ field :secret, -> { String }, optional: false, nullable: false
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CompanyBillingProfileResponseData < Internal::Types::Model
6
+ field :account_id, -> { String }, optional: false, nullable: false
7
+
8
+ field :billing_customer_id, -> { String }, optional: true, nullable: false
9
+
10
+ field :collection_method, -> { Schematic::Types::BillingCollectionMethod }, optional: false, nullable: false
11
+
12
+ field :company_id, -> { String }, optional: false, nullable: false
13
+
14
+ field :created_at, -> { String }, optional: false, nullable: false
15
+
16
+ field :days_until_due, -> { Integer }, optional: true, nullable: false
17
+
18
+ field :environment_id, -> { String }, optional: false, nullable: false
19
+
20
+ field :id, -> { String }, optional: false, nullable: false
21
+
22
+ field :is_default, -> { Internal::Types::Boolean }, optional: false, nullable: false
23
+
24
+ field :name, -> { String }, optional: true, nullable: false
25
+
26
+ field :payment_method_id, -> { String }, optional: true, nullable: false
27
+
28
+ field :proration_behavior, -> { Schematic::Types::ProrationBehavior }, optional: true, nullable: false
29
+
30
+ field :provider_type, -> { Schematic::Types::BillingProviderType }, optional: false, nullable: false
31
+
32
+ field :updated_at, -> { String }, optional: false, nullable: false
33
+ end
34
+ end
35
+ end
@@ -7,6 +7,10 @@ module Schematic
7
7
 
8
8
  field :billing_credit_balances, -> { Internal::Types::Hash[String, Integer] }, optional: true, nullable: false
9
9
 
10
+ field :billing_profile, -> { Schematic::Types::CompanyBillingProfileResponseData }, optional: true, nullable: false
11
+
12
+ field :billing_profiles, -> { Internal::Types::Array[Schematic::Types::CompanyBillingProfileResponseData] }, optional: true, nullable: false
13
+
10
14
  field :billing_subscription, -> { Schematic::Types::BillingSubscriptionView }, optional: true, nullable: false
11
15
 
12
16
  field :billing_subscriptions, -> { Internal::Types::Array[Schematic::Types::BillingSubscriptionView] }, optional: false, nullable: false
@@ -37,6 +41,8 @@ module Schematic
37
41
 
38
42
  field :payment_methods, -> { Internal::Types::Array[Schematic::Types::PaymentMethodResponseData] }, optional: false, nullable: false
39
43
 
44
+ field :pending_migration, -> { Schematic::Types::PendingMigrationResponseData }, optional: true, nullable: false
45
+
40
46
  field :plan, -> { Schematic::Types::CompanyPlanWithBillingSubView }, optional: true, nullable: false
41
47
 
42
48
  field :plans, -> { Internal::Types::Array[Schematic::Types::GenericPreviewObject] }, optional: false, nullable: false
@@ -35,6 +35,10 @@ module Schematic
35
35
 
36
36
  field :value_bool, -> { Internal::Types::Boolean }, optional: true, nullable: false
37
37
 
38
+ field :value_credit, -> { Schematic::Types::BillingCreditResponseData }, optional: true, nullable: false
39
+
40
+ field :value_credit_id, -> { String }, optional: true, nullable: false
41
+
38
42
  field :value_numeric, -> { Integer }, optional: true, nullable: false
39
43
 
40
44
  field :value_trait, -> { Schematic::Types::EntityTraitDefinitionResponseData }, optional: true, nullable: false
@@ -17,6 +17,8 @@ module Schematic
17
17
 
18
18
  field :released_at, -> { String }, optional: true, nullable: false
19
19
 
20
+ field :tracked_amount, -> { Integer }, optional: false, nullable: false
21
+
20
22
  field :updated_at, -> { String }, optional: false, nullable: false
21
23
  end
22
24
  end
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class CreditSpendPolicyResponseData < Internal::Types::Model
6
+ field :billing_credit_id, -> { String }, optional: false, nullable: false
7
+
8
+ field :company_id, -> { String }, optional: true, nullable: false
9
+
10
+ field :created_at, -> { String }, optional: false, nullable: false
11
+
12
+ field :id, -> { String }, optional: false, nullable: false
13
+
14
+ field :label, -> { String }, optional: true, nullable: false
15
+
16
+ field :max_per_draw, -> { Integer }, optional: true, nullable: false
17
+
18
+ field :scope_type, -> { Schematic::Types::CreditSpendPolicyScope }, optional: false, nullable: false
19
+
20
+ field :updated_at, -> { String }, optional: false, nullable: false
21
+
22
+ field :user_id, -> { String }, 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 CreditSpendPolicyScope
6
+ extend Schematic::Internal::Types::Enum
7
+
8
+ COMPANY = "company"
9
+ USER = "user"
10
+ GROUP = "group"
11
+ end
12
+ end
13
+ end
@@ -23,6 +23,8 @@ module Schematic
23
23
 
24
24
  field :plan_id, -> { String }, optional: false, nullable: false
25
25
 
26
+ field :prorate_first_period, -> { Internal::Types::Boolean }, optional: true, nullable: false
27
+
26
28
  field :published_at, -> { String }, optional: true, nullable: false
27
29
 
28
30
  field :send_invoice, -> { Internal::Types::Boolean }, optional: false, nullable: false
@@ -3,6 +3,8 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class EventBodyInference < Internal::Types::Model
6
+ field :cache_creation_input_tokens, -> { Integer }, optional: true, nullable: false
7
+
6
8
  field :cached_input_tokens, -> { Integer }, optional: true, nullable: false
7
9
 
8
10
  field :company, -> { Internal::Types::Hash[String, String] }, optional: false, nullable: false
@@ -3,17 +3,29 @@
3
3
  module Schematic
4
4
  module Types
5
5
  class GetOnboardingStateResp < Internal::Types::Model
6
+ field :agent_connected_at, -> { String }, optional: true, nullable: false
7
+
8
+ field :country, -> { String }, optional: true, nullable: false
9
+
10
+ field :dismissed_at, -> { String }, optional: true, nullable: false
11
+
6
12
  field :environment_id, -> { String }, optional: true, nullable: false
7
13
 
8
14
  field :milestones, -> { Internal::Types::Array[Schematic::Types::OnboardingMilestoneView] }, optional: false, nullable: false
9
15
 
10
16
  field :path, -> { Schematic::Types::OnboardingPath }, optional: true, nullable: false
11
17
 
18
+ field :pricing_page_url, -> { String }, optional: true, nullable: false
19
+
12
20
  field :requirements, -> { Internal::Types::Array[Schematic::Types::OnboardingRequirementView] }, optional: false, nullable: false
13
21
 
22
+ field :stripe_import, -> { Schematic::Types::OnboardingStripeImport }, optional: true, nullable: false
23
+
14
24
  field :suggested_next, -> { Internal::Types::Array[Schematic::Types::OnboardingRequirement] }, optional: false, nullable: false
15
25
 
16
26
  field :track, -> { Schematic::Types::OnboardingTrack }, optional: true, nullable: false
27
+
28
+ field :website_url, -> { String }, optional: true, nullable: false
17
29
  end
18
30
  end
19
31
  end
@@ -5,6 +5,7 @@ module Schematic
5
5
  module OnboardingRequirement
6
6
  extend Schematic::Internal::Types::Enum
7
7
 
8
+ CONNECT_AGENT = "connect_agent"
8
9
  CONNECT_BILLING = "connect_billing"
9
10
  CREATE_API_KEY = "create_api_key"
10
11
  FIRST_FLAG_CHECK = "first_flag_check"
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ module OnboardingStripeImport
6
+ extend Schematic::Internal::Types::Enum
7
+
8
+ COMPLETE = "complete"
9
+ NOT_STARTED = "not_started"
10
+ RUNNING = "running"
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,23 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class OtlpEnvironmentSettingsResponseData < Internal::Types::Model
6
+ field :company_attribute, -> { String }, optional: true, nullable: false
7
+
8
+ field :company_key, -> { String }, optional: true, nullable: false
9
+
10
+ field :created_at, -> { String }, optional: false, nullable: false
11
+
12
+ field :environment_id, -> { String }, optional: false, nullable: false
13
+
14
+ field :tool_events_enabled, -> { Internal::Types::Boolean }, optional: false, nullable: false
15
+
16
+ field :updated_at, -> { String }, optional: false, nullable: false
17
+
18
+ field :user_attribute, -> { String }, optional: true, nullable: false
19
+
20
+ field :user_key, -> { String }, optional: true, nullable: false
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class PendingMigrationResponseData < Internal::Types::Model
6
+ field :migration_id, -> { String }, optional: false, nullable: false
7
+
8
+ field :scheduled_for, -> { String }, optional: true, nullable: false
9
+
10
+ field :to_plan_id, -> { String }, optional: false, nullable: false
11
+
12
+ field :to_plan_name, -> { String }, optional: false, nullable: false
13
+
14
+ field :to_plan_version_id, -> { String }, optional: false, nullable: false
15
+
16
+ field :to_plan_version_number, -> { Integer }, optional: true, nullable: false
17
+ end
18
+ end
19
+ end
@@ -21,6 +21,8 @@ module Schematic
21
21
 
22
22
  field :plan_version_id_from, -> { String }, optional: true, nullable: false
23
23
 
24
+ field :scheduled_for, -> { String }, optional: true, nullable: false
25
+
24
26
  field :started_at, -> { String }, optional: true, nullable: false
25
27
 
26
28
  field :status, -> { Schematic::Types::PlanVersionCompanyMigrationStatus }, optional: false, nullable: false
@@ -5,6 +5,7 @@ module Schematic
5
5
  module PlanVersionCompanyMigrationStatus
6
6
  extend Schematic::Internal::Types::Enum
7
7
 
8
+ CANCELLED = "cancelled"
8
9
  COMPLETED = "completed"
9
10
  FAILED = "failed"
10
11
  IN_PROGRESS = "in_progress"
@@ -15,6 +15,8 @@ module Schematic
15
15
 
16
16
  field :id, -> { String }, optional: false, nullable: false
17
17
 
18
+ field :next_due_at, -> { String }, optional: true, nullable: false
19
+
18
20
  field :plan_id, -> { String }, optional: false, nullable: false
19
21
 
20
22
  field :plan_version_id_from, -> { String }, optional: true, nullable: false
@@ -5,6 +5,7 @@ module Schematic
5
5
  module PlanVersionMigrationStatus
6
6
  extend Schematic::Internal::Types::Enum
7
7
 
8
+ CANCELLED = "cancelled"
8
9
  COMPLETED = "completed"
9
10
  FAILED = "failed"
10
11
  IN_PROGRESS = "in_progress"
@@ -5,6 +5,7 @@ module Schematic
5
5
  module PlanVersionMigrationStrategy
6
6
  extend Schematic::Internal::Types::Enum
7
7
 
8
+ END_OF_BILLING_PERIOD = "end_of_billing_period"
8
9
  IMMEDIATE = "immediate"
9
10
  LEAVE = "leave"
10
11
  end
@@ -29,6 +29,8 @@ module Schematic
29
29
 
30
30
  field :operator, -> { Schematic::Types::ComparableOperator }, optional: false, nullable: false
31
31
 
32
+ field :plan_versions, -> { Internal::Types::Array[Schematic::Types::RuleConditionPlanVersionResponseData] }, optional: true, nullable: false
33
+
32
34
  field :resource_ids, -> { Internal::Types::Array[String] }, optional: false, nullable: false
33
35
 
34
36
  field :resources, -> { Internal::Types::Array[Schematic::Types::PreviewObjectResponseData] }, optional: false, nullable: false
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class RuleConditionPlanVersionResponseData < Internal::Types::Model
6
+ field :id, -> { String }, optional: false, nullable: false
7
+
8
+ field :name, -> { String }, optional: false, nullable: false
9
+
10
+ field :status, -> { Schematic::Types::PlanVersionStatus }, optional: false, nullable: false
11
+
12
+ field :version, -> { Integer }, optional: false, nullable: false
13
+ end
14
+ end
15
+ end
@@ -7,6 +7,12 @@ module Schematic
7
7
 
8
8
  field :account_name, -> { String }, optional: true, nullable: false
9
9
 
10
+ field :claimable_sandbox_expires_at, -> { String }, optional: true, nullable: false
11
+
12
+ field :claimable_sandbox_id, -> { String }, optional: true, nullable: false
13
+
14
+ field :claimable_sandbox_status, -> { String }, optional: true, nullable: false
15
+
10
16
  field :company_update_only, -> { Internal::Types::Boolean }, optional: true, nullable: false
11
17
 
12
18
  field :is_sandbox, -> { Internal::Types::Boolean }, optional: false, nullable: false
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class StripeSandboxClaimLink < Internal::Types::Model
6
+ field :claim_url, -> { String }, optional: false, nullable: false
7
+
8
+ field :expires_at, -> { String }, optional: true, nullable: false
9
+
10
+ field :sandbox_id, -> { String }, optional: false, nullable: false
11
+
12
+ field :status, -> { String }, optional: false, nullable: false
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,9 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class StripeSandboxCountriesResponseData < Internal::Types::Model
6
+ field :countries, -> { Internal::Types::Array[String] }, optional: false, nullable: false
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class StripeSandboxInstallResponseData < Internal::Types::Model
6
+ field :api_keys, -> { Schematic::Types::StripeSandboxKeysResponseData }, optional: true, nullable: false
7
+
8
+ field :claim_url, -> { String }, optional: false, nullable: false
9
+
10
+ field :claim_url_expires_at, -> { String }, optional: true, nullable: false
11
+
12
+ field :expires_at, -> { String }, optional: true, nullable: false
13
+
14
+ field :install, -> { Schematic::Types::IntegrationInstallResponseData }, optional: false, nullable: false
15
+
16
+ field :sandbox_id, -> { String }, optional: false, nullable: false
17
+
18
+ field :stripe_account_id, -> { String }, optional: false, nullable: false
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Schematic
4
+ module Types
5
+ class StripeSandboxKeysResponseData < Internal::Types::Model
6
+ field :mcp, -> { String }, optional: false, nullable: false
7
+
8
+ field :publishable, -> { String }, optional: false, nullable: false
9
+
10
+ field :secret, -> { String }, optional: false, nullable: false
11
+ end
12
+ end
13
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Schematic
4
- VERSION = "1.4.15"
4
+ VERSION = "1.4.17"
5
5
  end