dodopayments 0.0.1.pre.alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (326) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +154 -0
  3. data/lib/dodopayments/base_client.rb +453 -0
  4. data/lib/dodopayments/base_model.rb +1217 -0
  5. data/lib/dodopayments/base_page.rb +62 -0
  6. data/lib/dodopayments/client.rb +147 -0
  7. data/lib/dodopayments/default_page_number_pagination.rb +97 -0
  8. data/lib/dodopayments/errors.rb +183 -0
  9. data/lib/dodopayments/extern.rb +9 -0
  10. data/lib/dodopayments/models/attach_existing_customer.rb +19 -0
  11. data/lib/dodopayments/models/billing_address.rb +48 -0
  12. data/lib/dodopayments/models/country_code.rb +262 -0
  13. data/lib/dodopayments/models/create_new_customer.rb +44 -0
  14. data/lib/dodopayments/models/customer.rb +49 -0
  15. data/lib/dodopayments/models/customer_create_params.rb +36 -0
  16. data/lib/dodopayments/models/customer_limited_details.rb +34 -0
  17. data/lib/dodopayments/models/customer_list_params.rb +32 -0
  18. data/lib/dodopayments/models/customer_portal_session.rb +19 -0
  19. data/lib/dodopayments/models/customer_request.rb +18 -0
  20. data/lib/dodopayments/models/customer_retrieve_params.rb +18 -0
  21. data/lib/dodopayments/models/customer_update_params.rb +30 -0
  22. data/lib/dodopayments/models/customers/customer_portal_create_params.rb +27 -0
  23. data/lib/dodopayments/models/discount.rb +108 -0
  24. data/lib/dodopayments/models/discount_create_params.rb +87 -0
  25. data/lib/dodopayments/models/discount_delete_params.rb +18 -0
  26. data/lib/dodopayments/models/discount_list_params.rb +32 -0
  27. data/lib/dodopayments/models/discount_retrieve_params.rb +18 -0
  28. data/lib/dodopayments/models/discount_type.rb +12 -0
  29. data/lib/dodopayments/models/discount_update_params.rb +82 -0
  30. data/lib/dodopayments/models/dispute.rb +80 -0
  31. data/lib/dodopayments/models/dispute_list_params.rb +79 -0
  32. data/lib/dodopayments/models/dispute_retrieve_params.rb +18 -0
  33. data/lib/dodopayments/models/dispute_stage.rb +14 -0
  34. data/lib/dodopayments/models/dispute_status.rb +18 -0
  35. data/lib/dodopayments/models/intent_status.rb +22 -0
  36. data/lib/dodopayments/models/invoices/payment_retrieve_params.rb +20 -0
  37. data/lib/dodopayments/models/license_activate_params.rb +30 -0
  38. data/lib/dodopayments/models/license_deactivate_params.rb +30 -0
  39. data/lib/dodopayments/models/license_key.rb +113 -0
  40. data/lib/dodopayments/models/license_key_duration.rb +25 -0
  41. data/lib/dodopayments/models/license_key_instance.rb +43 -0
  42. data/lib/dodopayments/models/license_key_instance_list_params.rb +39 -0
  43. data/lib/dodopayments/models/license_key_instance_retrieve_params.rb +18 -0
  44. data/lib/dodopayments/models/license_key_instance_update_params.rb +24 -0
  45. data/lib/dodopayments/models/license_key_list_params.rb +53 -0
  46. data/lib/dodopayments/models/license_key_retrieve_params.rb +18 -0
  47. data/lib/dodopayments/models/license_key_status.rb +14 -0
  48. data/lib/dodopayments/models/license_key_update_params.rb +42 -0
  49. data/lib/dodopayments/models/license_validate_params.rb +30 -0
  50. data/lib/dodopayments/models/license_validate_response.rb +19 -0
  51. data/lib/dodopayments/models/misc_list_supported_countries_params.rb +18 -0
  52. data/lib/dodopayments/models/misc_list_supported_countries_response.rb +7 -0
  53. data/lib/dodopayments/models/one_time_product_cart_item.rb +33 -0
  54. data/lib/dodopayments/models/payment.rb +339 -0
  55. data/lib/dodopayments/models/payment_create_params.rb +90 -0
  56. data/lib/dodopayments/models/payment_create_response.rb +82 -0
  57. data/lib/dodopayments/models/payment_list_params.rb +79 -0
  58. data/lib/dodopayments/models/payment_list_response.rb +238 -0
  59. data/lib/dodopayments/models/payment_retrieve_params.rb +18 -0
  60. data/lib/dodopayments/models/payout_list_params.rb +32 -0
  61. data/lib/dodopayments/models/payout_list_response.rb +295 -0
  62. data/lib/dodopayments/models/price.rb +512 -0
  63. data/lib/dodopayments/models/product.rb +149 -0
  64. data/lib/dodopayments/models/product_create_params.rb +107 -0
  65. data/lib/dodopayments/models/product_delete_params.rb +18 -0
  66. data/lib/dodopayments/models/product_list_params.rb +54 -0
  67. data/lib/dodopayments/models/product_list_response.rb +293 -0
  68. data/lib/dodopayments/models/product_retrieve_params.rb +18 -0
  69. data/lib/dodopayments/models/product_unarchive_params.rb +18 -0
  70. data/lib/dodopayments/models/product_update_params.rb +124 -0
  71. data/lib/dodopayments/models/products/image_update_params.rb +26 -0
  72. data/lib/dodopayments/models/products/image_update_response.rb +27 -0
  73. data/lib/dodopayments/models/refund.rb +218 -0
  74. data/lib/dodopayments/models/refund_create_params.rb +40 -0
  75. data/lib/dodopayments/models/refund_list_params.rb +71 -0
  76. data/lib/dodopayments/models/refund_retrieve_params.rb +18 -0
  77. data/lib/dodopayments/models/refund_status.rb +15 -0
  78. data/lib/dodopayments/models/subscription.rb +309 -0
  79. data/lib/dodopayments/models/subscription_create_params.rb +106 -0
  80. data/lib/dodopayments/models/subscription_create_response.rb +73 -0
  81. data/lib/dodopayments/models/subscription_list_params.rb +71 -0
  82. data/lib/dodopayments/models/subscription_retrieve_params.rb +18 -0
  83. data/lib/dodopayments/models/subscription_status.rb +18 -0
  84. data/lib/dodopayments/models/subscription_update_params.rb +30 -0
  85. data/lib/dodopayments/models/time_interval.rb +15 -0
  86. data/lib/dodopayments/models/webhook_event.rb +73 -0
  87. data/lib/dodopayments/models/webhook_event_list_params.rb +71 -0
  88. data/lib/dodopayments/models/webhook_event_retrieve_params.rb +18 -0
  89. data/lib/dodopayments/pooled_net_requester.rb +164 -0
  90. data/lib/dodopayments/request_options.rb +110 -0
  91. data/lib/dodopayments/resources/customers/customer_portal.rb +34 -0
  92. data/lib/dodopayments/resources/customers.rb +97 -0
  93. data/lib/dodopayments/resources/discounts.rb +154 -0
  94. data/lib/dodopayments/resources/disputes.rb +59 -0
  95. data/lib/dodopayments/resources/invoices/payments.rb +30 -0
  96. data/lib/dodopayments/resources/invoices.rb +16 -0
  97. data/lib/dodopayments/resources/license_key_instances.rb +71 -0
  98. data/lib/dodopayments/resources/license_keys.rb +82 -0
  99. data/lib/dodopayments/resources/licenses.rb +72 -0
  100. data/lib/dodopayments/resources/misc.rb +26 -0
  101. data/lib/dodopayments/resources/payments.rb +93 -0
  102. data/lib/dodopayments/resources/payouts.rb +33 -0
  103. data/lib/dodopayments/resources/products/images.rb +34 -0
  104. data/lib/dodopayments/resources/products.rb +176 -0
  105. data/lib/dodopayments/resources/refunds.rb +80 -0
  106. data/lib/dodopayments/resources/subscriptions.rb +117 -0
  107. data/lib/dodopayments/resources/webhook_events.rb +57 -0
  108. data/lib/dodopayments/util.rb +717 -0
  109. data/lib/dodopayments/version.rb +5 -0
  110. data/lib/dodopayments.rb +128 -0
  111. data/manifest.yaml +14 -0
  112. data/rbi/lib/dodopayments/base_client.rbi +186 -0
  113. data/rbi/lib/dodopayments/base_model.rbi +606 -0
  114. data/rbi/lib/dodopayments/base_page.rbi +40 -0
  115. data/rbi/lib/dodopayments/client.rbi +117 -0
  116. data/rbi/lib/dodopayments/default_page_number_pagination.rbi +17 -0
  117. data/rbi/lib/dodopayments/errors.rbi +179 -0
  118. data/rbi/lib/dodopayments/extern.rbi +8 -0
  119. data/rbi/lib/dodopayments/models/attach_existing_customer.rbi +23 -0
  120. data/rbi/lib/dodopayments/models/billing_address.rbi +65 -0
  121. data/rbi/lib/dodopayments/models/country_code.rbi +266 -0
  122. data/rbi/lib/dodopayments/models/create_new_customer.rbi +61 -0
  123. data/rbi/lib/dodopayments/models/customer.rbi +85 -0
  124. data/rbi/lib/dodopayments/models/customer_create_params.rbi +60 -0
  125. data/rbi/lib/dodopayments/models/customer_limited_details.rbi +42 -0
  126. data/rbi/lib/dodopayments/models/customer_list_params.rbi +52 -0
  127. data/rbi/lib/dodopayments/models/customer_portal_session.rbi +23 -0
  128. data/rbi/lib/dodopayments/models/customer_request.rbi +15 -0
  129. data/rbi/lib/dodopayments/models/customer_retrieve_params.rbi +21 -0
  130. data/rbi/lib/dodopayments/models/customer_update_params.rbi +50 -0
  131. data/rbi/lib/dodopayments/models/customers/customer_portal_create_params.rbi +37 -0
  132. data/rbi/lib/dodopayments/models/discount.rbi +161 -0
  133. data/rbi/lib/dodopayments/models/discount_create_params.rbi +124 -0
  134. data/rbi/lib/dodopayments/models/discount_delete_params.rbi +21 -0
  135. data/rbi/lib/dodopayments/models/discount_list_params.rbi +52 -0
  136. data/rbi/lib/dodopayments/models/discount_retrieve_params.rbi +21 -0
  137. data/rbi/lib/dodopayments/models/discount_type.rbi +17 -0
  138. data/rbi/lib/dodopayments/models/discount_update_params.rbi +119 -0
  139. data/rbi/lib/dodopayments/models/dispute.rbi +112 -0
  140. data/rbi/lib/dodopayments/models/dispute_list_params.rbi +116 -0
  141. data/rbi/lib/dodopayments/models/dispute_retrieve_params.rbi +21 -0
  142. data/rbi/lib/dodopayments/models/dispute_stage.rbi +19 -0
  143. data/rbi/lib/dodopayments/models/dispute_status.rbi +23 -0
  144. data/rbi/lib/dodopayments/models/intent_status.rbi +27 -0
  145. data/rbi/lib/dodopayments/models/invoices/payment_retrieve_params.rbi +23 -0
  146. data/rbi/lib/dodopayments/models/license_activate_params.rbi +43 -0
  147. data/rbi/lib/dodopayments/models/license_deactivate_params.rbi +50 -0
  148. data/rbi/lib/dodopayments/models/license_key.rbi +170 -0
  149. data/rbi/lib/dodopayments/models/license_key_duration.rbi +31 -0
  150. data/rbi/lib/dodopayments/models/license_key_instance.rbi +68 -0
  151. data/rbi/lib/dodopayments/models/license_key_instance_list_params.rbi +63 -0
  152. data/rbi/lib/dodopayments/models/license_key_instance_retrieve_params.rbi +21 -0
  153. data/rbi/lib/dodopayments/models/license_key_instance_update_params.rbi +35 -0
  154. data/rbi/lib/dodopayments/models/license_key_list_params.rbi +85 -0
  155. data/rbi/lib/dodopayments/models/license_key_retrieve_params.rbi +21 -0
  156. data/rbi/lib/dodopayments/models/license_key_status.rbi +19 -0
  157. data/rbi/lib/dodopayments/models/license_key_update_params.rbi +66 -0
  158. data/rbi/lib/dodopayments/models/license_validate_params.rbi +50 -0
  159. data/rbi/lib/dodopayments/models/license_validate_response.rbi +23 -0
  160. data/rbi/lib/dodopayments/models/misc_list_supported_countries_params.rbi +21 -0
  161. data/rbi/lib/dodopayments/models/misc_list_supported_countries_response.rbi +7 -0
  162. data/rbi/lib/dodopayments/models/one_time_product_cart_item.rbi +43 -0
  163. data/rbi/lib/dodopayments/models/payment.rbi +439 -0
  164. data/rbi/lib/dodopayments/models/payment_create_params.rbi +133 -0
  165. data/rbi/lib/dodopayments/models/payment_create_response.rbi +127 -0
  166. data/rbi/lib/dodopayments/models/payment_list_params.rbi +116 -0
  167. data/rbi/lib/dodopayments/models/payment_list_response.rbi +295 -0
  168. data/rbi/lib/dodopayments/models/payment_retrieve_params.rbi +21 -0
  169. data/rbi/lib/dodopayments/models/payout_list_params.rbi +52 -0
  170. data/rbi/lib/dodopayments/models/payout_list_response.rbi +374 -0
  171. data/rbi/lib/dodopayments/models/price.rbi +603 -0
  172. data/rbi/lib/dodopayments/models/product.rbi +228 -0
  173. data/rbi/lib/dodopayments/models/product_create_params.rbi +162 -0
  174. data/rbi/lib/dodopayments/models/product_delete_params.rbi +21 -0
  175. data/rbi/lib/dodopayments/models/product_list_params.rbi +78 -0
  176. data/rbi/lib/dodopayments/models/product_list_response.rbi +374 -0
  177. data/rbi/lib/dodopayments/models/product_retrieve_params.rbi +21 -0
  178. data/rbi/lib/dodopayments/models/product_unarchive_params.rbi +21 -0
  179. data/rbi/lib/dodopayments/models/product_update_params.rbi +191 -0
  180. data/rbi/lib/dodopayments/models/products/image_update_params.rbi +41 -0
  181. data/rbi/lib/dodopayments/models/products/image_update_response.rbi +33 -0
  182. data/rbi/lib/dodopayments/models/refund.rbi +267 -0
  183. data/rbi/lib/dodopayments/models/refund_create_params.rbi +64 -0
  184. data/rbi/lib/dodopayments/models/refund_list_params.rbi +104 -0
  185. data/rbi/lib/dodopayments/models/refund_retrieve_params.rbi +21 -0
  186. data/rbi/lib/dodopayments/models/refund_status.rbi +20 -0
  187. data/rbi/lib/dodopayments/models/subscription.rbi +397 -0
  188. data/rbi/lib/dodopayments/models/subscription_create_params.rbi +154 -0
  189. data/rbi/lib/dodopayments/models/subscription_create_response.rbi +113 -0
  190. data/rbi/lib/dodopayments/models/subscription_list_params.rbi +104 -0
  191. data/rbi/lib/dodopayments/models/subscription_retrieve_params.rbi +21 -0
  192. data/rbi/lib/dodopayments/models/subscription_status.rbi +23 -0
  193. data/rbi/lib/dodopayments/models/subscription_update_params.rbi +50 -0
  194. data/rbi/lib/dodopayments/models/time_interval.rbi +20 -0
  195. data/rbi/lib/dodopayments/models/webhook_event.rbi +114 -0
  196. data/rbi/lib/dodopayments/models/webhook_event_list_params.rbi +104 -0
  197. data/rbi/lib/dodopayments/models/webhook_event_retrieve_params.rbi +21 -0
  198. data/rbi/lib/dodopayments/pooled_net_requester.rbi +47 -0
  199. data/rbi/lib/dodopayments/request_options.rbi +109 -0
  200. data/rbi/lib/dodopayments/resources/customers/customer_portal.rbi +30 -0
  201. data/rbi/lib/dodopayments/resources/customers.rbi +76 -0
  202. data/rbi/lib/dodopayments/resources/discounts.rbi +139 -0
  203. data/rbi/lib/dodopayments/resources/disputes.rbi +57 -0
  204. data/rbi/lib/dodopayments/resources/invoices/payments.rbi +23 -0
  205. data/rbi/lib/dodopayments/resources/invoices.rbi +15 -0
  206. data/rbi/lib/dodopayments/resources/license_key_instances.rbi +61 -0
  207. data/rbi/lib/dodopayments/resources/license_keys.rbi +77 -0
  208. data/rbi/lib/dodopayments/resources/licenses.rbi +44 -0
  209. data/rbi/lib/dodopayments/resources/misc.rbi +18 -0
  210. data/rbi/lib/dodopayments/resources/payments.rbi +91 -0
  211. data/rbi/lib/dodopayments/resources/payouts.rbi +28 -0
  212. data/rbi/lib/dodopayments/resources/products/images.rbi +29 -0
  213. data/rbi/lib/dodopayments/resources/products.rbi +164 -0
  214. data/rbi/lib/dodopayments/resources/refunds.rbi +75 -0
  215. data/rbi/lib/dodopayments/resources/subscriptions.rbi +112 -0
  216. data/rbi/lib/dodopayments/resources/webhook_events.rbi +50 -0
  217. data/rbi/lib/dodopayments/util.rbi +270 -0
  218. data/rbi/lib/dodopayments/version.rbi +5 -0
  219. data/sig/dodopayments/base_client.rbs +103 -0
  220. data/sig/dodopayments/base_model.rbs +246 -0
  221. data/sig/dodopayments/base_page.rbs +20 -0
  222. data/sig/dodopayments/client.rbs +58 -0
  223. data/sig/dodopayments/default_page_number_pagination.rbs +7 -0
  224. data/sig/dodopayments/errors.rbs +99 -0
  225. data/sig/dodopayments/extern.rbs +4 -0
  226. data/sig/dodopayments/models/attach_existing_customer.rbs +18 -0
  227. data/sig/dodopayments/models/billing_address.rbs +38 -0
  228. data/sig/dodopayments/models/country_code.rbs +508 -0
  229. data/sig/dodopayments/models/create_new_customer.rbs +37 -0
  230. data/sig/dodopayments/models/customer.rbs +42 -0
  231. data/sig/dodopayments/models/customer_create_params.rbs +32 -0
  232. data/sig/dodopayments/models/customer_limited_details.rbs +23 -0
  233. data/sig/dodopayments/models/customer_list_params.rbs +29 -0
  234. data/sig/dodopayments/models/customer_portal_session.rbs +18 -0
  235. data/sig/dodopayments/models/customer_request.rbs +11 -0
  236. data/sig/dodopayments/models/customer_retrieve_params.rbs +19 -0
  237. data/sig/dodopayments/models/customer_update_params.rbs +29 -0
  238. data/sig/dodopayments/models/customers/customer_portal_create_params.rbs +27 -0
  239. data/sig/dodopayments/models/discount.rbs +62 -0
  240. data/sig/dodopayments/models/discount_create_params.rbs +52 -0
  241. data/sig/dodopayments/models/discount_delete_params.rbs +19 -0
  242. data/sig/dodopayments/models/discount_list_params.rbs +29 -0
  243. data/sig/dodopayments/models/discount_retrieve_params.rbs +19 -0
  244. data/sig/dodopayments/models/discount_type.rbs +11 -0
  245. data/sig/dodopayments/models/discount_update_params.rbs +52 -0
  246. data/sig/dodopayments/models/dispute.rbs +50 -0
  247. data/sig/dodopayments/models/dispute_list_params.rbs +52 -0
  248. data/sig/dodopayments/models/dispute_retrieve_params.rbs +19 -0
  249. data/sig/dodopayments/models/dispute_stage.rbs +13 -0
  250. data/sig/dodopayments/models/dispute_status.rbs +24 -0
  251. data/sig/dodopayments/models/intent_status.rbs +32 -0
  252. data/sig/dodopayments/models/invoices/payment_retrieve_params.rbs +21 -0
  253. data/sig/dodopayments/models/license_activate_params.rbs +28 -0
  254. data/sig/dodopayments/models/license_deactivate_params.rbs +29 -0
  255. data/sig/dodopayments/models/license_key.rbs +66 -0
  256. data/sig/dodopayments/models/license_key_duration.rbs +21 -0
  257. data/sig/dodopayments/models/license_key_instance.rbs +39 -0
  258. data/sig/dodopayments/models/license_key_instance_list_params.rbs +32 -0
  259. data/sig/dodopayments/models/license_key_instance_retrieve_params.rbs +20 -0
  260. data/sig/dodopayments/models/license_key_instance_update_params.rbs +22 -0
  261. data/sig/dodopayments/models/license_key_list_params.rbs +44 -0
  262. data/sig/dodopayments/models/license_key_retrieve_params.rbs +19 -0
  263. data/sig/dodopayments/models/license_key_status.rbs +13 -0
  264. data/sig/dodopayments/models/license_key_update_params.rbs +32 -0
  265. data/sig/dodopayments/models/license_validate_params.rbs +29 -0
  266. data/sig/dodopayments/models/license_validate_response.rbs +18 -0
  267. data/sig/dodopayments/models/misc_list_supported_countries_params.rbs +20 -0
  268. data/sig/dodopayments/models/misc_list_supported_countries_response.rbs +8 -0
  269. data/sig/dodopayments/models/one_time_product_cart_item.rbs +23 -0
  270. data/sig/dodopayments/models/payment.rbs +408 -0
  271. data/sig/dodopayments/models/payment_create_params.rbs +58 -0
  272. data/sig/dodopayments/models/payment_create_response.rbs +51 -0
  273. data/sig/dodopayments/models/payment_list_params.rbs +52 -0
  274. data/sig/dodopayments/models/payment_list_response.rbs +356 -0
  275. data/sig/dodopayments/models/payment_retrieve_params.rbs +19 -0
  276. data/sig/dodopayments/models/payout_list_params.rbs +29 -0
  277. data/sig/dodopayments/models/payout_list_response.rbs +386 -0
  278. data/sig/dodopayments/models/price.rbs +717 -0
  279. data/sig/dodopayments/models/product.rbs +89 -0
  280. data/sig/dodopayments/models/product_create_params.rbs +71 -0
  281. data/sig/dodopayments/models/product_delete_params.rbs +19 -0
  282. data/sig/dodopayments/models/product_list_params.rbs +42 -0
  283. data/sig/dodopayments/models/product_list_response.rbs +379 -0
  284. data/sig/dodopayments/models/product_retrieve_params.rbs +19 -0
  285. data/sig/dodopayments/models/product_unarchive_params.rbs +19 -0
  286. data/sig/dodopayments/models/product_update_params.rbs +75 -0
  287. data/sig/dodopayments/models/products/image_update_params.rbs +27 -0
  288. data/sig/dodopayments/models/products/image_update_response.rbs +22 -0
  289. data/sig/dodopayments/models/refund.rbs +345 -0
  290. data/sig/dodopayments/models/refund_create_params.rbs +32 -0
  291. data/sig/dodopayments/models/refund_list_params.rbs +48 -0
  292. data/sig/dodopayments/models/refund_retrieve_params.rbs +19 -0
  293. data/sig/dodopayments/models/refund_status.rbs +14 -0
  294. data/sig/dodopayments/models/subscription.rbs +387 -0
  295. data/sig/dodopayments/models/subscription_create_params.rbs +66 -0
  296. data/sig/dodopayments/models/subscription_create_response.rbs +47 -0
  297. data/sig/dodopayments/models/subscription_list_params.rbs +48 -0
  298. data/sig/dodopayments/models/subscription_retrieve_params.rbs +19 -0
  299. data/sig/dodopayments/models/subscription_status.rbs +18 -0
  300. data/sig/dodopayments/models/subscription_update_params.rbs +32 -0
  301. data/sig/dodopayments/models/time_interval.rbs +14 -0
  302. data/sig/dodopayments/models/webhook_event.rbs +50 -0
  303. data/sig/dodopayments/models/webhook_event_list_params.rbs +48 -0
  304. data/sig/dodopayments/models/webhook_event_retrieve_params.rbs +19 -0
  305. data/sig/dodopayments/pooled_net_requester.rbs +30 -0
  306. data/sig/dodopayments/request_options.rbs +46 -0
  307. data/sig/dodopayments/resources/customers/customer_portal.rbs +21 -0
  308. data/sig/dodopayments/resources/customers.rbs +55 -0
  309. data/sig/dodopayments/resources/discounts.rbs +73 -0
  310. data/sig/dodopayments/resources/disputes.rbs +33 -0
  311. data/sig/dodopayments/resources/invoices/payments.rbs +20 -0
  312. data/sig/dodopayments/resources/invoices.rbs +9 -0
  313. data/sig/dodopayments/resources/license_key_instances.rbs +42 -0
  314. data/sig/dodopayments/resources/license_keys.rbs +46 -0
  315. data/sig/dodopayments/resources/licenses.rbs +40 -0
  316. data/sig/dodopayments/resources/misc.rbs +16 -0
  317. data/sig/dodopayments/resources/payments.rbs +49 -0
  318. data/sig/dodopayments/resources/payouts.rbs +17 -0
  319. data/sig/dodopayments/resources/products/images.rbs +21 -0
  320. data/sig/dodopayments/resources/products.rbs +86 -0
  321. data/sig/dodopayments/resources/refunds.rbs +43 -0
  322. data/sig/dodopayments/resources/subscriptions.rbs +65 -0
  323. data/sig/dodopayments/resources/webhook_events.rbs +33 -0
  324. data/sig/dodopayments/util.rbs +136 -0
  325. data/sig/dodopayments/version.rbs +3 -0
  326. metadata +383 -0
