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.
Files changed (455) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -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 +16 -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_retrieve_secret_params.rb +14 -0
  97. data/lib/dodopayments/models/webhook_retrieve_secret_response.rb +16 -0
  98. data/lib/dodopayments/models/webhook_update_params.rb +69 -0
  99. data/lib/dodopayments/models/webhook_update_response.rb +88 -0
  100. data/lib/dodopayments/models/webhooks/header_retrieve_params.rb +16 -0
  101. data/lib/dodopayments/models/webhooks/header_retrieve_response.rb +31 -0
  102. data/lib/dodopayments/models/webhooks/header_update_params.rb +24 -0
  103. data/lib/dodopayments/models/your_webhook_url_create_params.rb +32 -0
  104. data/lib/dodopayments/models.rb +79 -3
  105. data/lib/dodopayments/request_options.rb +4 -0
  106. data/lib/dodopayments/resources/addons.rb +13 -21
  107. data/lib/dodopayments/resources/brands.rb +119 -0
  108. data/lib/dodopayments/resources/customers/customer_portal.rb +3 -3
  109. data/lib/dodopayments/resources/customers.rb +12 -10
  110. data/lib/dodopayments/resources/discounts.rb +24 -19
  111. data/lib/dodopayments/resources/disputes.rb +10 -10
  112. data/lib/dodopayments/resources/license_key_instances.rb +5 -5
  113. data/lib/dodopayments/resources/license_keys.rb +13 -13
  114. data/lib/dodopayments/resources/licenses.rb +4 -4
  115. data/lib/dodopayments/resources/misc.rb +1 -1
  116. data/lib/dodopayments/resources/payments.rb +38 -19
  117. data/lib/dodopayments/resources/payouts.rb +3 -3
  118. data/lib/dodopayments/resources/products/images.rb +2 -2
  119. data/lib/dodopayments/resources/products.rb +58 -24
  120. data/lib/dodopayments/resources/refunds.rb +14 -12
  121. data/lib/dodopayments/resources/subscriptions.rb +41 -29
  122. data/lib/dodopayments/resources/webhook_events.rb +0 -52
  123. data/lib/dodopayments/resources/webhooks/headers.rb +59 -0
  124. data/lib/dodopayments/resources/webhooks.rb +176 -0
  125. data/lib/dodopayments/resources/your_webhook_url.rb +56 -0
  126. data/lib/dodopayments/version.rb +1 -1
  127. data/lib/dodopayments.rb +48 -9
  128. data/rbi/dodopayments/client.rbi +19 -6
  129. data/rbi/dodopayments/errors.rbi +51 -16
  130. data/rbi/dodopayments/file_part.rbi +9 -6
  131. data/rbi/dodopayments/internal/cursor_page_pagination.rbi +25 -0
  132. data/rbi/dodopayments/internal/default_page_number_pagination.rbi +2 -1
  133. data/rbi/dodopayments/internal/transport/base_client.rbi +165 -77
  134. data/rbi/dodopayments/internal/transport/pooled_net_requester.rbi +33 -13
  135. data/rbi/dodopayments/internal/type/array_of.rbi +40 -24
  136. data/rbi/dodopayments/internal/type/base_model.rbi +160 -70
  137. data/rbi/dodopayments/internal/type/base_page.rbi +13 -8
  138. data/rbi/dodopayments/internal/type/boolean.rbi +24 -14
  139. data/rbi/dodopayments/internal/type/converter.rbi +135 -33
  140. data/rbi/dodopayments/internal/type/enum.rbi +29 -13
  141. data/rbi/dodopayments/internal/type/file_input.rbi +13 -4
  142. data/rbi/dodopayments/internal/type/hash_of.rbi +40 -24
  143. data/rbi/dodopayments/internal/type/request_parameters.rbi +14 -4
  144. data/rbi/dodopayments/internal/type/union.rbi +71 -23
  145. data/rbi/dodopayments/internal/type/unknown.rbi +24 -6
  146. data/rbi/dodopayments/internal/util.rbi +272 -91
  147. data/rbi/dodopayments/internal.rbi +7 -0
  148. data/rbi/dodopayments/models/addon_cart_response_item.rbi +16 -4
  149. data/rbi/dodopayments/models/addon_create_params.rbi +33 -24
  150. data/rbi/dodopayments/models/addon_list_params.rbi +29 -17
  151. data/rbi/dodopayments/models/addon_response.rbi +33 -27
  152. data/rbi/dodopayments/models/addon_retrieve_params.rbi +18 -5
  153. data/rbi/dodopayments/models/addon_update_images_params.rbi +18 -5
  154. data/rbi/dodopayments/models/addon_update_images_response.rbi +13 -3
  155. data/rbi/dodopayments/models/addon_update_params.rbi +34 -25
  156. data/rbi/dodopayments/models/attach_addon.rbi +28 -0
  157. data/rbi/dodopayments/models/attach_existing_customer.rbi +13 -3
  158. data/rbi/dodopayments/models/billing_address.rbi +24 -12
  159. data/rbi/dodopayments/models/brand.rbi +132 -0
  160. data/rbi/dodopayments/models/brand_create_params.rbi +68 -0
  161. data/rbi/dodopayments/models/brand_list_params.rbi +29 -0
  162. data/rbi/dodopayments/models/brand_list_response.rbi +34 -0
  163. data/rbi/dodopayments/models/brand_retrieve_params.rbi +32 -0
  164. data/rbi/dodopayments/models/brand_update_images_params.rbi +32 -0
  165. data/rbi/dodopayments/models/brand_update_images_response.rbi +36 -0
  166. data/rbi/dodopayments/models/brand_update_params.rbi +64 -0
  167. data/rbi/dodopayments/models/country_code.rbi +255 -252
  168. data/rbi/dodopayments/models/create_new_customer.rbi +27 -11
  169. data/rbi/dodopayments/models/currency.rbi +149 -148
  170. data/rbi/dodopayments/models/customer.rbi +27 -15
  171. data/rbi/dodopayments/models/customer_create_params.rbi +22 -14
  172. data/rbi/dodopayments/models/customer_limited_details.rbi +21 -4
  173. data/rbi/dodopayments/models/customer_list_params.rbi +43 -17
  174. data/rbi/dodopayments/models/customer_portal_session.rbi +13 -3
  175. data/rbi/dodopayments/models/customer_request.rbi +10 -2
  176. data/rbi/dodopayments/models/customer_retrieve_params.rbi +18 -5
  177. data/rbi/dodopayments/models/customer_update_params.rbi +21 -13
  178. data/rbi/dodopayments/models/customers/customer_portal_create_params.rbi +26 -8
  179. data/rbi/dodopayments/models/discount.rbi +42 -22
  180. data/rbi/dodopayments/models/discount_create_params.rbi +43 -20
  181. data/rbi/dodopayments/models/discount_delete_params.rbi +18 -5
  182. data/rbi/dodopayments/models/discount_list_params.rbi +32 -17
  183. data/rbi/dodopayments/models/discount_retrieve_params.rbi +18 -5
  184. data/rbi/dodopayments/models/discount_type.rbi +7 -4
  185. data/rbi/dodopayments/models/discount_update_params.rbi +43 -20
  186. data/rbi/dodopayments/models/dispute.rbi +32 -22
  187. data/rbi/dodopayments/models/dispute_list_params.rbi +178 -33
  188. data/rbi/dodopayments/models/dispute_list_response.rbi +34 -21
  189. data/rbi/dodopayments/models/dispute_retrieve_params.rbi +18 -5
  190. data/rbi/dodopayments/models/dispute_stage.rbi +11 -6
  191. data/rbi/dodopayments/models/dispute_status.rbi +20 -10
  192. data/rbi/dodopayments/models/{dispute_retrieve_response.rbi → get_dispute.rbi} +40 -28
  193. data/rbi/dodopayments/models/intent_status.rbi +32 -14
  194. data/rbi/dodopayments/models/invoices/payment_retrieve_params.rbi +18 -5
  195. data/rbi/dodopayments/models/license_activate_params.rbi +21 -6
  196. data/rbi/dodopayments/models/license_deactivate_params.rbi +21 -13
  197. data/rbi/dodopayments/models/license_key.rbi +31 -23
  198. data/rbi/dodopayments/models/license_key_duration.rbi +24 -5
  199. data/rbi/dodopayments/models/license_key_instance.rbi +19 -4
  200. data/rbi/dodopayments/models/license_key_instance_list_params.rbi +23 -14
  201. data/rbi/dodopayments/models/license_key_instance_retrieve_params.rbi +18 -5
  202. data/rbi/dodopayments/models/license_key_instance_update_params.rbi +19 -6
  203. data/rbi/dodopayments/models/license_key_list_params.rbi +91 -26
  204. data/rbi/dodopayments/models/license_key_retrieve_params.rbi +18 -5
  205. data/rbi/dodopayments/models/license_key_status.rbi +10 -6
  206. data/rbi/dodopayments/models/license_key_update_params.rbi +23 -14
  207. data/rbi/dodopayments/models/license_validate_params.rbi +25 -13
  208. data/rbi/dodopayments/models/license_validate_response.rbi +13 -3
  209. data/rbi/dodopayments/models/misc_list_supported_countries_params.rbi +18 -5
  210. data/rbi/dodopayments/models/misc_list_supported_countries_response.rbi +1 -1
  211. data/rbi/dodopayments/models/new_customer.rbi +39 -0
  212. data/rbi/dodopayments/models/one_time_product_cart_item.rbi +23 -4
  213. data/rbi/dodopayments/models/payment.rbi +125 -62
  214. data/rbi/dodopayments/models/payment_create_params.rbi +67 -87
  215. data/rbi/dodopayments/models/payment_create_response.rbi +45 -22
  216. data/rbi/dodopayments/models/payment_list_params.rbi +149 -32
  217. data/rbi/dodopayments/models/payment_list_response.rbi +47 -26
  218. data/rbi/dodopayments/models/payment_method_types.rbi +52 -0
  219. data/rbi/dodopayments/models/payment_retrieve_line_items_params.rbi +32 -0
  220. data/rbi/dodopayments/models/payment_retrieve_line_items_response.rbi +114 -0
  221. data/rbi/dodopayments/models/payment_retrieve_params.rbi +18 -5
  222. data/rbi/dodopayments/models/payout_list_params.rbi +29 -17
  223. data/rbi/dodopayments/models/payout_list_response.rbi +82 -35
  224. data/rbi/dodopayments/models/price.rbi +142 -55
  225. data/rbi/dodopayments/models/product.rbi +177 -38
  226. data/rbi/dodopayments/models/product_create_params.rbi +151 -36
  227. data/rbi/dodopayments/models/product_delete_params.rbi +18 -5
  228. data/rbi/dodopayments/models/product_list_params.rbi +50 -21
  229. data/rbi/dodopayments/models/product_list_response.rbi +57 -42
  230. data/rbi/dodopayments/models/product_retrieve_params.rbi +18 -5
  231. data/rbi/dodopayments/models/product_unarchive_params.rbi +18 -5
  232. data/rbi/dodopayments/models/product_update_files_params.rbi +38 -0
  233. data/rbi/dodopayments/models/product_update_files_response.rbi +29 -0
  234. data/rbi/dodopayments/models/product_update_params.rbi +160 -37
  235. data/rbi/dodopayments/models/products/image_update_params.rbi +20 -8
  236. data/rbi/dodopayments/models/products/image_update_response.rbi +18 -4
  237. data/rbi/dodopayments/models/refund.rbi +39 -21
  238. data/rbi/dodopayments/models/refund_create_params.rbi +87 -11
  239. data/rbi/dodopayments/models/refund_list_params.rbi +86 -29
  240. data/rbi/dodopayments/models/refund_retrieve_params.rbi +18 -5
  241. data/rbi/dodopayments/models/refund_status.rbi +10 -7
  242. data/rbi/dodopayments/models/subscription.rbi +83 -47
  243. data/rbi/dodopayments/models/subscription_change_plan_params.rbi +61 -40
  244. data/rbi/dodopayments/models/subscription_charge_params.rbi +65 -6
  245. data/rbi/dodopayments/models/subscription_charge_response.rbi +13 -3
  246. data/rbi/dodopayments/models/subscription_create_params.rbi +136 -128
  247. data/rbi/dodopayments/models/subscription_create_response.rbi +51 -22
  248. data/rbi/dodopayments/models/subscription_list_params.rbi +125 -29
  249. data/rbi/dodopayments/models/subscription_list_response.rbi +85 -44
  250. data/rbi/dodopayments/models/subscription_retrieve_params.rbi +18 -5
  251. data/rbi/dodopayments/models/subscription_status.rbi +16 -10
  252. data/rbi/dodopayments/models/subscription_update_params.rbi +69 -33
  253. data/rbi/dodopayments/models/tax_category.rbi +11 -7
  254. data/rbi/dodopayments/models/time_interval.rbi +10 -7
  255. data/rbi/dodopayments/models/webhook_create_params.rbi +115 -0
  256. data/rbi/dodopayments/models/webhook_create_response.rbi +112 -0
  257. data/rbi/dodopayments/models/webhook_delete_params.rbi +32 -0
  258. data/rbi/dodopayments/models/webhook_event_type.rbi +102 -0
  259. data/rbi/dodopayments/models/webhook_list_params.rbi +54 -0
  260. data/rbi/dodopayments/models/webhook_list_response.rbi +112 -0
  261. data/rbi/dodopayments/models/webhook_payload.rbi +440 -0
  262. data/rbi/dodopayments/models/webhook_retrieve_params.rbi +32 -0
  263. data/rbi/dodopayments/models/webhook_retrieve_response.rbi +112 -0
  264. data/rbi/dodopayments/models/webhook_retrieve_secret_params.rbi +32 -0
  265. data/rbi/dodopayments/models/webhook_retrieve_secret_response.rbi +26 -0
  266. data/rbi/dodopayments/models/webhook_update_params.rbi +94 -0
  267. data/rbi/dodopayments/models/webhook_update_response.rbi +112 -0
  268. data/rbi/dodopayments/models/webhooks/header_retrieve_params.rbi +34 -0
  269. data/rbi/dodopayments/models/webhooks/header_retrieve_response.rbi +50 -0
  270. data/rbi/dodopayments/models/webhooks/header_update_params.rbi +48 -0
  271. data/rbi/dodopayments/models/your_webhook_url_create_params.rbi +56 -0
  272. data/rbi/dodopayments/models.rbi +53 -8
  273. data/rbi/dodopayments/request_options.rbi +18 -7
  274. data/rbi/dodopayments/resources/addons.rbi +44 -27
  275. data/rbi/dodopayments/resources/brands.rbi +89 -0
  276. data/rbi/dodopayments/resources/customers/customer_portal.rbi +8 -6
  277. data/rbi/dodopayments/resources/customers.rbi +31 -17
  278. data/rbi/dodopayments/resources/discounts.rbi +54 -22
  279. data/rbi/dodopayments/resources/disputes.rbi +26 -14
  280. data/rbi/dodopayments/resources/invoices/payments.rbi +10 -3
  281. data/rbi/dodopayments/resources/invoices.rbi +2 -1
  282. data/rbi/dodopayments/resources/license_key_instances.rbi +25 -10
  283. data/rbi/dodopayments/resources/license_keys.rbi +29 -15
  284. data/rbi/dodopayments/resources/licenses.rbi +25 -12
  285. data/rbi/dodopayments/resources/misc.rbi +7 -4
  286. data/rbi/dodopayments/resources/payments.rbi +61 -27
  287. data/rbi/dodopayments/resources/payouts.rbi +12 -6
  288. data/rbi/dodopayments/resources/products/images.rbi +10 -4
  289. data/rbi/dodopayments/resources/products.rbi +118 -41
  290. data/rbi/dodopayments/resources/refunds.rbi +35 -15
  291. data/rbi/dodopayments/resources/subscriptions.rbi +97 -53
  292. data/rbi/dodopayments/resources/webhook_events.rbi +2 -34
  293. data/rbi/dodopayments/resources/webhooks/headers.rbi +40 -0
  294. data/rbi/dodopayments/resources/webhooks.rbi +137 -0
  295. data/rbi/dodopayments/resources/your_webhook_url.rbi +51 -0
  296. data/sig/dodopayments/client.rbs +6 -0
  297. data/sig/dodopayments/errors.rbs +9 -0
  298. data/sig/dodopayments/internal/cursor_page_pagination.rbs +15 -0
  299. data/sig/dodopayments/internal/transport/base_client.rbs +17 -2
  300. data/sig/dodopayments/internal/transport/pooled_net_requester.rbs +4 -0
  301. data/sig/dodopayments/internal/type/array_of.rbs +3 -0
  302. data/sig/dodopayments/internal/type/base_model.rbs +13 -5
  303. data/sig/dodopayments/internal/type/base_page.rbs +1 -1
  304. data/sig/dodopayments/internal/type/boolean.rbs +3 -0
  305. data/sig/dodopayments/internal/type/converter.rbs +26 -1
  306. data/sig/dodopayments/internal/type/enum.rbs +3 -0
  307. data/sig/dodopayments/internal/type/file_input.rbs +2 -0
  308. data/sig/dodopayments/internal/type/hash_of.rbs +3 -0
  309. data/sig/dodopayments/internal/type/request_parameters.rbs +5 -1
  310. data/sig/dodopayments/internal/type/union.rbs +5 -2
  311. data/sig/dodopayments/internal/type/unknown.rbs +3 -0
  312. data/sig/dodopayments/internal/util.rbs +25 -0
  313. data/sig/dodopayments/internal.rbs +4 -0
  314. data/sig/dodopayments/models/addon_cart_response_item.rbs +1 -1
  315. data/sig/dodopayments/models/addon_create_params.rbs +8 -1
  316. data/sig/dodopayments/models/addon_list_params.rbs +14 -6
  317. data/sig/dodopayments/models/addon_response.rbs +12 -1
  318. data/sig/dodopayments/models/addon_retrieve_params.rbs +1 -1
  319. data/sig/dodopayments/models/addon_update_images_params.rbs +1 -1
  320. data/sig/dodopayments/models/addon_update_images_response.rbs +1 -1
  321. data/sig/dodopayments/models/addon_update_params.rbs +9 -1
  322. data/sig/dodopayments/models/attach_addon.rbs +15 -0
  323. data/sig/dodopayments/models/attach_existing_customer.rbs +1 -1
  324. data/sig/dodopayments/models/billing_address.rbs +7 -1
  325. data/sig/dodopayments/models/brand.rbs +88 -0
  326. data/sig/dodopayments/models/brand_create_params.rbs +46 -0
  327. data/sig/dodopayments/models/{webhook_event_retrieve_params.rbs → brand_list_params.rbs} +3 -3
  328. data/sig/dodopayments/models/brand_list_response.rbs +13 -0
  329. data/sig/dodopayments/models/brand_retrieve_params.rbs +15 -0
  330. data/sig/dodopayments/models/brand_update_images_params.rbs +15 -0
  331. data/sig/dodopayments/models/brand_update_images_response.rbs +15 -0
  332. data/sig/dodopayments/models/brand_update_params.rbs +41 -0
  333. data/sig/dodopayments/models/create_new_customer.rbs +6 -1
  334. data/sig/dodopayments/models/customer.rbs +8 -1
  335. data/sig/dodopayments/models/customer_create_params.rbs +6 -1
  336. data/sig/dodopayments/models/customer_limited_details.rbs +1 -1
  337. data/sig/dodopayments/models/customer_list_params.rbs +20 -6
  338. data/sig/dodopayments/models/customer_portal_session.rbs +1 -1
  339. data/sig/dodopayments/models/customer_request.rbs +2 -3
  340. data/sig/dodopayments/models/customer_retrieve_params.rbs +1 -1
  341. data/sig/dodopayments/models/customer_update_params.rbs +5 -1
  342. data/sig/dodopayments/models/customers/customer_portal_create_params.rbs +9 -4
  343. data/sig/dodopayments/models/discount.rbs +18 -1
  344. data/sig/dodopayments/models/discount_create_params.rbs +15 -1
  345. data/sig/dodopayments/models/discount_delete_params.rbs +1 -1
  346. data/sig/dodopayments/models/discount_list_params.rbs +14 -6
  347. data/sig/dodopayments/models/discount_retrieve_params.rbs +1 -1
  348. data/sig/dodopayments/models/discount_update_params.rbs +15 -1
  349. data/sig/dodopayments/models/dispute.rbs +11 -1
  350. data/sig/dodopayments/models/dispute_list_params.rbs +84 -22
  351. data/sig/dodopayments/models/dispute_list_response.rbs +10 -1
  352. data/sig/dodopayments/models/dispute_retrieve_params.rbs +1 -1
  353. data/sig/dodopayments/models/{dispute_retrieve_response.rbs → get_dispute.rbs} +18 -6
  354. data/sig/dodopayments/models/invoices/payment_retrieve_params.rbs +1 -1
  355. data/sig/dodopayments/models/license_activate_params.rbs +5 -1
  356. data/sig/dodopayments/models/license_deactivate_params.rbs +5 -1
  357. data/sig/dodopayments/models/license_key.rbs +14 -1
  358. data/sig/dodopayments/models/license_key_duration.rbs +4 -1
  359. data/sig/dodopayments/models/license_key_instance.rbs +7 -1
  360. data/sig/dodopayments/models/license_key_instance_list_params.rbs +6 -1
  361. data/sig/dodopayments/models/license_key_instance_retrieve_params.rbs +1 -1
  362. data/sig/dodopayments/models/license_key_instance_update_params.rbs +4 -1
  363. data/sig/dodopayments/models/license_key_list_params.rbs +47 -16
  364. data/sig/dodopayments/models/license_key_retrieve_params.rbs +1 -1
  365. data/sig/dodopayments/models/license_key_update_params.rbs +6 -1
  366. data/sig/dodopayments/models/license_validate_params.rbs +5 -1
  367. data/sig/dodopayments/models/license_validate_response.rbs +1 -1
  368. data/sig/dodopayments/models/misc_list_supported_countries_params.rbs +1 -1
  369. data/sig/dodopayments/models/new_customer.rbs +21 -0
  370. data/sig/dodopayments/models/one_time_product_cart_item.rbs +5 -1
  371. data/sig/dodopayments/models/payment.rbs +60 -17
  372. data/sig/dodopayments/models/payment_create_params.rbs +23 -55
  373. data/sig/dodopayments/models/payment_create_response.rbs +21 -7
  374. data/sig/dodopayments/models/payment_list_params.rbs +85 -22
  375. data/sig/dodopayments/models/payment_list_response.rbs +25 -4
  376. data/sig/dodopayments/models/payment_method_types.rbs +48 -0
  377. data/sig/dodopayments/models/payment_retrieve_line_items_params.rbs +15 -0
  378. data/sig/dodopayments/models/payment_retrieve_line_items_response.rbs +67 -0
  379. data/sig/dodopayments/models/payment_retrieve_params.rbs +1 -1
  380. data/sig/dodopayments/models/payout_list_params.rbs +14 -6
  381. data/sig/dodopayments/models/payout_list_response.rbs +17 -1
  382. data/sig/dodopayments/models/price.rbs +53 -13
  383. data/sig/dodopayments/models/product.rbs +80 -4
  384. data/sig/dodopayments/models/product_create_params.rbs +45 -4
  385. data/sig/dodopayments/models/product_delete_params.rbs +1 -1
  386. data/sig/dodopayments/models/product_list_params.rbs +29 -10
  387. data/sig/dodopayments/models/product_list_response.rbs +20 -1
  388. data/sig/dodopayments/models/product_retrieve_params.rbs +1 -1
  389. data/sig/dodopayments/models/product_unarchive_params.rbs +1 -1
  390. data/sig/dodopayments/models/product_update_files_params.rbs +23 -0
  391. data/sig/dodopayments/models/product_update_files_response.rbs +15 -0
  392. data/sig/dodopayments/models/product_update_params.rbs +58 -4
  393. data/sig/dodopayments/models/products/image_update_params.rbs +9 -4
  394. data/sig/dodopayments/models/products/image_update_response.rbs +1 -1
  395. data/sig/dodopayments/models/refund.rbs +15 -1
  396. data/sig/dodopayments/models/refund_create_params.rbs +38 -2
  397. data/sig/dodopayments/models/refund_list_params.rbs +54 -19
  398. data/sig/dodopayments/models/refund_retrieve_params.rbs +1 -1
  399. data/sig/dodopayments/models/subscription.rbs +43 -10
  400. data/sig/dodopayments/models/subscription_change_plan_params.rbs +14 -17
  401. data/sig/dodopayments/models/subscription_charge_params.rbs +27 -2
  402. data/sig/dodopayments/models/subscription_charge_response.rbs +1 -1
  403. data/sig/dodopayments/models/subscription_create_params.rbs +58 -73
  404. data/sig/dodopayments/models/subscription_create_response.rbs +26 -7
  405. data/sig/dodopayments/models/subscription_list_params.rbs +64 -19
  406. data/sig/dodopayments/models/subscription_list_response.rbs +39 -7
  407. data/sig/dodopayments/models/subscription_retrieve_params.rbs +1 -1
  408. data/sig/dodopayments/models/subscription_status.rbs +1 -2
  409. data/sig/dodopayments/models/subscription_update_params.rbs +25 -8
  410. data/sig/dodopayments/models/webhook_create_params.rbs +65 -0
  411. data/sig/dodopayments/models/webhook_create_response.rbs +60 -0
  412. data/sig/dodopayments/models/webhook_delete_params.rbs +15 -0
  413. data/sig/dodopayments/models/webhook_event_type.rbs +54 -0
  414. data/sig/dodopayments/models/webhook_list_params.rbs +28 -0
  415. data/sig/dodopayments/models/webhook_list_response.rbs +60 -0
  416. data/sig/dodopayments/models/webhook_payload.rbs +203 -0
  417. data/sig/dodopayments/models/webhook_retrieve_params.rbs +15 -0
  418. data/sig/dodopayments/models/webhook_retrieve_response.rbs +60 -0
  419. data/sig/dodopayments/models/webhook_retrieve_secret_params.rbs +15 -0
  420. data/sig/dodopayments/models/webhook_retrieve_secret_response.rbs +13 -0
  421. data/sig/dodopayments/models/webhook_update_params.rbs +51 -0
  422. data/sig/dodopayments/models/webhook_update_response.rbs +60 -0
  423. data/sig/dodopayments/models/webhooks/header_retrieve_params.rbs +17 -0
  424. data/sig/dodopayments/models/webhooks/header_retrieve_response.rbs +24 -0
  425. data/sig/dodopayments/models/webhooks/header_update_params.rbs +26 -0
  426. data/sig/dodopayments/models/your_webhook_url_create_params.rbs +42 -0
  427. data/sig/dodopayments/models.rbs +41 -3
  428. data/sig/dodopayments/request_options.rbs +1 -1
  429. data/sig/dodopayments/resources/addons.rbs +6 -6
  430. data/sig/dodopayments/resources/brands.rbs +39 -0
  431. data/sig/dodopayments/resources/customers/customer_portal.rbs +2 -2
  432. data/sig/dodopayments/resources/customers.rbs +7 -6
  433. data/sig/dodopayments/resources/discounts.rbs +8 -6
  434. data/sig/dodopayments/resources/disputes.rbs +8 -8
  435. data/sig/dodopayments/resources/license_key_instances.rbs +3 -3
  436. data/sig/dodopayments/resources/license_keys.rbs +8 -8
  437. data/sig/dodopayments/resources/licenses.rbs +1 -1
  438. data/sig/dodopayments/resources/payments.rbs +17 -11
  439. data/sig/dodopayments/resources/payouts.rbs +2 -2
  440. data/sig/dodopayments/resources/products/images.rbs +1 -1
  441. data/sig/dodopayments/resources/products.rbs +20 -7
  442. data/sig/dodopayments/resources/refunds.rbs +10 -9
  443. data/sig/dodopayments/resources/subscriptions.rbs +22 -15
  444. data/sig/dodopayments/resources/webhook_events.rbs +0 -15
  445. data/sig/dodopayments/resources/webhooks/headers.rbs +20 -0
  446. data/sig/dodopayments/resources/webhooks.rbs +53 -0
  447. data/sig/dodopayments/resources/your_webhook_url.rbs +18 -0
  448. metadata +116 -14
  449. data/lib/dodopayments/models/webhook_event.rb +0 -58
  450. data/lib/dodopayments/models/webhook_event_list_params.rb +0 -66
  451. data/rbi/dodopayments/models/webhook_event.rbi +0 -71
  452. data/rbi/dodopayments/models/webhook_event_list_params.rbi +0 -77
  453. data/rbi/dodopayments/models/webhook_event_retrieve_params.rbi +0 -19
  454. data/sig/dodopayments/models/webhook_event.rbs +0 -46
  455. data/sig/dodopayments/models/webhook_event_list_params.rbs +0 -43
