lago_ruby 0.46.0.pre.beta
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.
- checksums.yaml +7 -0
- data/CODE_OF_CONDUCT.md +128 -0
- data/CONTRIBUTING.md +213 -0
- data/Gemfile +9 -0
- data/Gemfile.lock +72 -0
- data/LICENSE +21 -0
- data/README.md +343 -0
- data/Rakefile +10 -0
- data/docs/AddOn.md +18 -0
- data/docs/AddOnBaseInput.md +28 -0
- data/docs/AddOnCreateInput.md +18 -0
- data/docs/AddOnCreateInputAddOn.md +28 -0
- data/docs/AddOnObject.md +32 -0
- data/docs/AddOnUpdateInput.md +18 -0
- data/docs/AddOnsApi.md +433 -0
- data/docs/AddOnsPaginated.md +20 -0
- data/docs/ApiErrorBadRequest.md +20 -0
- data/docs/ApiErrorForbidden.md +22 -0
- data/docs/ApiErrorNotAllowed.md +22 -0
- data/docs/ApiErrorNotFound.md +22 -0
- data/docs/ApiErrorUnauthorized.md +20 -0
- data/docs/ApiErrorUnprocessableEntity.md +24 -0
- data/docs/AppliedAddOn.md +18 -0
- data/docs/AppliedAddOnInput.md +18 -0
- data/docs/AppliedAddOnInputAppliedAddOn.md +24 -0
- data/docs/AppliedAddOnObject.md +32 -0
- data/docs/AppliedCoupon.md +18 -0
- data/docs/AppliedCouponInput.md +18 -0
- data/docs/AppliedCouponInputAppliedCoupon.md +30 -0
- data/docs/AppliedCouponObject.md +50 -0
- data/docs/AppliedCouponObjectExtended.md +52 -0
- data/docs/AppliedCouponsPaginated.md +20 -0
- data/docs/BaseAppliedTax.md +34 -0
- data/docs/BillableMetric.md +18 -0
- data/docs/BillableMetricBaseInput.md +30 -0
- data/docs/BillableMetricCreateInput.md +18 -0
- data/docs/BillableMetricCreateInputBillableMetric.md +30 -0
- data/docs/BillableMetricGroup.md +20 -0
- data/docs/BillableMetricGroupValuesInner.md +49 -0
- data/docs/BillableMetricGroupValuesInnerOneOf.md +20 -0
- data/docs/BillableMetricObject.md +40 -0
- data/docs/BillableMetricUpdateInput.md +18 -0
- data/docs/BillableMetricsApi.md +439 -0
- data/docs/BillableMetricsPaginated.md +20 -0
- data/docs/ChargeObject.md +40 -0
- data/docs/ChargeObjectProperties.md +40 -0
- data/docs/ChargeProperties.md +40 -0
- data/docs/ChargePropertiesGraduatedPercentageRangesInner.md +24 -0
- data/docs/ChargePropertiesGraduatedRangesInner.md +24 -0
- data/docs/ChargePropertiesVolumeRangesInner.md +24 -0
- data/docs/Country.md +15 -0
- data/docs/Coupon.md +18 -0
- data/docs/CouponBaseInput.md +42 -0
- data/docs/CouponBaseInputAppliesTo.md +20 -0
- data/docs/CouponCreateInput.md +18 -0
- data/docs/CouponCreateInputCoupon.md +42 -0
- data/docs/CouponObject.md +52 -0
- data/docs/CouponUpdateInput.md +18 -0
- data/docs/CouponsApi.md +583 -0
- data/docs/CouponsPaginated.md +20 -0
- data/docs/CreateWebhookEndpoint200Response.md +18 -0
- data/docs/CreateWebhookEndpoint200ResponseWebhookEndpoint.md +26 -0
- data/docs/CreateWebhookEndpointRequest.md +18 -0
- data/docs/CreateWebhookEndpointRequestWebhookEndpoint.md +20 -0
- data/docs/CreditNote.md +18 -0
- data/docs/CreditNoteAppliedTaxObject.md +38 -0
- data/docs/CreditNoteCreateInput.md +18 -0
- data/docs/CreditNoteCreateInputCreditNote.md +28 -0
- data/docs/CreditNoteCreateInputCreditNoteItemsInner.md +20 -0
- data/docs/CreditNoteItemObject.md +24 -0
- data/docs/CreditNoteItemObjectFee.md +74 -0
- data/docs/CreditNoteObject.md +64 -0
- data/docs/CreditNoteUpdateInput.md +18 -0
- data/docs/CreditNoteUpdateInputCreditNote.md +18 -0
- data/docs/CreditNotes.md +18 -0
- data/docs/CreditNotesApi.md +435 -0
- data/docs/CreditObject.md +28 -0
- data/docs/CreditObjectInvoice.md +20 -0
- data/docs/CreditObjectItem.md +24 -0
- data/docs/Currency.md +15 -0
- data/docs/Customer.md +18 -0
- data/docs/CustomerBillingConfiguration.md +30 -0
- data/docs/CustomerChargeUsageObject.md +28 -0
- data/docs/CustomerChargeUsageObjectBillableMetric.md +24 -0
- data/docs/CustomerChargeUsageObjectCharge.md +20 -0
- data/docs/CustomerChargeUsageObjectGroupsInner.md +26 -0
- data/docs/CustomerCreateInput.md +18 -0
- data/docs/CustomerCreateInputCustomer.md +58 -0
- data/docs/CustomerCreateInputCustomerMetadataInner.md +24 -0
- data/docs/CustomerMetadata.md +26 -0
- data/docs/CustomerObject.md +68 -0
- data/docs/CustomerObjectExtended.md +70 -0
- data/docs/CustomerUsage.md +18 -0
- data/docs/CustomerUsageObject.md +32 -0
- data/docs/CustomersApi.md +505 -0
- data/docs/CustomersPaginated.md +20 -0
- data/docs/Event.md +18 -0
- data/docs/EventBatchInput.md +18 -0
- data/docs/EventBatchInputEvent.md +28 -0
- data/docs/EventBatchInputEventProperties.md +18 -0
- data/docs/EventEstimateFeesInput.md +18 -0
- data/docs/EventEstimateFeesInputEvent.md +24 -0
- data/docs/EventInput.md +18 -0
- data/docs/EventInputEvent.md +28 -0
- data/docs/EventObject.md +36 -0
- data/docs/EventsApi.md +285 -0
- data/docs/Fee.md +18 -0
- data/docs/FeeAppliedTaxObject.md +36 -0
- data/docs/FeeObject.md +74 -0
- data/docs/FeeObjectItem.md +26 -0
- data/docs/FeeUpdateInput.md +18 -0
- data/docs/FeeUpdateInputFee.md +18 -0
- data/docs/Fees.md +18 -0
- data/docs/FeesApi.md +253 -0
- data/docs/FeesPaginated.md +20 -0
- data/docs/FindAllWebhookEndpoints200Response.md +20 -0
- data/docs/GetCustomerPortalUrl200Response.md +18 -0
- data/docs/GetCustomerPortalUrl200ResponseCustomer.md +18 -0
- data/docs/GroupObject.md +22 -0
- data/docs/GroupPropertiesObject.md +20 -0
- data/docs/GroupPropertiesObjectValues.md +40 -0
- data/docs/GroupsPaginated.md +20 -0
- data/docs/Invoice.md +18 -0
- data/docs/InvoiceAppliedTaxObject.md +38 -0
- data/docs/InvoiceMetadataObject.md +24 -0
- data/docs/InvoiceObject.md +62 -0
- data/docs/InvoiceObjectCustomer.md +68 -0
- data/docs/InvoiceObjectExtended.md +68 -0
- data/docs/InvoiceOneOffCreateInput.md +18 -0
- data/docs/InvoiceOneOffCreateInputInvoice.md +22 -0
- data/docs/InvoiceOneOffCreateInputInvoiceFeesInner.md +26 -0
- data/docs/InvoiceUpdateInput.md +18 -0
- data/docs/InvoiceUpdateInputInvoice.md +20 -0
- data/docs/InvoiceUpdateInputInvoiceMetadataInner.md +22 -0
- data/docs/InvoicesApi.md +582 -0
- data/docs/InvoicesPaginated.md +20 -0
- data/docs/Organization.md +18 -0
- data/docs/OrganizationBillingConfiguration.md +22 -0
- data/docs/OrganizationObject.md +54 -0
- data/docs/OrganizationUpdateInput.md +18 -0
- data/docs/OrganizationUpdateInputOrganization.md +46 -0
- data/docs/OrganizationsApi.md +77 -0
- data/docs/PaginationMeta.md +26 -0
- data/docs/Plan.md +18 -0
- data/docs/PlanCreateInput.md +18 -0
- data/docs/PlanCreateInputPlan.md +38 -0
- data/docs/PlanCreateInputPlanChargesInner.md +34 -0
- data/docs/PlanCreateInputPlanChargesInnerGroupPropertiesInner.md +20 -0
- data/docs/PlanObject.md +46 -0
- data/docs/PlanUpdateInput.md +18 -0
- data/docs/PlanUpdateInputPlan.md +38 -0
- data/docs/PlanUpdateInputPlanChargesInner.md +36 -0
- data/docs/PlansApi.md +363 -0
- data/docs/PlansPaginated.md +20 -0
- data/docs/Subscription.md +18 -0
- data/docs/SubscriptionCreateInput.md +18 -0
- data/docs/SubscriptionCreateInputSubscription.md +28 -0
- data/docs/SubscriptionObject.md +48 -0
- data/docs/SubscriptionUpdateInput.md +18 -0
- data/docs/SubscriptionUpdateInputSubscription.md +20 -0
- data/docs/SubscriptionsApi.md +303 -0
- data/docs/SubscriptionsPaginated.md +20 -0
- data/docs/Tax.md +18 -0
- data/docs/TaxBaseInput.md +26 -0
- data/docs/TaxCreateInput.md +18 -0
- data/docs/TaxCreateInputTax.md +26 -0
- data/docs/TaxObject.md +38 -0
- data/docs/TaxUpdateInput.md +18 -0
- data/docs/TaxesApi.md +363 -0
- data/docs/TaxesPaginated.md +20 -0
- data/docs/Timezone.md +15 -0
- data/docs/Wallet.md +18 -0
- data/docs/WalletCreateInput.md +18 -0
- data/docs/WalletCreateInputWallet.md +30 -0
- data/docs/WalletObject.md +46 -0
- data/docs/WalletTransactionCreateInput.md +18 -0
- data/docs/WalletTransactionCreateInputWalletTransaction.md +22 -0
- data/docs/WalletTransactionObject.md +32 -0
- data/docs/WalletTransactions.md +18 -0
- data/docs/WalletTransactionsPaginated.md +20 -0
- data/docs/WalletUpdateInput.md +18 -0
- data/docs/WalletUpdateInputWallet.md +20 -0
- data/docs/WalletsApi.md +515 -0
- data/docs/WalletsPaginated.md +20 -0
- data/docs/WebhookEndpointsApi.md +363 -0
- data/docs/WebhooksApi.md +74 -0
- data/git_push.sh +57 -0
- data/lago_ruby.gemspec +42 -0
- data/lib/lago_ruby/api/add_ons_api.rb +421 -0
- data/lib/lago_ruby/api/billable_metrics_api.rb +422 -0
- data/lib/lago_ruby/api/coupons_api.rb +563 -0
- data/lib/lago_ruby/api/credit_notes_api.rb +419 -0
- data/lib/lago_ruby/api/customers_api.rb +481 -0
- data/lib/lago_ruby/api/events_api.rb +289 -0
- data/lib/lago_ruby/api/fees_api.rb +268 -0
- data/lib/lago_ruby/api/invoices_api.rb +565 -0
- data/lib/lago_ruby/api/organizations_api.rb +90 -0
- data/lib/lago_ruby/api/plans_api.rb +353 -0
- data/lib/lago_ruby/api/subscriptions_api.rb +306 -0
- data/lib/lago_ruby/api/taxes_api.rb +353 -0
- data/lib/lago_ruby/api/wallets_api.rb +503 -0
- data/lib/lago_ruby/api/webhook_endpoints_api.rb +353 -0
- data/lib/lago_ruby/api/webhooks_api.rb +79 -0
- data/lib/lago_ruby/api_client.rb +392 -0
- data/lib/lago_ruby/api_error.rb +58 -0
- data/lib/lago_ruby/configuration.rb +297 -0
- data/lib/lago_ruby/models/add_on.rb +221 -0
- data/lib/lago_ruby/models/add_on_base_input.rb +267 -0
- data/lib/lago_ruby/models/add_on_create_input.rb +221 -0
- data/lib/lago_ruby/models/add_on_create_input_add_on.rb +302 -0
- data/lib/lago_ruby/models/add_on_object.rb +329 -0
- data/lib/lago_ruby/models/add_on_update_input.rb +221 -0
- data/lib/lago_ruby/models/add_ons_paginated.rb +239 -0
- data/lib/lago_ruby/models/api_error_bad_request.rb +237 -0
- data/lib/lago_ruby/models/api_error_forbidden.rb +253 -0
- data/lib/lago_ruby/models/api_error_not_allowed.rb +253 -0
- data/lib/lago_ruby/models/api_error_not_found.rb +253 -0
- data/lib/lago_ruby/models/api_error_unauthorized.rb +237 -0
- data/lib/lago_ruby/models/api_error_unprocessable_entity.rb +269 -0
- data/lib/lago_ruby/models/applied_add_on.rb +221 -0
- data/lib/lago_ruby/models/applied_add_on_input.rb +221 -0
- data/lib/lago_ruby/models/applied_add_on_input_applied_add_on.rb +259 -0
- data/lib/lago_ruby/models/applied_add_on_object.rb +339 -0
- data/lib/lago_ruby/models/applied_coupon.rb +221 -0
- data/lib/lago_ruby/models/applied_coupon_input.rb +221 -0
- data/lib/lago_ruby/models/applied_coupon_input_applied_coupon.rb +343 -0
- data/lib/lago_ruby/models/applied_coupon_object.rb +507 -0
- data/lib/lago_ruby/models/applied_coupon_object_extended.rb +532 -0
- data/lib/lago_ruby/models/applied_coupons_paginated.rb +239 -0
- data/lib/lago_ruby/models/base_applied_tax.rb +294 -0
- data/lib/lago_ruby/models/billable_metric.rb +221 -0
- data/lib/lago_ruby/models/billable_metric_base_input.rb +310 -0
- data/lib/lago_ruby/models/billable_metric_create_input.rb +221 -0
- data/lib/lago_ruby/models/billable_metric_create_input_billable_metric.rb +338 -0
- data/lib/lago_ruby/models/billable_metric_group.rb +242 -0
- data/lib/lago_ruby/models/billable_metric_group_values_inner.rb +105 -0
- data/lib/lago_ruby/models/billable_metric_group_values_inner_one_of.rb +242 -0
- data/lib/lago_ruby/models/billable_metric_object.rb +423 -0
- data/lib/lago_ruby/models/billable_metric_update_input.rb +221 -0
- data/lib/lago_ruby/models/billable_metrics_paginated.rb +239 -0
- data/lib/lago_ruby/models/charge_object.rb +397 -0
- data/lib/lago_ruby/models/charge_object_properties.rb +422 -0
- data/lib/lago_ruby/models/charge_properties.rb +415 -0
- data/lib/lago_ruby/models/charge_properties_graduated_percentage_ranges_inner.rb +269 -0
- data/lib/lago_ruby/models/charge_properties_graduated_ranges_inner.rb +311 -0
- data/lib/lago_ruby/models/charge_properties_volume_ranges_inner.rb +311 -0
- data/lib/lago_ruby/models/country.rb +287 -0
- data/lib/lago_ruby/models/coupon.rb +221 -0
- data/lib/lago_ruby/models/coupon_base_input.rb +414 -0
- data/lib/lago_ruby/models/coupon_base_input_applies_to.rb +232 -0
- data/lib/lago_ruby/models/coupon_create_input.rb +221 -0
- data/lib/lago_ruby/models/coupon_create_input_coupon.rb +449 -0
- data/lib/lago_ruby/models/coupon_object.rb +538 -0
- data/lib/lago_ruby/models/coupon_update_input.rb +221 -0
- data/lib/lago_ruby/models/coupons_paginated.rb +239 -0
- data/lib/lago_ruby/models/create_webhook_endpoint200_response.rb +221 -0
- data/lib/lago_ruby/models/create_webhook_endpoint200_response_webhook_endpoint.rb +317 -0
- data/lib/lago_ruby/models/create_webhook_endpoint_request.rb +214 -0
- data/lib/lago_ruby/models/create_webhook_endpoint_request_webhook_endpoint.rb +267 -0
- data/lib/lago_ruby/models/credit_note.rb +221 -0
- data/lib/lago_ruby/models/credit_note_applied_tax_object.rb +320 -0
- data/lib/lago_ruby/models/credit_note_create_input.rb +221 -0
- data/lib/lago_ruby/models/credit_note_create_input_credit_note.rb +318 -0
- data/lib/lago_ruby/models/credit_note_create_input_credit_note_items_inner.rb +239 -0
- data/lib/lago_ruby/models/credit_note_item_object.rb +271 -0
- data/lib/lago_ruby/models/credit_note_item_object_fee.rb +628 -0
- data/lib/lago_ruby/models/credit_note_object.rb +635 -0
- data/lib/lago_ruby/models/credit_note_update_input.rb +221 -0
- data/lib/lago_ruby/models/credit_note_update_input_credit_note.rb +256 -0
- data/lib/lago_ruby/models/credit_notes.rb +223 -0
- data/lib/lago_ruby/models/credit_object.rb +304 -0
- data/lib/lago_ruby/models/credit_object_invoice.rb +271 -0
- data/lib/lago_ruby/models/credit_object_item.rb +308 -0
- data/lib/lago_ruby/models/currency.rb +175 -0
- data/lib/lago_ruby/models/customer.rb +221 -0
- data/lib/lago_ruby/models/customer_billing_configuration.rb +313 -0
- data/lib/lago_ruby/models/customer_charge_usage_object.rb +327 -0
- data/lib/lago_ruby/models/customer_charge_usage_object_billable_metric.rb +308 -0
- data/lib/lago_ruby/models/customer_charge_usage_object_charge.rb +274 -0
- data/lib/lago_ruby/models/customer_charge_usage_object_groups_inner.rb +277 -0
- data/lib/lago_ruby/models/customer_create_input.rb +221 -0
- data/lib/lago_ruby/models/customer_create_input_customer.rb +436 -0
- data/lib/lago_ruby/models/customer_create_input_customer_metadata_inner.rb +266 -0
- data/lib/lago_ruby/models/customer_metadata.rb +291 -0
- data/lib/lago_ruby/models/customer_object.rb +517 -0
- data/lib/lago_ruby/models/customer_object_extended.rb +536 -0
- data/lib/lago_ruby/models/customer_usage.rb +221 -0
- data/lib/lago_ruby/models/customer_usage_object.rb +335 -0
- data/lib/lago_ruby/models/customers_paginated.rb +239 -0
- data/lib/lago_ruby/models/event.rb +221 -0
- data/lib/lago_ruby/models/event_batch_input.rb +221 -0
- data/lib/lago_ruby/models/event_batch_input_event.rb +287 -0
- data/lib/lago_ruby/models/event_batch_input_event_properties.rb +250 -0
- data/lib/lago_ruby/models/event_estimate_fees_input.rb +221 -0
- data/lib/lago_ruby/models/event_estimate_fees_input_event.rb +252 -0
- data/lib/lago_ruby/models/event_input.rb +221 -0
- data/lib/lago_ruby/models/event_input_event.rb +278 -0
- data/lib/lago_ruby/models/event_object.rb +367 -0
- data/lib/lago_ruby/models/fee.rb +221 -0
- data/lib/lago_ruby/models/fee_applied_tax_object.rb +311 -0
- data/lib/lago_ruby/models/fee_object.rb +621 -0
- data/lib/lago_ruby/models/fee_object_item.rb +337 -0
- data/lib/lago_ruby/models/fee_update_input.rb +221 -0
- data/lib/lago_ruby/models/fee_update_input_fee.rb +256 -0
- data/lib/lago_ruby/models/fees.rb +223 -0
- data/lib/lago_ruby/models/fees_paginated.rb +246 -0
- data/lib/lago_ruby/models/find_all_webhook_endpoints200_response.rb +239 -0
- data/lib/lago_ruby/models/get_customer_portal_url200_response.rb +221 -0
- data/lib/lago_ruby/models/get_customer_portal_url200_response_customer.rb +222 -0
- data/lib/lago_ruby/models/group_object.rb +256 -0
- data/lib/lago_ruby/models/group_properties_object.rb +238 -0
- data/lib/lago_ruby/models/group_properties_object_values.rb +422 -0
- data/lib/lago_ruby/models/groups_paginated.rb +239 -0
- data/lib/lago_ruby/models/invoice.rb +221 -0
- data/lib/lago_ruby/models/invoice_applied_tax_object.rb +321 -0
- data/lib/lago_ruby/models/invoice_metadata_object.rb +245 -0
- data/lib/lago_ruby/models/invoice_object.rb +611 -0
- data/lib/lago_ruby/models/invoice_object_customer.rb +524 -0
- data/lib/lago_ruby/models/invoice_object_extended.rb +651 -0
- data/lib/lago_ruby/models/invoice_one_off_create_input.rb +221 -0
- data/lib/lago_ruby/models/invoice_one_off_create_input_invoice.rb +249 -0
- data/lib/lago_ruby/models/invoice_one_off_create_input_invoice_fees_inner.rb +284 -0
- data/lib/lago_ruby/models/invoice_update_input.rb +221 -0
- data/lib/lago_ruby/models/invoice_update_input_invoice.rb +260 -0
- data/lib/lago_ruby/models/invoice_update_input_invoice_metadata_inner.rb +235 -0
- data/lib/lago_ruby/models/invoices_paginated.rb +239 -0
- data/lib/lago_ruby/models/organization.rb +221 -0
- data/lib/lago_ruby/models/organization_billing_configuration.rb +237 -0
- data/lib/lago_ruby/models/organization_object.rb +431 -0
- data/lib/lago_ruby/models/organization_update_input.rb +221 -0
- data/lib/lago_ruby/models/organization_update_input_organization.rb +386 -0
- data/lib/lago_ruby/models/pagination_meta.rb +278 -0
- data/lib/lago_ruby/models/plan.rb +221 -0
- data/lib/lago_ruby/models/plan_create_input.rb +221 -0
- data/lib/lago_ruby/models/plan_create_input_plan.rb +353 -0
- data/lib/lago_ruby/models/plan_create_input_plan_charges_inner.rb +332 -0
- data/lib/lago_ruby/models/plan_create_input_plan_charges_inner_group_properties_inner.rb +238 -0
- data/lib/lago_ruby/models/plan_object.rb +456 -0
- data/lib/lago_ruby/models/plan_update_input.rb +221 -0
- data/lib/lago_ruby/models/plan_update_input_plan.rb +353 -0
- data/lib/lago_ruby/models/plan_update_input_plan_charges_inner.rb +342 -0
- data/lib/lago_ruby/models/plans_paginated.rb +239 -0
- data/lib/lago_ruby/models/subscription.rb +221 -0
- data/lib/lago_ruby/models/subscription_create_input.rb +221 -0
- data/lib/lago_ruby/models/subscription_create_input_subscription.rb +320 -0
- data/lib/lago_ruby/models/subscription_object.rb +481 -0
- data/lib/lago_ruby/models/subscription_update_input.rb +221 -0
- data/lib/lago_ruby/models/subscription_update_input_subscription.rb +226 -0
- data/lib/lago_ruby/models/subscriptions_paginated.rb +239 -0
- data/lib/lago_ruby/models/tax.rb +221 -0
- data/lib/lago_ruby/models/tax_base_input.rb +277 -0
- data/lib/lago_ruby/models/tax_create_input.rb +221 -0
- data/lib/lago_ruby/models/tax_create_input_tax.rb +305 -0
- data/lib/lago_ruby/models/tax_object.rb +364 -0
- data/lib/lago_ruby/models/tax_update_input.rb +221 -0
- data/lib/lago_ruby/models/taxes_paginated.rb +239 -0
- data/lib/lago_ruby/models/timezone.rb +173 -0
- data/lib/lago_ruby/models/wallet.rb +221 -0
- data/lib/lago_ruby/models/wallet_create_input.rb +214 -0
- data/lib/lago_ruby/models/wallet_create_input_wallet.rb +353 -0
- data/lib/lago_ruby/models/wallet_object.rb +525 -0
- data/lib/lago_ruby/models/wallet_transaction_create_input.rb +221 -0
- data/lib/lago_ruby/models/wallet_transaction_create_input_wallet_transaction.rb +284 -0
- data/lib/lago_ruby/models/wallet_transaction_object.rb +422 -0
- data/lib/lago_ruby/models/wallet_transactions.rb +223 -0
- data/lib/lago_ruby/models/wallet_transactions_paginated.rb +246 -0
- data/lib/lago_ruby/models/wallet_update_input.rb +221 -0
- data/lib/lago_ruby/models/wallet_update_input_wallet.rb +227 -0
- data/lib/lago_ruby/models/wallets_paginated.rb +239 -0
- data/lib/lago_ruby/version.rb +15 -0
- data/lib/lago_ruby.rb +217 -0
- data/spec/api/add_ons_api_spec.rb +109 -0
- data/spec/api/billable_metrics_api_spec.rb +111 -0
- data/spec/api/coupons_api_spec.rb +137 -0
- data/spec/api/credit_notes_api_spec.rb +110 -0
- data/spec/api/customers_api_spec.rb +122 -0
- data/spec/api/events_api_spec.rb +83 -0
- data/spec/api/fees_api_spec.rb +87 -0
- data/spec/api/invoices_api_spec.rb +138 -0
- data/spec/api/organizations_api_spec.rb +47 -0
- data/spec/api/plans_api_spec.rb +97 -0
- data/spec/api/subscriptions_api_spec.rb +89 -0
- data/spec/api/taxes_api_spec.rb +97 -0
- data/spec/api/wallets_api_spec.rb +126 -0
- data/spec/api/webhook_endpoints_api_spec.rb +97 -0
- data/spec/api/webhooks_api_spec.rb +46 -0
- data/spec/api_client_spec.rb +228 -0
- data/spec/configuration_spec.rb +42 -0
- data/spec/models/add_on_base_input_spec.rb +64 -0
- data/spec/models/add_on_create_input_add_on_spec.rb +64 -0
- data/spec/models/add_on_create_input_spec.rb +34 -0
- data/spec/models/add_on_object_spec.rb +76 -0
- data/spec/models/add_on_spec.rb +34 -0
- data/spec/models/add_on_update_input_spec.rb +34 -0
- data/spec/models/add_ons_paginated_spec.rb +40 -0
- data/spec/models/api_error_bad_request_spec.rb +40 -0
- data/spec/models/api_error_forbidden_spec.rb +46 -0
- data/spec/models/api_error_not_allowed_spec.rb +46 -0
- data/spec/models/api_error_not_found_spec.rb +46 -0
- data/spec/models/api_error_unauthorized_spec.rb +40 -0
- data/spec/models/api_error_unprocessable_entity_spec.rb +52 -0
- data/spec/models/applied_add_on_input_applied_add_on_spec.rb +52 -0
- data/spec/models/applied_add_on_input_spec.rb +34 -0
- data/spec/models/applied_add_on_object_spec.rb +76 -0
- data/spec/models/applied_add_on_spec.rb +34 -0
- data/spec/models/applied_coupon_input_applied_coupon_spec.rb +74 -0
- data/spec/models/applied_coupon_input_spec.rb +34 -0
- data/spec/models/applied_coupon_object_extended_spec.rb +144 -0
- data/spec/models/applied_coupon_object_spec.rb +138 -0
- data/spec/models/applied_coupon_spec.rb +34 -0
- data/spec/models/applied_coupons_paginated_spec.rb +40 -0
- data/spec/models/base_applied_tax_spec.rb +82 -0
- data/spec/models/billable_metric_base_input_spec.rb +74 -0
- data/spec/models/billable_metric_create_input_billable_metric_spec.rb +74 -0
- data/spec/models/billable_metric_create_input_spec.rb +34 -0
- data/spec/models/billable_metric_group_spec.rb +40 -0
- data/spec/models/billable_metric_group_values_inner_one_of_spec.rb +40 -0
- data/spec/models/billable_metric_group_values_inner_spec.rb +31 -0
- data/spec/models/billable_metric_object_spec.rb +104 -0
- data/spec/models/billable_metric_spec.rb +34 -0
- data/spec/models/billable_metric_update_input_spec.rb +34 -0
- data/spec/models/billable_metrics_paginated_spec.rb +40 -0
- data/spec/models/charge_object_properties_spec.rb +100 -0
- data/spec/models/charge_object_spec.rb +104 -0
- data/spec/models/charge_properties_graduated_percentage_ranges_inner_spec.rb +52 -0
- data/spec/models/charge_properties_graduated_ranges_inner_spec.rb +59 -0
- data/spec/models/charge_properties_spec.rb +100 -0
- data/spec/models/charge_properties_volume_ranges_inner_spec.rb +59 -0
- data/spec/models/country_spec.rb +28 -0
- data/spec/models/coupon_base_input_applies_to_spec.rb +40 -0
- data/spec/models/coupon_base_input_spec.rb +118 -0
- data/spec/models/coupon_create_input_coupon_spec.rb +118 -0
- data/spec/models/coupon_create_input_spec.rb +34 -0
- data/spec/models/coupon_object_spec.rb +148 -0
- data/spec/models/coupon_spec.rb +34 -0
- data/spec/models/coupon_update_input_spec.rb +34 -0
- data/spec/models/coupons_paginated_spec.rb +40 -0
- data/spec/models/create_webhook_endpoint200_response_spec.rb +34 -0
- data/spec/models/create_webhook_endpoint200_response_webhook_endpoint_spec.rb +62 -0
- data/spec/models/create_webhook_endpoint_request_spec.rb +34 -0
- data/spec/models/create_webhook_endpoint_request_webhook_endpoint_spec.rb +44 -0
- data/spec/models/credit_note_applied_tax_object_spec.rb +94 -0
- data/spec/models/credit_note_create_input_credit_note_items_inner_spec.rb +40 -0
- data/spec/models/credit_note_create_input_credit_note_spec.rb +68 -0
- data/spec/models/credit_note_create_input_spec.rb +34 -0
- data/spec/models/credit_note_item_object_fee_spec.rb +206 -0
- data/spec/models/credit_note_item_object_spec.rb +52 -0
- data/spec/models/credit_note_object_spec.rb +184 -0
- data/spec/models/credit_note_spec.rb +34 -0
- data/spec/models/credit_note_update_input_credit_note_spec.rb +38 -0
- data/spec/models/credit_note_update_input_spec.rb +34 -0
- data/spec/models/credit_notes_spec.rb +34 -0
- data/spec/models/credit_object_invoice_spec.rb +44 -0
- data/spec/models/credit_object_item_spec.rb +56 -0
- data/spec/models/credit_object_spec.rb +64 -0
- data/spec/models/currency_spec.rb +28 -0
- data/spec/models/customer_billing_configuration_spec.rb +74 -0
- data/spec/models/customer_charge_usage_object_billable_metric_spec.rb +56 -0
- data/spec/models/customer_charge_usage_object_charge_spec.rb +44 -0
- data/spec/models/customer_charge_usage_object_groups_inner_spec.rb +58 -0
- data/spec/models/customer_charge_usage_object_spec.rb +89 -0
- data/spec/models/customer_create_input_customer_metadata_inner_spec.rb +52 -0
- data/spec/models/customer_create_input_customer_spec.rb +154 -0
- data/spec/models/customer_create_input_spec.rb +34 -0
- data/spec/models/customer_metadata_spec.rb +58 -0
- data/spec/models/customer_object_extended_spec.rb +190 -0
- data/spec/models/customer_object_spec.rb +184 -0
- data/spec/models/customer_spec.rb +34 -0
- data/spec/models/customer_usage_object_spec.rb +76 -0
- data/spec/models/customer_usage_spec.rb +34 -0
- data/spec/models/customers_paginated_spec.rb +40 -0
- data/spec/models/event_batch_input_event_properties_spec.rb +38 -0
- data/spec/models/event_batch_input_event_spec.rb +64 -0
- data/spec/models/event_batch_input_spec.rb +34 -0
- data/spec/models/event_estimate_fees_input_event_spec.rb +52 -0
- data/spec/models/event_estimate_fees_input_spec.rb +34 -0
- data/spec/models/event_input_event_spec.rb +64 -0
- data/spec/models/event_input_spec.rb +34 -0
- data/spec/models/event_object_spec.rb +88 -0
- data/spec/models/event_spec.rb +34 -0
- data/spec/models/fee_applied_tax_object_spec.rb +88 -0
- data/spec/models/fee_object_item_spec.rb +66 -0
- data/spec/models/fee_object_spec.rb +206 -0
- data/spec/models/fee_spec.rb +34 -0
- data/spec/models/fee_update_input_fee_spec.rb +38 -0
- data/spec/models/fee_update_input_spec.rb +34 -0
- data/spec/models/fees_paginated_spec.rb +40 -0
- data/spec/models/fees_spec.rb +34 -0
- data/spec/models/find_all_webhook_endpoints200_response_spec.rb +40 -0
- data/spec/models/get_customer_portal_url200_response_customer_spec.rb +34 -0
- data/spec/models/get_customer_portal_url200_response_spec.rb +34 -0
- data/spec/models/group_object_spec.rb +46 -0
- data/spec/models/group_properties_object_spec.rb +40 -0
- data/spec/models/group_properties_object_values_spec.rb +100 -0
- data/spec/models/groups_paginated_spec.rb +40 -0
- data/spec/models/invoice_applied_tax_object_spec.rb +94 -0
- data/spec/models/invoice_metadata_object_spec.rb +52 -0
- data/spec/models/invoice_object_customer_spec.rb +184 -0
- data/spec/models/invoice_object_extended_spec.rb +196 -0
- data/spec/models/invoice_object_spec.rb +178 -0
- data/spec/models/invoice_one_off_create_input_invoice_fees_inner_spec.rb +58 -0
- data/spec/models/invoice_one_off_create_input_invoice_spec.rb +46 -0
- data/spec/models/invoice_one_off_create_input_spec.rb +34 -0
- data/spec/models/invoice_spec.rb +34 -0
- data/spec/models/invoice_update_input_invoice_metadata_inner_spec.rb +46 -0
- data/spec/models/invoice_update_input_invoice_spec.rb +44 -0
- data/spec/models/invoice_update_input_spec.rb +34 -0
- data/spec/models/invoices_paginated_spec.rb +40 -0
- data/spec/models/organization_billing_configuration_spec.rb +46 -0
- data/spec/models/organization_object_spec.rb +142 -0
- data/spec/models/organization_spec.rb +34 -0
- data/spec/models/organization_update_input_organization_spec.rb +122 -0
- data/spec/models/organization_update_input_spec.rb +34 -0
- data/spec/models/pagination_meta_spec.rb +58 -0
- data/spec/models/plan_create_input_plan_charges_inner_group_properties_inner_spec.rb +40 -0
- data/spec/models/plan_create_input_plan_charges_inner_spec.rb +86 -0
- data/spec/models/plan_create_input_plan_spec.rb +98 -0
- data/spec/models/plan_create_input_spec.rb +34 -0
- data/spec/models/plan_object_spec.rb +122 -0
- data/spec/models/plan_spec.rb +34 -0
- data/spec/models/plan_update_input_plan_charges_inner_spec.rb +92 -0
- data/spec/models/plan_update_input_plan_spec.rb +98 -0
- data/spec/models/plan_update_input_spec.rb +34 -0
- data/spec/models/plans_paginated_spec.rb +40 -0
- data/spec/models/subscription_create_input_spec.rb +34 -0
- data/spec/models/subscription_create_input_subscription_spec.rb +68 -0
- data/spec/models/subscription_object_spec.rb +132 -0
- data/spec/models/subscription_spec.rb +34 -0
- data/spec/models/subscription_update_input_spec.rb +34 -0
- data/spec/models/subscription_update_input_subscription_spec.rb +40 -0
- data/spec/models/subscriptions_paginated_spec.rb +40 -0
- data/spec/models/tax_base_input_spec.rb +58 -0
- data/spec/models/tax_create_input_spec.rb +34 -0
- data/spec/models/tax_create_input_tax_spec.rb +66 -0
- data/spec/models/tax_object_spec.rb +94 -0
- data/spec/models/tax_spec.rb +34 -0
- data/spec/models/tax_update_input_spec.rb +34 -0
- data/spec/models/taxes_paginated_spec.rb +40 -0
- data/spec/models/timezone_spec.rb +28 -0
- data/spec/models/wallet_create_input_spec.rb +34 -0
- data/spec/models/wallet_create_input_wallet_spec.rb +80 -0
- data/spec/models/wallet_object_spec.rb +140 -0
- data/spec/models/wallet_spec.rb +34 -0
- data/spec/models/wallet_transaction_create_input_spec.rb +34 -0
- data/spec/models/wallet_transaction_create_input_wallet_transaction_spec.rb +46 -0
- data/spec/models/wallet_transaction_object_spec.rb +95 -0
- data/spec/models/wallet_transactions_paginated_spec.rb +40 -0
- data/spec/models/wallet_transactions_spec.rb +34 -0
- data/spec/models/wallet_update_input_spec.rb +34 -0
- data/spec/models/wallet_update_input_wallet_spec.rb +40 -0
- data/spec/models/wallets_paginated_spec.rb +40 -0
- data/spec/spec_helper.rb +111 -0
- metadata +818 -0
|
@@ -0,0 +1,563 @@
|
|
|
1
|
+
=begin
|
|
2
|
+
#Lago API documentation
|
|
3
|
+
|
|
4
|
+
#Lago API allows your application to push customer information and metrics (events) from your application to the billing application.
|
|
5
|
+
|
|
6
|
+
The version of the OpenAPI document: 0.46.0-beta
|
|
7
|
+
Contact: tech@getlago.com
|
|
8
|
+
Generated by: https://openapi-generator.tech
|
|
9
|
+
OpenAPI Generator version: 7.0.1-SNAPSHOT
|
|
10
|
+
|
|
11
|
+
=end
|
|
12
|
+
|
|
13
|
+
require 'cgi'
|
|
14
|
+
|
|
15
|
+
module LagoAPI
|
|
16
|
+
class CouponsApi
|
|
17
|
+
attr_accessor :api_client
|
|
18
|
+
|
|
19
|
+
def initialize(api_client = ApiClient.default)
|
|
20
|
+
@api_client = api_client
|
|
21
|
+
end
|
|
22
|
+
# Apply a coupon to a customer
|
|
23
|
+
# This endpoint is used to apply a specific coupon to a customer, before or during a subscription.
|
|
24
|
+
# @param applied_coupon_input [AppliedCouponInput] Apply coupon payload
|
|
25
|
+
# @param [Hash] opts the optional parameters
|
|
26
|
+
# @return [AppliedCoupon]
|
|
27
|
+
def apply_coupon(applied_coupon_input, opts = {})
|
|
28
|
+
data, _status_code, _headers = apply_coupon_with_http_info(applied_coupon_input, opts)
|
|
29
|
+
data
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Apply a coupon to a customer
|
|
33
|
+
# This endpoint is used to apply a specific coupon to a customer, before or during a subscription.
|
|
34
|
+
# @param applied_coupon_input [AppliedCouponInput] Apply coupon payload
|
|
35
|
+
# @param [Hash] opts the optional parameters
|
|
36
|
+
# @return [Array<(AppliedCoupon, Integer, Hash)>] AppliedCoupon data, response status code and response headers
|
|
37
|
+
def apply_coupon_with_http_info(applied_coupon_input, opts = {})
|
|
38
|
+
if @api_client.config.debugging
|
|
39
|
+
@api_client.config.logger.debug 'Calling API: CouponsApi.apply_coupon ...'
|
|
40
|
+
end
|
|
41
|
+
# verify the required parameter 'applied_coupon_input' is set
|
|
42
|
+
if @api_client.config.client_side_validation && applied_coupon_input.nil?
|
|
43
|
+
fail ArgumentError, "Missing the required parameter 'applied_coupon_input' when calling CouponsApi.apply_coupon"
|
|
44
|
+
end
|
|
45
|
+
# resource path
|
|
46
|
+
local_var_path = '/applied_coupons'
|
|
47
|
+
|
|
48
|
+
# query parameters
|
|
49
|
+
query_params = opts[:query_params] || {}
|
|
50
|
+
|
|
51
|
+
# header parameters
|
|
52
|
+
header_params = opts[:header_params] || {}
|
|
53
|
+
# HTTP header 'Accept' (if needed)
|
|
54
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
55
|
+
# HTTP header 'Content-Type'
|
|
56
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
57
|
+
if !content_type.nil?
|
|
58
|
+
header_params['Content-Type'] = content_type
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# form parameters
|
|
62
|
+
form_params = opts[:form_params] || {}
|
|
63
|
+
|
|
64
|
+
# http body (model)
|
|
65
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(applied_coupon_input)
|
|
66
|
+
|
|
67
|
+
# return_type
|
|
68
|
+
return_type = opts[:debug_return_type] || 'AppliedCoupon'
|
|
69
|
+
|
|
70
|
+
# auth_names
|
|
71
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
72
|
+
|
|
73
|
+
new_options = opts.merge(
|
|
74
|
+
:operation => :"CouponsApi.apply_coupon",
|
|
75
|
+
:header_params => header_params,
|
|
76
|
+
:query_params => query_params,
|
|
77
|
+
:form_params => form_params,
|
|
78
|
+
:body => post_body,
|
|
79
|
+
:auth_names => auth_names,
|
|
80
|
+
:return_type => return_type
|
|
81
|
+
)
|
|
82
|
+
|
|
83
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
84
|
+
if @api_client.config.debugging
|
|
85
|
+
@api_client.config.logger.debug "API called: CouponsApi#apply_coupon\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
86
|
+
end
|
|
87
|
+
return data, status_code, headers
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# Create a coupon
|
|
91
|
+
# This endpoint is used to create a coupon that can be then attached to a customer to create a discount.
|
|
92
|
+
# @param coupon_create_input [CouponCreateInput] Coupon payload
|
|
93
|
+
# @param [Hash] opts the optional parameters
|
|
94
|
+
# @return [Coupon]
|
|
95
|
+
def create_coupon(coupon_create_input, opts = {})
|
|
96
|
+
data, _status_code, _headers = create_coupon_with_http_info(coupon_create_input, opts)
|
|
97
|
+
data
|
|
98
|
+
end
|
|
99
|
+
|
|
100
|
+
# Create a coupon
|
|
101
|
+
# This endpoint is used to create a coupon that can be then attached to a customer to create a discount.
|
|
102
|
+
# @param coupon_create_input [CouponCreateInput] Coupon payload
|
|
103
|
+
# @param [Hash] opts the optional parameters
|
|
104
|
+
# @return [Array<(Coupon, Integer, Hash)>] Coupon data, response status code and response headers
|
|
105
|
+
def create_coupon_with_http_info(coupon_create_input, opts = {})
|
|
106
|
+
if @api_client.config.debugging
|
|
107
|
+
@api_client.config.logger.debug 'Calling API: CouponsApi.create_coupon ...'
|
|
108
|
+
end
|
|
109
|
+
# verify the required parameter 'coupon_create_input' is set
|
|
110
|
+
if @api_client.config.client_side_validation && coupon_create_input.nil?
|
|
111
|
+
fail ArgumentError, "Missing the required parameter 'coupon_create_input' when calling CouponsApi.create_coupon"
|
|
112
|
+
end
|
|
113
|
+
# resource path
|
|
114
|
+
local_var_path = '/coupons'
|
|
115
|
+
|
|
116
|
+
# query parameters
|
|
117
|
+
query_params = opts[:query_params] || {}
|
|
118
|
+
|
|
119
|
+
# header parameters
|
|
120
|
+
header_params = opts[:header_params] || {}
|
|
121
|
+
# HTTP header 'Accept' (if needed)
|
|
122
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
123
|
+
# HTTP header 'Content-Type'
|
|
124
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
125
|
+
if !content_type.nil?
|
|
126
|
+
header_params['Content-Type'] = content_type
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
# form parameters
|
|
130
|
+
form_params = opts[:form_params] || {}
|
|
131
|
+
|
|
132
|
+
# http body (model)
|
|
133
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(coupon_create_input)
|
|
134
|
+
|
|
135
|
+
# return_type
|
|
136
|
+
return_type = opts[:debug_return_type] || 'Coupon'
|
|
137
|
+
|
|
138
|
+
# auth_names
|
|
139
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
140
|
+
|
|
141
|
+
new_options = opts.merge(
|
|
142
|
+
:operation => :"CouponsApi.create_coupon",
|
|
143
|
+
:header_params => header_params,
|
|
144
|
+
:query_params => query_params,
|
|
145
|
+
:form_params => form_params,
|
|
146
|
+
:body => post_body,
|
|
147
|
+
:auth_names => auth_names,
|
|
148
|
+
:return_type => return_type
|
|
149
|
+
)
|
|
150
|
+
|
|
151
|
+
data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
|
|
152
|
+
if @api_client.config.debugging
|
|
153
|
+
@api_client.config.logger.debug "API called: CouponsApi#create_coupon\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
154
|
+
end
|
|
155
|
+
return data, status_code, headers
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
# Delete an applied coupon
|
|
159
|
+
# This endpoint is used to delete a specific coupon that has been applied to a customer.
|
|
160
|
+
# @param external_customer_id [String] The customer external unique identifier (provided by your own application)
|
|
161
|
+
# @param applied_coupon_id [String] Unique identifier of the applied coupon, created by Lago.
|
|
162
|
+
# @param [Hash] opts the optional parameters
|
|
163
|
+
# @return [AppliedCoupon]
|
|
164
|
+
def delete_applied_coupon(external_customer_id, applied_coupon_id, opts = {})
|
|
165
|
+
data, _status_code, _headers = delete_applied_coupon_with_http_info(external_customer_id, applied_coupon_id, opts)
|
|
166
|
+
data
|
|
167
|
+
end
|
|
168
|
+
|
|
169
|
+
# Delete an applied coupon
|
|
170
|
+
# This endpoint is used to delete a specific coupon that has been applied to a customer.
|
|
171
|
+
# @param external_customer_id [String] The customer external unique identifier (provided by your own application)
|
|
172
|
+
# @param applied_coupon_id [String] Unique identifier of the applied coupon, created by Lago.
|
|
173
|
+
# @param [Hash] opts the optional parameters
|
|
174
|
+
# @return [Array<(AppliedCoupon, Integer, Hash)>] AppliedCoupon data, response status code and response headers
|
|
175
|
+
def delete_applied_coupon_with_http_info(external_customer_id, applied_coupon_id, opts = {})
|
|
176
|
+
if @api_client.config.debugging
|
|
177
|
+
@api_client.config.logger.debug 'Calling API: CouponsApi.delete_applied_coupon ...'
|
|
178
|
+
end
|
|
179
|
+
# verify the required parameter 'external_customer_id' is set
|
|
180
|
+
if @api_client.config.client_side_validation && external_customer_id.nil?
|
|
181
|
+
fail ArgumentError, "Missing the required parameter 'external_customer_id' when calling CouponsApi.delete_applied_coupon"
|
|
182
|
+
end
|
|
183
|
+
# verify the required parameter 'applied_coupon_id' is set
|
|
184
|
+
if @api_client.config.client_side_validation && applied_coupon_id.nil?
|
|
185
|
+
fail ArgumentError, "Missing the required parameter 'applied_coupon_id' when calling CouponsApi.delete_applied_coupon"
|
|
186
|
+
end
|
|
187
|
+
# resource path
|
|
188
|
+
local_var_path = '/customers/{external_customer_id}/applied_coupons/{applied_coupon_id}'.sub('{' + 'external_customer_id' + '}', CGI.escape(external_customer_id.to_s)).sub('{' + 'applied_coupon_id' + '}', CGI.escape(applied_coupon_id.to_s))
|
|
189
|
+
|
|
190
|
+
# query parameters
|
|
191
|
+
query_params = opts[:query_params] || {}
|
|
192
|
+
|
|
193
|
+
# header parameters
|
|
194
|
+
header_params = opts[:header_params] || {}
|
|
195
|
+
# HTTP header 'Accept' (if needed)
|
|
196
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
197
|
+
|
|
198
|
+
# form parameters
|
|
199
|
+
form_params = opts[:form_params] || {}
|
|
200
|
+
|
|
201
|
+
# http body (model)
|
|
202
|
+
post_body = opts[:debug_body]
|
|
203
|
+
|
|
204
|
+
# return_type
|
|
205
|
+
return_type = opts[:debug_return_type] || 'AppliedCoupon'
|
|
206
|
+
|
|
207
|
+
# auth_names
|
|
208
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
209
|
+
|
|
210
|
+
new_options = opts.merge(
|
|
211
|
+
:operation => :"CouponsApi.delete_applied_coupon",
|
|
212
|
+
:header_params => header_params,
|
|
213
|
+
:query_params => query_params,
|
|
214
|
+
:form_params => form_params,
|
|
215
|
+
:body => post_body,
|
|
216
|
+
:auth_names => auth_names,
|
|
217
|
+
:return_type => return_type
|
|
218
|
+
)
|
|
219
|
+
|
|
220
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
|
221
|
+
if @api_client.config.debugging
|
|
222
|
+
@api_client.config.logger.debug "API called: CouponsApi#delete_applied_coupon\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
223
|
+
end
|
|
224
|
+
return data, status_code, headers
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
# Delete a coupon
|
|
228
|
+
# This endpoint is used to delete a coupon.
|
|
229
|
+
# @param code [String] Unique code used to identify the coupon.
|
|
230
|
+
# @param [Hash] opts the optional parameters
|
|
231
|
+
# @return [Coupon]
|
|
232
|
+
def destroy_coupon(code, opts = {})
|
|
233
|
+
data, _status_code, _headers = destroy_coupon_with_http_info(code, opts)
|
|
234
|
+
data
|
|
235
|
+
end
|
|
236
|
+
|
|
237
|
+
# Delete a coupon
|
|
238
|
+
# This endpoint is used to delete a coupon.
|
|
239
|
+
# @param code [String] Unique code used to identify the coupon.
|
|
240
|
+
# @param [Hash] opts the optional parameters
|
|
241
|
+
# @return [Array<(Coupon, Integer, Hash)>] Coupon data, response status code and response headers
|
|
242
|
+
def destroy_coupon_with_http_info(code, opts = {})
|
|
243
|
+
if @api_client.config.debugging
|
|
244
|
+
@api_client.config.logger.debug 'Calling API: CouponsApi.destroy_coupon ...'
|
|
245
|
+
end
|
|
246
|
+
# verify the required parameter 'code' is set
|
|
247
|
+
if @api_client.config.client_side_validation && code.nil?
|
|
248
|
+
fail ArgumentError, "Missing the required parameter 'code' when calling CouponsApi.destroy_coupon"
|
|
249
|
+
end
|
|
250
|
+
# resource path
|
|
251
|
+
local_var_path = '/coupons/{code}'.sub('{' + 'code' + '}', CGI.escape(code.to_s))
|
|
252
|
+
|
|
253
|
+
# query parameters
|
|
254
|
+
query_params = opts[:query_params] || {}
|
|
255
|
+
|
|
256
|
+
# header parameters
|
|
257
|
+
header_params = opts[:header_params] || {}
|
|
258
|
+
# HTTP header 'Accept' (if needed)
|
|
259
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
260
|
+
|
|
261
|
+
# form parameters
|
|
262
|
+
form_params = opts[:form_params] || {}
|
|
263
|
+
|
|
264
|
+
# http body (model)
|
|
265
|
+
post_body = opts[:debug_body]
|
|
266
|
+
|
|
267
|
+
# return_type
|
|
268
|
+
return_type = opts[:debug_return_type] || 'Coupon'
|
|
269
|
+
|
|
270
|
+
# auth_names
|
|
271
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
272
|
+
|
|
273
|
+
new_options = opts.merge(
|
|
274
|
+
:operation => :"CouponsApi.destroy_coupon",
|
|
275
|
+
:header_params => header_params,
|
|
276
|
+
:query_params => query_params,
|
|
277
|
+
:form_params => form_params,
|
|
278
|
+
:body => post_body,
|
|
279
|
+
:auth_names => auth_names,
|
|
280
|
+
:return_type => return_type
|
|
281
|
+
)
|
|
282
|
+
|
|
283
|
+
data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
|
|
284
|
+
if @api_client.config.debugging
|
|
285
|
+
@api_client.config.logger.debug "API called: CouponsApi#destroy_coupon\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
286
|
+
end
|
|
287
|
+
return data, status_code, headers
|
|
288
|
+
end
|
|
289
|
+
|
|
290
|
+
# List all applied coupons
|
|
291
|
+
# This endpoint is used to list all applied coupons. You can filter by coupon status and by customer.
|
|
292
|
+
# @param [Hash] opts the optional parameters
|
|
293
|
+
# @option opts [Integer] :page Page number.
|
|
294
|
+
# @option opts [Integer] :per_page Number of records per page.
|
|
295
|
+
# @option opts [String] :status The status of the coupon. Can be either `active` or `terminated`.
|
|
296
|
+
# @option opts [String] :external_customer_id The customer external unique identifier (provided by your own application)
|
|
297
|
+
# @return [AppliedCouponsPaginated]
|
|
298
|
+
def find_all_applied_coupons(opts = {})
|
|
299
|
+
data, _status_code, _headers = find_all_applied_coupons_with_http_info(opts)
|
|
300
|
+
data
|
|
301
|
+
end
|
|
302
|
+
|
|
303
|
+
# List all applied coupons
|
|
304
|
+
# This endpoint is used to list all applied coupons. You can filter by coupon status and by customer.
|
|
305
|
+
# @param [Hash] opts the optional parameters
|
|
306
|
+
# @option opts [Integer] :page Page number.
|
|
307
|
+
# @option opts [Integer] :per_page Number of records per page.
|
|
308
|
+
# @option opts [String] :status The status of the coupon. Can be either `active` or `terminated`.
|
|
309
|
+
# @option opts [String] :external_customer_id The customer external unique identifier (provided by your own application)
|
|
310
|
+
# @return [Array<(AppliedCouponsPaginated, Integer, Hash)>] AppliedCouponsPaginated data, response status code and response headers
|
|
311
|
+
def find_all_applied_coupons_with_http_info(opts = {})
|
|
312
|
+
if @api_client.config.debugging
|
|
313
|
+
@api_client.config.logger.debug 'Calling API: CouponsApi.find_all_applied_coupons ...'
|
|
314
|
+
end
|
|
315
|
+
allowable_values = ["active", "terminated"]
|
|
316
|
+
if @api_client.config.client_side_validation && opts[:'status'] && !allowable_values.include?(opts[:'status'])
|
|
317
|
+
fail ArgumentError, "invalid value for \"status\", must be one of #{allowable_values}"
|
|
318
|
+
end
|
|
319
|
+
# resource path
|
|
320
|
+
local_var_path = '/applied_coupons'
|
|
321
|
+
|
|
322
|
+
# query parameters
|
|
323
|
+
query_params = opts[:query_params] || {}
|
|
324
|
+
query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
|
|
325
|
+
query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
|
|
326
|
+
query_params[:'status'] = opts[:'status'] if !opts[:'status'].nil?
|
|
327
|
+
query_params[:'external_customer_id'] = opts[:'external_customer_id'] if !opts[:'external_customer_id'].nil?
|
|
328
|
+
|
|
329
|
+
# header parameters
|
|
330
|
+
header_params = opts[:header_params] || {}
|
|
331
|
+
# HTTP header 'Accept' (if needed)
|
|
332
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
333
|
+
|
|
334
|
+
# form parameters
|
|
335
|
+
form_params = opts[:form_params] || {}
|
|
336
|
+
|
|
337
|
+
# http body (model)
|
|
338
|
+
post_body = opts[:debug_body]
|
|
339
|
+
|
|
340
|
+
# return_type
|
|
341
|
+
return_type = opts[:debug_return_type] || 'AppliedCouponsPaginated'
|
|
342
|
+
|
|
343
|
+
# auth_names
|
|
344
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
345
|
+
|
|
346
|
+
new_options = opts.merge(
|
|
347
|
+
:operation => :"CouponsApi.find_all_applied_coupons",
|
|
348
|
+
:header_params => header_params,
|
|
349
|
+
:query_params => query_params,
|
|
350
|
+
:form_params => form_params,
|
|
351
|
+
:body => post_body,
|
|
352
|
+
:auth_names => auth_names,
|
|
353
|
+
:return_type => return_type
|
|
354
|
+
)
|
|
355
|
+
|
|
356
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
357
|
+
if @api_client.config.debugging
|
|
358
|
+
@api_client.config.logger.debug "API called: CouponsApi#find_all_applied_coupons\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
359
|
+
end
|
|
360
|
+
return data, status_code, headers
|
|
361
|
+
end
|
|
362
|
+
|
|
363
|
+
# List all coupons
|
|
364
|
+
# This endpoint is used to list all existing coupons.
|
|
365
|
+
# @param [Hash] opts the optional parameters
|
|
366
|
+
# @option opts [Integer] :page Page number.
|
|
367
|
+
# @option opts [Integer] :per_page Number of records per page.
|
|
368
|
+
# @return [CouponsPaginated]
|
|
369
|
+
def find_all_coupons(opts = {})
|
|
370
|
+
data, _status_code, _headers = find_all_coupons_with_http_info(opts)
|
|
371
|
+
data
|
|
372
|
+
end
|
|
373
|
+
|
|
374
|
+
# List all coupons
|
|
375
|
+
# This endpoint is used to list all existing coupons.
|
|
376
|
+
# @param [Hash] opts the optional parameters
|
|
377
|
+
# @option opts [Integer] :page Page number.
|
|
378
|
+
# @option opts [Integer] :per_page Number of records per page.
|
|
379
|
+
# @return [Array<(CouponsPaginated, Integer, Hash)>] CouponsPaginated data, response status code and response headers
|
|
380
|
+
def find_all_coupons_with_http_info(opts = {})
|
|
381
|
+
if @api_client.config.debugging
|
|
382
|
+
@api_client.config.logger.debug 'Calling API: CouponsApi.find_all_coupons ...'
|
|
383
|
+
end
|
|
384
|
+
# resource path
|
|
385
|
+
local_var_path = '/coupons'
|
|
386
|
+
|
|
387
|
+
# query parameters
|
|
388
|
+
query_params = opts[:query_params] || {}
|
|
389
|
+
query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
|
|
390
|
+
query_params[:'per_page'] = opts[:'per_page'] if !opts[:'per_page'].nil?
|
|
391
|
+
|
|
392
|
+
# header parameters
|
|
393
|
+
header_params = opts[:header_params] || {}
|
|
394
|
+
# HTTP header 'Accept' (if needed)
|
|
395
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
396
|
+
|
|
397
|
+
# form parameters
|
|
398
|
+
form_params = opts[:form_params] || {}
|
|
399
|
+
|
|
400
|
+
# http body (model)
|
|
401
|
+
post_body = opts[:debug_body]
|
|
402
|
+
|
|
403
|
+
# return_type
|
|
404
|
+
return_type = opts[:debug_return_type] || 'CouponsPaginated'
|
|
405
|
+
|
|
406
|
+
# auth_names
|
|
407
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
408
|
+
|
|
409
|
+
new_options = opts.merge(
|
|
410
|
+
:operation => :"CouponsApi.find_all_coupons",
|
|
411
|
+
:header_params => header_params,
|
|
412
|
+
:query_params => query_params,
|
|
413
|
+
:form_params => form_params,
|
|
414
|
+
:body => post_body,
|
|
415
|
+
:auth_names => auth_names,
|
|
416
|
+
:return_type => return_type
|
|
417
|
+
)
|
|
418
|
+
|
|
419
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
420
|
+
if @api_client.config.debugging
|
|
421
|
+
@api_client.config.logger.debug "API called: CouponsApi#find_all_coupons\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
422
|
+
end
|
|
423
|
+
return data, status_code, headers
|
|
424
|
+
end
|
|
425
|
+
|
|
426
|
+
# Retrieve a coupon
|
|
427
|
+
# This endpoint is used to retrieve a specific coupon.
|
|
428
|
+
# @param code [String] Unique code used to identify the coupon.
|
|
429
|
+
# @param [Hash] opts the optional parameters
|
|
430
|
+
# @return [Coupon]
|
|
431
|
+
def find_coupon(code, opts = {})
|
|
432
|
+
data, _status_code, _headers = find_coupon_with_http_info(code, opts)
|
|
433
|
+
data
|
|
434
|
+
end
|
|
435
|
+
|
|
436
|
+
# Retrieve a coupon
|
|
437
|
+
# This endpoint is used to retrieve a specific coupon.
|
|
438
|
+
# @param code [String] Unique code used to identify the coupon.
|
|
439
|
+
# @param [Hash] opts the optional parameters
|
|
440
|
+
# @return [Array<(Coupon, Integer, Hash)>] Coupon data, response status code and response headers
|
|
441
|
+
def find_coupon_with_http_info(code, opts = {})
|
|
442
|
+
if @api_client.config.debugging
|
|
443
|
+
@api_client.config.logger.debug 'Calling API: CouponsApi.find_coupon ...'
|
|
444
|
+
end
|
|
445
|
+
# verify the required parameter 'code' is set
|
|
446
|
+
if @api_client.config.client_side_validation && code.nil?
|
|
447
|
+
fail ArgumentError, "Missing the required parameter 'code' when calling CouponsApi.find_coupon"
|
|
448
|
+
end
|
|
449
|
+
# resource path
|
|
450
|
+
local_var_path = '/coupons/{code}'.sub('{' + 'code' + '}', CGI.escape(code.to_s))
|
|
451
|
+
|
|
452
|
+
# query parameters
|
|
453
|
+
query_params = opts[:query_params] || {}
|
|
454
|
+
|
|
455
|
+
# header parameters
|
|
456
|
+
header_params = opts[:header_params] || {}
|
|
457
|
+
# HTTP header 'Accept' (if needed)
|
|
458
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
459
|
+
|
|
460
|
+
# form parameters
|
|
461
|
+
form_params = opts[:form_params] || {}
|
|
462
|
+
|
|
463
|
+
# http body (model)
|
|
464
|
+
post_body = opts[:debug_body]
|
|
465
|
+
|
|
466
|
+
# return_type
|
|
467
|
+
return_type = opts[:debug_return_type] || 'Coupon'
|
|
468
|
+
|
|
469
|
+
# auth_names
|
|
470
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
471
|
+
|
|
472
|
+
new_options = opts.merge(
|
|
473
|
+
:operation => :"CouponsApi.find_coupon",
|
|
474
|
+
:header_params => header_params,
|
|
475
|
+
:query_params => query_params,
|
|
476
|
+
:form_params => form_params,
|
|
477
|
+
:body => post_body,
|
|
478
|
+
:auth_names => auth_names,
|
|
479
|
+
:return_type => return_type
|
|
480
|
+
)
|
|
481
|
+
|
|
482
|
+
data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
|
|
483
|
+
if @api_client.config.debugging
|
|
484
|
+
@api_client.config.logger.debug "API called: CouponsApi#find_coupon\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
485
|
+
end
|
|
486
|
+
return data, status_code, headers
|
|
487
|
+
end
|
|
488
|
+
|
|
489
|
+
# Update a coupon
|
|
490
|
+
# This endpoint is used to update a coupon that can be then attached to a customer to create a discount.
|
|
491
|
+
# @param code [String] Unique code used to identify the coupon.
|
|
492
|
+
# @param coupon_update_input [CouponUpdateInput] Coupon payload
|
|
493
|
+
# @param [Hash] opts the optional parameters
|
|
494
|
+
# @return [Coupon]
|
|
495
|
+
def update_coupon(code, coupon_update_input, opts = {})
|
|
496
|
+
data, _status_code, _headers = update_coupon_with_http_info(code, coupon_update_input, opts)
|
|
497
|
+
data
|
|
498
|
+
end
|
|
499
|
+
|
|
500
|
+
# Update a coupon
|
|
501
|
+
# This endpoint is used to update a coupon that can be then attached to a customer to create a discount.
|
|
502
|
+
# @param code [String] Unique code used to identify the coupon.
|
|
503
|
+
# @param coupon_update_input [CouponUpdateInput] Coupon payload
|
|
504
|
+
# @param [Hash] opts the optional parameters
|
|
505
|
+
# @return [Array<(Coupon, Integer, Hash)>] Coupon data, response status code and response headers
|
|
506
|
+
def update_coupon_with_http_info(code, coupon_update_input, opts = {})
|
|
507
|
+
if @api_client.config.debugging
|
|
508
|
+
@api_client.config.logger.debug 'Calling API: CouponsApi.update_coupon ...'
|
|
509
|
+
end
|
|
510
|
+
# verify the required parameter 'code' is set
|
|
511
|
+
if @api_client.config.client_side_validation && code.nil?
|
|
512
|
+
fail ArgumentError, "Missing the required parameter 'code' when calling CouponsApi.update_coupon"
|
|
513
|
+
end
|
|
514
|
+
# verify the required parameter 'coupon_update_input' is set
|
|
515
|
+
if @api_client.config.client_side_validation && coupon_update_input.nil?
|
|
516
|
+
fail ArgumentError, "Missing the required parameter 'coupon_update_input' when calling CouponsApi.update_coupon"
|
|
517
|
+
end
|
|
518
|
+
# resource path
|
|
519
|
+
local_var_path = '/coupons/{code}'.sub('{' + 'code' + '}', CGI.escape(code.to_s))
|
|
520
|
+
|
|
521
|
+
# query parameters
|
|
522
|
+
query_params = opts[:query_params] || {}
|
|
523
|
+
|
|
524
|
+
# header parameters
|
|
525
|
+
header_params = opts[:header_params] || {}
|
|
526
|
+
# HTTP header 'Accept' (if needed)
|
|
527
|
+
header_params['Accept'] = @api_client.select_header_accept(['application/json'])
|
|
528
|
+
# HTTP header 'Content-Type'
|
|
529
|
+
content_type = @api_client.select_header_content_type(['application/json'])
|
|
530
|
+
if !content_type.nil?
|
|
531
|
+
header_params['Content-Type'] = content_type
|
|
532
|
+
end
|
|
533
|
+
|
|
534
|
+
# form parameters
|
|
535
|
+
form_params = opts[:form_params] || {}
|
|
536
|
+
|
|
537
|
+
# http body (model)
|
|
538
|
+
post_body = opts[:debug_body] || @api_client.object_to_http_body(coupon_update_input)
|
|
539
|
+
|
|
540
|
+
# return_type
|
|
541
|
+
return_type = opts[:debug_return_type] || 'Coupon'
|
|
542
|
+
|
|
543
|
+
# auth_names
|
|
544
|
+
auth_names = opts[:debug_auth_names] || ['bearerAuth']
|
|
545
|
+
|
|
546
|
+
new_options = opts.merge(
|
|
547
|
+
:operation => :"CouponsApi.update_coupon",
|
|
548
|
+
:header_params => header_params,
|
|
549
|
+
:query_params => query_params,
|
|
550
|
+
:form_params => form_params,
|
|
551
|
+
:body => post_body,
|
|
552
|
+
:auth_names => auth_names,
|
|
553
|
+
:return_type => return_type
|
|
554
|
+
)
|
|
555
|
+
|
|
556
|
+
data, status_code, headers = @api_client.call_api(:PUT, local_var_path, new_options)
|
|
557
|
+
if @api_client.config.debugging
|
|
558
|
+
@api_client.config.logger.debug "API called: CouponsApi#update_coupon\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
|
|
559
|
+
end
|
|
560
|
+
return data, status_code, headers
|
|
561
|
+
end
|
|
562
|
+
end
|
|
563
|
+
end
|