dodopayments 1.22.0 → 1.47.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.
Files changed (449) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -0
  3. data/README.md +143 -59
  4. data/SECURITY.md +2 -2
  5. data/lib/dodopayments/client.rb +16 -4
  6. data/lib/dodopayments/errors.rb +23 -1
  7. data/lib/dodopayments/file_part.rb +2 -2
  8. data/lib/dodopayments/internal/cursor_page_pagination.rb +90 -0
  9. data/lib/dodopayments/internal/transport/base_client.rb +88 -8
  10. data/lib/dodopayments/internal/transport/pooled_net_requester.rb +17 -1
  11. data/lib/dodopayments/internal/type/array_of.rb +16 -2
  12. data/lib/dodopayments/internal/type/base_model.rb +155 -54
  13. data/lib/dodopayments/internal/type/boolean.rb +15 -1
  14. data/lib/dodopayments/internal/type/converter.rb +86 -33
  15. data/lib/dodopayments/internal/type/enum.rb +30 -6
  16. data/lib/dodopayments/internal/type/file_input.rb +13 -1
  17. data/lib/dodopayments/internal/type/hash_of.rb +16 -2
  18. data/lib/dodopayments/internal/type/request_parameters.rb +4 -4
  19. data/lib/dodopayments/internal/type/union.rb +44 -31
  20. data/lib/dodopayments/internal/type/unknown.rb +15 -1
  21. data/lib/dodopayments/internal/util.rb +119 -11
  22. data/lib/dodopayments/internal.rb +9 -0
  23. data/lib/dodopayments/models/addon_create_params.rb +6 -10
  24. data/lib/dodopayments/models/addon_list_params.rb +4 -4
  25. data/lib/dodopayments/models/addon_response.rb +6 -10
  26. data/lib/dodopayments/models/addon_update_params.rb +6 -10
  27. data/lib/dodopayments/models/attach_addon.rb +21 -0
  28. data/lib/dodopayments/models/billing_address.rb +3 -3
  29. data/lib/dodopayments/models/brand.rb +107 -0
  30. data/lib/dodopayments/models/brand_create_params.rb +44 -0
  31. data/lib/dodopayments/models/{webhook_event_retrieve_params.rb → brand_list_params.rb} +2 -2
  32. data/lib/dodopayments/models/brand_list_response.rb +17 -0
  33. data/lib/dodopayments/models/brand_retrieve_params.rb +14 -0
  34. data/lib/dodopayments/models/brand_update_images_params.rb +14 -0
  35. data/lib/dodopayments/models/brand_update_images_response.rb +25 -0
  36. data/lib/dodopayments/models/brand_update_params.rb +43 -0
  37. data/lib/dodopayments/models/create_new_customer.rb +0 -1
  38. data/lib/dodopayments/models/customer_list_params.rb +13 -5
  39. data/lib/dodopayments/models/customer_request.rb +3 -3
  40. data/lib/dodopayments/models/customers/customer_portal_create_params.rb +2 -2
  41. data/lib/dodopayments/models/discount.rb +15 -4
  42. data/lib/dodopayments/models/discount_create_params.rb +17 -6
  43. data/lib/dodopayments/models/discount_list_params.rb +4 -4
  44. data/lib/dodopayments/models/discount_update_params.rb +16 -5
  45. data/lib/dodopayments/models/dispute.rb +6 -5
  46. data/lib/dodopayments/models/dispute_list_params.rb +44 -16
  47. data/lib/dodopayments/models/dispute_list_response.rb +6 -5
  48. data/lib/dodopayments/models/{dispute_retrieve_response.rb → get_dispute.rb} +11 -9
  49. data/lib/dodopayments/models/license_key.rb +3 -3
  50. data/lib/dodopayments/models/license_key_duration.rb +1 -1
  51. data/lib/dodopayments/models/license_key_list_params.rb +23 -11
  52. data/lib/dodopayments/models/license_key_update_params.rb +3 -3
  53. data/lib/dodopayments/models/misc_list_supported_countries_response.rb +1 -1
  54. data/lib/dodopayments/models/new_customer.rb +27 -0
  55. data/lib/dodopayments/models/one_time_product_cart_item.rb +0 -1
  56. data/lib/dodopayments/models/payment.rb +50 -21
  57. data/lib/dodopayments/models/payment_create_params.rb +22 -41
  58. data/lib/dodopayments/models/payment_create_response.rb +16 -6
  59. data/lib/dodopayments/models/payment_list_params.rb +44 -16
  60. data/lib/dodopayments/models/payment_list_response.rb +16 -4
  61. data/lib/dodopayments/models/payment_method_types.rb +31 -0
  62. data/lib/dodopayments/models/payment_retrieve_line_items_params.rb +14 -0
  63. data/lib/dodopayments/models/payment_retrieve_line_items_response.rb +63 -0
  64. data/lib/dodopayments/models/payout_list_params.rb +4 -4
  65. data/lib/dodopayments/models/payout_list_response.rb +7 -3
  66. data/lib/dodopayments/models/price.rb +57 -30
  67. data/lib/dodopayments/models/product.rb +85 -12
  68. data/lib/dodopayments/models/product_create_params.rb +61 -12
  69. data/lib/dodopayments/models/product_list_params.rb +15 -7
  70. data/lib/dodopayments/models/product_list_response.rb +19 -11
  71. data/lib/dodopayments/models/product_update_files_params.rb +20 -0
  72. data/lib/dodopayments/models/product_update_files_response.rb +22 -0
  73. data/lib/dodopayments/models/product_update_params.rb +70 -13
  74. data/lib/dodopayments/models/products/image_update_params.rb +2 -2
  75. data/lib/dodopayments/models/refund.rb +15 -5
  76. data/lib/dodopayments/models/refund_create_params.rb +38 -1
  77. data/lib/dodopayments/models/refund_list_params.rb +26 -13
  78. data/lib/dodopayments/models/subscription.rb +38 -18
  79. data/lib/dodopayments/models/subscription_change_plan_params.rb +9 -23
  80. data/lib/dodopayments/models/subscription_charge_params.rb +38 -2
  81. data/lib/dodopayments/models/subscription_create_params.rb +53 -66
  82. data/lib/dodopayments/models/subscription_create_response.rb +24 -8
  83. data/lib/dodopayments/models/subscription_list_params.rb +37 -14
  84. data/lib/dodopayments/models/subscription_list_response.rb +37 -16
  85. data/lib/dodopayments/models/subscription_status.rb +0 -1
  86. data/lib/dodopayments/models/subscription_update_params.rb +10 -6
  87. data/lib/dodopayments/models/webhook_create_params.rb +86 -0
  88. data/lib/dodopayments/models/webhook_create_response.rb +88 -0
  89. data/lib/dodopayments/models/webhook_delete_params.rb +14 -0
  90. data/lib/dodopayments/models/webhook_event_type.rb +35 -0
  91. data/lib/dodopayments/models/webhook_list_params.rb +30 -0
  92. data/lib/dodopayments/models/webhook_list_response.rb +88 -0
  93. data/lib/dodopayments/models/webhook_payload.rb +161 -0
  94. data/lib/dodopayments/models/webhook_retrieve_params.rb +14 -0
  95. data/lib/dodopayments/models/webhook_retrieve_response.rb +88 -0
  96. data/lib/dodopayments/models/webhook_update_params.rb +69 -0
  97. data/lib/dodopayments/models/webhook_update_response.rb +88 -0
  98. data/lib/dodopayments/models/webhooks/header_retrieve_params.rb +16 -0
  99. data/lib/dodopayments/models/webhooks/header_retrieve_response.rb +31 -0
  100. data/lib/dodopayments/models/webhooks/header_update_params.rb +24 -0
  101. data/lib/dodopayments/models/your_webhook_url_create_params.rb +32 -0
  102. data/lib/dodopayments/models.rb +77 -3
  103. data/lib/dodopayments/request_options.rb +4 -0
  104. data/lib/dodopayments/resources/addons.rb +13 -21
  105. data/lib/dodopayments/resources/brands.rb +119 -0
  106. data/lib/dodopayments/resources/customers/customer_portal.rb +3 -3
  107. data/lib/dodopayments/resources/customers.rb +12 -10
  108. data/lib/dodopayments/resources/discounts.rb +24 -19
  109. data/lib/dodopayments/resources/disputes.rb +10 -10
  110. data/lib/dodopayments/resources/license_key_instances.rb +5 -5
  111. data/lib/dodopayments/resources/license_keys.rb +13 -13
  112. data/lib/dodopayments/resources/licenses.rb +4 -4
  113. data/lib/dodopayments/resources/misc.rb +1 -1
  114. data/lib/dodopayments/resources/payments.rb +38 -19
  115. data/lib/dodopayments/resources/payouts.rb +3 -3
  116. data/lib/dodopayments/resources/products/images.rb +2 -2
  117. data/lib/dodopayments/resources/products.rb +58 -24
  118. data/lib/dodopayments/resources/refunds.rb +14 -12
  119. data/lib/dodopayments/resources/subscriptions.rb +39 -29
  120. data/lib/dodopayments/resources/webhook_events.rb +0 -52
  121. data/lib/dodopayments/resources/webhooks/headers.rb +59 -0
  122. data/lib/dodopayments/resources/webhooks.rb +157 -0
  123. data/lib/dodopayments/resources/your_webhook_url.rb +56 -0
  124. data/lib/dodopayments/version.rb +1 -1
  125. data/lib/dodopayments.rb +46 -9
  126. data/rbi/dodopayments/client.rbi +19 -6
  127. data/rbi/dodopayments/errors.rbi +51 -16
  128. data/rbi/dodopayments/file_part.rbi +9 -6
  129. data/rbi/dodopayments/internal/cursor_page_pagination.rbi +25 -0
  130. data/rbi/dodopayments/internal/default_page_number_pagination.rbi +2 -1
  131. data/rbi/dodopayments/internal/transport/base_client.rbi +165 -77
  132. data/rbi/dodopayments/internal/transport/pooled_net_requester.rbi +33 -13
  133. data/rbi/dodopayments/internal/type/array_of.rbi +40 -24
  134. data/rbi/dodopayments/internal/type/base_model.rbi +160 -70
  135. data/rbi/dodopayments/internal/type/base_page.rbi +13 -8
  136. data/rbi/dodopayments/internal/type/boolean.rbi +24 -14
  137. data/rbi/dodopayments/internal/type/converter.rbi +135 -33
  138. data/rbi/dodopayments/internal/type/enum.rbi +29 -13
  139. data/rbi/dodopayments/internal/type/file_input.rbi +13 -4
  140. data/rbi/dodopayments/internal/type/hash_of.rbi +40 -24
  141. data/rbi/dodopayments/internal/type/request_parameters.rbi +14 -4
  142. data/rbi/dodopayments/internal/type/union.rbi +71 -23
  143. data/rbi/dodopayments/internal/type/unknown.rbi +24 -6
  144. data/rbi/dodopayments/internal/util.rbi +272 -91
  145. data/rbi/dodopayments/internal.rbi +7 -0
  146. data/rbi/dodopayments/models/addon_cart_response_item.rbi +16 -4
  147. data/rbi/dodopayments/models/addon_create_params.rbi +33 -24
  148. data/rbi/dodopayments/models/addon_list_params.rbi +29 -17
  149. data/rbi/dodopayments/models/addon_response.rbi +33 -27
  150. data/rbi/dodopayments/models/addon_retrieve_params.rbi +18 -5
  151. data/rbi/dodopayments/models/addon_update_images_params.rbi +18 -5
  152. data/rbi/dodopayments/models/addon_update_images_response.rbi +13 -3
  153. data/rbi/dodopayments/models/addon_update_params.rbi +34 -25
  154. data/rbi/dodopayments/models/attach_addon.rbi +28 -0
  155. data/rbi/dodopayments/models/attach_existing_customer.rbi +13 -3
  156. data/rbi/dodopayments/models/billing_address.rbi +24 -12
  157. data/rbi/dodopayments/models/brand.rbi +132 -0
  158. data/rbi/dodopayments/models/brand_create_params.rbi +68 -0
  159. data/rbi/dodopayments/models/brand_list_params.rbi +29 -0
  160. data/rbi/dodopayments/models/brand_list_response.rbi +34 -0
  161. data/rbi/dodopayments/models/brand_retrieve_params.rbi +32 -0
  162. data/rbi/dodopayments/models/brand_update_images_params.rbi +32 -0
  163. data/rbi/dodopayments/models/brand_update_images_response.rbi +36 -0
  164. data/rbi/dodopayments/models/brand_update_params.rbi +64 -0
  165. data/rbi/dodopayments/models/country_code.rbi +255 -252
  166. data/rbi/dodopayments/models/create_new_customer.rbi +27 -11
  167. data/rbi/dodopayments/models/currency.rbi +149 -148
  168. data/rbi/dodopayments/models/customer.rbi +27 -15
  169. data/rbi/dodopayments/models/customer_create_params.rbi +22 -14
  170. data/rbi/dodopayments/models/customer_limited_details.rbi +21 -4
  171. data/rbi/dodopayments/models/customer_list_params.rbi +43 -17
  172. data/rbi/dodopayments/models/customer_portal_session.rbi +13 -3
  173. data/rbi/dodopayments/models/customer_request.rbi +10 -2
  174. data/rbi/dodopayments/models/customer_retrieve_params.rbi +18 -5
  175. data/rbi/dodopayments/models/customer_update_params.rbi +21 -13
  176. data/rbi/dodopayments/models/customers/customer_portal_create_params.rbi +26 -8
  177. data/rbi/dodopayments/models/discount.rbi +42 -22
  178. data/rbi/dodopayments/models/discount_create_params.rbi +43 -20
  179. data/rbi/dodopayments/models/discount_delete_params.rbi +18 -5
  180. data/rbi/dodopayments/models/discount_list_params.rbi +32 -17
  181. data/rbi/dodopayments/models/discount_retrieve_params.rbi +18 -5
  182. data/rbi/dodopayments/models/discount_type.rbi +7 -4
  183. data/rbi/dodopayments/models/discount_update_params.rbi +43 -20
  184. data/rbi/dodopayments/models/dispute.rbi +32 -22
  185. data/rbi/dodopayments/models/dispute_list_params.rbi +178 -33
  186. data/rbi/dodopayments/models/dispute_list_response.rbi +34 -21
  187. data/rbi/dodopayments/models/dispute_retrieve_params.rbi +18 -5
  188. data/rbi/dodopayments/models/dispute_stage.rbi +11 -6
  189. data/rbi/dodopayments/models/dispute_status.rbi +20 -10
  190. data/rbi/dodopayments/models/{dispute_retrieve_response.rbi → get_dispute.rbi} +40 -28
  191. data/rbi/dodopayments/models/intent_status.rbi +32 -14
  192. data/rbi/dodopayments/models/invoices/payment_retrieve_params.rbi +18 -5
  193. data/rbi/dodopayments/models/license_activate_params.rbi +21 -6
  194. data/rbi/dodopayments/models/license_deactivate_params.rbi +21 -13
  195. data/rbi/dodopayments/models/license_key.rbi +31 -23
  196. data/rbi/dodopayments/models/license_key_duration.rbi +24 -5
  197. data/rbi/dodopayments/models/license_key_instance.rbi +19 -4
  198. data/rbi/dodopayments/models/license_key_instance_list_params.rbi +23 -14
  199. data/rbi/dodopayments/models/license_key_instance_retrieve_params.rbi +18 -5
  200. data/rbi/dodopayments/models/license_key_instance_update_params.rbi +19 -6
  201. data/rbi/dodopayments/models/license_key_list_params.rbi +91 -26
  202. data/rbi/dodopayments/models/license_key_retrieve_params.rbi +18 -5
  203. data/rbi/dodopayments/models/license_key_status.rbi +10 -6
  204. data/rbi/dodopayments/models/license_key_update_params.rbi +23 -14
  205. data/rbi/dodopayments/models/license_validate_params.rbi +25 -13
  206. data/rbi/dodopayments/models/license_validate_response.rbi +13 -3
  207. data/rbi/dodopayments/models/misc_list_supported_countries_params.rbi +18 -5
  208. data/rbi/dodopayments/models/misc_list_supported_countries_response.rbi +1 -1
  209. data/rbi/dodopayments/models/new_customer.rbi +39 -0
  210. data/rbi/dodopayments/models/one_time_product_cart_item.rbi +23 -4
  211. data/rbi/dodopayments/models/payment.rbi +125 -62
  212. data/rbi/dodopayments/models/payment_create_params.rbi +67 -87
  213. data/rbi/dodopayments/models/payment_create_response.rbi +45 -22
  214. data/rbi/dodopayments/models/payment_list_params.rbi +149 -32
  215. data/rbi/dodopayments/models/payment_list_response.rbi +47 -26
  216. data/rbi/dodopayments/models/payment_method_types.rbi +52 -0
  217. data/rbi/dodopayments/models/payment_retrieve_line_items_params.rbi +32 -0
  218. data/rbi/dodopayments/models/payment_retrieve_line_items_response.rbi +114 -0
  219. data/rbi/dodopayments/models/payment_retrieve_params.rbi +18 -5
  220. data/rbi/dodopayments/models/payout_list_params.rbi +29 -17
  221. data/rbi/dodopayments/models/payout_list_response.rbi +82 -35
  222. data/rbi/dodopayments/models/price.rbi +142 -55
  223. data/rbi/dodopayments/models/product.rbi +177 -38
  224. data/rbi/dodopayments/models/product_create_params.rbi +151 -36
  225. data/rbi/dodopayments/models/product_delete_params.rbi +18 -5
  226. data/rbi/dodopayments/models/product_list_params.rbi +50 -21
  227. data/rbi/dodopayments/models/product_list_response.rbi +57 -42
  228. data/rbi/dodopayments/models/product_retrieve_params.rbi +18 -5
  229. data/rbi/dodopayments/models/product_unarchive_params.rbi +18 -5
  230. data/rbi/dodopayments/models/product_update_files_params.rbi +38 -0
  231. data/rbi/dodopayments/models/product_update_files_response.rbi +29 -0
  232. data/rbi/dodopayments/models/product_update_params.rbi +160 -37
  233. data/rbi/dodopayments/models/products/image_update_params.rbi +20 -8
  234. data/rbi/dodopayments/models/products/image_update_response.rbi +18 -4
  235. data/rbi/dodopayments/models/refund.rbi +39 -21
  236. data/rbi/dodopayments/models/refund_create_params.rbi +87 -11
  237. data/rbi/dodopayments/models/refund_list_params.rbi +86 -29
  238. data/rbi/dodopayments/models/refund_retrieve_params.rbi +18 -5
  239. data/rbi/dodopayments/models/refund_status.rbi +10 -7
  240. data/rbi/dodopayments/models/subscription.rbi +83 -47
  241. data/rbi/dodopayments/models/subscription_change_plan_params.rbi +61 -40
  242. data/rbi/dodopayments/models/subscription_charge_params.rbi +65 -6
  243. data/rbi/dodopayments/models/subscription_charge_response.rbi +13 -3
  244. data/rbi/dodopayments/models/subscription_create_params.rbi +136 -128
  245. data/rbi/dodopayments/models/subscription_create_response.rbi +51 -22
  246. data/rbi/dodopayments/models/subscription_list_params.rbi +125 -29
  247. data/rbi/dodopayments/models/subscription_list_response.rbi +85 -44
  248. data/rbi/dodopayments/models/subscription_retrieve_params.rbi +18 -5
  249. data/rbi/dodopayments/models/subscription_status.rbi +16 -10
  250. data/rbi/dodopayments/models/subscription_update_params.rbi +63 -33
  251. data/rbi/dodopayments/models/tax_category.rbi +11 -7
  252. data/rbi/dodopayments/models/time_interval.rbi +10 -7
  253. data/rbi/dodopayments/models/webhook_create_params.rbi +115 -0
  254. data/rbi/dodopayments/models/webhook_create_response.rbi +112 -0
  255. data/rbi/dodopayments/models/webhook_delete_params.rbi +32 -0
  256. data/rbi/dodopayments/models/webhook_event_type.rbi +102 -0
  257. data/rbi/dodopayments/models/webhook_list_params.rbi +54 -0
  258. data/rbi/dodopayments/models/webhook_list_response.rbi +112 -0
  259. data/rbi/dodopayments/models/webhook_payload.rbi +440 -0
  260. data/rbi/dodopayments/models/webhook_retrieve_params.rbi +32 -0
  261. data/rbi/dodopayments/models/webhook_retrieve_response.rbi +112 -0
  262. data/rbi/dodopayments/models/webhook_update_params.rbi +94 -0
  263. data/rbi/dodopayments/models/webhook_update_response.rbi +112 -0
  264. data/rbi/dodopayments/models/webhooks/header_retrieve_params.rbi +34 -0
  265. data/rbi/dodopayments/models/webhooks/header_retrieve_response.rbi +50 -0
  266. data/rbi/dodopayments/models/webhooks/header_update_params.rbi +48 -0
  267. data/rbi/dodopayments/models/your_webhook_url_create_params.rbi +56 -0
  268. data/rbi/dodopayments/models.rbi +50 -8
  269. data/rbi/dodopayments/request_options.rbi +18 -7
  270. data/rbi/dodopayments/resources/addons.rbi +44 -27
  271. data/rbi/dodopayments/resources/brands.rbi +89 -0
  272. data/rbi/dodopayments/resources/customers/customer_portal.rbi +8 -6
  273. data/rbi/dodopayments/resources/customers.rbi +31 -17
  274. data/rbi/dodopayments/resources/discounts.rbi +54 -22
  275. data/rbi/dodopayments/resources/disputes.rbi +26 -14
  276. data/rbi/dodopayments/resources/invoices/payments.rbi +10 -3
  277. data/rbi/dodopayments/resources/invoices.rbi +2 -1
  278. data/rbi/dodopayments/resources/license_key_instances.rbi +25 -10
  279. data/rbi/dodopayments/resources/license_keys.rbi +29 -15
  280. data/rbi/dodopayments/resources/licenses.rbi +25 -12
  281. data/rbi/dodopayments/resources/misc.rbi +7 -4
  282. data/rbi/dodopayments/resources/payments.rbi +61 -27
  283. data/rbi/dodopayments/resources/payouts.rbi +12 -6
  284. data/rbi/dodopayments/resources/products/images.rbi +10 -4
  285. data/rbi/dodopayments/resources/products.rbi +118 -41
  286. data/rbi/dodopayments/resources/refunds.rbi +35 -15
  287. data/rbi/dodopayments/resources/subscriptions.rbi +95 -53
  288. data/rbi/dodopayments/resources/webhook_events.rbi +2 -34
  289. data/rbi/dodopayments/resources/webhooks/headers.rbi +40 -0
  290. data/rbi/dodopayments/resources/webhooks.rbi +127 -0
  291. data/rbi/dodopayments/resources/your_webhook_url.rbi +51 -0
  292. data/sig/dodopayments/client.rbs +6 -0
  293. data/sig/dodopayments/errors.rbs +9 -0
  294. data/sig/dodopayments/internal/cursor_page_pagination.rbs +15 -0
  295. data/sig/dodopayments/internal/transport/base_client.rbs +17 -2
  296. data/sig/dodopayments/internal/transport/pooled_net_requester.rbs +4 -0
  297. data/sig/dodopayments/internal/type/array_of.rbs +3 -0
  298. data/sig/dodopayments/internal/type/base_model.rbs +13 -5
  299. data/sig/dodopayments/internal/type/base_page.rbs +1 -1
  300. data/sig/dodopayments/internal/type/boolean.rbs +3 -0
  301. data/sig/dodopayments/internal/type/converter.rbs +26 -1
  302. data/sig/dodopayments/internal/type/enum.rbs +3 -0
  303. data/sig/dodopayments/internal/type/file_input.rbs +2 -0
  304. data/sig/dodopayments/internal/type/hash_of.rbs +3 -0
  305. data/sig/dodopayments/internal/type/request_parameters.rbs +5 -1
  306. data/sig/dodopayments/internal/type/union.rbs +5 -2
  307. data/sig/dodopayments/internal/type/unknown.rbs +3 -0
  308. data/sig/dodopayments/internal/util.rbs +25 -0
  309. data/sig/dodopayments/internal.rbs +4 -0
  310. data/sig/dodopayments/models/addon_cart_response_item.rbs +1 -1
  311. data/sig/dodopayments/models/addon_create_params.rbs +8 -1
  312. data/sig/dodopayments/models/addon_list_params.rbs +14 -6
  313. data/sig/dodopayments/models/addon_response.rbs +12 -1
  314. data/sig/dodopayments/models/addon_retrieve_params.rbs +1 -1
  315. data/sig/dodopayments/models/addon_update_images_params.rbs +1 -1
  316. data/sig/dodopayments/models/addon_update_images_response.rbs +1 -1
  317. data/sig/dodopayments/models/addon_update_params.rbs +9 -1
  318. data/sig/dodopayments/models/attach_addon.rbs +15 -0
  319. data/sig/dodopayments/models/attach_existing_customer.rbs +1 -1
  320. data/sig/dodopayments/models/billing_address.rbs +7 -1
  321. data/sig/dodopayments/models/brand.rbs +88 -0
  322. data/sig/dodopayments/models/brand_create_params.rbs +46 -0
  323. data/sig/dodopayments/models/{webhook_event_retrieve_params.rbs → brand_list_params.rbs} +3 -3
  324. data/sig/dodopayments/models/brand_list_response.rbs +13 -0
  325. data/sig/dodopayments/models/brand_retrieve_params.rbs +15 -0
  326. data/sig/dodopayments/models/brand_update_images_params.rbs +15 -0
  327. data/sig/dodopayments/models/brand_update_images_response.rbs +15 -0
  328. data/sig/dodopayments/models/brand_update_params.rbs +41 -0
  329. data/sig/dodopayments/models/create_new_customer.rbs +6 -1
  330. data/sig/dodopayments/models/customer.rbs +8 -1
  331. data/sig/dodopayments/models/customer_create_params.rbs +6 -1
  332. data/sig/dodopayments/models/customer_limited_details.rbs +1 -1
  333. data/sig/dodopayments/models/customer_list_params.rbs +20 -6
  334. data/sig/dodopayments/models/customer_portal_session.rbs +1 -1
  335. data/sig/dodopayments/models/customer_request.rbs +2 -3
  336. data/sig/dodopayments/models/customer_retrieve_params.rbs +1 -1
  337. data/sig/dodopayments/models/customer_update_params.rbs +5 -1
  338. data/sig/dodopayments/models/customers/customer_portal_create_params.rbs +9 -4
  339. data/sig/dodopayments/models/discount.rbs +18 -1
  340. data/sig/dodopayments/models/discount_create_params.rbs +15 -1
  341. data/sig/dodopayments/models/discount_delete_params.rbs +1 -1
  342. data/sig/dodopayments/models/discount_list_params.rbs +14 -6
  343. data/sig/dodopayments/models/discount_retrieve_params.rbs +1 -1
  344. data/sig/dodopayments/models/discount_update_params.rbs +15 -1
  345. data/sig/dodopayments/models/dispute.rbs +11 -1
  346. data/sig/dodopayments/models/dispute_list_params.rbs +84 -22
  347. data/sig/dodopayments/models/dispute_list_response.rbs +10 -1
  348. data/sig/dodopayments/models/dispute_retrieve_params.rbs +1 -1
  349. data/sig/dodopayments/models/{dispute_retrieve_response.rbs → get_dispute.rbs} +18 -6
  350. data/sig/dodopayments/models/invoices/payment_retrieve_params.rbs +1 -1
  351. data/sig/dodopayments/models/license_activate_params.rbs +5 -1
  352. data/sig/dodopayments/models/license_deactivate_params.rbs +5 -1
  353. data/sig/dodopayments/models/license_key.rbs +14 -1
  354. data/sig/dodopayments/models/license_key_duration.rbs +4 -1
  355. data/sig/dodopayments/models/license_key_instance.rbs +7 -1
  356. data/sig/dodopayments/models/license_key_instance_list_params.rbs +6 -1
  357. data/sig/dodopayments/models/license_key_instance_retrieve_params.rbs +1 -1
  358. data/sig/dodopayments/models/license_key_instance_update_params.rbs +4 -1
  359. data/sig/dodopayments/models/license_key_list_params.rbs +47 -16
  360. data/sig/dodopayments/models/license_key_retrieve_params.rbs +1 -1
  361. data/sig/dodopayments/models/license_key_update_params.rbs +6 -1
  362. data/sig/dodopayments/models/license_validate_params.rbs +5 -1
  363. data/sig/dodopayments/models/license_validate_response.rbs +1 -1
  364. data/sig/dodopayments/models/misc_list_supported_countries_params.rbs +1 -1
  365. data/sig/dodopayments/models/new_customer.rbs +21 -0
  366. data/sig/dodopayments/models/one_time_product_cart_item.rbs +5 -1
  367. data/sig/dodopayments/models/payment.rbs +60 -17
  368. data/sig/dodopayments/models/payment_create_params.rbs +23 -55
  369. data/sig/dodopayments/models/payment_create_response.rbs +21 -7
  370. data/sig/dodopayments/models/payment_list_params.rbs +85 -22
  371. data/sig/dodopayments/models/payment_list_response.rbs +25 -4
  372. data/sig/dodopayments/models/payment_method_types.rbs +48 -0
  373. data/sig/dodopayments/models/payment_retrieve_line_items_params.rbs +15 -0
  374. data/sig/dodopayments/models/payment_retrieve_line_items_response.rbs +67 -0
  375. data/sig/dodopayments/models/payment_retrieve_params.rbs +1 -1
  376. data/sig/dodopayments/models/payout_list_params.rbs +14 -6
  377. data/sig/dodopayments/models/payout_list_response.rbs +17 -1
  378. data/sig/dodopayments/models/price.rbs +53 -13
  379. data/sig/dodopayments/models/product.rbs +80 -4
  380. data/sig/dodopayments/models/product_create_params.rbs +45 -4
  381. data/sig/dodopayments/models/product_delete_params.rbs +1 -1
  382. data/sig/dodopayments/models/product_list_params.rbs +29 -10
  383. data/sig/dodopayments/models/product_list_response.rbs +20 -1
  384. data/sig/dodopayments/models/product_retrieve_params.rbs +1 -1
  385. data/sig/dodopayments/models/product_unarchive_params.rbs +1 -1
  386. data/sig/dodopayments/models/product_update_files_params.rbs +23 -0
  387. data/sig/dodopayments/models/product_update_files_response.rbs +15 -0
  388. data/sig/dodopayments/models/product_update_params.rbs +58 -4
  389. data/sig/dodopayments/models/products/image_update_params.rbs +9 -4
  390. data/sig/dodopayments/models/products/image_update_response.rbs +1 -1
  391. data/sig/dodopayments/models/refund.rbs +15 -1
  392. data/sig/dodopayments/models/refund_create_params.rbs +38 -2
  393. data/sig/dodopayments/models/refund_list_params.rbs +54 -19
  394. data/sig/dodopayments/models/refund_retrieve_params.rbs +1 -1
  395. data/sig/dodopayments/models/subscription.rbs +43 -10
  396. data/sig/dodopayments/models/subscription_change_plan_params.rbs +14 -17
  397. data/sig/dodopayments/models/subscription_charge_params.rbs +27 -2
  398. data/sig/dodopayments/models/subscription_charge_response.rbs +1 -1
  399. data/sig/dodopayments/models/subscription_create_params.rbs +58 -73
  400. data/sig/dodopayments/models/subscription_create_response.rbs +26 -7
  401. data/sig/dodopayments/models/subscription_list_params.rbs +64 -19
  402. data/sig/dodopayments/models/subscription_list_response.rbs +39 -7
  403. data/sig/dodopayments/models/subscription_retrieve_params.rbs +1 -1
  404. data/sig/dodopayments/models/subscription_status.rbs +1 -2
  405. data/sig/dodopayments/models/subscription_update_params.rbs +20 -8
  406. data/sig/dodopayments/models/webhook_create_params.rbs +65 -0
  407. data/sig/dodopayments/models/webhook_create_response.rbs +60 -0
  408. data/sig/dodopayments/models/webhook_delete_params.rbs +15 -0
  409. data/sig/dodopayments/models/webhook_event_type.rbs +54 -0
  410. data/sig/dodopayments/models/webhook_list_params.rbs +28 -0
  411. data/sig/dodopayments/models/webhook_list_response.rbs +60 -0
  412. data/sig/dodopayments/models/webhook_payload.rbs +203 -0
  413. data/sig/dodopayments/models/webhook_retrieve_params.rbs +15 -0
  414. data/sig/dodopayments/models/webhook_retrieve_response.rbs +60 -0
  415. data/sig/dodopayments/models/webhook_update_params.rbs +51 -0
  416. data/sig/dodopayments/models/webhook_update_response.rbs +60 -0
  417. data/sig/dodopayments/models/webhooks/header_retrieve_params.rbs +17 -0
  418. data/sig/dodopayments/models/webhooks/header_retrieve_response.rbs +24 -0
  419. data/sig/dodopayments/models/webhooks/header_update_params.rbs +26 -0
  420. data/sig/dodopayments/models/your_webhook_url_create_params.rbs +42 -0
  421. data/sig/dodopayments/models.rbs +39 -3
  422. data/sig/dodopayments/request_options.rbs +1 -1
  423. data/sig/dodopayments/resources/addons.rbs +6 -6
  424. data/sig/dodopayments/resources/brands.rbs +39 -0
  425. data/sig/dodopayments/resources/customers/customer_portal.rbs +2 -2
  426. data/sig/dodopayments/resources/customers.rbs +7 -6
  427. data/sig/dodopayments/resources/discounts.rbs +8 -6
  428. data/sig/dodopayments/resources/disputes.rbs +8 -8
  429. data/sig/dodopayments/resources/license_key_instances.rbs +3 -3
  430. data/sig/dodopayments/resources/license_keys.rbs +8 -8
  431. data/sig/dodopayments/resources/licenses.rbs +1 -1
  432. data/sig/dodopayments/resources/payments.rbs +17 -11
  433. data/sig/dodopayments/resources/payouts.rbs +2 -2
  434. data/sig/dodopayments/resources/products/images.rbs +1 -1
  435. data/sig/dodopayments/resources/products.rbs +20 -7
  436. data/sig/dodopayments/resources/refunds.rbs +10 -9
  437. data/sig/dodopayments/resources/subscriptions.rbs +21 -15
  438. data/sig/dodopayments/resources/webhook_events.rbs +0 -15
  439. data/sig/dodopayments/resources/webhooks/headers.rbs +20 -0
  440. data/sig/dodopayments/resources/webhooks.rbs +48 -0
  441. data/sig/dodopayments/resources/your_webhook_url.rbs +18 -0
  442. metadata +110 -14
  443. data/lib/dodopayments/models/webhook_event.rb +0 -58
  444. data/lib/dodopayments/models/webhook_event_list_params.rb +0 -66
  445. data/rbi/dodopayments/models/webhook_event.rbi +0 -71
  446. data/rbi/dodopayments/models/webhook_event_list_params.rbi +0 -77
  447. data/rbi/dodopayments/models/webhook_event_retrieve_params.rbi +0 -19
  448. data/sig/dodopayments/models/webhook_event.rbs +0 -46
  449. data/sig/dodopayments/models/webhook_event_list_params.rbs +0 -43