@@ -0,0 +1,176 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class Webhooks
6
+ # @return [Dodopayments::Resources::Webhooks::Headers]
7
+ attr_reader :headers
8
+
9
+ # Some parameter documentations has been truncated, see
10
+ # {Dodopayments::Models::WebhookCreateParams} for more details.
11
+ #
12
+ # Create a new webhook
13
+ #
14
+ # @overload create(url:, description: nil, disabled: nil, filter_types: nil, headers: nil, idempotency_key: nil, metadata: nil, rate_limit: nil, request_options: {})
15
+ #
16
+ # @param url [String] Url of the webhook
17
+ #
18
+ # @param description [String, nil]
19
+ #
20
+ # @param disabled [Boolean, nil] Create the webhook in a disabled state.
21
+ #
22
+ # @param filter_types [Array<Symbol, Dodopayments::Models::WebhookEventType>] Filter events to the webhook.
23
+ #
24
+ # @param headers [Hash{Symbol=>String}, nil] Custom headers to be passed
25
+ #
26
+ # @param idempotency_key [String, nil] The request's idempotency key
27
+ #
28
+ # @param metadata [Hash{Symbol=>String}, nil] Metadata to be passed to the webhook
29
+ #
30
+ # @param rate_limit [Integer, nil]
31
+ #
32
+ # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
33
+ #
34
+ # @return [Dodopayments::Models::WebhookCreateResponse]
35
+ #
36
+ # @see Dodopayments::Models::WebhookCreateParams
37
+ def create(params)
38
+ parsed, options = Dodopayments::WebhookCreateParams.dump_request(params)
39
+ @client.request(
40
+ method: :post,
41
+ path: "webhooks",
42
+ body: parsed,
43
+ model: Dodopayments::Models::WebhookCreateResponse,
44
+ options: options
45
+ )
46
+ end
47
+
48
+ # Get a webhook by id
49
+ #
50
+ # @overload retrieve(webhook_id, request_options: {})
51
+ #
52
+ # @param webhook_id [String]
53
+ # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
54
+ #
55
+ # @return [Dodopayments::Models::WebhookRetrieveResponse]
56
+ #
57
+ # @see Dodopayments::Models::WebhookRetrieveParams
58
+ def retrieve(webhook_id, params = {})
59
+ @client.request(
60
+ method: :get,
61
+ path: ["webhooks/%1$s", webhook_id],
62
+ model: Dodopayments::Models::WebhookRetrieveResponse,
63
+ options: params[:request_options]
64
+ )
65
+ end
66
+
67
+ # Some parameter documentations has been truncated, see
68
+ # {Dodopayments::Models::WebhookUpdateParams} for more details.
69
+ #
70
+ # Patch a webhook by id
71
+ #
72
+ # @overload update(webhook_id, description: nil, disabled: nil, filter_types: nil, metadata: nil, rate_limit: nil, url: nil, request_options: {})
73
+ #
74
+ # @param webhook_id [String]
75
+ #
76
+ # @param description [String, nil] Description of the webhook
77
+ #
78
+ # @param disabled [Boolean, nil] To Disable the endpoint, set it to true.
79
+ #
80
+ # @param filter_types [Array<Symbol, Dodopayments::Models::WebhookEventType>, nil] Filter events to the endpoint.
81
+ #
82
+ # @param metadata [Hash{Symbol=>String}, nil] Metadata
83
+ #
84
+ # @param rate_limit [Integer, nil] Rate limit
85
+ #
86
+ # @param url [String, nil] Url endpoint
87
+ #
88
+ # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
89
+ #
90
+ # @return [Dodopayments::Models::WebhookUpdateResponse]
91
+ #
92
+ # @see Dodopayments::Models::WebhookUpdateParams
93
+ def update(webhook_id, params = {})
94
+ parsed, options = Dodopayments::WebhookUpdateParams.dump_request(params)
95
+ @client.request(
96
+ method: :patch,
97
+ path: ["webhooks/%1$s", webhook_id],
98
+ body: parsed,
99
+ model: Dodopayments::Models::WebhookUpdateResponse,
100
+ options: options
101
+ )
102
+ end
103
+
104
+ # List all webhooks
105
+ #
106
+ # @overload list(iterator: nil, limit: nil, request_options: {})
107
+ #
108
+ # @param iterator [String, nil] The iterator returned from a prior invocation
109
+ #
110
+ # @param limit [Integer, nil] Limit the number of returned items
111
+ #
112
+ # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
113
+ #
114
+ # @return [Dodopayments::Internal::CursorPagePagination<Dodopayments::Models::WebhookListResponse>]
115
+ #
116
+ # @see Dodopayments::Models::WebhookListParams
117
+ def list(params = {})
118
+ parsed, options = Dodopayments::WebhookListParams.dump_request(params)
119
+ @client.request(
120
+ method: :get,
121
+ path: "webhooks",
122
+ query: parsed,
123
+ page: Dodopayments::Internal::CursorPagePagination,
124
+ model: Dodopayments::Models::WebhookListResponse,
125
+ options: options
126
+ )
127
+ end
128
+
129
+ # Delete a webhook by id
130
+ #
131
+ # @overload delete(webhook_id, request_options: {})
132
+ #
133
+ # @param webhook_id [String]
134
+ # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
135
+ #
136
+ # @return [nil]
137
+ #
138
+ # @see Dodopayments::Models::WebhookDeleteParams
139
+ def delete(webhook_id, params = {})
140
+ @client.request(
141
+ method: :delete,
142
+ path: ["webhooks/%1$s", webhook_id],
143
+ model: NilClass,
144
+ options: params[:request_options]
145
+ )
146
+ end
147
+
148
+ # Get webhook secret by id
149
+ #
150
+ # @overload retrieve_secret(webhook_id, request_options: {})
151
+ #
152
+ # @param webhook_id [String]
153
+ # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
154
+ #
155
+ # @return [Dodopayments::Models::WebhookRetrieveSecretResponse]
156
+ #
157
+ # @see Dodopayments::Models::WebhookRetrieveSecretParams
158
+ def retrieve_secret(webhook_id, params = {})
159
+ @client.request(
160
+ method: :get,
161
+ path: ["webhooks/%1$s/secret", webhook_id],
162
+ model: Dodopayments::Models::WebhookRetrieveSecretResponse,
163
+ options: params[:request_options]
164
+ )
165
+ end
166
+
167
+ # @api private
168
+ #
169
+ # @param client [Dodopayments::Client]
170
+ def initialize(client:)
171
+ @client = client
172
+ @headers = Dodopayments::Resources::Webhooks::Headers.new(client: client)
173
+ end
174
+ end
175
+ end
176
+ end
@@ -0,0 +1,56 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class YourWebhookURL
6
+ # Some parameter documentations has been truncated, see
7
+ # {Dodopayments::Models::YourWebhookURLCreateParams} for more details.
8
+ #
9
+ # @overload create(business_id:, data:, timestamp:, type:, webhook_id:, webhook_signature:, webhook_timestamp:, request_options: {})
10
+ #
11
+ # @param business_id [String] Body param:
12
+ #
13
+ # @param data [Dodopayments::Models::WebhookPayload::Data::Payment, Dodopayments::Models::WebhookPayload::Data::Subscription, Dodopayments::Models::WebhookPayload::Data::Refund, Dodopayments::Models::WebhookPayload::Data::Dispute, Dodopayments::Models::WebhookPayload::Data::LicenseKey] Body param: The latest data at the time of delivery attempt
14
+ #
15
+ # @param timestamp [Time] Body param: The timestamp of when the event occurred (not necessarily the same o
16
+ #
17
+ # @param type [Symbol, Dodopayments::Models::WebhookEventType] Body param: Event types for Dodo events
18
+ #
19
+ # @param webhook_id [String] Header param: Unique identifier for the webhook
20
+ #
21
+ # @param webhook_signature [String] Header param: Signature of the Webhook
22
+ #
23
+ # @param webhook_timestamp [String] Header param: Unix timestamp when the webhook was sent
24
+ #
25
+ # @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
26
+ #
27
+ # @return [nil]
28
+ #
29
+ # @see Dodopayments::Models::YourWebhookURLCreateParams
30
+ def create(params)
31
+ parsed, options = Dodopayments::YourWebhookURLCreateParams.dump_request(params)
32
+ header_params =
33
+ {
34
+ webhook_id: "webhook-id",
35
+ webhook_signature: "webhook-signature",
36
+ webhook_timestamp: "webhook-timestamp"
37
+ }
38
+ @client.request(
39
+ method: :post,
40
+ path: "your-webhook-url",
41
+ headers: parsed.slice(*header_params.keys).transform_keys(header_params),
42
+ body: parsed.except(*header_params.keys),
43
+ model: NilClass,
44
+ options: options
45
+ )
46
+ end
47
+
48
+ # @api private
49
+ #
50
+ # @param client [Dodopayments::Client]
51
+ def initialize(client:)
52
+ @client = client
53
+ end
54
+ end
55
+ end
56
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dodopayments
4
- VERSION = "1.22.0"
4
+ VERSION = "1.49.0"
5
5
  end
