Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .fern/metadata.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@
"webrick": ">= 1.0"
}
},
"originGitCommit": "470e0f433ab9bb0e88784674fa2e1efce62ebd9b",
"originGitCommit": "a3057c10aa6a1daa708dc714c89ce943f67a722a",
"sdkVersion": "1.4.2"
}
16 changes: 8 additions & 8 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ GEM
rexml
hashdiff (1.2.1)
io-console (0.8.2)
json (2.19.5)
json (2.19.7)
language_server-protocol (3.17.0.5)
lint_roller (1.1.0)
method_source (1.1.0)
Expand All @@ -42,7 +42,7 @@ GEM
reline (0.6.3)
io-console (~> 0.5)
rexml (3.4.4)
rubocop (1.86.2)
rubocop (1.87.0)
json (~> 2.3)
language_server-protocol (~> 3.17.0.2)
lint_roller (~> 1.1.0)
Expand All @@ -64,12 +64,12 @@ GEM
unicode-display_width (3.2.0)
unicode-emoji (~> 4.1)
unicode-emoji (4.2.0)
wasmtime (44.0.0-aarch64-linux)
wasmtime (44.0.0-aarch64-linux-musl)
wasmtime (44.0.0-arm64-darwin)
wasmtime (44.0.0-x86_64-darwin)
wasmtime (44.0.0-x86_64-linux)
wasmtime (44.0.0-x86_64-linux-musl)
wasmtime (45.0.0-aarch64-linux)
wasmtime (45.0.0-aarch64-linux-musl)
wasmtime (45.0.0-arm64-darwin)
wasmtime (45.0.0-x86_64-darwin)
wasmtime (45.0.0-x86_64-linux)
wasmtime (45.0.0-x86_64-linux-musl)
webmock (3.26.2)
addressable (>= 2.8.0)
crack (>= 0.3.2)
Expand Down
10 changes: 10 additions & 0 deletions lib/schematic.rb
Original file line number Diff line number Diff line change
Expand Up @@ -405,6 +405,7 @@
require_relative "schematic/plans/types/update_company_plans_response"
require_relative "schematic/plans/types/list_custom_plan_billings_params"
require_relative "schematic/plans/types/list_custom_plan_billings_response"
require_relative "schematic/plans/types/mark_custom_plan_billing_paid_response"
require_relative "schematic/plans/types/retry_custom_plan_billing_response"
require_relative "schematic/plans/types/create_custom_plan_response"
require_relative "schematic/plans/types/list_plans_params"
Expand Down Expand Up @@ -446,6 +447,7 @@
require_relative "schematic/types/company_plan_invalid_reason"
require_relative "schematic/types/custom_plan_config"
require_relative "schematic/types/plan_credit_grant_view"
require_relative "schematic/types/plan_price_cadence"
require_relative "schematic/types/company_plan_detail_response_data"
require_relative "schematic/types/compatible_plans"
require_relative "schematic/types/component_capabilities"
Expand Down Expand Up @@ -536,6 +538,7 @@
require_relative "schematic/types/integration_capabilities"
require_relative "schematic/types/orb_integration_config"
require_relative "schematic/types/stripe_integration_config"
require_relative "schematic/types/work_os_integration_config"
require_relative "schematic/types/integration_config"
require_relative "schematic/types/integrations_list_response_data"
require_relative "schematic/integrationsapi/types/list_integrations_response"
Expand Down Expand Up @@ -563,16 +566,20 @@
require_relative "schematic/plangroups/types/update_plan_group_response"
require_relative "schematic/types/plan_version_company_migration_status"
require_relative "schematic/planmigrations/types/list_company_migrations_params"
require_relative "schematic/types/migration_error_code"
require_relative "schematic/types/plan_version_company_migration_response_data"
require_relative "schematic/planmigrations/types/list_company_migrations_response"
require_relative "schematic/planmigrations/types/retry_company_migration_response"
require_relative "schematic/planmigrations/types/count_company_migrations_params"
require_relative "schematic/planmigrations/types/count_company_migrations_response"
require_relative "schematic/types/plan_version_migration_status"
require_relative "schematic/planmigrations/types/list_migrations_params"
require_relative "schematic/types/plan_version_migration_strategy"
require_relative "schematic/types/plan_version_migration_response_data"
require_relative "schematic/planmigrations/types/list_migrations_response"
require_relative "schematic/planmigrations/types/create_migration_response"
require_relative "schematic/planmigrations/types/get_migration_response"
require_relative "schematic/planmigrations/types/retry_migration_response"
require_relative "schematic/planmigrations/types/count_migrations_params"
require_relative "schematic/planmigrations/types/count_migrations_response"
require_relative "schematic/types/plan_view_public_response_data"
Expand Down Expand Up @@ -669,6 +676,7 @@
require_relative "schematic/types/keys_request_body"
require_relative "schematic/types/plan_selection"
require_relative "schematic/types/manage_plan_request"
require_relative "schematic/types/mark_custom_plan_billing_paid_request_body"
require_relative "schematic/types/meter_request_body"
require_relative "schematic/types/payment_method_request_body"
require_relative "schematic/types/plan_bundle_action"
Expand Down Expand Up @@ -875,6 +883,8 @@
require_relative "schematic/planmigrations/types/list_company_migrations_request"
require_relative "schematic/planmigrations/types/count_company_migrations_request"
require_relative "schematic/planmigrations/types/list_migrations_request"
require_relative "schematic/planmigrations/types/create_migration_input"
require_relative "schematic/planmigrations/types/retry_migration_request_body"
require_relative "schematic/planmigrations/types/count_migrations_request"
require_relative "schematic/componentspublic/client"
require_relative "schematic/scheduledcheckout/client"
Expand Down
8 changes: 6 additions & 2 deletions lib/schematic/companies/client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ def initialize(client:)
# @option params [String, nil] :plan_id
# @option params [String, nil] :plan_ids
# @option params [String, nil] :plan_version_id
# @option params [String, nil] :plan_version_ids
# @option params [String, nil] :q
# @option params [String, nil] :sort_order_column
# @option params [Schematic::Types::SortDirection, nil] :sort_order_direction
Expand All @@ -40,7 +41,7 @@ def initialize(client:)
# @return [Schematic::Companies::Types::ListCompaniesResponse]
def list_companies(request_options: {}, **params)
params = Schematic::Internal::Types::Utils.normalize_keys(params)
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]
query_param_names = %i[credit_type_ids has_scheduled_downgrade ids monetized_subscriptions plan_id plan_ids plan_version_id plan_version_ids 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]
query_params = {}
query_params["credit_type_ids"] = params[:credit_type_ids] if params.key?(:credit_type_ids)
query_params["has_scheduled_downgrade"] = params[:has_scheduled_downgrade] if params.key?(:has_scheduled_downgrade)
Expand All @@ -49,6 +50,7 @@ def list_companies(request_options: {}, **params)
query_params["plan_id"] = params[:plan_id] if params.key?(:plan_id)
query_params["plan_ids"] = params[:plan_ids] if params.key?(:plan_ids)
query_params["plan_version_id"] = params[:plan_version_id] if params.key?(:plan_version_id)
query_params["plan_version_ids"] = params[:plan_version_ids] if params.key?(:plan_version_ids)
query_params["q"] = params[:q] if params.key?(:q)
query_params["sort_order_column"] = params[:sort_order_column] if params.key?(:sort_order_column)
query_params["sort_order_direction"] = params[:sort_order_direction] if params.key?(:sort_order_direction)
Expand Down Expand Up @@ -203,6 +205,7 @@ def delete_company(request_options: {}, **params)
# @option params [String, nil] :plan_id
# @option params [String, nil] :plan_ids
# @option params [String, nil] :plan_version_id
# @option params [String, nil] :plan_version_ids
# @option params [String, nil] :q
# @option params [String, nil] :sort_order_column
# @option params [Schematic::Types::SortDirection, nil] :sort_order_direction
Expand All @@ -219,7 +222,7 @@ def delete_company(request_options: {}, **params)
# @return [Schematic::Companies::Types::CountCompaniesResponse]
def count_companies(request_options: {}, **params)
params = Schematic::Internal::Types::Utils.normalize_keys(params)
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]
query_param_names = %i[credit_type_ids has_scheduled_downgrade ids monetized_subscriptions plan_id plan_ids plan_version_id plan_version_ids 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]
query_params = {}
query_params["credit_type_ids"] = params[:credit_type_ids] if params.key?(:credit_type_ids)
query_params["has_scheduled_downgrade"] = params[:has_scheduled_downgrade] if params.key?(:has_scheduled_downgrade)
Expand All @@ -228,6 +231,7 @@ def count_companies(request_options: {}, **params)
query_params["plan_id"] = params[:plan_id] if params.key?(:plan_id)
query_params["plan_ids"] = params[:plan_ids] if params.key?(:plan_ids)
query_params["plan_version_id"] = params[:plan_version_id] if params.key?(:plan_version_id)
query_params["plan_version_ids"] = params[:plan_version_ids] if params.key?(:plan_version_ids)
query_params["q"] = params[:q] if params.key?(:q)
query_params["sort_order_column"] = params[:sort_order_column] if params.key?(:sort_order_column)
query_params["sort_order_direction"] = params[:sort_order_direction] if params.key?(:sort_order_direction)
Expand Down
1 change: 1 addition & 0 deletions lib/schematic/companies/types/count_companies_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ class CountCompaniesParams < Internal::Types::Model
field :plan_id, -> { String }, optional: true, nullable: false
field :plan_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
field :plan_version_id, -> { String }, optional: true, nullable: false
field :plan_version_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
field :q, -> { String }, optional: true, nullable: false
field :sort_order_column, -> { String }, optional: true, nullable: false
field :sort_order_direction, -> { Schematic::Types::SortDirection }, optional: true, nullable: false
Expand Down
1 change: 1 addition & 0 deletions lib/schematic/companies/types/count_companies_request.rb
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ class CountCompaniesRequest < Internal::Types::Model
field :plan_id, -> { String }, optional: true, nullable: false
field :plan_ids, -> { String }, optional: true, nullable: false
field :plan_version_id, -> { String }, optional: true, nullable: false
field :plan_version_ids, -> { String }, optional: true, nullable: false
field :q, -> { String }, optional: true, nullable: false
field :sort_order_column, -> { String }, optional: true, nullable: false
field :sort_order_direction, -> { Schematic::Types::SortDirection }, optional: true, nullable: false
Expand Down
1 change: 1 addition & 0 deletions lib/schematic/companies/types/list_companies_params.rb
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ class ListCompaniesParams < Internal::Types::Model
field :plan_id, -> { String }, optional: true, nullable: false
field :plan_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
field :plan_version_id, -> { String }, optional: true, nullable: false
field :plan_version_ids, -> { Internal::Types::Array[String] }, optional: true, nullable: false
field :q, -> { String }, optional: true, nullable: false
field :sort_order_column, -> { String }, optional: true, nullable: false
field :sort_order_direction, -> { Schematic::Types::SortDirection }, optional: true, nullable: false
Expand Down
1 change: 1 addition & 0 deletions lib/schematic/companies/types/list_companies_request.rb
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ class ListCompaniesRequest < Internal::Types::Model
field :plan_id, -> { String }, optional: true, nullable: false
field :plan_ids, -> { String }, optional: true, nullable: false
field :plan_version_id, -> { String }, optional: true, nullable: false
field :plan_version_ids, -> { String }, optional: true, nullable: false
field :q, -> { String }, optional: true, nullable: false
field :sort_order_column, -> { String }, optional: true, nullable: false
field :sort_order_direction, -> { Schematic::Types::SortDirection }, optional: true, nullable: false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ class CreateBillingLinkedPlanEntitlementRequestBody < Internal::Types::Model
field :quarterly_unit_price_decimal, -> { String }, optional: true, nullable: false
field :soft_limit, -> { Integer }, optional: true, nullable: false
field :tier_mode, -> { Schematic::Types::BillingTiersMode }, optional: true, nullable: false
field :usage_quantity, -> { Integer }, optional: true, nullable: false
field :value_bool, -> { Internal::Types::Boolean }, optional: true, nullable: false
field :value_credit_id, -> { String }, optional: true, nullable: false
field :value_numeric, -> { Integer }, optional: true, nullable: false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ class CreatePlanEntitlementRequestBody < Internal::Types::Model
field :quarterly_unit_price_decimal, -> { String }, optional: true, nullable: false
field :soft_limit, -> { Integer }, optional: true, nullable: false
field :tier_mode, -> { Schematic::Types::BillingTiersMode }, optional: true, nullable: false
field :usage_quantity, -> { Integer }, optional: true, nullable: false
field :value_bool, -> { Internal::Types::Boolean }, optional: true, nullable: false
field :value_credit_id, -> { String }, optional: true, nullable: false
field :value_numeric, -> { Integer }, optional: true, nullable: false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ class UpdatePlanEntitlementRequestBody < Internal::Types::Model
field :quarterly_unit_price_decimal, -> { String }, optional: true, nullable: false
field :soft_limit, -> { Integer }, optional: true, nullable: false
field :tier_mode, -> { Schematic::Types::BillingTiersMode }, optional: true, nullable: false
field :usage_quantity, -> { Integer }, optional: true, nullable: false
field :value_bool, -> { Internal::Types::Boolean }, optional: true, nullable: false
field :value_credit_id, -> { String }, optional: true, nullable: false
field :value_numeric, -> { Integer }, optional: true, nullable: false
Expand Down
101 changes: 101 additions & 0 deletions lib/schematic/planmigrations/client.rb
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,38 @@ def list_company_migrations(request_options: {}, **params)
end
end