@@ -2,11 +2,12 @@ module Dodopayments
2
2
  module Models
3
3
  type subscription =
4
4
  {
5
- addons: ::Array[Dodopayments::Models::AddonCartResponseItem],
6
- billing: Dodopayments::Models::BillingAddress,
5
+ addons: ::Array[Dodopayments::AddonCartResponseItem],
6
+ billing: Dodopayments::BillingAddress,
7
+ cancel_at_next_billing_date: bool,
7
8
  created_at: Time,
8
9
  currency: Dodopayments::Models::currency,
9
- customer: Dodopayments::Models::CustomerLimitedDetails,
10
+ customer: Dodopayments::CustomerLimitedDetails,
10
11
  metadata: ::Hash[Symbol, String],
11
12
  next_billing_date: Time,
12
13
  on_demand: bool,
@@ -23,19 +24,22 @@ module Dodopayments
23
24
  tax_inclusive: bool,
24
25
  trial_period_days: Integer,
25
26
  cancelled_at: Time?,
27
+ discount_cycles_remaining: Integer?,
26
28
  discount_id: String?
27
29
  }
28
30
 
29
31
  class Subscription < Dodopayments::Internal::Type::BaseModel
30
- attr_accessor addons: ::Array[Dodopayments::Models::AddonCartResponseItem]
32
+ attr_accessor addons: ::Array[Dodopayments::AddonCartResponseItem]
31
33
 