data/lib/dodopayments.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # Standard libraries.
4
+ # rubocop:disable Lint/RedundantRequireStatement
4
5
  require "English"
5
6
  require "cgi"
6
7
  require "date"
@@ -15,10 +16,13 @@ require "set"
15
16
  require "stringio"
16
17
  require "time"
17
18
  require "uri"
19
+ # rubocop:enable Lint/RedundantRequireStatement
18
20
 
19
21
  # We already ship the preferred sorbet manifests in the package itself.
20
22
  # `tapioca` currently does not offer us a way to opt out of unnecessary compilation.
21
- if Object.const_defined?(:Tapioca) && caller.chain([$PROGRAM_NAME]).chain(ARGV).grep(/tapioca/)
23
+ if Object.const_defined?(:Tapioca) &&
24
+ caller.chain([$PROGRAM_NAME]).chain(ARGV).any?(/tapioca/) &&
25
+ ARGV.none?(/dsl/)
22
26
  return
23
27
  end
24
28
 
@@ -46,7 +50,14 @@ require_relative "dodopayments/errors"
46
50
  require_relative "dodopayments/internal/transport/base_client"
47
51
  require_relative "dodopayments/internal/transport/pooled_net_requester"
48
52
  require_relative "dodopayments/client"
53
+ require_relative "dodopayments/internal/cursor_page_pagination"
49
54
  require_relative "dodopayments/internal/default_page_number_pagination"
