dodopayments 1.22.0 → 1.49.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 +4 -4
- data/CHANGELOG.md +23 -0
- data/README.md +143 -59
- data/SECURITY.md +2 -2
- data/lib/dodopayments/client.rb +16 -4
- data/lib/dodopayments/errors.rb +23 -1
- data/lib/dodopayments/file_part.rb +2 -2
- data/lib/dodopayments/internal/cursor_page_pagination.rb +90 -0
- data/lib/dodopayments/internal/transport/base_client.rb +88 -8
- data/lib/dodopayments/internal/transport/pooled_net_requester.rb +17 -1
- data/lib/dodopayments/internal/type/array_of.rb +16 -2
- data/lib/dodopayments/internal/type/base_model.rb +155 -54
- data/lib/dodopayments/internal/type/boolean.rb +15 -1
- data/lib/dodopayments/internal/type/converter.rb +86 -33
- data/lib/dodopayments/internal/type/enum.rb +30 -6
- data/lib/dodopayments/internal/type/file_input.rb +13 -1
- data/lib/dodopayments/internal/type/hash_of.rb +16 -2
- data/lib/dodopayments/internal/type/request_parameters.rb +4 -4
- data/lib/dodopayments/internal/type/union.rb +44 -31
- data/lib/dodopayments/internal/type/unknown.rb +15 -1
- data/lib/dodopayments/internal/util.rb +119 -11
- data/lib/dodopayments/internal.rb +9 -0
- data/lib/dodopayments/models/addon_create_params.rb +6 -10
- data/lib/dodopayments/models/addon_list_params.rb +4 -4
- data/lib/dodopayments/models/addon_response.rb +6 -10
- data/lib/dodopayments/models/addon_update_params.rb +6 -10
- data/lib/dodopayments/models/attach_addon.rb +21 -0
- data/lib/dodopayments/models/billing_address.rb +3 -3
- data/lib/dodopayments/models/brand.rb +107 -0
- data/lib/dodopayments/models/brand_create_params.rb +44 -0
- data/lib/dodopayments/models/{webhook_event_retrieve_params.rb → brand_list_params.rb} +2 -2
- data/lib/dodopayments/models/brand_list_response.rb +17 -0
- data/lib/dodopayments/models/brand_retrieve_params.rb +14 -0
- data/lib/dodopayments/models/brand_update_images_params.rb +14 -0
- data/lib/dodopayments/models/brand_update_images_response.rb +25 -0
- data/lib/dodopayments/models/brand_update_params.rb +43 -0
- data/lib/dodopayments/models/create_new_customer.rb +0 -1
- data/lib/dodopayments/models/customer_list_params.rb +13 -5
- data/lib/dodopayments/models/customer_request.rb +3 -3
- data/lib/dodopayments/models/customers/customer_portal_create_params.rb +2 -2
- data/lib/dodopayments/models/discount.rb +15 -4
- data/lib/dodopayments/models/discount_create_params.rb +17 -6
- data/lib/dodopayments/models/discount_list_params.rb +4 -4
- data/lib/dodopayments/models/discount_update_params.rb +16 -5
- data/lib/dodopayments/models/dispute.rb +6 -5
- data/lib/dodopayments/models/dispute_list_params.rb +44 -16
- data/lib/dodopayments/models/dispute_list_response.rb +6 -5
- data/lib/dodopayments/models/{dispute_retrieve_response.rb → get_dispute.rb} +11 -9
- data/lib/dodopayments/models/license_key.rb +3 -3
- data/lib/dodopayments/models/license_key_duration.rb +1 -1
- data/lib/dodopayments/models/license_key_list_params.rb +23 -11
- data/lib/dodopayments/models/license_key_update_params.rb +3 -3
- data/lib/dodopayments/models/misc_list_supported_countries_response.rb +1 -1
- data/lib/dodopayments/models/new_customer.rb +27 -0
- data/lib/dodopayments/models/one_time_product_cart_item.rb +0 -1
- data/lib/dodopayments/models/payment.rb +50 -21
- data/lib/dodopayments/models/payment_create_params.rb +22 -41
- data/lib/dodopayments/models/payment_create_response.rb +16 -6
- data/lib/dodopayments/models/payment_list_params.rb +44 -16
- data/lib/dodopayments/models/payment_list_response.rb +16 -4
- data/lib/dodopayments/models/payment_method_types.rb +31 -0
- data/lib/dodopayments/models/payment_retrieve_line_items_params.rb +14 -0
- data/lib/dodopayments/models/payment_retrieve_line_items_response.rb +63 -0
- data/lib/dodopayments/models/payout_list_params.rb +4 -4
- data/lib/dodopayments/models/payout_list_response.rb +7 -3
- data/lib/dodopayments/models/price.rb +57 -30
- data/lib/dodopayments/models/product.rb +85 -12
- data/lib/dodopayments/models/product_create_params.rb +61 -12
- data/lib/dodopayments/models/product_list_params.rb +15 -7
- data/lib/dodopayments/models/product_list_response.rb +19 -11
- data/lib/dodopayments/models/product_update_files_params.rb +20 -0
- data/lib/dodopayments/models/product_update_files_response.rb +22 -0
- data/lib/dodopayments/models/product_update_params.rb +70 -13
- data/lib/dodopayments/models/products/image_update_params.rb +2 -2
- data/lib/dodopayments/models/refund.rb +15 -5
- data/lib/dodopayments/models/refund_create_params.rb +38 -1
- data/lib/dodopayments/models/refund_list_params.rb +26 -13
- data/lib/dodopayments/models/subscription.rb +38 -18
- data/lib/dodopayments/models/subscription_change_plan_params.rb +9 -23
- data/lib/dodopayments/models/subscription_charge_params.rb +38 -2
- data/lib/dodopayments/models/subscription_create_params.rb +53 -66
- data/lib/dodopayments/models/subscription_create_response.rb +24 -8
- data/lib/dodopayments/models/subscription_list_params.rb +37 -14
- data/lib/dodopayments/models/subscription_list_response.rb +37 -16
- data/lib/dodopayments/models/subscription_status.rb +0 -1
- data/lib/dodopayments/models/subscription_update_params.rb +16 -6
- data/lib/dodopayments/models/webhook_create_params.rb +86 -0
- data/lib/dodopayments/models/webhook_create_response.rb +88 -0
- data/lib/dodopayments/models/webhook_delete_params.rb +14 -0
- data/lib/dodopayments/models/webhook_event_type.rb +35 -0
- data/lib/dodopayments/models/webhook_list_params.rb +30 -0
- data/lib/dodopayments/models/webhook_list_response.rb +88 -0
- data/lib/dodopayments/models/webhook_payload.rb +161 -0
- data/lib/dodopayments/models/webhook_retrieve_params.rb +14 -0
- data/lib/dodopayments/models/webhook_retrieve_response.rb +88 -0
- data/lib/dodopayments/models/webhook_retrieve_secret_params.rb +14 -0
- data/lib/dodopayments/models/webhook_retrieve_secret_response.rb +16 -0
- data/lib/dodopayments/models/webhook_update_params.rb +69 -0
- data/lib/dodopayments/models/webhook_update_response.rb +88 -0
- data/lib/dodopayments/models/webhooks/header_retrieve_params.rb +16 -0
- data/lib/dodopayments/models/webhooks/header_retrieve_response.rb +31 -0
- data/lib/dodopayments/models/webhooks/header_update_params.rb +24 -0
- data/lib/dodopayments/models/your_webhook_url_create_params.rb +32 -0
- data/lib/dodopayments/models.rb +79 -3
- data/lib/dodopayments/request_options.rb +4 -0
- data/lib/dodopayments/resources/addons.rb +13 -21
- data/lib/dodopayments/resources/brands.rb +119 -0
- data/lib/dodopayments/resources/customers/customer_portal.rb +3 -3
- data/lib/dodopayments/resources/customers.rb +12 -10
- data/lib/dodopayments/resources/discounts.rb +24 -19
- data/lib/dodopayments/resources/disputes.rb +10 -10
- data/lib/dodopayments/resources/license_key_instances.rb +5 -5
- data/lib/dodopayments/resources/license_keys.rb +13 -13
- data/lib/dodopayments/resources/licenses.rb +4 -4
- data/lib/dodopayments/resources/misc.rb +1 -1
- data/lib/dodopayments/resources/payments.rb +38 -19
- data/lib/dodopayments/resources/payouts.rb +3 -3
- data/lib/dodopayments/resources/products/images.rb +2 -2
- data/lib/dodopayments/resources/products.rb +58 -24
- data/lib/dodopayments/resources/refunds.rb +14 -12
- data/lib/dodopayments/resources/subscriptions.rb +41 -29
- data/lib/dodopayments/resources/webhook_events.rb +0 -52
- data/lib/dodopayments/resources/webhooks/headers.rb +59 -0
- data/lib/dodopayments/resources/webhooks.rb +176 -0
- data/lib/dodopayments/resources/your_webhook_url.rb +56 -0
- data/lib/dodopayments/version.rb +1 -1
- data/lib/dodopayments.rb +48 -9
- data/rbi/dodopayments/client.rbi +19 -6
- data/rbi/dodopayments/errors.rbi +51 -16
- data/rbi/dodopayments/file_part.rbi +9 -6
- data/rbi/dodopayments/internal/cursor_page_pagination.rbi +25 -0
- data/rbi/dodopayments/internal/default_page_number_pagination.rbi +2 -1
- data/rbi/dodopayments/internal/transport/base_client.rbi +165 -77
- data/rbi/dodopayments/internal/transport/pooled_net_requester.rbi +33 -13
- data/rbi/dodopayments/internal/type/array_of.rbi +40 -24
- data/rbi/dodopayments/internal/type/base_model.rbi +160 -70
- data/rbi/dodopayments/internal/type/base_page.rbi +13 -8
- data/rbi/dodopayments/internal/type/boolean.rbi +24 -14
- data/rbi/dodopayments/internal/type/converter.rbi +135 -33
- data/rbi/dodopayments/internal/type/enum.rbi +29 -13
- data/rbi/dodopayments/internal/type/file_input.rbi +13 -4
- data/rbi/dodopayments/internal/type/hash_of.rbi +40 -24
- data/rbi/dodopayments/internal/type/request_parameters.rbi +14 -4
- data/rbi/dodopayments/internal/type/union.rbi +71 -23
- data/rbi/dodopayments/internal/type/unknown.rbi +24 -6
- data/rbi/dodopayments/internal/util.rbi +272 -91
- data/rbi/dodopayments/internal.rbi +7 -0
- data/rbi/dodopayments/models/addon_cart_response_item.rbi +16 -4
- data/rbi/dodopayments/models/addon_create_params.rbi +33 -24
- data/rbi/dodopayments/models/addon_list_params.rbi +29 -17
- data/rbi/dodopayments/models/addon_response.rbi +33 -27
- data/rbi/dodopayments/models/addon_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/addon_update_images_params.rbi +18 -5
- data/rbi/dodopayments/models/addon_update_images_response.rbi +13 -3
- data/rbi/dodopayments/models/addon_update_params.rbi +34 -25
- data/rbi/dodopayments/models/attach_addon.rbi +28 -0
- data/rbi/dodopayments/models/attach_existing_customer.rbi +13 -3
- data/rbi/dodopayments/models/billing_address.rbi +24 -12
- data/rbi/dodopayments/models/brand.rbi +132 -0
- data/rbi/dodopayments/models/brand_create_params.rbi +68 -0
- data/rbi/dodopayments/models/brand_list_params.rbi +29 -0
- data/rbi/dodopayments/models/brand_list_response.rbi +34 -0
- data/rbi/dodopayments/models/brand_retrieve_params.rbi +32 -0
- data/rbi/dodopayments/models/brand_update_images_params.rbi +32 -0
- data/rbi/dodopayments/models/brand_update_images_response.rbi +36 -0
- data/rbi/dodopayments/models/brand_update_params.rbi +64 -0
- data/rbi/dodopayments/models/country_code.rbi +255 -252
- data/rbi/dodopayments/models/create_new_customer.rbi +27 -11
- data/rbi/dodopayments/models/currency.rbi +149 -148
- data/rbi/dodopayments/models/customer.rbi +27 -15
- data/rbi/dodopayments/models/customer_create_params.rbi +22 -14
- data/rbi/dodopayments/models/customer_limited_details.rbi +21 -4
- data/rbi/dodopayments/models/customer_list_params.rbi +43 -17
- data/rbi/dodopayments/models/customer_portal_session.rbi +13 -3
- data/rbi/dodopayments/models/customer_request.rbi +10 -2
- data/rbi/dodopayments/models/customer_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/customer_update_params.rbi +21 -13
- data/rbi/dodopayments/models/customers/customer_portal_create_params.rbi +26 -8
- data/rbi/dodopayments/models/discount.rbi +42 -22
- data/rbi/dodopayments/models/discount_create_params.rbi +43 -20
- data/rbi/dodopayments/models/discount_delete_params.rbi +18 -5
- data/rbi/dodopayments/models/discount_list_params.rbi +32 -17
- data/rbi/dodopayments/models/discount_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/discount_type.rbi +7 -4
- data/rbi/dodopayments/models/discount_update_params.rbi +43 -20
- data/rbi/dodopayments/models/dispute.rbi +32 -22
- data/rbi/dodopayments/models/dispute_list_params.rbi +178 -33
- data/rbi/dodopayments/models/dispute_list_response.rbi +34 -21
- data/rbi/dodopayments/models/dispute_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/dispute_stage.rbi +11 -6
- data/rbi/dodopayments/models/dispute_status.rbi +20 -10
- data/rbi/dodopayments/models/{dispute_retrieve_response.rbi → get_dispute.rbi} +40 -28
- data/rbi/dodopayments/models/intent_status.rbi +32 -14
- data/rbi/dodopayments/models/invoices/payment_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/license_activate_params.rbi +21 -6
- data/rbi/dodopayments/models/license_deactivate_params.rbi +21 -13
- data/rbi/dodopayments/models/license_key.rbi +31 -23
- data/rbi/dodopayments/models/license_key_duration.rbi +24 -5
- data/rbi/dodopayments/models/license_key_instance.rbi +19 -4
- data/rbi/dodopayments/models/license_key_instance_list_params.rbi +23 -14
- data/rbi/dodopayments/models/license_key_instance_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/license_key_instance_update_params.rbi +19 -6
- data/rbi/dodopayments/models/license_key_list_params.rbi +91 -26
- data/rbi/dodopayments/models/license_key_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/license_key_status.rbi +10 -6
- data/rbi/dodopayments/models/license_key_update_params.rbi +23 -14
- data/rbi/dodopayments/models/license_validate_params.rbi +25 -13
- data/rbi/dodopayments/models/license_validate_response.rbi +13 -3
- data/rbi/dodopayments/models/misc_list_supported_countries_params.rbi +18 -5
- data/rbi/dodopayments/models/misc_list_supported_countries_response.rbi +1 -1
- data/rbi/dodopayments/models/new_customer.rbi +39 -0
- data/rbi/dodopayments/models/one_time_product_cart_item.rbi +23 -4
- data/rbi/dodopayments/models/payment.rbi +125 -62
- data/rbi/dodopayments/models/payment_create_params.rbi +67 -87
- data/rbi/dodopayments/models/payment_create_response.rbi +45 -22
- data/rbi/dodopayments/models/payment_list_params.rbi +149 -32
- data/rbi/dodopayments/models/payment_list_response.rbi +47 -26
- data/rbi/dodopayments/models/payment_method_types.rbi +52 -0
- data/rbi/dodopayments/models/payment_retrieve_line_items_params.rbi +32 -0
- data/rbi/dodopayments/models/payment_retrieve_line_items_response.rbi +114 -0
- data/rbi/dodopayments/models/payment_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/payout_list_params.rbi +29 -17
- data/rbi/dodopayments/models/payout_list_response.rbi +82 -35
- data/rbi/dodopayments/models/price.rbi +142 -55
- data/rbi/dodopayments/models/product.rbi +177 -38
- data/rbi/dodopayments/models/product_create_params.rbi +151 -36
- data/rbi/dodopayments/models/product_delete_params.rbi +18 -5
- data/rbi/dodopayments/models/product_list_params.rbi +50 -21
- data/rbi/dodopayments/models/product_list_response.rbi +57 -42
- data/rbi/dodopayments/models/product_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/product_unarchive_params.rbi +18 -5
- data/rbi/dodopayments/models/product_update_files_params.rbi +38 -0
- data/rbi/dodopayments/models/product_update_files_response.rbi +29 -0
- data/rbi/dodopayments/models/product_update_params.rbi +160 -37
- data/rbi/dodopayments/models/products/image_update_params.rbi +20 -8
- data/rbi/dodopayments/models/products/image_update_response.rbi +18 -4
- data/rbi/dodopayments/models/refund.rbi +39 -21
- data/rbi/dodopayments/models/refund_create_params.rbi +87 -11
- data/rbi/dodopayments/models/refund_list_params.rbi +86 -29
- data/rbi/dodopayments/models/refund_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/refund_status.rbi +10 -7
- data/rbi/dodopayments/models/subscription.rbi +83 -47
- data/rbi/dodopayments/models/subscription_change_plan_params.rbi +61 -40
- data/rbi/dodopayments/models/subscription_charge_params.rbi +65 -6
- data/rbi/dodopayments/models/subscription_charge_response.rbi +13 -3
- data/rbi/dodopayments/models/subscription_create_params.rbi +136 -128
- data/rbi/dodopayments/models/subscription_create_response.rbi +51 -22
- data/rbi/dodopayments/models/subscription_list_params.rbi +125 -29
- data/rbi/dodopayments/models/subscription_list_response.rbi +85 -44
- data/rbi/dodopayments/models/subscription_retrieve_params.rbi +18 -5
- data/rbi/dodopayments/models/subscription_status.rbi +16 -10
- data/rbi/dodopayments/models/subscription_update_params.rbi +69 -33
- data/rbi/dodopayments/models/tax_category.rbi +11 -7
- data/rbi/dodopayments/models/time_interval.rbi +10 -7
- data/rbi/dodopayments/models/webhook_create_params.rbi +115 -0
- data/rbi/dodopayments/models/webhook_create_response.rbi +112 -0
- data/rbi/dodopayments/models/webhook_delete_params.rbi +32 -0
- data/rbi/dodopayments/models/webhook_event_type.rbi +102 -0
- data/rbi/dodopayments/models/webhook_list_params.rbi +54 -0
- data/rbi/dodopayments/models/webhook_list_response.rbi +112 -0
- data/rbi/dodopayments/models/webhook_payload.rbi +440 -0
- data/rbi/dodopayments/models/webhook_retrieve_params.rbi +32 -0
- data/rbi/dodopayments/models/webhook_retrieve_response.rbi +112 -0
- data/rbi/dodopayments/models/webhook_retrieve_secret_params.rbi +32 -0
- data/rbi/dodopayments/models/webhook_retrieve_secret_response.rbi +26 -0
- data/rbi/dodopayments/models/webhook_update_params.rbi +94 -0
- data/rbi/dodopayments/models/webhook_update_response.rbi +112 -0
- data/rbi/dodopayments/models/webhooks/header_retrieve_params.rbi +34 -0
- data/rbi/dodopayments/models/webhooks/header_retrieve_response.rbi +50 -0
- data/rbi/dodopayments/models/webhooks/header_update_params.rbi +48 -0
- data/rbi/dodopayments/models/your_webhook_url_create_params.rbi +56 -0
- data/rbi/dodopayments/models.rbi +53 -8
- data/rbi/dodopayments/request_options.rbi +18 -7
- data/rbi/dodopayments/resources/addons.rbi +44 -27
- data/rbi/dodopayments/resources/brands.rbi +89 -0
- data/rbi/dodopayments/resources/customers/customer_portal.rbi +8 -6
- data/rbi/dodopayments/resources/customers.rbi +31 -17
- data/rbi/dodopayments/resources/discounts.rbi +54 -22
- data/rbi/dodopayments/resources/disputes.rbi +26 -14
- data/rbi/dodopayments/resources/invoices/payments.rbi +10 -3
- data/rbi/dodopayments/resources/invoices.rbi +2 -1
- data/rbi/dodopayments/resources/license_key_instances.rbi +25 -10
- data/rbi/dodopayments/resources/license_keys.rbi +29 -15
- data/rbi/dodopayments/resources/licenses.rbi +25 -12
- data/rbi/dodopayments/resources/misc.rbi +7 -4
- data/rbi/dodopayments/resources/payments.rbi +61 -27
- data/rbi/dodopayments/resources/payouts.rbi +12 -6
- data/rbi/dodopayments/resources/products/images.rbi +10 -4
- data/rbi/dodopayments/resources/products.rbi +118 -41
- data/rbi/dodopayments/resources/refunds.rbi +35 -15
- data/rbi/dodopayments/resources/subscriptions.rbi +97 -53
- data/rbi/dodopayments/resources/webhook_events.rbi +2 -34
- data/rbi/dodopayments/resources/webhooks/headers.rbi +40 -0
- data/rbi/dodopayments/resources/webhooks.rbi +137 -0
- data/rbi/dodopayments/resources/your_webhook_url.rbi +51 -0
- data/sig/dodopayments/client.rbs +6 -0
- data/sig/dodopayments/errors.rbs +9 -0
- data/sig/dodopayments/internal/cursor_page_pagination.rbs +15 -0
- data/sig/dodopayments/internal/transport/base_client.rbs +17 -2
- data/sig/dodopayments/internal/transport/pooled_net_requester.rbs +4 -0
- data/sig/dodopayments/internal/type/array_of.rbs +3 -0
- data/sig/dodopayments/internal/type/base_model.rbs +13 -5
- data/sig/dodopayments/internal/type/base_page.rbs +1 -1
- data/sig/dodopayments/internal/type/boolean.rbs +3 -0
- data/sig/dodopayments/internal/type/converter.rbs +26 -1
- data/sig/dodopayments/internal/type/enum.rbs +3 -0
- data/sig/dodopayments/internal/type/file_input.rbs +2 -0
- data/sig/dodopayments/internal/type/hash_of.rbs +3 -0
- data/sig/dodopayments/internal/type/request_parameters.rbs +5 -1
- data/sig/dodopayments/internal/type/union.rbs +5 -2
- data/sig/dodopayments/internal/type/unknown.rbs +3 -0
- data/sig/dodopayments/internal/util.rbs +25 -0
- data/sig/dodopayments/internal.rbs +4 -0
- data/sig/dodopayments/models/addon_cart_response_item.rbs +1 -1
- data/sig/dodopayments/models/addon_create_params.rbs +8 -1
- data/sig/dodopayments/models/addon_list_params.rbs +14 -6
- data/sig/dodopayments/models/addon_response.rbs +12 -1
- data/sig/dodopayments/models/addon_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/addon_update_images_params.rbs +1 -1
- data/sig/dodopayments/models/addon_update_images_response.rbs +1 -1
- data/sig/dodopayments/models/addon_update_params.rbs +9 -1
- data/sig/dodopayments/models/attach_addon.rbs +15 -0
- data/sig/dodopayments/models/attach_existing_customer.rbs +1 -1
- data/sig/dodopayments/models/billing_address.rbs +7 -1
- data/sig/dodopayments/models/brand.rbs +88 -0
- data/sig/dodopayments/models/brand_create_params.rbs +46 -0
- data/sig/dodopayments/models/{webhook_event_retrieve_params.rbs → brand_list_params.rbs} +3 -3
- data/sig/dodopayments/models/brand_list_response.rbs +13 -0
- data/sig/dodopayments/models/brand_retrieve_params.rbs +15 -0
- data/sig/dodopayments/models/brand_update_images_params.rbs +15 -0
- data/sig/dodopayments/models/brand_update_images_response.rbs +15 -0
- data/sig/dodopayments/models/brand_update_params.rbs +41 -0
- data/sig/dodopayments/models/create_new_customer.rbs +6 -1
- data/sig/dodopayments/models/customer.rbs +8 -1
- data/sig/dodopayments/models/customer_create_params.rbs +6 -1
- data/sig/dodopayments/models/customer_limited_details.rbs +1 -1
- data/sig/dodopayments/models/customer_list_params.rbs +20 -6
- data/sig/dodopayments/models/customer_portal_session.rbs +1 -1
- data/sig/dodopayments/models/customer_request.rbs +2 -3
- data/sig/dodopayments/models/customer_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/customer_update_params.rbs +5 -1
- data/sig/dodopayments/models/customers/customer_portal_create_params.rbs +9 -4
- data/sig/dodopayments/models/discount.rbs +18 -1
- data/sig/dodopayments/models/discount_create_params.rbs +15 -1
- data/sig/dodopayments/models/discount_delete_params.rbs +1 -1
- data/sig/dodopayments/models/discount_list_params.rbs +14 -6
- data/sig/dodopayments/models/discount_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/discount_update_params.rbs +15 -1
- data/sig/dodopayments/models/dispute.rbs +11 -1
- data/sig/dodopayments/models/dispute_list_params.rbs +84 -22
- data/sig/dodopayments/models/dispute_list_response.rbs +10 -1
- data/sig/dodopayments/models/dispute_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/{dispute_retrieve_response.rbs → get_dispute.rbs} +18 -6
- data/sig/dodopayments/models/invoices/payment_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/license_activate_params.rbs +5 -1
- data/sig/dodopayments/models/license_deactivate_params.rbs +5 -1
- data/sig/dodopayments/models/license_key.rbs +14 -1
- data/sig/dodopayments/models/license_key_duration.rbs +4 -1
- data/sig/dodopayments/models/license_key_instance.rbs +7 -1
- data/sig/dodopayments/models/license_key_instance_list_params.rbs +6 -1
- data/sig/dodopayments/models/license_key_instance_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/license_key_instance_update_params.rbs +4 -1
- data/sig/dodopayments/models/license_key_list_params.rbs +47 -16
- data/sig/dodopayments/models/license_key_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/license_key_update_params.rbs +6 -1
- data/sig/dodopayments/models/license_validate_params.rbs +5 -1
- data/sig/dodopayments/models/license_validate_response.rbs +1 -1
- data/sig/dodopayments/models/misc_list_supported_countries_params.rbs +1 -1
- data/sig/dodopayments/models/new_customer.rbs +21 -0
- data/sig/dodopayments/models/one_time_product_cart_item.rbs +5 -1
- data/sig/dodopayments/models/payment.rbs +60 -17
- data/sig/dodopayments/models/payment_create_params.rbs +23 -55
- data/sig/dodopayments/models/payment_create_response.rbs +21 -7
- data/sig/dodopayments/models/payment_list_params.rbs +85 -22
- data/sig/dodopayments/models/payment_list_response.rbs +25 -4
- data/sig/dodopayments/models/payment_method_types.rbs +48 -0
- data/sig/dodopayments/models/payment_retrieve_line_items_params.rbs +15 -0
- data/sig/dodopayments/models/payment_retrieve_line_items_response.rbs +67 -0
- data/sig/dodopayments/models/payment_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/payout_list_params.rbs +14 -6
- data/sig/dodopayments/models/payout_list_response.rbs +17 -1
- data/sig/dodopayments/models/price.rbs +53 -13
- data/sig/dodopayments/models/product.rbs +80 -4
- data/sig/dodopayments/models/product_create_params.rbs +45 -4
- data/sig/dodopayments/models/product_delete_params.rbs +1 -1
- data/sig/dodopayments/models/product_list_params.rbs +29 -10
- data/sig/dodopayments/models/product_list_response.rbs +20 -1
- data/sig/dodopayments/models/product_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/product_unarchive_params.rbs +1 -1
- data/sig/dodopayments/models/product_update_files_params.rbs +23 -0
- data/sig/dodopayments/models/product_update_files_response.rbs +15 -0
- data/sig/dodopayments/models/product_update_params.rbs +58 -4
- data/sig/dodopayments/models/products/image_update_params.rbs +9 -4
- data/sig/dodopayments/models/products/image_update_response.rbs +1 -1
- data/sig/dodopayments/models/refund.rbs +15 -1
- data/sig/dodopayments/models/refund_create_params.rbs +38 -2
- data/sig/dodopayments/models/refund_list_params.rbs +54 -19
- data/sig/dodopayments/models/refund_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/subscription.rbs +43 -10
- data/sig/dodopayments/models/subscription_change_plan_params.rbs +14 -17
- data/sig/dodopayments/models/subscription_charge_params.rbs +27 -2
- data/sig/dodopayments/models/subscription_charge_response.rbs +1 -1
- data/sig/dodopayments/models/subscription_create_params.rbs +58 -73
- data/sig/dodopayments/models/subscription_create_response.rbs +26 -7
- data/sig/dodopayments/models/subscription_list_params.rbs +64 -19
- data/sig/dodopayments/models/subscription_list_response.rbs +39 -7
- data/sig/dodopayments/models/subscription_retrieve_params.rbs +1 -1
- data/sig/dodopayments/models/subscription_status.rbs +1 -2
- data/sig/dodopayments/models/subscription_update_params.rbs +25 -8
- data/sig/dodopayments/models/webhook_create_params.rbs +65 -0
- data/sig/dodopayments/models/webhook_create_response.rbs +60 -0
- data/sig/dodopayments/models/webhook_delete_params.rbs +15 -0
- data/sig/dodopayments/models/webhook_event_type.rbs +54 -0
- data/sig/dodopayments/models/webhook_list_params.rbs +28 -0
- data/sig/dodopayments/models/webhook_list_response.rbs +60 -0
- data/sig/dodopayments/models/webhook_payload.rbs +203 -0
- data/sig/dodopayments/models/webhook_retrieve_params.rbs +15 -0
- data/sig/dodopayments/models/webhook_retrieve_response.rbs +60 -0
- data/sig/dodopayments/models/webhook_retrieve_secret_params.rbs +15 -0
- data/sig/dodopayments/models/webhook_retrieve_secret_response.rbs +13 -0
- data/sig/dodopayments/models/webhook_update_params.rbs +51 -0
- data/sig/dodopayments/models/webhook_update_response.rbs +60 -0
- data/sig/dodopayments/models/webhooks/header_retrieve_params.rbs +17 -0
- data/sig/dodopayments/models/webhooks/header_retrieve_response.rbs +24 -0
- data/sig/dodopayments/models/webhooks/header_update_params.rbs +26 -0
- data/sig/dodopayments/models/your_webhook_url_create_params.rbs +42 -0
- data/sig/dodopayments/models.rbs +41 -3
- data/sig/dodopayments/request_options.rbs +1 -1
- data/sig/dodopayments/resources/addons.rbs +6 -6
- data/sig/dodopayments/resources/brands.rbs +39 -0
- data/sig/dodopayments/resources/customers/customer_portal.rbs +2 -2
- data/sig/dodopayments/resources/customers.rbs +7 -6
- data/sig/dodopayments/resources/discounts.rbs +8 -6
- data/sig/dodopayments/resources/disputes.rbs +8 -8
- data/sig/dodopayments/resources/license_key_instances.rbs +3 -3
- data/sig/dodopayments/resources/license_keys.rbs +8 -8
- data/sig/dodopayments/resources/licenses.rbs +1 -1
- data/sig/dodopayments/resources/payments.rbs +17 -11
- data/sig/dodopayments/resources/payouts.rbs +2 -2
- data/sig/dodopayments/resources/products/images.rbs +1 -1
- data/sig/dodopayments/resources/products.rbs +20 -7
- data/sig/dodopayments/resources/refunds.rbs +10 -9
- data/sig/dodopayments/resources/subscriptions.rbs +22 -15
- data/sig/dodopayments/resources/webhook_events.rbs +0 -15
- data/sig/dodopayments/resources/webhooks/headers.rbs +20 -0
- data/sig/dodopayments/resources/webhooks.rbs +53 -0
- data/sig/dodopayments/resources/your_webhook_url.rbs +18 -0
- metadata +116 -14
- data/lib/dodopayments/models/webhook_event.rb +0 -58
- data/lib/dodopayments/models/webhook_event_list_params.rb +0 -66
- data/rbi/dodopayments/models/webhook_event.rbi +0 -71
- data/rbi/dodopayments/models/webhook_event_list_params.rbi +0 -77
- data/rbi/dodopayments/models/webhook_event_retrieve_params.rbi +0 -19
- data/sig/dodopayments/models/webhook_event.rbs +0 -46
- data/sig/dodopayments/models/webhook_event_list_params.rbs +0 -43
@@ -5,35 +5,34 @@ module Dodopayments
|
|
5
5
|
class Subscriptions
|
6
6
|
sig do
|
7
7
|
params(
|
8
|
-
billing:
|
9
|
-
customer:
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
8
|
+
billing: Dodopayments::BillingAddress::OrHash,
|
9
|
+
customer:
|
10
|
+
T.any(
|
11
|
+
Dodopayments::AttachExistingCustomer::OrHash,
|
12
|
+
Dodopayments::NewCustomer::OrHash
|
13
|
+
),
|
14
14
|
product_id: String,
|
15
15
|
quantity: Integer,
|
16
|
-
addons: T.nilable(
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
billing_currency: T.nilable(Dodopayments::Models::Currency::OrSymbol),
|
16
|
+
addons: T.nilable(T::Array[Dodopayments::AttachAddon::OrHash]),
|
17
|
+
allowed_payment_method_types:
|
18
|
+
T.nilable(T::Array[Dodopayments::PaymentMethodTypes::OrSymbol]),
|
19
|
+
billing_currency: T.nilable(Dodopayments::Currency::OrSymbol),
|
21
20
|
discount_code: T.nilable(String),
|
22
21
|
metadata: T::Hash[Symbol, String],
|
23
|
-
on_demand:
|
24
|
-
T.
|
25
|
-
),
|
22
|
+
on_demand:
|
23
|
+
T.nilable(Dodopayments::SubscriptionCreateParams::OnDemand::OrHash),
|
26
24
|
payment_link: T.nilable(T::Boolean),
|
27
25
|
return_url: T.nilable(String),
|
28
26
|
show_saved_payment_methods: T::Boolean,
|
29
27
|
tax_id: T.nilable(String),
|
30
28
|
trial_period_days: T.nilable(Integer),
|
31
|
-
request_options: Dodopayments::
|
32
|
-
)
|
33
|
-
.returns(Dodopayments::Models::SubscriptionCreateResponse)
|
29
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
30
|
+
).returns(Dodopayments::Models::SubscriptionCreateResponse)
|
34
31
|
end
|
35
32
|
def create(
|
33
|
+
# Billing address information for the subscription
|
36
34
|
billing:,
|
35
|
+
# Customer details for the subscription
|
37
36
|
customer:,
|
38
37
|
# Unique identifier of the product to subscribe to
|
39
38
|
product_id:,
|
@@ -48,9 +47,12 @@ module Dodopayments
|
|
48
47
|
# Availability still depends on other factors (e.g., customer location, merchant
|
49
48
|
# settings).
|
50
49
|
allowed_payment_method_types: nil,
|
50
|
+
# Fix the currency in which the end customer is billed. If Dodo Payments cannot
|
51
|
+
# support that currency for this transaction, it will not proceed
|
51
52
|
billing_currency: nil,
|
52
53
|
# Discount Code to apply to the subscription
|
53
54
|
discount_code: nil,
|
55
|
+
# Additional metadata for the subscription Defaults to empty if not specified
|
54
56
|
metadata: nil,
|
55
57
|
on_demand: nil,
|
56
58
|
# If true, generates a payment link. Defaults to false if not specified.
|
@@ -66,55 +68,71 @@ module Dodopayments
|
|
66
68
|
# period set in the product's price Must be between 0 and 10000 days
|
67
69
|
trial_period_days: nil,
|
68
70
|
request_options: {}
|
69
|
-
)
|
71
|
+
)
|
72
|
+
end
|
73
|
+
|
70
74
|
sig do
|
71
|
-
params(
|
72
|
-
|
75
|
+
params(
|
76
|
+
subscription_id: String,
|
77
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
78
|
+
).returns(Dodopayments::Subscription)
|
73
79
|
end
|
74
80
|
def retrieve(
|
75
81
|
# Subscription Id
|
76
82
|
subscription_id,
|
77
83
|
request_options: {}
|
78
|
-
)
|
84
|
+
)
|
85
|
+
end
|
86
|
+
|
79
87
|
sig do
|
80
88
|
params(
|
81
89
|
subscription_id: String,
|
82
|
-
billing: T.nilable(
|
83
|
-
|
84
|
-
|
85
|
-
|
90
|
+
billing: T.nilable(Dodopayments::BillingAddress::OrHash),
|
91
|
+
cancel_at_next_billing_date: T.nilable(T::Boolean),
|
92
|
+
disable_on_demand:
|
93
|
+
T.nilable(
|
94
|
+
Dodopayments::SubscriptionUpdateParams::DisableOnDemand::OrHash
|
95
|
+
),
|
86
96
|
metadata: T.nilable(T::Hash[Symbol, String]),
|
87
|
-
|
97
|
+
next_billing_date: T.nilable(Time),
|
98
|
+
status: T.nilable(Dodopayments::SubscriptionStatus::OrSymbol),
|
88
99
|
tax_id: T.nilable(String),
|
89
|
-
request_options: Dodopayments::
|
90
|
-
)
|
91
|
-
.returns(Dodopayments::Models::Subscription)
|
100
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
101
|
+
).returns(Dodopayments::Subscription)
|
92
102
|
end
|
93
103
|
def update(
|
94
104
|
# Subscription Id
|
95
105
|
subscription_id,
|
96
106
|
billing: nil,
|
107
|
+
cancel_at_next_billing_date: nil,
|
97
108
|
disable_on_demand: nil,
|
98
109
|
metadata: nil,
|
110
|
+
next_billing_date: nil,
|
99
111
|
status: nil,
|
100
112
|
tax_id: nil,
|
101
113
|
request_options: {}
|
102
|
-
)
|
114
|
+
)
|
115
|
+
end
|
116
|
+
|
103
117
|
sig do
|
104
118
|
params(
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
119
|
+
brand_id: String,
|
120
|
+
created_at_gte: Time,
|
121
|
+
created_at_lte: Time,
|
122
|
+
customer_id: String,
|
123
|
+
page_number: Integer,
|
124
|
+
page_size: Integer,
|
125
|
+
status: Dodopayments::SubscriptionListParams::Status::OrSymbol,
|
126
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
127
|
+
).returns(
|
128
|
+
Dodopayments::Internal::DefaultPageNumberPagination[
|
129
|
+
Dodopayments::Models::SubscriptionListResponse
|
130
|
+
]
|
112
131
|
)
|
113
|
-
.returns(
|
114
|
-
Dodopayments::Internal::DefaultPageNumberPagination[Dodopayments::Models::SubscriptionListResponse]
|
115
|
-
)
|
116
132
|
end
|
117
133
|
def list(
|
134
|
+
# filter by Brand id
|
135
|
+
brand_id: nil,
|
118
136
|
# Get events after this created time
|
119
137
|
created_at_gte: nil,
|
120
138
|
# Get events created before this time
|
@@ -128,25 +146,26 @@ module Dodopayments
|
|
128
146
|
# Filter by status
|
129
147
|
status: nil,
|
130
148
|
request_options: {}
|
131
|
-
)
|
149
|
+
)
|
150
|
+
end
|
151
|
+
|
132
152
|
sig do
|
133
153
|
params(
|
134
154
|
subscription_id: String,
|
135
155
|
product_id: String,
|
136
|
-
proration_billing_mode:
|
156
|
+
proration_billing_mode:
|
157
|
+
Dodopayments::SubscriptionChangePlanParams::ProrationBillingMode::OrSymbol,
|
137
158
|
quantity: Integer,
|
138
|
-
addons: T.nilable(
|
139
|
-
|
140
|
-
|
141
|
-
request_options: Dodopayments::RequestOpts
|
142
|
-
)
|
143
|
-
.void
|
159
|
+
addons: T.nilable(T::Array[Dodopayments::AttachAddon::OrHash]),
|
160
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
161
|
+
).void
|
144
162
|
end
|
145
163
|
def change_plan(
|
146
164
|
# Subscription Id
|
147
165
|
subscription_id,
|
148
166
|
# Unique identifier of the product to subscribe to
|
149
167
|
product_id:,
|
168
|
+
# Proration Billing Mode
|
150
169
|
proration_billing_mode:,
|
151
170
|
# Number of units to subscribe for. Must be at least 1.
|
152
171
|
quantity:,
|
@@ -154,10 +173,19 @@ module Dodopayments
|
|
154
173
|
# addons
|
155
174
|
addons: nil,
|
156
175
|
request_options: {}
|
157
|
-
)
|
176
|
+
)
|
177
|
+
end
|
178
|
+
|
158
179
|
sig do
|
159
|
-
params(
|
160
|
-
|
180
|
+
params(
|
181
|
+
subscription_id: String,
|
182
|
+
product_price: Integer,
|
183
|
+
adaptive_currency_fees_inclusive: T.nilable(T::Boolean),
|
184
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
185
|
+
product_currency: T.nilable(Dodopayments::Currency::OrSymbol),
|
186
|
+
product_description: T.nilable(String),
|
187
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
188
|
+
).returns(Dodopayments::Models::SubscriptionChargeResponse)
|
161
189
|
end
|
162
190
|
def charge(
|
163
191
|
# Subscription Id
|
@@ -165,11 +193,27 @@ module Dodopayments
|
|
165
193
|
# The product price. Represented in the lowest denomination of the currency (e.g.,
|
166
194
|
# cents for USD). For example, to charge $1.00, pass `100`.
|
167
195
|
product_price:,
|
196
|
+
# Whether adaptive currency fees should be included in the product_price (true) or
|
197
|
+
# added on top (false). This field is ignored if adaptive pricing is not enabled
|
198
|
+
# for the business.
|
199
|
+
adaptive_currency_fees_inclusive: nil,
|
200
|
+
# Metadata for the payment. If not passed, the metadata of the subscription will
|
201
|
+
# be taken
|
202
|
+
metadata: nil,
|
203
|
+
# Optional currency of the product price. If not specified, defaults to the
|
204
|
+
# currency of the product.
|
205
|
+
product_currency: nil,
|
206
|
+
# Optional product description override for billing and line items. If not
|
207
|
+
# specified, the stored description of the product will be used.
|
208
|
+
product_description: nil,
|
168
209
|
request_options: {}
|
169
|
-
)
|
210
|
+
)
|
211
|
+
end
|
212
|
+
|
170
213
|
# @api private
|
171
214
|
sig { params(client: Dodopayments::Client).returns(T.attached_class) }
|
172
|
-
def self.new(client:)
|
215
|
+
def self.new(client:)
|
216
|
+
end
|
173
217
|
end
|
174
218
|
end
|
175
219
|
end
|
@@ -3,42 +3,10 @@
|
|
3
3
|
module Dodopayments
|
4
4
|
module Resources
|
5
5
|
class WebhookEvents
|
6
|
-
sig do
|
7
|
-
params(webhook_event_id: String, request_options: Dodopayments::RequestOpts)
|
8
|
-
.returns(Dodopayments::Models::WebhookEvent)
|
9
|
-
end
|
10
|
-
def retrieve(webhook_event_id, request_options: {}); end
|
11
|
-
|
12
|
-
sig do
|
13
|
-
params(
|
14
|
-
created_at_gte: T.nilable(Time),
|
15
|
-
created_at_lte: T.nilable(Time),
|
16
|
-
limit: T.nilable(Integer),
|
17
|
-
object_id_: T.nilable(String),
|
18
|
-
page_number: T.nilable(Integer),
|
19
|
-
page_size: T.nilable(Integer),
|
20
|
-
request_options: Dodopayments::RequestOpts
|
21
|
-
)
|
22
|
-
.returns(Dodopayments::Internal::DefaultPageNumberPagination[Dodopayments::Models::WebhookEvent])
|
23
|
-
end
|
24
|
-
def list(
|
25
|
-
# Get events after this created time
|
26
|
-
created_at_gte: nil,
|
27
|
-
# Get events created before this time
|
28
|
-
created_at_lte: nil,
|
29
|
-
# Min : 1, Max : 100, default 10
|
30
|
-
limit: nil,
|
31
|
-
# Get events history of a specific object like payment/subscription/refund/dispute
|
32
|
-
object_id_: nil,
|
33
|
-
# Page number default is 0
|
34
|
-
page_number: nil,
|
35
|
-
# Page size default is 10 max is 100
|
36
|
-
page_size: nil,
|
37
|
-
request_options: {}
|
38
|
-
); end
|
39
6
|
# @api private
|
40
7
|
sig { params(client: Dodopayments::Client).returns(T.attached_class) }
|
41
|
-
def self.new(client:)
|
8
|
+
def self.new(client:)
|
9
|
+
end
|
42
10
|
end
|
43
11
|
end
|
44
12
|
end
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Webhooks
|
6
|
+
class Headers
|
7
|
+
# Get a webhook by id
|
8
|
+
sig do
|
9
|
+
params(
|
10
|
+
webhook_id: String,
|
11
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
12
|
+
).returns(Dodopayments::Models::Webhooks::HeaderRetrieveResponse)
|
13
|
+
end
|
14
|
+
def retrieve(webhook_id, request_options: {})
|
15
|
+
end
|
16
|
+
|
17
|
+
# Patch a webhook by id
|
18
|
+
sig do
|
19
|
+
params(
|
20
|
+
webhook_id: String,
|
21
|
+
headers: T::Hash[Symbol, String],
|
22
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
23
|
+
).void
|
24
|
+
end
|
25
|
+
def update(
|
26
|
+
webhook_id,
|
27
|
+
# Object of header-value pair to update or add
|
28
|
+
headers:,
|
29
|
+
request_options: {}
|
30
|
+
)
|
31
|
+
end
|
32
|
+
|
33
|
+
# @api private
|
34
|
+
sig { params(client: Dodopayments::Client).returns(T.attached_class) }
|
35
|
+
def self.new(client:)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,137 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class Webhooks
|
6
|
+
sig { returns(Dodopayments::Resources::Webhooks::Headers) }
|
7
|
+
attr_reader :headers
|
8
|
+
|
9
|
+
# Create a new webhook
|
10
|
+
sig do
|
11
|
+
params(
|
12
|
+
url: String,
|
13
|
+
description: T.nilable(String),
|
14
|
+
disabled: T.nilable(T::Boolean),
|
15
|
+
filter_types: T::Array[Dodopayments::WebhookEventType::OrSymbol],
|
16
|
+
headers: T.nilable(T::Hash[Symbol, String]),
|
17
|
+
idempotency_key: T.nilable(String),
|
18
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
19
|
+
rate_limit: T.nilable(Integer),
|
20
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
21
|
+
).returns(Dodopayments::Models::WebhookCreateResponse)
|
22
|
+
end
|
23
|
+
def create(
|
24
|
+
# Url of the webhook
|
25
|
+
url:,
|
26
|
+
description: nil,
|
27
|
+
# Create the webhook in a disabled state.
|
28
|
+
#
|
29
|
+
# Default is false
|
30
|
+
disabled: nil,
|
31
|
+
# Filter events to the webhook.
|
32
|
+
#
|
33
|
+
# Webhook event will only be sent for events in the list.
|
34
|
+
filter_types: nil,
|
35
|
+
# Custom headers to be passed
|
36
|
+
headers: nil,
|
37
|
+
# The request's idempotency key
|
38
|
+
idempotency_key: nil,
|
39
|
+
# Metadata to be passed to the webhook Defaut is {}
|
40
|
+
metadata: nil,
|
41
|
+
rate_limit: nil,
|
42
|
+
request_options: {}
|
43
|
+
)
|
44
|
+
end
|
45
|
+
|
46
|
+
# Get a webhook by id
|
47
|
+
sig do
|
48
|
+
params(
|
49
|
+
webhook_id: String,
|
50
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
51
|
+
).returns(Dodopayments::Models::WebhookRetrieveResponse)
|
52
|
+
end
|
53
|
+
def retrieve(webhook_id, request_options: {})
|
54
|
+
end
|
55
|
+
|
56
|
+
# Patch a webhook by id
|
57
|
+
sig do
|
58
|
+
params(
|
59
|
+
webhook_id: String,
|
60
|
+
description: T.nilable(String),
|
61
|
+
disabled: T.nilable(T::Boolean),
|
62
|
+
filter_types:
|
63
|
+
T.nilable(T::Array[Dodopayments::WebhookEventType::OrSymbol]),
|
64
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
65
|
+
rate_limit: T.nilable(Integer),
|
66
|
+
url: T.nilable(String),
|
67
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
68
|
+
).returns(Dodopayments::Models::WebhookUpdateResponse)
|
69
|
+
end
|
70
|
+
def update(
|
71
|
+
webhook_id,
|
72
|
+
# Description of the webhook
|
73
|
+
description: nil,
|
74
|
+
# To Disable the endpoint, set it to true.
|
75
|
+
disabled: nil,
|
76
|
+
# Filter events to the endpoint.
|
77
|
+
#
|
78
|
+
# Webhook event will only be sent for events in the list.
|
79
|
+
filter_types: nil,
|
80
|
+
# Metadata
|
81
|
+
metadata: nil,
|
82
|
+
# Rate limit
|
83
|
+
rate_limit: nil,
|
84
|
+
# Url endpoint
|
85
|
+
url: nil,
|
86
|
+
request_options: {}
|
87
|
+
)
|
88
|
+
end
|
89
|
+
|
90
|
+
# List all webhooks
|
91
|
+
sig do
|
92
|
+
params(
|
93
|
+
iterator: T.nilable(String),
|
94
|
+
limit: T.nilable(Integer),
|
95
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
96
|
+
).returns(
|
97
|
+
Dodopayments::Internal::CursorPagePagination[
|
98
|
+
Dodopayments::Models::WebhookListResponse
|
99
|
+
]
|
100
|
+
)
|
101
|
+
end
|
102
|
+
def list(
|
103
|
+
# The iterator returned from a prior invocation
|
104
|
+
iterator: nil,
|
105
|
+
# Limit the number of returned items
|
106
|
+
limit: nil,
|
107
|
+
request_options: {}
|
108
|
+
)
|
109
|
+
end
|
110
|
+
|
111
|
+
# Delete a webhook by id
|
112
|
+
sig do
|
113
|
+
params(
|
114
|
+
webhook_id: String,
|
115
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
116
|
+
).void
|
117
|
+
end
|
118
|
+
def delete(webhook_id, request_options: {})
|
119
|
+
end
|
120
|
+
|
121
|
+
# Get webhook secret by id
|
122
|
+
sig do
|
123
|
+
params(
|
124
|
+
webhook_id: String,
|
125
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
126
|
+
).returns(Dodopayments::Models::WebhookRetrieveSecretResponse)
|
127
|
+
end
|
128
|
+
def retrieve_secret(webhook_id, request_options: {})
|
129
|
+
end
|
130
|
+
|
131
|
+
# @api private
|
132
|
+
sig { params(client: Dodopayments::Client).returns(T.attached_class) }
|
133
|
+
def self.new(client:)
|
134
|
+
end
|
135
|
+
end
|
136
|
+
end
|
137
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
# typed: strong
|
2
|
+
|
3
|
+
module Dodopayments
|
4
|
+
module Resources
|
5
|
+
class YourWebhookURL
|
6
|
+
sig do
|
7
|
+
params(
|
8
|
+
business_id: String,
|
9
|
+
data:
|
10
|
+
T.any(
|
11
|
+
Dodopayments::WebhookPayload::Data::Payment::OrHash,
|
12
|
+
Dodopayments::WebhookPayload::Data::Subscription::OrHash,
|
13
|
+
Dodopayments::WebhookPayload::Data::Refund::OrHash,
|
14
|
+
Dodopayments::WebhookPayload::Data::Dispute::OrHash,
|
15
|
+
Dodopayments::WebhookPayload::Data::LicenseKey::OrHash
|
16
|
+
),
|
17
|
+
timestamp: Time,
|
18
|
+
type: Dodopayments::WebhookEventType::OrSymbol,
|
19
|
+
webhook_id: String,
|
20
|
+
webhook_signature: String,
|
21
|
+
webhook_timestamp: String,
|
22
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
23
|
+
).void
|
24
|
+
end
|
25
|
+
def create(
|
26
|
+
# Body param:
|
27
|
+
business_id:,
|
28
|
+
# Body param: The latest data at the time of delivery attempt
|
29
|
+
data:,
|
30
|
+
# Body param: The timestamp of when the event occurred (not necessarily the same
|
31
|
+
# of when it was delivered)
|
32
|
+
timestamp:,
|
33
|
+
# Body param: Event types for Dodo events
|
34
|
+
type:,
|
35
|
+
# Header param: Unique identifier for the webhook
|
36
|
+
webhook_id:,
|
37
|
+
# Header param: Signature of the Webhook
|
38
|
+
webhook_signature:,
|
39
|
+
# Header param: Unix timestamp when the webhook was sent
|
40
|
+
webhook_timestamp:,
|
41
|
+
request_options: {}
|
42
|
+
)
|
43
|
+
end
|
44
|
+
|
45
|
+
# @api private
|
46
|
+
sig { params(client: Dodopayments::Client).returns(T.attached_class) }
|
47
|
+
def self.new(client:)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
data/sig/dodopayments/client.rbs
CHANGED
@@ -45,6 +45,12 @@ module Dodopayments
|
|
45
45
|
|
46
46
|
attr_reader addons: Dodopayments::Resources::Addons
|
47
47
|
|
48
|
+
attr_reader brands: Dodopayments::Resources::Brands
|
49
|
+
|
50
|
+
attr_reader webhooks: Dodopayments::Resources::Webhooks
|
51
|
+
|
52
|
+
attr_reader your_webhook_url: Dodopayments::Resources::YourWebhookURL
|
53
|
+
|
48
54
|
private def auth_headers: -> ::Hash[String, String]
|
49
55
|
|
50
56
|
def initialize: (
|
data/sig/dodopayments/errors.rbs
CHANGED
@@ -5,6 +5,15 @@ module Dodopayments
|
|
5
5
|
end
|
6
6
|
|
7
7
|
class ConversionError < Dodopayments::Errors::Error
|
8
|
+
def cause: -> StandardError?
|
9
|
+
|
10
|
+
def initialize: (
|
11
|
+
on: Class,
|
12
|
+
method: Symbol,
|
13
|
+
target: top,
|
14
|
+
value: top,
|
15
|
+
?cause: StandardError?
|
16
|
+
) -> void
|
8
17
|
end
|
9
18
|
|
10
19
|
class APIError < Dodopayments::Errors::Error
|
@@ -0,0 +1,15 @@
|
|
1
|
+
module Dodopayments
|
2
|
+
module Internal
|
3
|
+
class CursorPagePagination[Elem]
|
4
|
+
include Dodopayments::Internal::Type::BasePage[Elem]
|
5
|
+
|
6
|
+
attr_accessor data: ::Array[Elem]?
|
7
|
+
|
8
|
+
attr_accessor iterator: String
|
9
|
+
|
10
|
+
attr_accessor done: bool
|
11
|
+
|
12
|
+
def inspect: -> String
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
@@ -2,6 +2,8 @@ module Dodopayments
|
|
2
2
|
module Internal
|
3
3
|
module Transport
|
4
4
|
class BaseClient
|
5
|
+
extend Dodopayments::Internal::Util::SorbetRuntimeSupport
|
6
|
+
|
5
7
|
type request_components =
|
6
8
|
{
|
7
9
|
method: Symbol,
|
@@ -20,7 +22,6 @@ module Dodopayments
|
|
20
22
|
model: Dodopayments::Internal::Type::Converter::input?,
|
21
23
|
options: Dodopayments::request_opts?
|
22
24
|
}
|
23
|
-
|
24
25
|
type request_input =
|
25
26
|
{
|
26
27
|
method: Symbol,
|
@@ -55,6 +56,20 @@ module Dodopayments
|
|
55
56
|
stream: Enumerable[String]?
|
56
57
|
) -> void
|
57
58
|
|
59
|
+
attr_reader base_url: URI::Generic
|
60
|
+
|
61
|
+
attr_reader timeout: Float
|
62
|
+
|
63
|
+
attr_reader max_retries: Integer
|
64
|
+
|
65
|
+
attr_reader initial_retry_delay: Float
|
66
|
+
|
67
|
+
attr_reader max_retry_delay: Float
|
68
|
+
|
69
|
+
attr_reader headers: ::Hash[String, String]
|
70
|
+
|
71
|
+
attr_reader idempotency_header: String?
|
72
|
+
|
58
73
|
# @api private
|
59
74
|
attr_reader requester: Dodopayments::Internal::Transport::PooledNetRequester
|
60
75
|
|
@@ -84,7 +99,7 @@ module Dodopayments
|
|
84
99
|
retry_count: Integer
|
85
100
|
) -> Float
|
86
101
|
|
87
|
-
|
102
|
+
def send_request: (
|
88
103
|
Dodopayments::Internal::Transport::BaseClient::request_input request,
|
89
104
|
redirect_count: Integer,
|
90
105
|
retry_count: Integer,
|
@@ -2,6 +2,8 @@ module Dodopayments
|
|
2
2
|
module Internal
|
3
3
|
module Transport
|
4
4
|
class PooledNetRequester
|
5
|
+
extend Dodopayments::Internal::Util::SorbetRuntimeSupport
|
6
|
+
|
5
7
|
type request =
|
6
8
|
{
|
7
9
|
method: Symbol,
|
@@ -13,6 +15,8 @@ module Dodopayments
|
|
13
15
|
|
14
16
|
KEEP_ALIVE_TIMEOUT: 30
|
15
17
|
|
18
|
+
DEFAULT_MAX_CONNECTIONS: Integer
|
19
|
+
|
16
20
|
def self.connect: (URI::Generic url) -> top
|
17
21
|
|
18
22
|
def self.calibrate_socket_timeout: (top conn, Float deadline) -> void
|
@@ -3,6 +3,7 @@ module Dodopayments
|
|
3
3
|
module Type
|
4
4
|
class ArrayOf[Elem]
|
5
5
|
include Dodopayments::Internal::Type::Converter
|
6
|
+
include Dodopayments::Internal::Util::SorbetRuntimeSupport
|
6
7
|
|
7
8
|
def self.[]: (
|
8
9
|
::Hash[Symbol, top]
|
@@ -27,6 +28,8 @@ module Dodopayments
|
|
27
28
|
state: Dodopayments::Internal::Type::Converter::dump_state
|
28
29
|
) -> (::Array[top] | top)
|
29
30
|
|
31
|
+
def to_sorbet_type: -> top
|
32
|
+
|
30
33
|
def item_type: -> Elem
|
31
34
|
|
32
35
|
def nilable?: -> bool
|