32
- attr_accessor billing: Dodopayments::Models::BillingAddress
34
+ attr_accessor billing: Dodopayments::BillingAddress
35
+
36
+ attr_accessor cancel_at_next_billing_date: bool
33
37
 
34
38
  attr_accessor created_at: Time
35
39
 
36
40
  attr_accessor currency: Dodopayments::Models::currency
37
41
 
38
- attr_accessor customer: Dodopayments::Models::CustomerLimitedDetails
42
+ attr_accessor customer: Dodopayments::CustomerLimitedDetails
39
43
 
40
44
  attr_accessor metadata: ::Hash[Symbol, String]
41
45
 
@@ -69,14 +73,17 @@ module Dodopayments
69
73
 
70
74
  attr_accessor cancelled_at: Time?
71
75
 
76
+ attr_accessor discount_cycles_remaining: Integer?
77
+
72
78
  attr_accessor discount_id: String?
73
79
 
74
80
  def initialize: (
75
- addons: ::Array[Dodopayments::Models::AddonCartResponseItem],
76
- billing: Dodopayments::Models::BillingAddress,
81
+ addons: ::Array[Dodopayments::AddonCartResponseItem],
82
+ billing: Dodopayments::BillingAddress,
83
+ cancel_at_next_billing_date: bool,
77
84
  created_at: Time,
78
85
  currency: Dodopayments::Models::currency,
79
- customer: Dodopayments::Models::CustomerLimitedDetails,
86
+ customer: Dodopayments::CustomerLimitedDetails,
80
87
  metadata: ::Hash[Symbol, String],
81
88
  next_billing_date: Time,
82
89
  on_demand: bool,
@@ -93,10 +100,36 @@ module Dodopayments
93
100
  tax_inclusive: bool,
94
101
  trial_period_days: Integer,
95
102
  ?cancelled_at: Time?,
103
+ ?discount_cycles_remaining: Integer?,
96
104
  ?discount_id: String?
97
105
  ) -> void