55
+ require_relative "dodopayments/models/license_key"
56
+ require_relative "dodopayments/models/get_dispute"
57
+ require_relative "dodopayments/models/refund"
58
+ require_relative "dodopayments/models/subscription"
59
+ require_relative "dodopayments/models/payment"
60
+ require_relative "dodopayments/models/webhook_payload"
50
61
  require_relative "dodopayments/models/addon_cart_response_item"
51
62
  require_relative "dodopayments/models/addon_create_params"
52
63
  require_relative "dodopayments/models/addon_list_params"
@@ -55,8 +66,17 @@ require_relative "dodopayments/models/addon_retrieve_params"
55
66
  require_relative "dodopayments/models/addon_update_images_params"
56
67
  require_relative "dodopayments/models/addon_update_images_response"
57
68
  require_relative "dodopayments/models/addon_update_params"
69
+ require_relative "dodopayments/models/attach_addon"
58
70
  require_relative "dodopayments/models/attach_existing_customer"
59
71
  require_relative "dodopayments/models/billing_address"
72
+ require_relative "dodopayments/models/brand"
73
+ require_relative "dodopayments/models/brand_create_params"
74
+ require_relative "dodopayments/models/brand_list_params"
75
+ require_relative "dodopayments/models/brand_list_response"
76
+ require_relative "dodopayments/models/brand_retrieve_params"
77
+ require_relative "dodopayments/models/brand_update_images_params"
78
+ require_relative "dodopayments/models/brand_update_images_response"
79
+ require_relative "dodopayments/models/brand_update_params"
60
80
  require_relative "dodopayments/models/country_code"
