dodopayments 0.0.1.pre.alpha.0
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/README.md +154 -0
- data/lib/dodopayments/base_client.rb +453 -0
- data/lib/dodopayments/base_model.rb +1217 -0
- data/lib/dodopayments/base_page.rb +62 -0
- data/lib/dodopayments/client.rb +147 -0
- data/lib/dodopayments/default_page_number_pagination.rb +97 -0
- data/lib/dodopayments/errors.rb +183 -0
- data/lib/dodopayments/extern.rb +9 -0
- data/lib/dodopayments/models/attach_existing_customer.rb +19 -0
- data/lib/dodopayments/models/billing_address.rb +48 -0
- data/lib/dodopayments/models/country_code.rb +262 -0
- data/lib/dodopayments/models/create_new_customer.rb +44 -0
- data/lib/dodopayments/models/customer.rb +49 -0
- data/lib/dodopayments/models/customer_create_params.rb +36 -0
- data/lib/dodopayments/models/customer_limited_details.rb +34 -0
- data/lib/dodopayments/models/customer_list_params.rb +32 -0
- data/lib/dodopayments/models/customer_portal_session.rb +19 -0
- data/lib/dodopayments/models/customer_request.rb +18 -0
- data/lib/dodopayments/models/customer_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/customer_update_params.rb +30 -0
- data/lib/dodopayments/models/customers/customer_portal_create_params.rb +27 -0
- data/lib/dodopayments/models/discount.rb +108 -0
- data/lib/dodopayments/models/discount_create_params.rb +87 -0
- data/lib/dodopayments/models/discount_delete_params.rb +18 -0
- data/lib/dodopayments/models/discount_list_params.rb +32 -0
- data/lib/dodopayments/models/discount_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/discount_type.rb +12 -0
- data/lib/dodopayments/models/discount_update_params.rb +82 -0
- data/lib/dodopayments/models/dispute.rb +80 -0
- data/lib/dodopayments/models/dispute_list_params.rb +79 -0
- data/lib/dodopayments/models/dispute_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/dispute_stage.rb +14 -0
- data/lib/dodopayments/models/dispute_status.rb +18 -0
- data/lib/dodopayments/models/intent_status.rb +22 -0
- data/lib/dodopayments/models/invoices/payment_retrieve_params.rb +20 -0
- data/lib/dodopayments/models/license_activate_params.rb +30 -0
- data/lib/dodopayments/models/license_deactivate_params.rb +30 -0
- data/lib/dodopayments/models/license_key.rb +113 -0
- data/lib/dodopayments/models/license_key_duration.rb +25 -0
- data/lib/dodopayments/models/license_key_instance.rb +43 -0
- data/lib/dodopayments/models/license_key_instance_list_params.rb +39 -0
- data/lib/dodopayments/models/license_key_instance_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/license_key_instance_update_params.rb +24 -0
- data/lib/dodopayments/models/license_key_list_params.rb +53 -0
- data/lib/dodopayments/models/license_key_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/license_key_status.rb +14 -0
- data/lib/dodopayments/models/license_key_update_params.rb +42 -0
- data/lib/dodopayments/models/license_validate_params.rb +30 -0
- data/lib/dodopayments/models/license_validate_response.rb +19 -0
- data/lib/dodopayments/models/misc_list_supported_countries_params.rb +18 -0
- data/lib/dodopayments/models/misc_list_supported_countries_response.rb +7 -0
- data/lib/dodopayments/models/one_time_product_cart_item.rb +33 -0
- data/lib/dodopayments/models/payment.rb +339 -0
- data/lib/dodopayments/models/payment_create_params.rb +90 -0
- data/lib/dodopayments/models/payment_create_response.rb +82 -0
- data/lib/dodopayments/models/payment_list_params.rb +79 -0
- data/lib/dodopayments/models/payment_list_response.rb +238 -0
- data/lib/dodopayments/models/payment_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/payout_list_params.rb +32 -0
- data/lib/dodopayments/models/payout_list_response.rb +295 -0
- data/lib/dodopayments/models/price.rb +512 -0
- data/lib/dodopayments/models/product.rb +149 -0
- data/lib/dodopayments/models/product_create_params.rb +107 -0
- data/lib/dodopayments/models/product_delete_params.rb +18 -0
- data/lib/dodopayments/models/product_list_params.rb +54 -0
- data/lib/dodopayments/models/product_list_response.rb +293 -0
- data/lib/dodopayments/models/product_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/product_unarchive_params.rb +18 -0
- data/lib/dodopayments/models/product_update_params.rb +124 -0
- data/lib/dodopayments/models/products/image_update_params.rb +26 -0
- data/lib/dodopayments/models/products/image_update_response.rb +27 -0
- data/lib/dodopayments/models/refund.rb +218 -0
- data/lib/dodopayments/models/refund_create_params.rb +40 -0
- data/lib/dodopayments/models/refund_list_params.rb +71 -0
- data/lib/dodopayments/models/refund_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/refund_status.rb +15 -0
- data/lib/dodopayments/models/subscription.rb +309 -0
- data/lib/dodopayments/models/subscription_create_params.rb +106 -0
- data/lib/dodopayments/models/subscription_create_response.rb +73 -0
- data/lib/dodopayments/models/subscription_list_params.rb +71 -0
- data/lib/dodopayments/models/subscription_retrieve_params.rb +18 -0
- data/lib/dodopayments/models/subscription_status.rb +18 -0
- data/lib/dodopayments/models/subscription_update_params.rb +30 -0
- data/lib/dodopayments/models/time_interval.rb +15 -0
- data/lib/dodopayments/models/webhook_event.rb +73 -0
- data/lib/dodopayments/models/webhook_event_list_params.rb +71 -0
- data/lib/dodopayments/models/webhook_event_retrieve_params.rb +18 -0
- data/lib/dodopayments/pooled_net_requester.rb +164 -0
- data/lib/dodopayments/request_options.rb +110 -0
- data/lib/dodopayments/resources/customers/customer_portal.rb +34 -0
- data/lib/dodopayments/resources/customers.rb +97 -0
- data/lib/dodopayments/resources/discounts.rb +154 -0
- data/lib/dodopayments/resources/disputes.rb +59 -0
- data/lib/dodopayments/resources/invoices/payments.rb +30 -0
- data/lib/dodopayments/resources/invoices.rb +16 -0
- data/lib/dodopayments/resources/license_key_instances.rb +71 -0
- data/lib/dodopayments/resources/license_keys.rb +82 -0
- data/lib/dodopayments/resources/licenses.rb +72 -0
- data/lib/dodopayments/resources/misc.rb +26 -0
- data/lib/dodopayments/resources/payments.rb +93 -0
- data/lib/dodopayments/resources/payouts.rb +33 -0
- data/lib/dodopayments/resources/products/images.rb +34 -0
- data/lib/dodopayments/resources/products.rb +176 -0
- data/lib/dodopayments/resources/refunds.rb +80 -0
- data/lib/dodopayments/resources/subscriptions.rb +117 -0
- data/lib/dodopayments/resources/webhook_events.rb +57 -0
- data/lib/dodopayments/util.rb +717 -0
- data/lib/dodopayments/version.rb +5 -0
- data/lib/dodopayments.rb +128 -0
- data/manifest.yaml +14 -0
- data/rbi/lib/dodopayments/base_client.rbi +186 -0
- data/rbi/lib/dodopayments/base_model.rbi +606 -0
- data/rbi/lib/dodopayments/base_page.rbi +40 -0
- data/rbi/lib/dodopayments/client.rbi +117 -0
- data/rbi/lib/dodopayments/default_page_number_pagination.rbi +17 -0
- data/rbi/lib/dodopayments/errors.rbi +179 -0
- data/rbi/lib/dodopayments/extern.rbi +8 -0
- data/rbi/lib/dodopayments/models/attach_existing_customer.rbi +23 -0
- data/rbi/lib/dodopayments/models/billing_address.rbi +65 -0
- data/rbi/lib/dodopayments/models/country_code.rbi +266 -0
- data/rbi/lib/dodopayments/models/create_new_customer.rbi +61 -0
- data/rbi/lib/dodopayments/models/customer.rbi +85 -0
- data/rbi/lib/dodopayments/models/customer_create_params.rbi +60 -0
- data/rbi/lib/dodopayments/models/customer_limited_details.rbi +42 -0
- data/rbi/lib/dodopayments/models/customer_list_params.rbi +52 -0
- data/rbi/lib/dodopayments/models/customer_portal_session.rbi +23 -0
- data/rbi/lib/dodopayments/models/customer_request.rbi +15 -0
- data/rbi/lib/dodopayments/models/customer_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/customer_update_params.rbi +50 -0
- data/rbi/lib/dodopayments/models/customers/customer_portal_create_params.rbi +37 -0
- data/rbi/lib/dodopayments/models/discount.rbi +161 -0
- data/rbi/lib/dodopayments/models/discount_create_params.rbi +124 -0
- data/rbi/lib/dodopayments/models/discount_delete_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/discount_list_params.rbi +52 -0
- data/rbi/lib/dodopayments/models/discount_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/discount_type.rbi +17 -0
- data/rbi/lib/dodopayments/models/discount_update_params.rbi +119 -0
- data/rbi/lib/dodopayments/models/dispute.rbi +112 -0
- data/rbi/lib/dodopayments/models/dispute_list_params.rbi +116 -0
- data/rbi/lib/dodopayments/models/dispute_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/dispute_stage.rbi +19 -0
- data/rbi/lib/dodopayments/models/dispute_status.rbi +23 -0
- data/rbi/lib/dodopayments/models/intent_status.rbi +27 -0
- data/rbi/lib/dodopayments/models/invoices/payment_retrieve_params.rbi +23 -0
- data/rbi/lib/dodopayments/models/license_activate_params.rbi +43 -0
- data/rbi/lib/dodopayments/models/license_deactivate_params.rbi +50 -0
- data/rbi/lib/dodopayments/models/license_key.rbi +170 -0
- data/rbi/lib/dodopayments/models/license_key_duration.rbi +31 -0
- data/rbi/lib/dodopayments/models/license_key_instance.rbi +68 -0
- data/rbi/lib/dodopayments/models/license_key_instance_list_params.rbi +63 -0
- data/rbi/lib/dodopayments/models/license_key_instance_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/license_key_instance_update_params.rbi +35 -0
- data/rbi/lib/dodopayments/models/license_key_list_params.rbi +85 -0
- data/rbi/lib/dodopayments/models/license_key_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/license_key_status.rbi +19 -0
- data/rbi/lib/dodopayments/models/license_key_update_params.rbi +66 -0
- data/rbi/lib/dodopayments/models/license_validate_params.rbi +50 -0
- data/rbi/lib/dodopayments/models/license_validate_response.rbi +23 -0
- data/rbi/lib/dodopayments/models/misc_list_supported_countries_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/misc_list_supported_countries_response.rbi +7 -0
- data/rbi/lib/dodopayments/models/one_time_product_cart_item.rbi +43 -0
- data/rbi/lib/dodopayments/models/payment.rbi +439 -0
- data/rbi/lib/dodopayments/models/payment_create_params.rbi +133 -0
- data/rbi/lib/dodopayments/models/payment_create_response.rbi +127 -0
- data/rbi/lib/dodopayments/models/payment_list_params.rbi +116 -0
- data/rbi/lib/dodopayments/models/payment_list_response.rbi +295 -0
- data/rbi/lib/dodopayments/models/payment_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/payout_list_params.rbi +52 -0
- data/rbi/lib/dodopayments/models/payout_list_response.rbi +374 -0
- data/rbi/lib/dodopayments/models/price.rbi +603 -0
- data/rbi/lib/dodopayments/models/product.rbi +228 -0
- data/rbi/lib/dodopayments/models/product_create_params.rbi +162 -0
- data/rbi/lib/dodopayments/models/product_delete_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/product_list_params.rbi +78 -0
- data/rbi/lib/dodopayments/models/product_list_response.rbi +374 -0
- data/rbi/lib/dodopayments/models/product_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/product_unarchive_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/product_update_params.rbi +191 -0
- data/rbi/lib/dodopayments/models/products/image_update_params.rbi +41 -0
- data/rbi/lib/dodopayments/models/products/image_update_response.rbi +33 -0
- data/rbi/lib/dodopayments/models/refund.rbi +267 -0
- data/rbi/lib/dodopayments/models/refund_create_params.rbi +64 -0
- data/rbi/lib/dodopayments/models/refund_list_params.rbi +104 -0
- data/rbi/lib/dodopayments/models/refund_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/refund_status.rbi +20 -0
- data/rbi/lib/dodopayments/models/subscription.rbi +397 -0
- data/rbi/lib/dodopayments/models/subscription_create_params.rbi +154 -0
- data/rbi/lib/dodopayments/models/subscription_create_response.rbi +113 -0
- data/rbi/lib/dodopayments/models/subscription_list_params.rbi +104 -0
- data/rbi/lib/dodopayments/models/subscription_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/models/subscription_status.rbi +23 -0
- data/rbi/lib/dodopayments/models/subscription_update_params.rbi +50 -0
- data/rbi/lib/dodopayments/models/time_interval.rbi +20 -0
- data/rbi/lib/dodopayments/models/webhook_event.rbi +114 -0
- data/rbi/lib/dodopayments/models/webhook_event_list_params.rbi +104 -0
- data/rbi/lib/dodopayments/models/webhook_event_retrieve_params.rbi +21 -0
- data/rbi/lib/dodopayments/pooled_net_requester.rbi +47 -0
- data/rbi/lib/dodopayments/request_options.rbi +109 -0
- data/rbi/lib/dodopayments/resources/customers/customer_portal.rbi +30 -0
- data/rbi/lib/dodopayments/resources/customers.rbi +76 -0
- data/rbi/lib/dodopayments/resources/discounts.rbi +139 -0
- data/rbi/lib/dodopayments/resources/disputes.rbi +57 -0
- data/rbi/lib/dodopayments/resources/invoices/payments.rbi +23 -0
- data/rbi/lib/dodopayments/resources/invoices.rbi +15 -0
- data/rbi/lib/dodopayments/resources/license_key_instances.rbi +61 -0
- data/rbi/lib/dodopayments/resources/license_keys.rbi +77 -0
- data/rbi/lib/dodopayments/resources/licenses.rbi +44 -0
- data/rbi/lib/dodopayments/resources/misc.rbi +18 -0
- data/rbi/lib/dodopayments/resources/payments.rbi +91 -0
- data/rbi/lib/dodopayments/resources/payouts.rbi +28 -0
- data/rbi/lib/dodopayments/resources/products/images.rbi +29 -0
- data/rbi/lib/dodopayments/resources/products.rbi +164 -0
- data/rbi/lib/dodopayments/resources/refunds.rbi +75 -0
- data/rbi/lib/dodopayments/resources/subscriptions.rbi +112 -0
- data/rbi/lib/dodopayments/resources/webhook_events.rbi +50 -0
- data/rbi/lib/dodopayments/util.rbi +270 -0
- data/rbi/lib/dodopayments/version.rbi +5 -0
- data/sig/dodopayments/base_client.rbs +103 -0
- data/sig/dodopayments/base_model.rbs +246 -0
- data/sig/dodopayments/base_page.rbs +20 -0
- data/sig/dodopayments/client.rbs +58 -0
- data/sig/dodopayments/default_page_number_pagination.rbs +7 -0
- data/sig/dodopayments/errors.rbs +99 -0
- data/sig/dodopayments/extern.rbs +4 -0
- data/sig/dodopayments/models/attach_existing_customer.rbs +18 -0
- data/sig/dodopayments/models/billing_address.rbs +38 -0
- data/sig/dodopayments/models/country_code.rbs +508 -0
- data/sig/dodopayments/models/create_new_customer.rbs +37 -0
- data/sig/dodopayments/models/customer.rbs +42 -0
- data/sig/dodopayments/models/customer_create_params.rbs +32 -0
- data/sig/dodopayments/models/customer_limited_details.rbs +23 -0
- data/sig/dodopayments/models/customer_list_params.rbs +29 -0
- data/sig/dodopayments/models/customer_portal_session.rbs +18 -0
- data/sig/dodopayments/models/customer_request.rbs +11 -0
- data/sig/dodopayments/models/customer_retrieve_params.rbs +19 -0
- data/sig/dodopayments/models/customer_update_params.rbs +29 -0
- data/sig/dodopayments/models/customers/customer_portal_create_params.rbs +27 -0
- data/sig/dodopayments/models/discount.rbs +62 -0
- data/sig/dodopayments/models/discount_create_params.rbs +52 -0
- data/sig/dodopayments/models/discount_delete_params.rbs +19 -0
- data/sig/dodopayments/models/discount_list_params.rbs +29 -0
- data/sig/dodopayments/models/discount_retrieve_params.rbs +19 -0
- data/sig/dodopayments/models/discount_type.rbs +11 -0
- data/sig/dodopayments/models/discount_update_params.rbs +52 -0
- data/sig/dodopayments/models/dispute.rbs +50 -0
- data/sig/dodopayments/models/dispute_list_params.rbs +52 -0
- data/sig/dodopayments/models/dispute_retrieve_params.rbs +19 -0
- data/sig/dodopayments/models/dispute_stage.rbs +13 -0
- data/sig/dodopayments/models/dispute_status.rbs +24 -0
- data/sig/dodopayments/models/intent_status.rbs +32 -0
- data/sig/dodopayments/models/invoices/payment_retrieve_params.rbs +21 -0
- data/sig/dodopayments/models/license_activate_params.rbs +28 -0
- data/sig/dodopayments/models/license_deactivate_params.rbs +29 -0
- data/sig/dodopayments/models/license_key.rbs +66 -0
- data/sig/dodopayments/models/license_key_duration.rbs +21 -0
- data/sig/dodopayments/models/license_key_instance.rbs +39 -0
- data/sig/dodopayments/models/license_key_instance_list_params.rbs +32 -0
- data/sig/dodopayments/models/license_key_instance_retrieve_params.rbs +20 -0
- data/sig/dodopayments/models/license_key_instance_update_params.rbs +22 -0
- data/sig/dodopayments/models/license_key_list_params.rbs +44 -0
- data/sig/dodopayments/models/license_key_retrieve_params.rbs +19 -0
- data/sig/dodopayments/models/license_key_status.rbs +13 -0
- data/sig/dodopayments/models/license_key_update_params.rbs +32 -0
- data/sig/dodopayments/models/license_validate_params.rbs +29 -0
- data/sig/dodopayments/models/license_validate_response.rbs +18 -0
- data/sig/dodopayments/models/misc_list_supported_countries_params.rbs +20 -0
- data/sig/dodopayments/models/misc_list_supported_countries_response.rbs +8 -0
- data/sig/dodopayments/models/one_time_product_cart_item.rbs +23 -0
- data/sig/dodopayments/models/payment.rbs +408 -0
- data/sig/dodopayments/models/payment_create_params.rbs +58 -0
- data/sig/dodopayments/models/payment_create_response.rbs +51 -0
- data/sig/dodopayments/models/payment_list_params.rbs +52 -0
- data/sig/dodopayments/models/payment_list_response.rbs +356 -0
- data/sig/dodopayments/models/payment_retrieve_params.rbs +19 -0
- data/sig/dodopayments/models/payout_list_params.rbs +29 -0
- data/sig/dodopayments/models/payout_list_response.rbs +386 -0
- data/sig/dodopayments/models/price.rbs +717 -0
- data/sig/dodopayments/models/product.rbs +89 -0
- data/sig/dodopayments/models/product_create_params.rbs +71 -0
- data/sig/dodopayments/models/product_delete_params.rbs +19 -0
- data/sig/dodopayments/models/product_list_params.rbs +42 -0
- data/sig/dodopayments/models/product_list_response.rbs +379 -0
- data/sig/dodopayments/models/product_retrieve_params.rbs +19 -0
- data/sig/dodopayments/models/product_unarchive_params.rbs +19 -0
- data/sig/dodopayments/models/product_update_params.rbs +75 -0
- data/sig/dodopayments/models/products/image_update_params.rbs +27 -0
- data/sig/dodopayments/models/products/image_update_response.rbs +22 -0
- data/sig/dodopayments/models/refund.rbs +345 -0
- data/sig/dodopayments/models/refund_create_params.rbs +32 -0
- data/sig/dodopayments/models/refund_list_params.rbs +48 -0
- data/sig/dodopayments/models/refund_retrieve_params.rbs +19 -0
- data/sig/dodopayments/models/refund_status.rbs +14 -0
- data/sig/dodopayments/models/subscription.rbs +387 -0
- data/sig/dodopayments/models/subscription_create_params.rbs +66 -0
- data/sig/dodopayments/models/subscription_create_response.rbs +47 -0
- data/sig/dodopayments/models/subscription_list_params.rbs +48 -0
- data/sig/dodopayments/models/subscription_retrieve_params.rbs +19 -0
- data/sig/dodopayments/models/subscription_status.rbs +18 -0
- data/sig/dodopayments/models/subscription_update_params.rbs +32 -0
- data/sig/dodopayments/models/time_interval.rbs +14 -0
- data/sig/dodopayments/models/webhook_event.rbs +50 -0
- data/sig/dodopayments/models/webhook_event_list_params.rbs +48 -0
- data/sig/dodopayments/models/webhook_event_retrieve_params.rbs +19 -0
- data/sig/dodopayments/pooled_net_requester.rbs +30 -0
- data/sig/dodopayments/request_options.rbs +46 -0
- data/sig/dodopayments/resources/customers/customer_portal.rbs +21 -0
- data/sig/dodopayments/resources/customers.rbs +55 -0
- data/sig/dodopayments/resources/discounts.rbs +73 -0
- data/sig/dodopayments/resources/disputes.rbs +33 -0
- data/sig/dodopayments/resources/invoices/payments.rbs +20 -0
- data/sig/dodopayments/resources/invoices.rbs +9 -0
- data/sig/dodopayments/resources/license_key_instances.rbs +42 -0
- data/sig/dodopayments/resources/license_keys.rbs +46 -0
- data/sig/dodopayments/resources/licenses.rbs +40 -0
- data/sig/dodopayments/resources/misc.rbs +16 -0
- data/sig/dodopayments/resources/payments.rbs +49 -0
- data/sig/dodopayments/resources/payouts.rbs +17 -0
- data/sig/dodopayments/resources/products/images.rbs +21 -0
- data/sig/dodopayments/resources/products.rbs +86 -0
- data/sig/dodopayments/resources/refunds.rbs +43 -0
- data/sig/dodopayments/resources/subscriptions.rbs +65 -0
- data/sig/dodopayments/resources/webhook_events.rbs +33 -0
- data/sig/dodopayments/util.rbs +136 -0
- data/sig/dodopayments/version.rbs +3 -0
- metadata +383 -0
@@ -0,0 +1,72 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Licenses
|
6
|
+
# @param params [Dodopayments::Models::LicenseActivateParams, Hash{Symbol=>Object}] .
|
7
|
+
#
|
8
|
+
# @option params [String] :license_key
|
9
|
+
#
|
10
|
+
# @option params [String] :name
|
11
|
+
#
|
12
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
13
|
+
#
|
14
|
+
# @return [Dodopayments::Models::LicenseKeyInstance]
|
15
|
+
def activate(params)
|
16
|
+
parsed, options = Dodopayments::Models::LicenseActivateParams.dump_request(params)
|
17
|
+
@client.request(
|
18
|
+
method: :post,
|
19
|
+
path: "licenses/activate",
|
20
|
+
body: parsed,
|
21
|
+
model: Dodopayments::Models::LicenseKeyInstance,
|
22
|
+
options: options
|
23
|
+
)
|
24
|
+
end
|
25
|
+
|
26
|
+
# @param params [Dodopayments::Models::LicenseDeactivateParams, Hash{Symbol=>Object}] .
|
27
|
+
#
|
28
|
+
# @option params [String] :license_key
|
29
|
+
#
|
30
|
+
# @option params [String] :license_key_instance_id
|
31
|
+
#
|
32
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
33
|
+
#
|
34
|
+
# @return [nil]
|
35
|
+
def deactivate(params)
|
36
|
+
parsed, options = Dodopayments::Models::LicenseDeactivateParams.dump_request(params)
|
37
|
+
@client.request(
|
38
|
+
method: :post,
|
39
|
+
path: "licenses/deactivate",
|
40
|
+
body: parsed,
|
41
|
+
model: NilClass,
|
42
|
+
options: options
|
43
|
+
)
|
44
|
+
end
|
45
|
+
|
46
|
+
# @param params [Dodopayments::Models::LicenseValidateParams, Hash{Symbol=>Object}] .
|
47
|
+
#
|
48
|
+
# @option params [String] :license_key
|
49
|
+
#
|
50
|
+
# @option params [String, nil] :license_key_instance_id
|
51
|
+
#
|
52
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
53
|
+
#
|
54
|
+
# @return [Dodopayments::Models::LicenseValidateResponse]
|
55
|
+
def validate(params)
|
56
|
+
parsed, options = Dodopayments::Models::LicenseValidateParams.dump_request(params)
|
57
|
+
@client.request(
|
58
|
+
method: :post,
|
59
|
+
path: "licenses/validate",
|
60
|
+
body: parsed,
|
61
|
+
model: Dodopayments::Models::LicenseValidateResponse,
|
62
|
+
options: options
|
63
|
+
)
|
64
|
+
end
|
65
|
+
|
66
|
+
# @param client [Dodopayments::Client]
|
67
|
+
def initialize(client:)
|
68
|
+
@client = client
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Misc
|
6
|
+
# @param params [Dodopayments::Models::MiscListSupportedCountriesParams, Hash{Symbol=>Object}] .
|
7
|
+
#
|
8
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
9
|
+
#
|
10
|
+
# @return [Array<Symbol, Dodopayments::Models::CountryCode>]
|
11
|
+
def list_supported_countries(params = {})
|
12
|
+
@client.request(
|
13
|
+
method: :get,
|
14
|
+
path: "checkout/supported_countries",
|
15
|
+
model: Dodopayments::ArrayOf[enum: Dodopayments::Models::CountryCode],
|
16
|
+
options: params[:request_options]
|
17
|
+
)
|
18
|
+
end
|
19
|
+
|
20
|
+
# @param client [Dodopayments::Client]
|
21
|
+
def initialize(client:)
|
22
|
+
@client = client
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,93 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Payments
|
6
|
+
# @param params [Dodopayments::Models::PaymentCreateParams, Hash{Symbol=>Object}] .
|
7
|
+
#
|
8
|
+
# @option params [Dodopayments::Models::BillingAddress] :billing
|
9
|
+
#
|
10
|
+
# @option params [Dodopayments::Models::AttachExistingCustomer, Dodopayments::Models::CreateNewCustomer] :customer
|
11
|
+
#
|
12
|
+
# @option params [Array<Dodopayments::Models::OneTimeProductCartItem>] :product_cart List of products in the cart. Must contain at least 1 and at most 100 items.
|
13
|
+
#
|
14
|
+
# @option params [String, nil] :discount_code Discount Code to apply to the transaction
|
15
|
+
#
|
16
|
+
# @option params [Hash{Symbol=>String}] :metadata
|
17
|
+
#
|
18
|
+
# @option params [Boolean, nil] :payment_link Whether to generate a payment link. Defaults to false if not specified.
|
19
|
+
#
|
20
|
+
# @option params [String, nil] :return_url Optional URL to redirect the customer after payment. Must be a valid URL if
|
21
|
+
# provided.
|
22
|
+
#
|
23
|
+
# @option params [String, nil] :tax_id Tax ID in case the payment is B2B. If tax id validation fails the payment
|
24
|
+
# creation will fail
|
25
|
+
#
|
26
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
27
|
+
#
|
28
|
+
# @return [Dodopayments::Models::PaymentCreateResponse]
|
29
|
+
def create(params)
|
30
|
+
parsed, options = Dodopayments::Models::PaymentCreateParams.dump_request(params)
|
31
|
+
@client.request(
|
32
|
+
method: :post,
|
33
|
+
path: "payments",
|
34
|
+
body: parsed,
|
35
|
+
model: Dodopayments::Models::PaymentCreateResponse,
|
36
|
+
options: options
|
37
|
+
)
|
38
|
+
end
|
39
|
+
|
40
|
+
# @param payment_id [String] Payment Id
|
41
|
+
#
|
42
|
+
# @param params [Dodopayments::Models::PaymentRetrieveParams, Hash{Symbol=>Object}] .
|
43
|
+
#
|
44
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
45
|
+
#
|
46
|
+
# @return [Dodopayments::Models::Payment]
|
47
|
+
def retrieve(payment_id, params = {})
|
48
|
+
@client.request(
|
49
|
+
method: :get,
|
50
|
+
path: ["payments/%0s", payment_id],
|
51
|
+
model: Dodopayments::Models::Payment,
|
52
|
+
options: params[:request_options]
|
53
|
+
)
|
54
|
+
end
|
55
|
+
|
56
|
+
# @param params [Dodopayments::Models::PaymentListParams, Hash{Symbol=>Object}] .
|
57
|
+
#
|
58
|
+
# @option params [Time, nil] :created_at_gte Get events after this created time
|
59
|
+
#
|
60
|
+
# @option params [Time, nil] :created_at_lte Get events created before this time
|
61
|
+
#
|
62
|
+
# @option params [String, nil] :customer_id Filter by customer id
|
63
|
+
#
|
64
|
+
# @option params [Integer, nil] :page_number Page number default is 0
|
65
|
+
#
|
66
|
+
# @option params [Integer, nil] :page_size Page size default is 10 max is 100
|
67
|
+
#
|
68
|
+
# @option params [Symbol, Dodopayments::Models::IntentStatus, nil] :status Filter by status
|
69
|
+
#
|
70
|
+
# @option params [String, nil] :subscription_id Filter by subscription id
|
71
|
+
#
|
72
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
73
|
+
#
|
74
|
+
# @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::PaymentListResponse>]
|
75
|
+
def list(params = {})
|
76
|
+
parsed, options = Dodopayments::Models::PaymentListParams.dump_request(params)
|
77
|
+
@client.request(
|
78
|
+
method: :get,
|
79
|
+
path: "payments",
|
80
|
+
query: parsed,
|
81
|
+
page: Dodopayments::DefaultPageNumberPagination,
|
82
|
+
model: Dodopayments::Models::PaymentListResponse,
|
83
|
+
options: options
|
84
|
+
)
|
85
|
+
end
|
86
|
+
|
87
|
+
# @param client [Dodopayments::Client]
|
88
|
+
def initialize(client:)
|
89
|
+
@client = client
|
90
|
+
end
|
91
|
+
end
|
92
|
+
end
|
93
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Payouts
|
6
|
+
# @param params [Dodopayments::Models::PayoutListParams, Hash{Symbol=>Object}] .
|
7
|
+
#
|
8
|
+
# @option params [Integer, nil] :page_number Page number default is 0
|
9
|
+
#
|
10
|
+
# @option params [Integer, nil] :page_size Page size default is 10 max is 100
|
11
|
+
#
|
12
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
13
|
+
#
|
14
|
+
# @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::PayoutListResponse>]
|
15
|
+
def list(params = {})
|
16
|
+
parsed, options = Dodopayments::Models::PayoutListParams.dump_request(params)
|
17
|
+
@client.request(
|
18
|
+
method: :get,
|
19
|
+
path: "payouts",
|
20
|
+
query: parsed,
|
21
|
+
page: Dodopayments::DefaultPageNumberPagination,
|
22
|
+
model: Dodopayments::Models::PayoutListResponse,
|
23
|
+
options: options
|
24
|
+
)
|
25
|
+
end
|
26
|
+
|
27
|
+
# @param client [Dodopayments::Client]
|
28
|
+
def initialize(client:)
|
29
|
+
@client = client
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,34 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Products
|
6
|
+
class Images
|
7
|
+
# @param id [String] Product Id
|
8
|
+
#
|
9
|
+
# @param params [Dodopayments::Models::Products::ImageUpdateParams, Hash{Symbol=>Object}] .
|
10
|
+
#
|
11
|
+
# @option params [Boolean, nil] :force_update
|
12
|
+
#
|
13
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
14
|
+
#
|
15
|
+
# @return [Dodopayments::Models::Products::ImageUpdateResponse]
|
16
|
+
def update(id, params = {})
|
17
|
+
parsed, options = Dodopayments::Models::Products::ImageUpdateParams.dump_request(params)
|
18
|
+
@client.request(
|
19
|
+
method: :put,
|
20
|
+
path: ["products/%0s/images", id],
|
21
|
+
query: parsed,
|
22
|
+
model: Dodopayments::Models::Products::ImageUpdateResponse,
|
23
|
+
options: options
|
24
|
+
)
|
25
|
+
end
|
26
|
+
|
27
|
+
# @param client [Dodopayments::Client]
|
28
|
+
def initialize(client:)
|
29
|
+
@client = client
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,176 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Products
|
6
|
+
# @return [Dodopayments::Resources::Products::Images]
|
7
|
+
attr_reader :images
|
8
|
+
|
9
|
+
# @param params [Dodopayments::Models::ProductCreateParams, Hash{Symbol=>Object}] .
|
10
|
+
#
|
11
|
+
# @option params [Dodopayments::Models::Price::OneTimePrice, Dodopayments::Models::Price::RecurringPrice] :price
|
12
|
+
#
|
13
|
+
# @option params [Symbol, Dodopayments::Models::ProductCreateParams::TaxCategory] :tax_category Represents the different categories of taxation applicable to various products
|
14
|
+
# and services.
|
15
|
+
#
|
16
|
+
# @option params [Array<String>, nil] :addons Addons available for subscription product
|
17
|
+
#
|
18
|
+
# @option params [String, nil] :description Optional description of the product
|
19
|
+
#
|
20
|
+
# @option params [String, nil] :license_key_activation_message Optional message displayed during license key activation
|
21
|
+
#
|
22
|
+
# @option params [Integer, nil] :license_key_activations_limit The number of times the license key can be activated. Must be 0 or greater
|
23
|
+
#
|
24
|
+
# @option params [Dodopayments::Models::LicenseKeyDuration, nil] :license_key_duration
|
25
|
+
#
|
26
|
+
# @option params [Boolean, nil] :license_key_enabled When true, generates and sends a license key to your customer. Defaults to false
|
27
|
+
#
|
28
|
+
# @option params [String, nil] :name Optional name of the product
|
29
|
+
#
|
30
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
31
|
+
#
|
32
|
+
# @return [Dodopayments::Models::Product]
|
33
|
+
def create(params)
|
34
|
+
parsed, options = Dodopayments::Models::ProductCreateParams.dump_request(params)
|
35
|
+
@client.request(
|
36
|
+
method: :post,
|
37
|
+
path: "products",
|
38
|
+
body: parsed,
|
39
|
+
model: Dodopayments::Models::Product,
|
40
|
+
options: options
|
41
|
+
)
|
42
|
+
end
|
43
|
+
|
44
|
+
# @param id [String] Product Id
|
45
|
+
#
|
46
|
+
# @param params [Dodopayments::Models::ProductRetrieveParams, Hash{Symbol=>Object}] .
|
47
|
+
#
|
48
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
49
|
+
#
|
50
|
+
# @return [Dodopayments::Models::Product]
|
51
|
+
def retrieve(id, params = {})
|
52
|
+
@client.request(
|
53
|
+
method: :get,
|
54
|
+
path: ["products/%0s", id],
|
55
|
+
model: Dodopayments::Models::Product,
|
56
|
+
options: params[:request_options]
|
57
|
+
)
|
58
|
+
end
|
59
|
+
|
60
|
+
# @param id [String]
|
61
|
+
#
|
62
|
+
# @param params [Dodopayments::Models::ProductUpdateParams, Hash{Symbol=>Object}] .
|
63
|
+
#
|
64
|
+
# @option params [Array<String>, nil] :addons Available Addons for subscription products
|
65
|
+
#
|
66
|
+
# @option params [String, nil] :description Description of the product, optional and must be at most 1000 characters.
|
67
|
+
#
|
68
|
+
# @option params [String, nil] :image_id Product image id after its uploaded to S3
|
69
|
+
#
|
70
|
+
# @option params [String, nil] :license_key_activation_message Message sent to the customer upon license key activation.
|
71
|
+
#
|
72
|
+
# Only applicable if `license_key_enabled` is `true`. This message contains
|
73
|
+
# instructions for activating the license key.
|
74
|
+
#
|
75
|
+
# @option params [Integer, nil] :license_key_activations_limit Limit for the number of activations for the license key.
|
76
|
+
#
|
77
|
+
# Only applicable if `license_key_enabled` is `true`. Represents the maximum
|
78
|
+
# number of times the license key can be activated.
|
79
|
+
#
|
80
|
+
# @option params [Dodopayments::Models::LicenseKeyDuration, nil] :license_key_duration
|
81
|
+
#
|
82
|
+
# @option params [Boolean, nil] :license_key_enabled Whether the product requires a license key.
|
83
|
+
#
|
84
|
+
# If `true`, additional fields related to license key (duration, activations
|
85
|
+
# limit, activation message) become applicable.
|
86
|
+
#
|
87
|
+
# @option params [String, nil] :name Name of the product, optional and must be at most 100 characters.
|
88
|
+
#
|
89
|
+
# @option params [Dodopayments::Models::Price::OneTimePrice, Dodopayments::Models::Price::RecurringPrice, nil] :price
|
90
|
+
#
|
91
|
+
# @option params [Symbol, Dodopayments::Models::ProductUpdateParams::TaxCategory, nil] :tax_category Represents the different categories of taxation applicable to various products
|
92
|
+
# and services.
|
93
|
+
#
|
94
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
95
|
+
#
|
96
|
+
# @return [nil]
|
97
|
+
def update(id, params = {})
|
98
|
+
parsed, options = Dodopayments::Models::ProductUpdateParams.dump_request(params)
|
99
|
+
@client.request(
|
100
|
+
method: :patch,
|
101
|
+
path: ["products/%0s", id],
|
102
|
+
body: parsed,
|
103
|
+
model: NilClass,
|
104
|
+
options: options
|
105
|
+
)
|
106
|
+
end
|
107
|
+
|
108
|
+
# @param params [Dodopayments::Models::ProductListParams, Hash{Symbol=>Object}] .
|
109
|
+
#
|
110
|
+
# @option params [Boolean] :archived List archived products
|
111
|
+
#
|
112
|
+
# @option params [Integer, nil] :page_number Page number default is 0
|
113
|
+
#
|
114
|
+
# @option params [Integer, nil] :page_size Page size default is 10 max is 100
|
115
|
+
#
|
116
|
+
# @option params [Boolean, nil] :recurring Filter products by pricing type:
|
117
|
+
#
|
118
|
+
# - `true`: Show only recurring pricing products (e.g. subscriptions)
|
119
|
+
# - `false`: Show only one-time price products
|
120
|
+
# - `null` or absent: Show both types of products
|
121
|
+
#
|
122
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
123
|
+
#
|
124
|
+
# @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::ProductListResponse>]
|
125
|
+
def list(params = {})
|
126
|
+
parsed, options = Dodopayments::Models::ProductListParams.dump_request(params)
|
127
|
+
@client.request(
|
128
|
+
method: :get,
|
129
|
+
path: "products",
|
130
|
+
query: parsed,
|
131
|
+
page: Dodopayments::DefaultPageNumberPagination,
|
132
|
+
model: Dodopayments::Models::ProductListResponse,
|
133
|
+
options: options
|
134
|
+
)
|
135
|
+
end
|
136
|
+
|
137
|
+
# @param id [String]
|
138
|
+
#
|
139
|
+
# @param params [Dodopayments::Models::ProductDeleteParams, Hash{Symbol=>Object}] .
|
140
|
+
#
|
141
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
142
|
+
#
|
143
|
+
# @return [nil]
|
144
|
+
def delete(id, params = {})
|
145
|
+
@client.request(
|
146
|
+
method: :delete,
|
147
|
+
path: ["products/%0s", id],
|
148
|
+
model: NilClass,
|
149
|
+
options: params[:request_options]
|
150
|
+
)
|
151
|
+
end
|
152
|
+
|
153
|
+
# @param id [String]
|
154
|
+
#
|
155
|
+
# @param params [Dodopayments::Models::ProductUnarchiveParams, Hash{Symbol=>Object}] .
|
156
|
+
#
|
157
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
158
|
+
#
|
159
|
+
# @return [nil]
|
160
|
+
def unarchive(id, params = {})
|
161
|
+
@client.request(
|
162
|
+
method: :post,
|
163
|
+
path: ["products/%0s/unarchive", id],
|
164
|
+
model: NilClass,
|
165
|
+
options: params[:request_options]
|
166
|
+
)
|
167
|
+
end
|
168
|
+
|
169
|
+
# @param client [Dodopayments::Client]
|
170
|
+
def initialize(client:)
|
171
|
+
@client = client
|
172
|
+
@images = Dodopayments::Resources::Products::Images.new(client: client)
|
173
|
+
end
|
174
|
+
end
|
175
|
+
end
|
176
|
+
end
|
@@ -0,0 +1,80 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Refunds
|
6
|
+
# @param params [Dodopayments::Models::RefundCreateParams, Hash{Symbol=>Object}] .
|
7
|
+
#
|
8
|
+
# @option params [String] :payment_id The unique identifier of the payment to be refunded.
|
9
|
+
#
|
10
|
+
# @option params [Integer, nil] :amount The amount to be refunded. Must be non-negative. Optional. Partial refunds are
|
11
|
+
# currently disabled.
|
12
|
+
#
|
13
|
+
# @option params [String, nil] :reason The reason for the refund, if any. Maximum length is 3000 characters. Optional.
|
14
|
+
#
|
15
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
16
|
+
#
|
17
|
+
# @return [Dodopayments::Models::Refund]
|
18
|
+
def create(params)
|
19
|
+
parsed, options = Dodopayments::Models::RefundCreateParams.dump_request(params)
|
20
|
+
@client.request(
|
21
|
+
method: :post,
|
22
|
+
path: "refunds",
|
23
|
+
body: parsed,
|
24
|
+
model: Dodopayments::Models::Refund,
|
25
|
+
options: options
|
26
|
+
)
|
27
|
+
end
|
28
|
+
|
29
|
+
# @param refund_id [String] Refund Id
|
30
|
+
#
|
31
|
+
# @param params [Dodopayments::Models::RefundRetrieveParams, Hash{Symbol=>Object}] .
|
32
|
+
#
|
33
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
34
|
+
#
|
35
|
+
# @return [Dodopayments::Models::Refund]
|
36
|
+
def retrieve(refund_id, params = {})
|
37
|
+
@client.request(
|
38
|
+
method: :get,
|
39
|
+
path: ["refunds/%0s", refund_id],
|
40
|
+
model: Dodopayments::Models::Refund,
|
41
|
+
options: params[:request_options]
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
45
|
+
# @param params [Dodopayments::Models::RefundListParams, Hash{Symbol=>Object}] .
|
46
|
+
#
|
47
|
+
# @option params [Time, nil] :created_at_gte Get events after this created time
|
48
|
+
#
|
49
|
+
# @option params [Time, nil] :created_at_lte Get events created before this time
|
50
|
+
#
|
51
|
+
# @option params [String, nil] :customer_id Filter by customer_id
|
52
|
+
#
|
53
|
+
# @option params [Integer, nil] :page_number Page number default is 0
|
54
|
+
#
|
55
|
+
# @option params [Integer, nil] :page_size Page size default is 10 max is 100
|
56
|
+
#
|
57
|
+
# @option params [Symbol, Dodopayments::Models::RefundStatus, nil] :status Filter by status
|
58
|
+
#
|
59
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
60
|
+
#
|
61
|
+
# @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::Refund>]
|
62
|
+
def list(params = {})
|
63
|
+
parsed, options = Dodopayments::Models::RefundListParams.dump_request(params)
|
64
|
+
@client.request(
|
65
|
+
method: :get,
|
66
|
+
path: "refunds",
|
67
|
+
query: parsed,
|
68
|
+
page: Dodopayments::DefaultPageNumberPagination,
|
69
|
+
model: Dodopayments::Models::Refund,
|
70
|
+
options: options
|
71
|
+
)
|
72
|
+
end
|
73
|
+
|
74
|
+
# @param client [Dodopayments::Client]
|
75
|
+
def initialize(client:)
|
76
|
+
@client = client
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
@@ -0,0 +1,117 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Subscriptions
|
6
|
+
# @param params [Dodopayments::Models::SubscriptionCreateParams, Hash{Symbol=>Object}] .
|
7
|
+
#
|
8
|
+
# @option params [Dodopayments::Models::BillingAddress] :billing
|
9
|
+
#
|
10
|
+
# @option params [Dodopayments::Models::AttachExistingCustomer, Dodopayments::Models::CreateNewCustomer] :customer
|
11
|
+
#
|
12
|
+
# @option params [String] :product_id Unique identifier of the product to subscribe to
|
13
|
+
#
|
14
|
+
# @option params [Integer] :quantity Number of units to subscribe for. Must be at least 1.
|
15
|
+
#
|
16
|
+
# @option params [String, nil] :discount_code Discount Code to apply to the subscription
|
17
|
+
#
|
18
|
+
# @option params [Hash{Symbol=>String}] :metadata
|
19
|
+
#
|
20
|
+
# @option params [Boolean, nil] :payment_link If true, generates a payment link. Defaults to false if not specified.
|
21
|
+
#
|
22
|
+
# @option params [String, nil] :return_url Optional URL to redirect after successful subscription creation
|
23
|
+
#
|
24
|
+
# @option params [String, nil] :tax_id Tax ID in case the payment is B2B. If tax id validation fails the payment
|
25
|
+
# creation will fail
|
26
|
+
#
|
27
|
+
# @option params [Integer, nil] :trial_period_days Optional trial period in days If specified, this value overrides the trial
|
28
|
+
# period set in the product's price Must be between 0 and 10000 days
|
29
|
+
#
|
30
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
31
|
+
#
|
32
|
+
# @return [Dodopayments::Models::SubscriptionCreateResponse]
|
33
|
+
def create(params)
|
34
|
+
parsed, options = Dodopayments::Models::SubscriptionCreateParams.dump_request(params)
|
35
|
+
@client.request(
|
36
|
+
method: :post,
|
37
|
+
path: "subscriptions",
|
38
|
+
body: parsed,
|
39
|
+
model: Dodopayments::Models::SubscriptionCreateResponse,
|
40
|
+
options: options
|
41
|
+
)
|
42
|
+
end
|
43
|
+
|
44
|
+
# @param subscription_id [String] Subscription Id
|
45
|
+
#
|
46
|
+
# @param params [Dodopayments::Models::SubscriptionRetrieveParams, Hash{Symbol=>Object}] .
|
47
|
+
#
|
48
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
49
|
+
#
|
50
|
+
# @return [Dodopayments::Models::Subscription]
|
51
|
+
def retrieve(subscription_id, params = {})
|
52
|
+
@client.request(
|
53
|
+
method: :get,
|
54
|
+
path: ["subscriptions/%0s", subscription_id],
|
55
|
+
model: Dodopayments::Models::Subscription,
|
56
|
+
options: params[:request_options]
|
57
|
+
)
|
58
|
+
end
|
59
|
+
|
60
|
+
# @param subscription_id [String] Subscription Id
|
61
|
+
#
|
62
|
+
# @param params [Dodopayments::Models::SubscriptionUpdateParams, Hash{Symbol=>Object}] .
|
63
|
+
#
|
64
|
+
# @option params [Hash{Symbol=>String}, nil] :metadata
|
65
|
+
#
|
66
|
+
# @option params [Symbol, Dodopayments::Models::SubscriptionStatus, nil] :status
|
67
|
+
#
|
68
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
69
|
+
#
|
70
|
+
# @return [Dodopayments::Models::Subscription]
|
71
|
+
def update(subscription_id, params = {})
|
72
|
+
parsed, options = Dodopayments::Models::SubscriptionUpdateParams.dump_request(params)
|
73
|
+
@client.request(
|
74
|
+
method: :patch,
|
75
|
+
path: ["subscriptions/%0s", subscription_id],
|
76
|
+
body: parsed,
|
77
|
+
model: Dodopayments::Models::Subscription,
|
78
|
+
options: options
|
79
|
+
)
|
80
|
+
end
|
81
|
+
|
82
|
+
# @param params [Dodopayments::Models::SubscriptionListParams, Hash{Symbol=>Object}] .
|
83
|
+
#
|
84
|
+
# @option params [Time, nil] :created_at_gte Get events after this created time
|
85
|
+
#
|
86
|
+
# @option params [Time, nil] :created_at_lte Get events created before this time
|
87
|
+
#
|
88
|
+
# @option params [String, nil] :customer_id Filter by customer id
|
89
|
+
#
|
90
|
+
# @option params [Integer, nil] :page_number Page number default is 0
|
91
|
+
#
|
92
|
+
# @option params [Integer, nil] :page_size Page size default is 10 max is 100
|
93
|
+
#
|
94
|
+
# @option params [Symbol, Dodopayments::Models::SubscriptionStatus, nil] :status Filter by status
|
95
|
+
#
|
96
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
97
|
+
#
|
98
|
+
# @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::Subscription>]
|
99
|
+
def list(params = {})
|
100
|
+
parsed, options = Dodopayments::Models::SubscriptionListParams.dump_request(params)
|
101
|
+
@client.request(
|
102
|
+
method: :get,
|
103
|
+
path: "subscriptions",
|
104
|
+
query: parsed,
|
105
|
+
page: Dodopayments::DefaultPageNumberPagination,
|
106
|
+
model: Dodopayments::Models::Subscription,
|
107
|
+
options: options
|
108
|
+
)
|
109
|
+
end
|
110
|
+
|
111
|
+
# @param client [Dodopayments::Client]
|
112
|
+
def initialize(client:)
|
113
|
+
@client = client
|
114
|
+
end
|
115
|
+
end
|
116
|
+
end
|
117
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class WebhookEvents
|
6
|
+
# @param webhook_event_id [String]
|
7
|
+
#
|
8
|
+
# @param params [Dodopayments::Models::WebhookEventRetrieveParams, Hash{Symbol=>Object}] .
|
9
|
+
#
|
10
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
11
|
+
#
|
12
|
+
# @return [Dodopayments::Models::WebhookEvent]
|
13
|
+
def retrieve(webhook_event_id, params = {})
|
14
|
+
@client.request(
|
15
|
+
method: :get,
|
16
|
+
path: ["webhook_events/%0s", webhook_event_id],
|
17
|
+
model: Dodopayments::Models::WebhookEvent,
|
18
|
+
options: params[:request_options]
|
19
|
+
)
|
20
|
+
end
|
21
|
+
|
22
|
+
# @param params [Dodopayments::Models::WebhookEventListParams, Hash{Symbol=>Object}] .
|
23
|
+
#
|
24
|
+
# @option params [Time, nil] :created_at_gte Get events after this created time
|
25
|
+
#
|
26
|
+
# @option params [Time, nil] :created_at_lte Get events created before this time
|
27
|
+
#
|
28
|
+
# @option params [Integer, nil] :limit Min : 1, Max : 100, default 10
|
29
|
+
#
|
30
|
+
# @option params [String, nil] :object_id_ Get events history of a specific object like payment/subscription/refund/dispute
|
31
|
+
#
|
32
|
+
# @option params [Integer, nil] :page_number Page number default is 0
|
33
|
+
#
|
34
|
+
# @option params [Integer, nil] :page_size Page size default is 10 max is 100
|
35
|
+
#
|
36
|
+
# @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
|
37
|
+
#
|
38
|
+
# @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::WebhookEvent>]
|
39
|
+
def list(params = {})
|
40
|
+
parsed, options = Dodopayments::Models::WebhookEventListParams.dump_request(params)
|
41
|
+
@client.request(
|
42
|
+
method: :get,
|
43
|
+
path: "webhook_events",
|
44
|
+
query: parsed,
|
45
|
+
page: Dodopayments::DefaultPageNumberPagination,
|
46
|
+
model: Dodopayments::Models::WebhookEvent,
|
47
|
+
options: options
|
48
|
+
)
|
49
|
+
end
|
50
|
+
|
51
|
+
# @param client [Dodopayments::Client]
|
52
|
+
def initialize(client:)
|
53
|
+
@client = client
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|