98
106
 
99
- def to_hash: -> Dodopayments::Models::subscription
107
+ def to_hash: -> {
108
+ addons: ::Array[Dodopayments::AddonCartResponseItem],
109
+ billing: Dodopayments::BillingAddress,
110
+ cancel_at_next_billing_date: bool,
111
+ created_at: Time,
112
+ currency: Dodopayments::Models::currency,
113
+ customer: Dodopayments::CustomerLimitedDetails,
114
+ metadata: ::Hash[Symbol, String],
115
+ next_billing_date: Time,
116
+ on_demand: bool,
117
+ payment_frequency_count: Integer,
118
+ payment_frequency_interval: Dodopayments::Models::time_interval,
119
+ previous_billing_date: Time,
120
+ product_id: String,
121
+ quantity: Integer,
122
+ recurring_pre_tax_amount: Integer,
123
+ status: Dodopayments::Models::subscription_status,
124
+ subscription_id: String,
125
+ subscription_period_count: Integer,
126
+ subscription_period_interval: Dodopayments::Models::time_interval,
127
+ tax_inclusive: bool,
128
+ trial_period_days: Integer,
129
+ cancelled_at: Time?,
130
+ discount_cycles_remaining: Integer?,
131
+ discount_id: String?
132
+ }
100
133
  end