# @param request_options [Hash]
# @param params [Hash]
# @option request_options [String] :base_url
# @option request_options [Hash{String => Object}] :additional_headers
# @option request_options [Hash{String => Object}] :additional_query_parameters
# @option request_options [Hash{String => Object}] :additional_body_parameters
# @option request_options [Integer] :timeout_in_seconds
# @option params [String] :plan_version_company_migration_id
#
# @return [Schematic::Planmigrations::Types::RetryCompanyMigrationResponse]
def retry_company_migration(request_options: {}, **params)
params = Schematic::Internal::Types::Utils.normalize_keys(params)
request = Schematic::Internal::JSON::Request.new(
base_url: request_options[:base_url],
method: "POST",
path: "plan-version-company-migrations/#{URI.encode_uri_component(params[:plan_version_company_migration_id].to_s)}/retry",
request_options: request_options
)
begin
response = @client.send(request)
rescue Net::HTTPRequestTimeout
raise Schematic::Errors::TimeoutError
end
code = response.code.to_i
if code.between?(200, 299)
Schematic::Planmigrations::Types::RetryCompanyMigrationResponse.load(response.body)
else
error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
raise error_class.new(response.body, code: code)
end
end

# @param request_options [Hash]
# @param params [Hash]
# @option request_options [String] :base_url
Expand Down Expand Up @@ -146,6 +178,38 @@ def list_migrations(request_options: {}, **params)
end
end