61
81
  require_relative "dodopayments/models/create_new_customer"
62
82
  require_relative "dodopayments/models/currency"
@@ -80,14 +100,12 @@ require_relative "dodopayments/models/dispute"
80
100
  require_relative "dodopayments/models/dispute_list_params"
81
101
  require_relative "dodopayments/models/dispute_list_response"
82
102
  require_relative "dodopayments/models/dispute_retrieve_params"
83
- require_relative "dodopayments/models/dispute_retrieve_response"
84
103
  require_relative "dodopayments/models/dispute_stage"
85
104
  require_relative "dodopayments/models/dispute_status"
86
105
  require_relative "dodopayments/models/intent_status"
87
106
  require_relative "dodopayments/models/invoices/payment_retrieve_params"
88
107
  require_relative "dodopayments/models/license_activate_params"
89
108
  require_relative "dodopayments/models/license_deactivate_params"
90
- require_relative "dodopayments/models/license_key"
91
109
  require_relative "dodopayments/models/license_key_duration"
92
110
  require_relative "dodopayments/models/license_key_instance"
93
111
  require_relative "dodopayments/models/license_key_instance_list_params"
@@ -101,12 +119,15 @@ require_relative "dodopayments/models/license_validate_params"
101
119
  require_relative "dodopayments/models/license_validate_response"
