Class: MetronomeSDK::Resources::V1::Customers::BillingConfig
- Inherits:
-
Object
- Object
- MetronomeSDK::Resources::V1::Customers::BillingConfig
- Defined in:
- lib/metronome_sdk/resources/v1/customers/billing_config.rb,
sig/metronome_sdk/resources/v1/customers/billing_config.rbs
Overview
Customers in Metronome represent your users for all billing and reporting. Use these endpoints to create, retrieve, update, and archive customers and their billing configuration.
Instance Method Summary collapse
-
#create(customer_id:, billing_provider_type:, billing_provider_customer_id:, aws_customer_account_id: nil, aws_customer_id: nil, aws_product_code: nil, aws_region: nil, stripe_collection_method: nil, request_options: {}) ⇒ nil
Some parameter documentations has been truncated, see Models::V1::Customers::BillingConfigCreateParams for more details.
-
#delete(customer_id:, billing_provider_type:, request_options: {}) ⇒ nil
Delete the billing configuration for a given customer.
-
#initialize(client:) ⇒ BillingConfig
constructor
private
A new instance of BillingConfig.
-
#retrieve(customer_id:, billing_provider_type:, request_options: {}) ⇒ MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse
Fetch the billing configuration for the given customer.
Constructor Details
#initialize(client:) ⇒ BillingConfig
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of BillingConfig.
129 130 131 |
# File 'lib/metronome_sdk/resources/v1/customers/billing_config.rb', line 129 def initialize(client:) @client = client end |
Instance Method Details
#create(customer_id:, billing_provider_type:, billing_provider_customer_id:, aws_customer_account_id: nil, aws_customer_id: nil, aws_product_code: nil, aws_region: nil, stripe_collection_method: nil, request_options: {}) ⇒ nil
Some parameter documentations has been truncated, see Models::V1::Customers::BillingConfigCreateParams for more details.
Set the billing configuration for a given customer. This is a Plans (deprecated) endpoint. New clients should implement using Contracts.
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/metronome_sdk/resources/v1/customers/billing_config.rb', line 42 def create(params) parsed, = MetronomeSDK::V1::Customers::BillingConfigCreateParams.dump_request(params) customer_id = parsed.delete(:customer_id) do raise ArgumentError.new("missing required path argument #{_1}") end billing_provider_type = parsed.delete(:billing_provider_type) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :post, path: ["v1/customers/%1$s/billing-config/%2$s", customer_id, billing_provider_type], body: parsed, model: NilClass, options: ) end |
#delete(customer_id:, billing_provider_type:, request_options: {}) ⇒ nil
Delete the billing configuration for a given customer. Note: this is unsupported for Azure and AWS Marketplace customers. This is a Plans (deprecated) endpoint. New clients should implement using Contracts.
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
# File 'lib/metronome_sdk/resources/v1/customers/billing_config.rb', line 108 def delete(params) parsed, = MetronomeSDK::V1::Customers::BillingConfigDeleteParams.dump_request(params) customer_id = parsed.delete(:customer_id) do raise ArgumentError.new("missing required path argument #{_1}") end billing_provider_type = parsed.delete(:billing_provider_type) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :delete, path: ["v1/customers/%1$s/billing-config/%2$s", customer_id, billing_provider_type], model: NilClass, options: ) end |
#retrieve(customer_id:, billing_provider_type:, request_options: {}) ⇒ MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse
Fetch the billing configuration for the given customer. This is a Plans (deprecated) endpoint. New clients should implement using Contracts.
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
# File 'lib/metronome_sdk/resources/v1/customers/billing_config.rb', line 75 def retrieve(params) parsed, = MetronomeSDK::V1::Customers::BillingConfigRetrieveParams.dump_request(params) customer_id = parsed.delete(:customer_id) do raise ArgumentError.new("missing required path argument #{_1}") end billing_provider_type = parsed.delete(:billing_provider_type) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :get, path: ["v1/customers/%1$s/billing-config/%2$s", customer_id, billing_provider_type], model: MetronomeSDK::Models::V1::Customers::BillingConfigRetrieveResponse, options: ) end |