101
134
  end
102
135
  end
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  product_id: String,
6
6
  proration_billing_mode: Dodopayments::Models::SubscriptionChangePlanParams::proration_billing_mode,
7
7
  quantity: Integer,
8
- addons: ::Array[Dodopayments::Models::SubscriptionChangePlanParams::Addon]?
8
+ addons: ::Array[Dodopayments::AttachAddon]?
9
9
  }
10
10
  & Dodopayments::Internal::Type::request_parameters
11
11
 
@@ -19,39 +19,36 @@ module Dodopayments
19
19
 
20
20
  attr_accessor quantity: Integer
21
21
 
22
- attr_accessor addons: ::Array[Dodopayments::Models::SubscriptionChangePlanParams::Addon]?
22
+ attr_accessor addons: ::Array[Dodopayments::AttachAddon]?
23
23
 
24
24
  def initialize: (
25
25
  product_id: String,
26
26
  proration_billing_mode: Dodopayments::Models::SubscriptionChangePlanParams::proration_billing_mode,
27
27
  quantity: Integer,
28
- ?addons: ::Array[Dodopayments::Models::SubscriptionChangePlanParams::Addon]?,
28
+ ?addons: ::Array[Dodopayments::AttachAddon]?,
29
29
  ?request_options: Dodopayments::request_opts
30
30
  ) -> void