102
120
  require_relative "dodopayments/models/misc_list_supported_countries_params"
103
121
  require_relative "dodopayments/models/misc_list_supported_countries_response"
122
+ require_relative "dodopayments/models/new_customer"
104
123
  require_relative "dodopayments/models/one_time_product_cart_item"
105
- require_relative "dodopayments/models/payment"
106
124
  require_relative "dodopayments/models/payment_create_params"
107
125
  require_relative "dodopayments/models/payment_create_response"
108
126
  require_relative "dodopayments/models/payment_list_params"
109
127
  require_relative "dodopayments/models/payment_list_response"
128
+ require_relative "dodopayments/models/payment_method_types"
129
+ require_relative "dodopayments/models/payment_retrieve_line_items_params"
130
+ require_relative "dodopayments/models/payment_retrieve_line_items_response"
110
131
  require_relative "dodopayments/models/payment_retrieve_params"
111
132
  require_relative "dodopayments/models/payout_list_params"
112
133
  require_relative "dodopayments/models/payout_list_response"
@@ -120,13 +141,13 @@ require_relative "dodopayments/models/product_retrieve_params"
120
141
  require_relative "dodopayments/models/products/image_update_params"
121
142
  require_relative "dodopayments/models/products/image_update_response"
122
143
  require_relative "dodopayments/models/product_unarchive_params"