@@ -0,0 +1,117 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ class Client < Dodopayments::BaseClient
5
+ DEFAULT_MAX_RETRIES = 2
6
+
7
+ DEFAULT_TIMEOUT_IN_SECONDS = T.let(60.0, Float)
8
+
9
+ DEFAULT_INITIAL_RETRY_DELAY = T.let(0.5, Float)
10
+
11
+ DEFAULT_MAX_RETRY_DELAY = T.let(8.0, Float)
12
+
13
+ ENVIRONMENTS = T.let(
14
+ {live_mode: "https://live.dodopayments.com", test_mode: "https://test.dodopayments.com"},
15
+ T::Hash[Symbol, String]
16
+ )
17
+
18
+ # Bearer Token for API authentication
19
+ sig { returns(String) }
20
+ def bearer_token
21
+ end
22
+
23
+ sig { returns(Dodopayments::Resources::Payments) }
24
+ def payments
25
+ end
26
+
27
+ sig { returns(Dodopayments::Resources::Subscriptions) }
28
+ def subscriptions
29
+ end
30
+
31
+ sig { returns(Dodopayments::Resources::Invoices) }
32
+ def invoices
33
+ end
34
+
35
+ sig { returns(Dodopayments::Resources::Licenses) }
36
+ def licenses
37
+ end
38
+
39
+ sig { returns(Dodopayments::Resources::LicenseKeys) }
40
+ def license_keys
41
+ end
42
+
43
+ sig { returns(Dodopayments::Resources::LicenseKeyInstances) }
44
+ def license_key_instances
45
+ end
46
+
47
+ sig { returns(Dodopayments::Resources::Customers) }
48
+ def customers
49
+ end
50
+
51
+ sig { returns(Dodopayments::Resources::Refunds) }
52
+ def refunds
53
+ end
54
+
55
+ sig { returns(Dodopayments::Resources::Disputes) }
56
+ def disputes
57
+ end
58
+
59
+ sig { returns(Dodopayments::Resources::Payouts) }
60
+ def payouts
61
+ end
62
+
63
+ sig { returns(Dodopayments::Resources::WebhookEvents) }
64
+ def webhook_events
65
+ end
66
+
67
+ sig { returns(Dodopayments::Resources::Products) }
68
+ def products
69
+ end
70
+
71
+ sig { returns(Dodopayments::Resources::Misc) }
72
+ def misc
73
+ end
74
+
75
+ sig { returns(Dodopayments::Resources::Discounts) }
76
+ def discounts
77
+ end
78
+
79
+ # @api private
80
+ sig { override.returns(T::Hash[String, String]) }
81
+ private def auth_headers
82
+ end
83
+
84
+ # Creates and returns a new client for interacting with the API.
85
+ sig do
86
+ params(
87
+ environment: NilClass,
88
+ base_url: T.nilable(String),
89
+ bearer_token: T.nilable(String),
90
+ max_retries: Integer,
91
+ timeout: Float,
92
+ initial_retry_delay: Float,
93
+ max_retry_delay: Float
94
+ )
95
+ .returns(T.attached_class)
96
+ end
97
+ def self.new(
98
+ # Specifies the environment to use for the API.
99
+ #
100
+ # Each environment maps to a different base URL:
101
+ #
102
+ # - `live_mode` corresponds to `https://live.dodopayments.com`
103
+ # - `test_mode` corresponds to `https://test.dodopayments.com`
104
+ environment: nil,
105
+ # Override the default base URL for the API, e.g., `"https://api.example.com/v2/"`
106
+ base_url: nil,
107
+ # Bearer Token for API authentication Defaults to `ENV["DODO_PAYMENTS_API_KEY"]`
108
+ bearer_token: ENV["DODO_PAYMENTS_API_KEY"],
109
+ # Max number of retries to attempt after a failed retryable request.
110
+ max_retries: DEFAULT_MAX_RETRIES,
111
+ timeout: DEFAULT_TIMEOUT_IN_SECONDS,
112
+ initial_retry_delay: DEFAULT_INITIAL_RETRY_DELAY,
113
+ max_retry_delay: DEFAULT_MAX_RETRY_DELAY
114
+ )
115
+ end
116
+ end
117
+ end
@@ -0,0 +1,17 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ class DefaultPageNumberPagination
5
+ include Dodopayments::BasePage
6
+
7
+ Elem = type_member
8
+
9
+ sig { returns(T.nilable(T::Array[Elem])) }
10
+ def items
11
+ end
12
+
13
+ sig { params(_: T.nilable(T::Array[Elem])).returns(T.nilable(T::Array[Elem])) }
14
+ def items=(_)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,179 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ class Error < StandardError
5
+ sig { returns(T.nilable(StandardError)) }
6
+ def cause
7
+ end
8
+
9
+ sig { params(_: T.nilable(StandardError)).returns(T.nilable(StandardError)) }
10
+ def cause=(_)
11
+ end
12
+ end
13
+
14
+ class ConversionError < Dodopayments::Error
15
+ end
16
+
17
+ class APIError < Dodopayments::Error
18
+ sig { returns(URI::Generic) }
19
+ def url
20
+ end
21
+
22
+ sig { params(_: URI::Generic).returns(URI::Generic) }
23
+ def url=(_)
24
+ end
25
+
26
+ sig { returns(T.nilable(Integer)) }
27
+ def status
28
+ end
29
+
30
+ sig { params(_: T.nilable(Integer)).returns(T.nilable(Integer)) }
31
+ def status=(_)
32
+ end
33
+
34
+ sig { returns(T.nilable(T.anything)) }
35
+ def body
36
+ end
37
+
38
+ sig { params(_: T.nilable(T.anything)).returns(T.nilable(T.anything)) }
39
+ def body=(_)
40
+ end
41
+
42
+ # @api private
43
+ sig do
44
+ params(
45
+ url: URI::Generic,
46
+ status: T.nilable(Integer),
47
+ body: T.nilable(Object),
48
+ request: NilClass,
49
+ response: NilClass,
50
+ message: T.nilable(String)
51
+ )
52
+ .returns(T.attached_class)
53
+ end
54
+ def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: nil)
55
+ end
56
+ end
57
+
58
+ class APIConnectionError < Dodopayments::APIError
59
+ sig { void }
60
+ def status
61
+ end
62
+
63
+ sig { params(_: NilClass).void }
64
+ def status=(_)
65
+ end
66
+
67
+ sig { void }
68
+ def body
69
+ end
70
+
71
+ sig { params(_: NilClass).void }
72
+ def body=(_)
73
+ end
74
+
75
+ # @api private
76
+ sig do
77
+ params(
78
+ url: URI::Generic,
79
+ status: NilClass,
80
+ body: NilClass,
81
+ request: NilClass,
82
+ response: NilClass,
83
+ message: T.nilable(String)
84
+ )
85
+ .returns(T.attached_class)
86
+ end
87
+ def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: "Connection error.")
88
+ end
89
+ end
90
+
91
+ class APITimeoutError < Dodopayments::APIConnectionError
92
+ # @api private
93
+ sig do
94
+ params(
95
+ url: URI::Generic,
96
+ status: NilClass,
97
+ body: NilClass,
98
+ request: NilClass,
99
+ response: NilClass,
100
+ message: T.nilable(String)
101
+ )
102
+ .returns(T.attached_class)
103
+ end
104
+ def self.new(url:, status: nil, body: nil, request: nil, response: nil, message: "Request timed out.")
105
+ end
106
+ end
107
+
108
+ class APIStatusError < Dodopayments::APIError
109
+ # @api private
110
+ sig do
111
+ params(
112
+ url: URI::Generic,
113
+ status: Integer,
114
+ body: T.nilable(Object),
115
+ request: NilClass,
116
+ response: NilClass,
117
+ message: T.nilable(String)
118
+ )
119
+ .returns(T.attached_class)
120
+ end
121
+ def self.for(url:, status:, body:, request:, response:, message: nil)
122
+ end
123
+
124
+ sig { returns(Integer) }
125
+ def status
126
+ end
127
+
128
+ sig { params(_: Integer).returns(Integer) }
129
+ def status=(_)
130
+ end
131
+
132
+ # @api private
133
+ sig do
134
+ params(
135
+ url: URI::Generic,
136
+ status: Integer,
137
+ body: T.nilable(Object),
138
+ request: NilClass,
139
+ response: NilClass,
140
+ message: T.nilable(String)
141
+ )
142
+ .returns(T.attached_class)
143
+ end
144
+ def self.new(url:, status:, body:, request:, response:, message: nil)
145
+ end
146
+ end
147
+
148
+ class BadRequestError < Dodopayments::APIStatusError
149
+ HTTP_STATUS = 400
150
+ end
151
+
152
+ class AuthenticationError < Dodopayments::APIStatusError
153
+ HTTP_STATUS = 401
154
+ end
155
+
156
+ class PermissionDeniedError < Dodopayments::APIStatusError
157
+ HTTP_STATUS = 403
158
+ end
159
+
160
+ class NotFoundError < Dodopayments::APIStatusError
161
+ HTTP_STATUS = 404
162
+ end
163
+
164
+ class ConflictError < Dodopayments::APIStatusError
165
+ HTTP_STATUS = 409
166
+ end
167
+
168
+ class UnprocessableEntityError < Dodopayments::APIStatusError
169
+ HTTP_STATUS = 422
170
+ end
171
+
172
+ class RateLimitError < Dodopayments::APIStatusError
173
+ HTTP_STATUS = 429
174
+ end
175
+
176
+ class InternalServerError < Dodopayments::APIStatusError
177
+ HTTP_STATUS = T.let((500..), T::Range[Integer])
178
+ end
179
+ end
@@ -0,0 +1,8 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ # @api private
5
+ module Extern
6
+ abstract!
7
+ end
8
+ end
@@ -0,0 +1,23 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class AttachExistingCustomer < Dodopayments::BaseModel
6
+ sig { returns(String) }
7
+ def customer_id
8
+ end
9
+
10
+ sig { params(_: String).returns(String) }
11
+ def customer_id=(_)
12
+ end
13
+
14
+ sig { params(customer_id: String).returns(T.attached_class) }
15
+ def self.new(customer_id:)
16
+ end
17
+
18
+ sig { override.returns({customer_id: String}) }
19
+ def to_hash
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,65 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class BillingAddress < Dodopayments::BaseModel
6
+ # City name
7
+ sig { returns(String) }
8
+ def city
9
+ end
10
+
11
+ sig { params(_: String).returns(String) }
12
+ def city=(_)
13
+ end
14
+
15
+ # ISO country code alpha2 variant
16
+ sig { returns(Symbol) }
17
+ def country
18
+ end
19
+
20
+ sig { params(_: Symbol).returns(Symbol) }
21
+ def country=(_)
22
+ end
23
+
24
+ # State or province name
25
+ sig { returns(String) }
26
+ def state
27
+ end
28
+
29
+ sig { params(_: String).returns(String) }
30
+ def state=(_)
31
+ end
32
+
33
+ # Street address including house number and unit/apartment if applicable
34
+ sig { returns(String) }
35
+ def street
36
+ end
37
+
38
+ sig { params(_: String).returns(String) }
39
+ def street=(_)
40
+ end
41
+
42
+ # Postal code or ZIP code
43
+ sig { returns(String) }
44
+ def zipcode
45
+ end
46
+
47
+ sig { params(_: String).returns(String) }
48
+ def zipcode=(_)
49
+ end
50
+
51
+ sig do
52
+ params(city: String, country: Symbol, state: String, street: String, zipcode: String)
53
+ .returns(T.attached_class)
54
+ end
55
+ def self.new(city:, country:, state:, street:, zipcode:)
56
+ end
57
+
58
+ sig do
59
+ override.returns({city: String, country: Symbol, state: String, street: String, zipcode: String})
60
+ end
61
+ def to_hash
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,266 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ module Models
5
+ # ISO country code alpha2 variant
6
+ class CountryCode < Dodopayments::Enum
7
+ abstract!
8
+
9
+ AF = :AF
10
+ AX = :AX
11
+ AL = :AL
12
+ DZ = :DZ
13
+ AS = :AS
14
+ AD = :AD
15
+ AO = :AO
16
+ AI = :AI
17
+ AQ = :AQ
18
+ AG = :AG
19
+ AR = :AR
20
+ AM = :AM
21
+ AW = :AW
22
+ AU = :AU
23
+ AT = :AT
24
+ AZ = :AZ
25
+ BS = :BS
26
+ BH = :BH
27
+ BD = :BD
28
+ BB = :BB
29
+ BY = :BY
30
+ BE = :BE
31
+ BZ = :BZ
32
+ BJ = :BJ
33
+ BM = :BM
34
+ BT = :BT
35
+ BO = :BO
36
+ BQ = :BQ
37
+ BA = :BA
38
+ BW = :BW
39
+ BV = :BV
40
+ BR = :BR
41
+ IO = :IO
42
+ BN = :BN
43
+ BG = :BG
44
+ BF = :BF
45
+ BI = :BI
46
+ KH = :KH
47
+ CM = :CM
48
+ CA = :CA
49
+ CV = :CV
50
+ KY = :KY
51
+ CF = :CF
52
+ TD = :TD
53
+ CL = :CL
54
+ CN = :CN
55
+ CX = :CX
56
+ CC = :CC
57
+ CO = :CO
58
+ KM = :KM
59
+ CG = :CG
60
+ CD = :CD
61
+ CK = :CK
62
+ CR = :CR
63
+ CI = :CI
64
+ HR = :HR
65
+ CU = :CU
66
+ CW = :CW
67
+ CY = :CY
68
+ CZ = :CZ
69
+ DK = :DK
70
+ DJ = :DJ
71
+ DM = :DM
72
+ DO = :DO
73
+ EC = :EC
74
+ EG = :EG
75
+ SV = :SV
76
+ GQ = :GQ
77
+ ER = :ER
78
+ EE = :EE
79
+ ET = :ET
80
+ FK = :FK
81
+ FO = :FO
82
+ FJ = :FJ
83
+ FI = :FI
84
+ FR = :FR
85
+ GF = :GF
86
+ PF = :PF
87
+ TF = :TF
88
+ GA = :GA
89
+ GM = :GM
90
+ GE = :GE
91
+ DE = :DE
92
+ GH = :GH
93
+ GI = :GI
94
+ GR = :GR
95
+ GL = :GL
96
+ GD = :GD
97
+ GP = :GP
98
+ GU = :GU
99
+ GT = :GT
100
+ GG = :GG
101
+ GN = :GN
102
+ GW = :GW
103
+ GY = :GY
104
+ HT = :HT
105
+ HM = :HM
106
+ VA = :VA
107
+ HN = :HN
108
+ HK = :HK
109
+ HU = :HU
110
+ IS = :IS
111
+ IN = :IN
112
+ ID = :ID
113
+ IR = :IR
114
+ IQ = :IQ
115
+ IE = :IE
116
+ IM = :IM
117
+ IL = :IL
118
+ IT = :IT
119
+ JM = :JM
120
+ JP = :JP
121
+ JE = :JE
122
+ JO = :JO
123
+ KZ = :KZ
124
+ KE = :KE
125
+ KI = :KI
126
+ KP = :KP
127
+ KR = :KR
128
+ KW = :KW
129
+ KG = :KG
130
+ LA = :LA
131
+ LV = :LV
132
+ LB = :LB
133
+ LS = :LS
134
+ LR = :LR
135
+ LY = :LY
136
+ LI = :LI
137
+ LT = :LT
138
+ LU = :LU
139
+ MO = :MO
140
+ MK = :MK
141
+ MG = :MG
142
+ MW = :MW
143
+ MY = :MY
144
+ MV = :MV
145
+ ML = :ML
146
+ MT = :MT
147
+ MH = :MH
148
+ MQ = :MQ
149
+ MR = :MR
150
+ MU = :MU
151
+ YT = :YT
152
+ MX = :MX
153
+ FM = :FM
154
+ MD = :MD
155
+ MC = :MC
156
+ MN = :MN
157
+ ME = :ME
158
+ MS = :MS
159
+ MA = :MA
160
+ MZ = :MZ
161
+ MM = :MM
162
+ NA = :NA
163
+ NR = :NR
164
+ NP = :NP
165
+ NL = :NL
166
+ NC = :NC
167
+ NZ = :NZ
168
+ NI = :NI
169
+ NE = :NE
170
+ NG = :NG
171
+ NU = :NU
172
+ NF = :NF
173
+ MP = :MP
174
+ NO = :NO
175
+ OM = :OM
176
+ PK = :PK
177
+ PW = :PW
178
+ PS = :PS
179
+ PA = :PA
180
+ PG = :PG
181
+ PY = :PY
182
+ PE = :PE
183
+ PH = :PH
184
+ PN = :PN
185
+ PL = :PL
186
+ PT = :PT
187
+ PR = :PR
188
+ QA = :QA
189
+ RE = :RE
190
+ RO = :RO
191
+ RU = :RU
192
+ RW = :RW
193
+ BL = :BL
194
+ SH = :SH
195
+ KN = :KN
196
+ LC = :LC
197
+ MF = :MF
198
+ PM = :PM
199
+ VC = :VC
200
+ WS = :WS
201
+ SM = :SM
202
+ ST = :ST
203
+ SA = :SA
204
+ SN = :SN
205
+ RS = :RS
206
+ SC = :SC
207
+ SL = :SL
208
+ SG = :SG
209
+ SX = :SX
210
+ SK = :SK
211
+ SI = :SI
212
+ SB = :SB
213
+ SO = :SO
214
+ ZA = :ZA
215
+ GS = :GS
216
+ SS = :SS
217
+ ES = :ES
218
+ LK = :LK
219
+ SD = :SD
220
+ SR = :SR
221
+ SJ = :SJ
222
+ SZ = :SZ
223
+ SE = :SE
224
+ CH = :CH
225
+ SY = :SY
226
+ TW = :TW
227
+ TJ = :TJ
228
+ TZ = :TZ
229
+ TH = :TH
230
+ TL = :TL
231
+ TG = :TG
232
+ TK = :TK
233
+ TO = :TO
234
+ TT = :TT
235
+ TN = :TN
236
+ TR = :TR
237
+ TM = :TM
238
+ TC = :TC
239
+ TV = :TV
240
+ UG = :UG
241
+ UA = :UA
242
+ AE = :AE
243
+ GB = :GB
244
+ UM = :UM
245
+ US = :US
246
+ UY = :UY
247
+ UZ = :UZ
248
+ VU = :VU
249
+ VE = :VE
250
+ VN = :VN
251
+ VG = :VG
252
+ VI = :VI
253
+ WF = :WF
254
+ EH = :EH
255
+ YE = :YE
256
+ ZM = :ZM
257
+ ZW = :ZW
258
+
259
+ class << self
260
+ sig { override.returns(T::Array[Symbol]) }
261
+ def values
262
+ end
263
+ end
264
+ end
265
+ end
266
+ end