31
31
 
32
- def to_hash: -> Dodopayments::Models::subscription_change_plan_params
32
+ def to_hash: -> {
33
+ product_id: String,
34
+ proration_billing_mode: Dodopayments::Models::SubscriptionChangePlanParams::proration_billing_mode,
35
+ quantity: Integer,
36
+ addons: ::Array[Dodopayments::AttachAddon]?,
37
+ request_options: Dodopayments::RequestOptions
38
+ }
33
39
 
34
- type proration_billing_mode = :prorated_immediately
40
+ type proration_billing_mode =
41
+ :prorated_immediately | :full_immediately | :difference_immediately
35
42
 
36
43
  module ProrationBillingMode
37
44
  extend Dodopayments::Internal::Type::Enum
38
45
 
39
46
  PRORATED_IMMEDIATELY: :prorated_immediately
47
+ FULL_IMMEDIATELY: :full_immediately
48
+ DIFFERENCE_IMMEDIATELY: :difference_immediately
40
49
 
41
50
  def self?.values: -> ::Array[Dodopayments::Models::SubscriptionChangePlanParams::proration_billing_mode]
42
51
  end
43
-
44
- type addon = { addon_id: String, quantity: Integer }
45
-
46
- class Addon < Dodopayments::Internal::Type::BaseModel
47
- attr_accessor addon_id: String
48
-
49
- attr_accessor quantity: Integer
50
-
51
- def initialize: (addon_id: String, quantity: Integer) -> void
52
-
53
- def to_hash: -> Dodopayments::Models::SubscriptionChangePlanParams::addon
54
- end
55
52
  end
56
53
  end
57
54
  end
@@ -1,7 +1,13 @@
1
1
  module Dodopayments
2
2
  module Models
3
3
  type subscription_charge_params =
4
- { product_price: Integer }
4
+ {
5
+ product_price: Integer,
6
+ adaptive_currency_fees_inclusive: bool?,
7
+ metadata: ::Hash[Symbol, String]?,
8
+ product_currency: Dodopayments::Models::currency?,
9
+ product_description: String?
10
+ }
5
11
  & Dodopayments::Internal::Type::request_parameters
6
12
 
7
13
  class SubscriptionChargeParams < Dodopayments::Internal::Type::BaseModel
@@ -10,12 +16,31 @@ module Dodopayments
10
16
 
11
17
  attr_accessor product_price: Integer
12
18
 
19
+ attr_accessor adaptive_currency_fees_inclusive: bool?
20
+
21
+ attr_accessor metadata: ::Hash[Symbol, String]?
22
+
23
+ attr_accessor product_currency: Dodopayments::Models::currency?
24
+
25
+ attr_accessor product_description: String?
26
+
13
27
  def initialize: (
14
28
  product_price: Integer,
29
+ ?adaptive_currency_fees_inclusive: bool?,
30
+ ?metadata: ::Hash[Symbol, String]?,
31
+ ?product_currency: Dodopayments::Models::currency?,
32
+ ?product_description: String?,
15
33
  ?request_options: Dodopayments::request_opts
16
34
  ) -> void
17
35
 
18
- def to_hash: -> Dodopayments::Models::subscription_charge_params
36
+ def to_hash: -> {
37
+ product_price: Integer,
38
+ adaptive_currency_fees_inclusive: bool?,
39
+ metadata: ::Hash[Symbol, String]?,
40
+ product_currency: Dodopayments::Models::currency?,
41
+ product_description: String?,
42
+ request_options: Dodopayments::RequestOptions
43
+ }
19
44
  end
20
45
  end
21
46
  end
@@ -7,7 +7,7 @@ module Dodopayments
7
7
 
8
8
  def initialize: (payment_id: String) -> void
9
9
 
10
- def to_hash: -> Dodopayments::Models::subscription_charge_response
10
+ def to_hash: -> { payment_id: String }
11
11
  end
12
12
  end
13
13
  end
@@ -2,16 +2,16 @@ module Dodopayments
2
2
  module Models
3
3
  type subscription_create_params =