144
+ require_relative "dodopayments/models/product_update_files_params"
145
+ require_relative "dodopayments/models/product_update_files_response"
123
146
  require_relative "dodopayments/models/product_update_params"
124
- require_relative "dodopayments/models/refund"
125
147
  require_relative "dodopayments/models/refund_create_params"
126
148
  require_relative "dodopayments/models/refund_list_params"
127
149
  require_relative "dodopayments/models/refund_retrieve_params"
128
150
  require_relative "dodopayments/models/refund_status"
129
- require_relative "dodopayments/models/subscription"
130
151
  require_relative "dodopayments/models/subscription_change_plan_params"
131
152
  require_relative "dodopayments/models/subscription_charge_params"
132
153
  require_relative "dodopayments/models/subscription_charge_response"
@@ -139,10 +160,25 @@ require_relative "dodopayments/models/subscription_status"
139
160
  require_relative "dodopayments/models/subscription_update_params"
140
161
  require_relative "dodopayments/models/tax_category"
141
162
  require_relative "dodopayments/models/time_interval"
142
- require_relative "dodopayments/models/webhook_event"
143
- require_relative "dodopayments/models/webhook_event_list_params"
144
- require_relative "dodopayments/models/webhook_event_retrieve_params"
163
+ require_relative "dodopayments/models/webhook_create_params"
164
+ require_relative "dodopayments/models/webhook_create_response"
165
+ require_relative "dodopayments/models/webhook_delete_params"
166
+ require_relative "dodopayments/models/webhook_event_type"
167
+ require_relative "dodopayments/models/webhook_list_params"
168
+ require_relative "dodopayments/models/webhook_list_response"
169
+ require_relative "dodopayments/models/webhook_retrieve_params"
170
+ require_relative "dodopayments/models/webhook_retrieve_response"
171
+ require_relative "dodopayments/models/webhook_retrieve_secret_params"
172
+ require_relative "dodopayments/models/webhook_retrieve_secret_response"
173
+ require_relative "dodopayments/models/webhooks/header_retrieve_params"
174
+ require_relative "dodopayments/models/webhooks/header_retrieve_response"
175
+ require_relative "dodopayments/models/webhooks/header_update_params"
176
+ require_relative "dodopayments/models/webhook_update_params"
177
+ require_relative "dodopayments/models/webhook_update_response"
178
+ require_relative "dodopayments/models/your_webhook_url_create_params"
179
+ require_relative "dodopayments/models"
145
180
  require_relative "dodopayments/resources/addons"
181
+ require_relative "dodopayments/resources/brands"
146
182
  require_relative "dodopayments/resources/customers"
147
183
  require_relative "dodopayments/resources/customers/customer_portal"
148
184
  require_relative "dodopayments/resources/discounts"
@@ -160,3 +196,6 @@ require_relative "dodopayments/resources/products/images"
160
196
  require_relative "dodopayments/resources/refunds"
161
197
  require_relative "dodopayments/resources/subscriptions"
162
198
  require_relative "dodopayments/resources/webhook_events"
199
+ require_relative "dodopayments/resources/webhooks"
200
+ require_relative "dodopayments/resources/webhooks/headers"
201
+ require_relative "dodopayments/resources/your_webhook_url"
@@ -12,7 +12,10 @@ module Dodopayments
12
12
 
13
13
  ENVIRONMENTS =
14
14
  T.let(
15
- {live_mode: "https://live.dodopayments.com", test_mode: "https://test.dodopayments.com"},
15
+ {
16
+ live_mode: "https://live.dodopayments.com",
17
+ test_mode: "https://test.dodopayments.com"
18
+ },
16
19
  T::Hash[Symbol, String]
17
20
  )
18
21
 
@@ -65,22 +68,31 @@ module Dodopayments
65
68
  sig { returns(Dodopayments::Resources::Addons) }
66
69
  attr_reader :addons
67
70
 
71
+ sig { returns(Dodopayments::Resources::Brands) }
72
+ attr_reader :brands
73
+
74
+ sig { returns(Dodopayments::Resources::Webhooks) }
75
+ attr_reader :webhooks
76
+
77
+ sig { returns(Dodopayments::Resources::YourWebhookURL) }
78
+ attr_reader :your_webhook_url
79
+
68
80
  # @api private
69
81
  sig { override.returns(T::Hash[String, String]) }
70
- private def auth_headers; end
82
+ private def auth_headers
83
+ end
71
84
 