# @param request_options [Hash]
# @param params [Schematic::Planmigrations::Types::CreateMigrationInput]
# @option request_options [String] :base_url
# @option request_options [Hash{String => Object}] :additional_headers
# @option request_options [Hash{String => Object}] :additional_query_parameters
# @option request_options [Hash{String => Object}] :additional_body_parameters
# @option request_options [Integer] :timeout_in_seconds
#
# @return [Schematic::Planmigrations::Types::CreateMigrationResponse]
def create_migration(request_options: {}, **params)
params = Schematic::Internal::Types::Utils.normalize_keys(params)
request = Schematic::Internal::JSON::Request.new(
base_url: request_options[:base_url],
method: "POST",
path: "plan-version-migrations",
body: Schematic::Planmigrations::Types::CreateMigrationInput.new(params).to_h,
request_options: request_options
)
begin
response = @client.send(request)
rescue Net::HTTPRequestTimeout
raise Schematic::Errors::TimeoutError
end
code = response.code.to_i
if code.between?(200, 299)
Schematic::Planmigrations::Types::CreateMigrationResponse.load(response.body)
else
error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
raise error_class.new(response.body, code: code)
end
end

# @param request_options [Hash]
# @param params [Hash]
# @option request_options [String] :base_url
Expand Down Expand Up @@ -178,6 +242,43 @@ def get_migration(request_options: {}, **params)
end
end