4
4
  {
5
- billing: Dodopayments::Models::BillingAddress,
5
+ billing: Dodopayments::BillingAddress,
6
6
  customer: Dodopayments::Models::customer_request,
7
7
  product_id: String,
8
8
  quantity: Integer,
9
- addons: ::Array[Dodopayments::Models::SubscriptionCreateParams::Addon]?,
10
- allowed_payment_method_types: ::Array[Dodopayments::Models::SubscriptionCreateParams::allowed_payment_method_type]?,
9
+ addons: ::Array[Dodopayments::AttachAddon]?,
10
+ allowed_payment_method_types: ::Array[Dodopayments::Models::payment_method_types]?,
11
11
  billing_currency: Dodopayments::Models::currency?,
12
12
  discount_code: String?,
13
13
  metadata: ::Hash[Symbol, String],
14
- on_demand: Dodopayments::Models::SubscriptionCreateParams::OnDemand?,
14
+ on_demand: Dodopayments::SubscriptionCreateParams::OnDemand?,
15
15
  payment_link: bool?,
16
16
  return_url: String?,
17
17
  show_saved_payment_methods: bool,
@@ -24,7 +24,7 @@ module Dodopayments
24
24
  extend Dodopayments::Internal::Type::RequestParameters::Converter
25
25
  include Dodopayments::Internal::Type::RequestParameters
26
26
 
27
- attr_accessor billing: Dodopayments::Models::BillingAddress
27
+ attr_accessor billing: Dodopayments::BillingAddress
28
28
 
29
29
  attr_accessor customer: Dodopayments::Models::customer_request
30
30
 
@@ -32,9 +32,9 @@ module Dodopayments
32
32
 
33
33
  attr_accessor quantity: Integer
34
34
 
35
- attr_accessor addons: ::Array[Dodopayments::Models::SubscriptionCreateParams::Addon]?
35
+ attr_accessor addons: ::Array[Dodopayments::AttachAddon]?
36
36
 
37
- attr_accessor allowed_payment_method_types: ::Array[Dodopayments::Models::SubscriptionCreateParams::allowed_payment_method_type]?
37
+ attr_accessor allowed_payment_method_types: ::Array[Dodopayments::Models::payment_method_types]?
38
38
 
39
39
  attr_accessor billing_currency: Dodopayments::Models::currency?
40
40
 
@@ -44,7 +44,7 @@ module Dodopayments
44
44
 
45
45
  def metadata=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
46
46
 
47
- attr_accessor on_demand: Dodopayments::Models::SubscriptionCreateParams::OnDemand?
47
+ attr_accessor on_demand: Dodopayments::SubscriptionCreateParams::OnDemand?
48
48
 
49
49
  attr_accessor payment_link: bool?
50
50
 
@@ -59,16 +59,16 @@ module Dodopayments
59
59
  attr_accessor trial_period_days: Integer?
60
60
 
61
61
  def initialize: (
62
- billing: Dodopayments::Models::BillingAddress,
62
+ billing: Dodopayments::BillingAddress,
63
63
  customer: Dodopayments::Models::customer_request,
64
64
  product_id: String,
65
65
  quantity: Integer,
66
- ?addons: ::Array[Dodopayments::Models::SubscriptionCreateParams::Addon]?,
67
- ?allowed_payment_method_types: ::Array[Dodopayments::Models::SubscriptionCreateParams::allowed_payment_method_type]?,
66
+ ?addons: ::Array[Dodopayments::AttachAddon]?,
67
+ ?allowed_payment_method_types: ::Array[Dodopayments::Models::payment_method_types]?,
68
68
  ?billing_currency: Dodopayments::Models::currency?,
69
69
  ?discount_code: String?,
70
70
  ?metadata: ::Hash[Symbol, String],
71
- ?on_demand: Dodopayments::Models::SubscriptionCreateParams::OnDemand?,
71
+ ?on_demand: Dodopayments::SubscriptionCreateParams::OnDemand?,
72
72
  ?payment_link: bool?,
73
73
  ?return_url: String?,
74
74
  ?show_saved_payment_methods: bool,
@@ -77,75 +77,60 @@ module Dodopayments
77
77
  ?request_options: Dodopayments::request_opts
78
78
  ) -> void
79
79
 
80
- def to_hash: -> Dodopayments::Models::subscription_create_params
81
-
82
- type addon = { addon_id: String, quantity: Integer }
83
-
84
- class Addon < Dodopayments::Internal::Type::BaseModel
85
- attr_accessor addon_id: String
86
-
87
- attr_accessor quantity: Integer
80
+ def to_hash: -> {
81
+ billing: Dodopayments::BillingAddress,
82
+ customer: Dodopayments::Models::customer_request,
83
+ product_id: String,
84
+ quantity: Integer,
85
+ addons: ::Array[Dodopayments::AttachAddon]?,
86
+ allowed_payment_method_types: ::Array[Dodopayments::Models::payment_method_types]?,
87
+ billing_currency: Dodopayments::Models::currency?,
88
+ discount_code: String?,
89
+ metadata: ::Hash[Symbol, String],
90
+ on_demand: Dodopayments::SubscriptionCreateParams::OnDemand?,
91
+ payment_link: bool?,
92
+ return_url: String?,
93
+ show_saved_payment_methods: bool,
94
+ tax_id: String?,
95
+ trial_period_days: Integer?,
96
+ request_options: Dodopayments::RequestOptions
97
+ }
88
98
 
89
- def initialize: (addon_id: String, quantity: Integer) -> void
99
+ type on_demand =
100
+ {
101
+ mandate_only: bool,
102
+ adaptive_currency_fees_inclusive: bool?,
103
+ product_currency: Dodopayments::Models::currency?,
104
+ product_description: String?,
105
+ product_price: Integer?
106
+ }
90
107
 
91
- def to_hash: -> Dodopayments::Models::SubscriptionCreateParams::addon
92
- end
108
+ class OnDemand < Dodopayments::Internal::Type::BaseModel
109
+ attr_accessor mandate_only: bool
93
110
 
94
- type allowed_payment_method_type =
95
- :credit
96
- | :debit
97
- | :upi_collect
98
- | :upi_intent
99
- | :apple_pay
100
- | :cashapp
101
- | :google_pay
102
- | :multibanco
103
- | :bancontact_card
104
- | :eps
105
- | :ideal
106
- | :przelewy24
107
- | :affirm
108
- | :klarna
109
- | :sepa
110
- | :ach
111
- | :amazon_pay
112
- | :afterpay_clearpay
113
-
114
- module AllowedPaymentMethodType
115
- extend Dodopayments::Internal::Type::Enum
116
-
117
- CREDIT: :credit
118
- DEBIT: :debit
119
- UPI_COLLECT: :upi_collect
120
- UPI_INTENT: :upi_intent
121
- APPLE_PAY: :apple_pay
122
- CASHAPP: :cashapp
123
- GOOGLE_PAY: :google_pay
124
- MULTIBANCO: :multibanco
125
- BANCONTACT_CARD: :bancontact_card
126
- EPS: :eps
127
- IDEAL: :ideal
128
- PRZELEWY24: :przelewy24
129
- AFFIRM: :affirm
130
- KLARNA: :klarna
131
- SEPA: :sepa
132
- ACH: :ach
133
- AMAZON_PAY: :amazon_pay
134
- AFTERPAY_CLEARPAY: :afterpay_clearpay
135
-
136
- def self?.values: -> ::Array[Dodopayments::Models::SubscriptionCreateParams::allowed_payment_method_type]
137
- end
111
+ attr_accessor adaptive_currency_fees_inclusive: bool?
138
112
 
139
- type on_demand = { mandate_only: bool, product_price: Integer? }
113
+ attr_accessor product_currency: Dodopayments::Models::currency?
140
114
 
141
- class OnDemand < Dodopayments::Internal::Type::BaseModel
142
- attr_accessor mandate_only: bool
115
+ attr_accessor product_description: String?
143
116
 
144
117
  attr_accessor product_price: Integer?
145
118
 
146
- def initialize: (mandate_only: bool, ?product_price: Integer?) -> void
147
-
148
- def to_hash: -> Dodopayments::Models::SubscriptionCreateParams::on_demand
119
+ def initialize: (
120
+ mandate_only: bool,
121
+ ?adaptive_currency_fees_inclusive: bool?,
122
+ ?product_currency: Dodopayments::Models::currency?,
123
+ ?product_description: String?,
124
+ ?product_price: Integer?
125
+ ) -> void
126
+
127
+ def to_hash: -> {
128
+ mandate_only: bool,
129
+ adaptive_currency_fees_inclusive: bool?,
130
+ product_currency: Dodopayments::Models::currency?,
131
+ product_description: String?,
132
+ product_price: Integer?
133
+ }
149
134
  end
150
135
  end
151
136
  end
@@ -2,23 +2,27 @@ module Dodopayments
2
2
  module Models
3
3
  type subscription_create_response =
4
4
  {
5
- addons: ::Array[Dodopayments::Models::AddonCartResponseItem],
6
- customer: Dodopayments::Models::CustomerLimitedDetails,
5
+ addons: ::Array[Dodopayments::AddonCartResponseItem],
6
+ customer: Dodopayments::CustomerLimitedDetails,
7
7
  metadata: ::Hash[Symbol, String],
8
+ payment_id: String,
8
9
  recurring_pre_tax_amount: Integer,
9
10
  subscription_id: String,
10
11
  client_secret: String?,
11
12
  discount_id: String?,
13
+ expires_on: Time?,
12
14
  payment_link: String?
13
15
  }
14
16
 
15
17
  class SubscriptionCreateResponse < Dodopayments::Internal::Type::BaseModel
16
- attr_accessor addons: ::Array[Dodopayments::Models::AddonCartResponseItem]
18
+ attr_accessor addons: ::Array[Dodopayments::AddonCartResponseItem]
17
19
 
18
- attr_accessor customer: Dodopayments::Models::CustomerLimitedDetails
20
+ attr_accessor customer: Dodopayments::CustomerLimitedDetails
19
21
 
20
22
  attr_accessor metadata: ::Hash[Symbol, String]
21
23
 
24
+ attr_accessor payment_id: String
25
+
22
26
  attr_accessor recurring_pre_tax_amount: Integer
23
27
 
24
28
  attr_accessor subscription_id: String
@@ -27,20 +31,35 @@ module Dodopayments
27
31
 
28
32
  attr_accessor discount_id: String?
29
33
 
34
+ attr_accessor expires_on: Time?
35
+
30
36
  attr_accessor payment_link: String?
31
37
 
32
38
  def initialize: (
33
- addons: ::Array[Dodopayments::Models::AddonCartResponseItem],
34
- customer: Dodopayments::Models::CustomerLimitedDetails,
39
+ addons: ::Array[Dodopayments::AddonCartResponseItem],
40
+ customer: Dodopayments::CustomerLimitedDetails,
35
41
  metadata: ::Hash[Symbol, String],
42
+ payment_id: String,
36
43
  recurring_pre_tax_amount: Integer,
37
44
  subscription_id: String,
38
45
  ?client_secret: String?,
39
46
  ?discount_id: String?,
47
+ ?expires_on: Time?,
40
48
  ?payment_link: String?
41
49
  ) -> void
42
50
 
43
- def to_hash: -> Dodopayments::Models::subscription_create_response
51
+ def to_hash: -> {
52
+ addons: ::Array[Dodopayments::AddonCartResponseItem],
53
+ customer: Dodopayments::CustomerLimitedDetails,
54
+ metadata: ::Hash[Symbol, String],
55
+ payment_id: String,
56
+ recurring_pre_tax_amount: Integer,
57
+ subscription_id: String,
58
+ client_secret: String?,
59
+ discount_id: String?,
60
+ expires_on: Time?,
61
+ payment_link: String?
62
+ }
44
63
  end
45
64
  end
46
65
  end
@@ -2,12 +2,13 @@ module Dodopayments
2
2
  module Models
3
3
  type subscription_list_params =
4
4
  {
5
- created_at_gte: Time?,
6
- created_at_lte: Time?,
7
- customer_id: String?,
8
- page_number: Integer?,
9
- page_size: Integer?,
10
- status: Dodopayments::Models::subscription_status?
5
+ brand_id: String,
6
+ created_at_gte: Time,
7
+ created_at_lte: Time,
8
+ customer_id: String,
9
+ page_number: Integer,
10
+ page_size: Integer,
11
+ status: Dodopayments::Models::SubscriptionListParams::status
11
12
  }
12
13
  & Dodopayments::Internal::Type::request_parameters
13
14
 
@@ -15,29 +16,73 @@ module Dodopayments
15
16
  extend Dodopayments::Internal::Type::RequestParameters::Converter
16
17
  include Dodopayments::Internal::Type::RequestParameters
17
18
 
18
- attr_accessor created_at_gte: Time?
19
+ attr_reader brand_id: String?
19
20
 
20
- attr_accessor created_at_lte: Time?
21
+ def brand_id=: (String) -> String
21
22
 
22
- attr_accessor customer_id: String?
23
+ attr_reader created_at_gte: Time?
23
24
 
24
- attr_accessor page_number: Integer?
25
+ def created_at_gte=: (Time) -> Time
25
26
 
26
- attr_accessor page_size: Integer?
27
+ attr_reader created_at_lte: Time?
27
28
 
28
- attr_accessor status: Dodopayments::Models::subscription_status?
29
+ def created_at_lte=: (Time) -> Time
30
+
31
+ attr_reader customer_id: String?
32
+
33
+ def customer_id=: (String) -> String
34
+
35
+ attr_reader page_number: Integer?
36
+
37
+ def page_number=: (Integer) -> Integer
38
+
39
+ attr_reader page_size: Integer?
40
+
41
+ def page_size=: (Integer) -> Integer
42
+
43
+ attr_reader status: Dodopayments::Models::SubscriptionListParams::status?
44
+
45
+ def status=: (
46
+ Dodopayments::Models::SubscriptionListParams::status
47
+ ) -> Dodopayments::Models::SubscriptionListParams::status
29
48
 
30
49
  def initialize: (
31
- ?created_at_gte: Time?,
32
- ?created_at_lte: Time?,
33
- ?customer_id: String?,
34
- ?page_number: Integer?,
35
- ?page_size: Integer?,
36
- ?status: Dodopayments::Models::subscription_status?,
50
+ ?brand_id: String,
51
+ ?created_at_gte: Time,
52
+ ?created_at_lte: Time,
53
+ ?customer_id: String,
54
+ ?page_number: Integer,
55
+ ?page_size: Integer,
56
+ ?status: Dodopayments::Models::SubscriptionListParams::status,
37
57
  ?request_options: Dodopayments::request_opts
38
58
  ) -> void
39
59
 
40
- def to_hash: -> Dodopayments::Models::subscription_list_params
60
+ def to_hash: -> {
61
+ brand_id: String,
62
+ created_at_gte: Time,
63
+ created_at_lte: Time,
64
+ customer_id: String,
65
+ page_number: Integer,
66
+ page_size: Integer,
67
+ status: Dodopayments::Models::SubscriptionListParams::status,
68
+ request_options: Dodopayments::RequestOptions
69
+ }
70
+
71
+ type status =
72
+ :pending | :active | :on_hold | :cancelled | :failed | :expired
73
+
74
+ module Status
75
+ extend Dodopayments::Internal::Type::Enum
76
+
77
+ PENDING: :pending
78
+ ACTIVE: :active
79
+ ON_HOLD: :on_hold
80
+ CANCELLED: :cancelled
81
+ FAILED: :failed
82
+ EXPIRED: :expired
83
+
84
+ def self?.values: -> ::Array[Dodopayments::Models::SubscriptionListParams::status]
85
+ end
41
86
  end
42
87
  end
43
88
  end
@@ -2,10 +2,11 @@ module Dodopayments
2
2
  module Models
3
3
  type subscription_list_response =
4
4
  {
5
- billing: Dodopayments::Models::BillingAddress,
5
+ billing: Dodopayments::BillingAddress,
6
+ cancel_at_next_billing_date: bool,
6
7
  created_at: Time,
7
8
  currency: Dodopayments::Models::currency,
8
- customer: Dodopayments::Models::CustomerLimitedDetails,
9
+ customer: Dodopayments::CustomerLimitedDetails,
9
10
  metadata: ::Hash[Symbol, String],
10
11
  next_billing_date: Time,
11
12
  on_demand: bool,
@@ -22,17 +23,20 @@ module Dodopayments
22
23
  tax_inclusive: bool,
23
24
  trial_period_days: Integer,
24
25
  cancelled_at: Time?,
26
+ discount_cycles_remaining: Integer?,
25
27
  discount_id: String?
26
28
  }
27
29
 
28
30
  class SubscriptionListResponse < Dodopayments::Internal::Type::BaseModel
29
- attr_accessor billing: Dodopayments::Models::BillingAddress
31
+ attr_accessor billing: Dodopayments::BillingAddress
32
+
33
+ attr_accessor cancel_at_next_billing_date: bool
30
34
 
31
35
  attr_accessor created_at: Time
32
36
 
33
37
  attr_accessor currency: Dodopayments::Models::currency
34
38
 
35
- attr_accessor customer: Dodopayments::Models::CustomerLimitedDetails
39
+ attr_accessor customer: Dodopayments::CustomerLimitedDetails
36
40
 
37
41
  attr_accessor metadata: ::Hash[Symbol, String]
38
42
 
@@ -66,13 +70,16 @@ module Dodopayments
66
70
 
67
71
  attr_accessor cancelled_at: Time?
68
72
 
73
+ attr_accessor discount_cycles_remaining: Integer?
74
+
69
75
  attr_accessor discount_id: String?
70
76
 
71
77
  def initialize: (
72
- billing: Dodopayments::Models::BillingAddress,
78
+ billing: Dodopayments::BillingAddress,
79
+ cancel_at_next_billing_date: bool,
73
80
  created_at: Time,
74
81
  currency: Dodopayments::Models::currency,
75
- customer: Dodopayments::Models::CustomerLimitedDetails,
82
+ customer: Dodopayments::CustomerLimitedDetails,
76
83
  metadata: ::Hash[Symbol, String],
77
84
  next_billing_date: Time,
78
85
  on_demand: bool,
@@ -89,10 +96,35 @@ module Dodopayments
89
96
  tax_inclusive: bool,
90
97
  trial_period_days: Integer,
91
98
  ?cancelled_at: Time?,
99
+ ?discount_cycles_remaining: Integer?,
92
100
  ?discount_id: String?
93
101
  ) -> void
94
102
 
95
- def to_hash: -> Dodopayments::Models::subscription_list_response
103
+ def to_hash: -> {
104
+ billing: Dodopayments::BillingAddress,
105
+ cancel_at_next_billing_date: bool,
106
+ created_at: Time,
107
+ currency: Dodopayments::Models::currency,
108
+ customer: Dodopayments::CustomerLimitedDetails,
109
+ metadata: ::Hash[Symbol, String],
110
+ next_billing_date: Time,
111
+ on_demand: bool,
112
+ payment_frequency_count: Integer,
113
+ payment_frequency_interval: Dodopayments::Models::time_interval,
114
+ previous_billing_date: Time,
115
+ product_id: String,
116
+ quantity: Integer,
117
+ recurring_pre_tax_amount: Integer,
118
+ status: Dodopayments::Models::subscription_status,
119
+ subscription_id: String,
120
+ subscription_period_count: Integer,
121
+ subscription_period_interval: Dodopayments::Models::time_interval,
122
+ tax_inclusive: bool,
123
+ trial_period_days: Integer,
124
+ cancelled_at: Time?,
125
+ discount_cycles_remaining: Integer?,
126
+ discount_id: String?
127
+ }
96
128
  end
97
129
  end
98
130
  end