72
85
  # Creates and returns a new client for interacting with the API.
73
86
  sig do
74
87
  params(
75
88
  bearer_token: T.nilable(String),
76
- environment: NilClass,
89
+ environment: T.nilable(T.any(Symbol, String)),
77
90
  base_url: T.nilable(String),
78
91
  max_retries: Integer,
79
92
  timeout: Float,
80
93
  initial_retry_delay: Float,
81
94
  max_retry_delay: Float
82
- )
83
- .returns(T.attached_class)
95
+ ).returns(T.attached_class)
84
96
  end
85
97
  def self.new(
86
98
  # Bearer Token for API authentication Defaults to `ENV["DODO_PAYMENTS_API_KEY"]`
@@ -100,6 +112,7 @@ module Dodopayments
100
112
  timeout: Dodopayments::Client::DEFAULT_TIMEOUT_IN_SECONDS,
101
113
  initial_retry_delay: Dodopayments::Client::DEFAULT_INITIAL_RETRY_DELAY,
102
114
  max_retry_delay: Dodopayments::Client::DEFAULT_MAX_RETRY_DELAY
103
- ); end
115
+ )
116
+ end
104
117
  end
105
118
  end
@@ -8,6 +8,22 @@ module Dodopayments
8
8
  end
9
9
 
10
10
  class ConversionError < Dodopayments::Errors::Error
11
+ sig { returns(T.nilable(StandardError)) }
12
+ def cause
13
+ end
14
+
15
+ # @api private
16
+ sig do
17
+ params(
18
+ on: T::Class[StandardError],
19
+ method: Symbol,
20
+ target: T.anything,
21
+ value: T.anything,
22
+ cause: T.nilable(StandardError)
23
+ ).returns(T.attached_class)
24
+ end
25
+ def self.new(on:, method:, target:, value:, cause: nil)
26
+ end
11
27
  end
12
28
 
13
29
  class APIError < Dodopayments::Errors::Error
@@ -29,10 +45,17 @@ module Dodopayments
29
45
  request: NilClass,
30
46
  response: NilClass,
31
47
  message: T.nilable(String)
32
- )
33
- .returns(T.attached_class)
48
+ ).returns(T.attached_class)
49
+ end
50
+ def self.new(
51
+ url:,
52
+ status: nil,
53
+ body: nil,
54
+ request: nil,
55
+ response: nil,
56
+ message: nil
57
+ )
34
58
  end
35
- def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: nil); end
36
59
  end
37
60
 
38
61
  class APIConnectionError < Dodopayments::Errors::APIError
@@ -51,10 +74,16 @@ module Dodopayments
51
74
  request: NilClass,
52
75
  response: NilClass,
53
76
  message: T.nilable(String)
54
- )
55
- .returns(T.attached_class)
77
+ ).returns(T.attached_class)
56
78
  end
57
- def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: "Connection error.")
79
+ def self.new(
80
+ url:,
81
+ status: nil,
82
+ body: nil,
83
+ request: nil,
84
+ response: nil,
85
+ message: "Connection error."
86
+ )
58
87
  end
59
88
  end
60
89
 
@@ -68,10 +97,16 @@ module Dodopayments
68
97
  request: NilClass,
69
98
  response: NilClass,
70
99
  message: T.nilable(String)
71
- )
72
- .returns(T.attached_class)
100
+ ).returns(T.attached_class)
73
101
  end
74
- def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: "Request timed out.")
102
+ def self.new(
103
+ url:,
104
+ status: nil,
105
+ body: nil,
106
+ request: nil,
107
+ response: nil,
108
+ message: "Request timed out."
109
+ )
75
110
  end
76
111
  end
77
112
 
@@ -85,10 +120,10 @@ module Dodopayments
85
120
  request: NilClass,
86
121
  response: NilClass,
87
122
  message: T.nilable(String)
88
- )
89
- .returns(T.attached_class)
123
+ ).returns(T.attached_class)
124
+ end
125
+ def self.for(url:, status:, body:, request:, response:, message: nil)
90
126
  end
91
- def self.for(url:, status:, body:, request:, response:, message: nil); end
92
127
 
93
128
  sig { returns(Integer) }
94
129
  attr_accessor :status
@@ -102,10 +137,10 @@ module Dodopayments
102
137
  request: NilClass,
103
138
  response: NilClass,
104
139
  message: T.nilable(String)
105
- )
106
- .returns(T.attached_class)
140
+ ).returns(T.attached_class)
141
+ end
142
+ def self.new(url:, status:, body:, request:, response:, message: nil)
107
143
  end
108
- def self.new(url:, status:, body:, request:, response:, message: nil); end
109
144
  end
110
145
 
111
146
  class BadRequestError < Dodopayments::Errors::APIStatusError
@@ -137,7 +172,7 @@ module Dodopayments
137
172
  end
138
173
 
139
174
  class InternalServerError < Dodopayments::Errors::APIStatusError
140
- HTTP_STATUS = T.let(500.., T::Range[Integer])
175
+ HTTP_STATUS = T.let((500..), T::Range[Integer])
141
176
  end
142
177
  end
143
178
  end
@@ -13,22 +13,25 @@ module Dodopayments
13
13
 
14
14
  # @api private
15
15
  sig { returns(String) }
16
- private def read; end
16
+ private def read
17
+ end
17
18
 
18
19
  sig { params(a: T.anything).returns(String) }
19
- def to_json(*a); end
20
+ def to_json(*a)
21
+ end
20
22
 
21
23
  sig { params(a: T.anything).returns(String) }
22
- def to_yaml(*a); end
24
+ def to_yaml(*a)
25
+ end
23
26
 
24
27
  sig do
25
28
  params(
26
29
  content: T.any(Pathname, StringIO, IO, String),
27
30
  filename: T.nilable(String),
28
31
  content_type: T.nilable(String)
29
- )
30
- .returns(T.attached_class)
32
+ ).returns(T.attached_class)
33
+ end
34
+ def self.new(content, filename: nil, content_type: nil)
31
35
  end
32
- def self.new(content, filename: nil, content_type: nil); end
33
36
  end
34
37
  end
@@ -0,0 +1,25 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ module Internal
5
+ class CursorPagePagination
6
+ include Dodopayments::Internal::Type::BasePage
7
+
8
+ Elem = type_member
9
+
10
+ sig { returns(T.nilable(T::Array[Elem])) }
11
+ attr_accessor :data
12
+
13
+ sig { returns(String) }
14
+ attr_accessor :iterator
15
+
16
+ sig { returns(T::Boolean) }
17
+ attr_accessor :done
18
+
19
+ # @api private
20
+ sig { returns(String) }
21
+ def inspect
22
+ end
23
+ end
24
+ end
25
+ end
@@ -12,7 +12,8 @@ module Dodopayments
12
12
 
13
13
  # @api private
14
14
  sig { returns(String) }
15
- def inspect; end
15
+ def inspect
16
+ end
16
17
  end
17
18
  end
18
19
  end