# @param request_options [Hash]
# @param params [Schematic::Planmigrations::Types::RetryMigrationRequestBody]
# @option request_options [String] :base_url
# @option request_options [Hash{String => Object}] :additional_headers
# @option request_options [Hash{String => Object}] :additional_query_parameters
# @option request_options [Hash{String => Object}] :additional_body_parameters
# @option request_options [Integer] :timeout_in_seconds
# @option params [String] :plan_version_migration_id
#
# @return [Schematic::Planmigrations::Types::RetryMigrationResponse]
def retry_migration(request_options: {}, **params)
params = Schematic::Internal::Types::Utils.normalize_keys(params)
request_data = Schematic::Planmigrations::Types::RetryMigrationRequestBody.new(params).to_h
non_body_param_names = ["plan_version_migration_id"]
body = request_data.except(*non_body_param_names)

request = Schematic::Internal::JSON::Request.new(
base_url: request_options[:base_url],
method: "POST",
path: "plan-version-migrations/#{URI.encode_uri_component(params[:plan_version_migration_id].to_s)}/retry",
body: body,
request_options: request_options
)
begin
response = @client.send(request)
rescue Net::HTTPRequestTimeout
raise Schematic::Errors::TimeoutError
end
code = response.code.to_i
if code.between?(200, 299)
Schematic::Planmigrations::Types::RetryMigrationResponse.load(response.body)
else
error_class = Schematic::Errors::ResponseError.subclass_for_code(code)
raise error_class.new(response.body, code: code)
end
end

# @param request_options [Hash]
# @param params [Hash]
# @option request_options [String] :base_url
Expand Down
Loading