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,110 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ # @api private
5
+ #
6
+ # @abstract
7
+ module RequestParameters
8
+ # @!parse
9
+ # # Options to specify HTTP behaviour for this request.
10
+ # # @return [Dodopayments::RequestOptions, Hash{Symbol=>Object}]
11
+ # attr_accessor :request_options
12
+
13
+ # @param mod [Module]
14
+ def self.included(mod)
15
+ return unless mod <= Dodopayments::BaseModel
16
+
17
+ mod.extend(Dodopayments::RequestParameters::Converter)
18
+ mod.optional(:request_options, Dodopayments::RequestOptions)
19
+ end
20
+
21
+ # @api private
22
+ module Converter
23
+ # @api private
24
+ #
25
+ # @param params [Object]
26
+ #
27
+ # @return [Array(Object, Hash{Symbol=>Object})]
28
+ def dump_request(params)
29
+ case (dumped = dump(params))
30
+ in Hash
31
+ [dumped.except(:request_options), dumped[:request_options]]
32
+ else
33
+ [dumped, nil]
34
+ end
35
+ end
36
+ end
37
+ end
38
+
39
+ # Specify HTTP behaviour to use for a specific request. These options supplement
40
+ # or override those provided at the client level.
41
+ #
42
+ # When making a request, you can pass an actual {RequestOptions} instance, or
43
+ # simply pass a Hash with symbol keys matching the attributes on this class.
44
+ class RequestOptions < Dodopayments::BaseModel
45
+ # @api private
46
+ #
47
+ # @param opts [Dodopayments::RequestOptions, Hash{Symbol=>Object}]
48
+ #
49
+ # @raise [ArgumentError]
50
+ def self.validate!(opts)
51
+ case opts
52
+ in Dodopayments::RequestOptions | Hash
53
+ opts.to_h.each_key do |k|
54
+ unless fields.include?(k)
55
+ raise ArgumentError.new("Request `opts` keys must be one of #{fields.keys}, got #{k.inspect}")
56
+ end
57
+ end
58
+ else
59
+ raise ArgumentError.new("Request `opts` must be a Hash or RequestOptions, got #{opts.inspect}")
60
+ end
61
+ end
62
+
63
+ # @!attribute idempotency_key
64
+ # Idempotency key to send with request and all associated retries. Will only be
65
+ # sent for write requests.
66
+ #
67
+ # @return [String, nil]
68
+ optional :idempotency_key, String
69
+
70
+ # @!attribute extra_query
71
+ # Extra query params to send with the request. These are `.merge`’d into any
72
+ # `query` given at the client level.
73
+ #
74
+ # @return [Hash{String=>Array<String>, String, nil}, nil]
75
+ optional :extra_query, Dodopayments::HashOf[Dodopayments::ArrayOf[String]]
76
+
77
+ # @!attribute extra_headers
78
+ # Extra headers to send with the request. These are `.merged`’d into any
79
+ # `extra_headers` given at the client level.
80
+ #
81
+ # @return [Hash{String=>String, nil}, nil]
82
+ optional :extra_headers, Dodopayments::HashOf[String, nil?: true]
83
+
84
+ # @!attribute extra_body
85
+ # Extra data to send with the request. These are deep merged into any data
86
+ # generated as part of the normal request.
87
+ #
88
+ # @return [Hash{Symbol=>Object}, nil]
89
+ optional :extra_body, Dodopayments::HashOf[Dodopayments::Unknown]
90
+
91
+ # @!attribute max_retries
92
+ # Maximum number of retries to attempt after a failed initial request.
93
+ #
94
+ # @return [Integer, nil]
95
+ optional :max_retries, Integer
96
+
97
+ # @!attribute timeout
98
+ # Request timeout in seconds.
99
+ #
100
+ # @return [Float, nil]
101
+ optional :timeout, Float
102
+
103
+ # @!parse
104
+ # # Returns a new instance of RequestOptions.
105
+ # #
106
+ # # @param values [Hash{Symbol=>Object}]
107
+ # #
108
+ # def initialize(values = {}) = super
109
+ end
110
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class Customers
6
+ class CustomerPortal
7
+ # @param customer_id [String] Customer Id
8
+ #
9
+ # @param params [Dodopayments::Models::Customers::CustomerPortalCreateParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [Boolean, nil] :send_email If true, will send link to user.
12
+ #
13
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
14
+ #
15
+ # @return [nil]
16
+ def create(customer_id, params = {})
17
+ parsed, options = Dodopayments::Models::Customers::CustomerPortalCreateParams.dump_request(params)
18
+ @client.request(
19
+ method: :post,
20
+ path: ["customers/%0s/customer-portal/session", customer_id],
21
+ query: parsed,
22
+ model: NilClass,
23
+ options: options
24
+ )
25
+ end
26
+
27
+ # @param client [Dodopayments::Client]
28
+ def initialize(client:)
29
+ @client = client
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,97 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class Customers
6
+ # @return [Dodopayments::Resources::Customers::CustomerPortal]
7
+ attr_reader :customer_portal
8
+
9
+ # @param params [Dodopayments::Models::CustomerCreateParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [String] :email
12
+ #
13
+ # @option params [String] :name
14
+ #
15
+ # @option params [String, nil] :phone_number
16
+ #
17
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
18
+ #
19
+ # @return [Dodopayments::Models::Customer]
20
+ def create(params)
21
+ parsed, options = Dodopayments::Models::CustomerCreateParams.dump_request(params)
22
+ @client.request(
23
+ method: :post,
24
+ path: "customers",
25
+ body: parsed,
26
+ model: Dodopayments::Models::Customer,
27
+ options: options
28
+ )
29
+ end
30
+
31
+ # @param customer_id [String] Customer Id
32
+ #
33
+ # @param params [Dodopayments::Models::CustomerRetrieveParams, Hash{Symbol=>Object}] .
34
+ #
35
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
36
+ #
37
+ # @return [Dodopayments::Models::Customer]
38
+ def retrieve(customer_id, params = {})
39
+ @client.request(
40
+ method: :get,
41
+ path: ["customers/%0s", customer_id],
42
+ model: Dodopayments::Models::Customer,
43
+ options: params[:request_options]
44
+ )
45
+ end
46
+
47
+ # @param customer_id [String] Customer Id
48
+ #
49
+ # @param params [Dodopayments::Models::CustomerUpdateParams, Hash{Symbol=>Object}] .
50
+ #
51
+ # @option params [String, nil] :name
52
+ #
53
+ # @option params [String, nil] :phone_number
54
+ #
55
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
56
+ #
57
+ # @return [Dodopayments::Models::Customer]
58
+ def update(customer_id, params = {})
59
+ parsed, options = Dodopayments::Models::CustomerUpdateParams.dump_request(params)
60
+ @client.request(
61
+ method: :patch,
62
+ path: ["customers/%0s", customer_id],
63
+ body: parsed,
64
+ model: Dodopayments::Models::Customer,
65
+ options: options
66
+ )
67
+ end
68
+
69
+ # @param params [Dodopayments::Models::CustomerListParams, Hash{Symbol=>Object}] .
70
+ #
71
+ # @option params [Integer, nil] :page_number Page number default is 0
72
+ #
73
+ # @option params [Integer, nil] :page_size Page size default is 10 max is 100
74
+ #
75
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
76
+ #
77
+ # @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::Customer>]
78
+ def list(params = {})
79
+ parsed, options = Dodopayments::Models::CustomerListParams.dump_request(params)
80
+ @client.request(
81
+ method: :get,
82
+ path: "customers",
83
+ query: parsed,
84
+ page: Dodopayments::DefaultPageNumberPagination,
85
+ model: Dodopayments::Models::Customer,
86
+ options: options
87
+ )
88
+ end
89
+
90
+ # @param client [Dodopayments::Client]
91
+ def initialize(client:)
92
+ @client = client
93
+ @customer_portal = Dodopayments::Resources::Customers::CustomerPortal.new(client: client)
94
+ end
95
+ end
96
+ end
97
+ end
@@ -0,0 +1,154 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class Discounts
6
+ # If `code` is omitted or empty, a random 16-char uppercase code is generated.
7
+ #
8
+ # @param params [Dodopayments::Models::DiscountCreateParams, Hash{Symbol=>Object}] .
9
+ #
10
+ # @option params [Integer] :amount The discount amount.
11
+ #
12
+ # - If `discount_type` is **not** `percentage`, `amount` is in **USD cents**. For
13
+ # example, `100` means `$1.00`. Only USD is allowed.
14
+ # - If `discount_type` **is** `percentage`, `amount` is in **basis points**. For
15
+ # example, `540` means `5.4%`.
16
+ #
17
+ # Must be at least 1.
18
+ #
19
+ # @option params [Symbol, Dodopayments::Models::DiscountType] :type
20
+ #
21
+ # @option params [String, nil] :code Optionally supply a code (will be uppercased).
22
+ #
23
+ # - Must be at least 3 characters if provided.
24
+ # - If omitted, a random 16-character code is generated.
25
+ #
26
+ # @option params [Time, nil] :expires_at When the discount expires, if ever.
27
+ #
28
+ # @option params [String, nil] :name
29
+ #
30
+ # @option params [Array<String>, nil] :restricted_to List of product IDs to restrict usage (if any).
31
+ #
32
+ # @option params [Integer, nil] :usage_limit How many times this discount can be used (if any). Must be >= 1 if provided.
33
+ #
34
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
35
+ #
36
+ # @return [Dodopayments::Models::Discount]
37
+ def create(params)
38
+ parsed, options = Dodopayments::Models::DiscountCreateParams.dump_request(params)
39
+ @client.request(
40
+ method: :post,
41
+ path: "discounts",
42
+ body: parsed,
43
+ model: Dodopayments::Models::Discount,
44
+ options: options
45
+ )
46
+ end
47
+
48
+ # GET /discounts/{discount_id}
49
+ #
50
+ # @param discount_id [String] Discount Id
51
+ #
52
+ # @param params [Dodopayments::Models::DiscountRetrieveParams, Hash{Symbol=>Object}] .
53
+ #
54
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
55
+ #
56
+ # @return [Dodopayments::Models::Discount]
57
+ def retrieve(discount_id, params = {})
58
+ @client.request(
59
+ method: :get,
60
+ path: ["discounts/%0s", discount_id],
61
+ model: Dodopayments::Models::Discount,
62
+ options: params[:request_options]
63
+ )
64
+ end
65
+
66
+ # PATCH /discounts/{discount_id}
67
+ #
68
+ # @param discount_id [String] Discount Id
69
+ #
70
+ # @param params [Dodopayments::Models::DiscountUpdateParams, Hash{Symbol=>Object}] .
71
+ #
72
+ # @option params [Integer, nil] :amount If present, update the discount amount:
73
+ #
74
+ # - If `discount_type` is `percentage`, this represents **basis points** (e.g.,
75
+ # `540` = `5.4%`).
76
+ # - Otherwise, this represents **USD cents** (e.g., `100` = `$1.00`).
77
+ #
78
+ # Must be at least 1 if provided.
79
+ #
80
+ # @option params [String, nil] :code If present, update the discount code (uppercase).
81
+ #
82
+ # @option params [Time, nil] :expires_at
83
+ #
84
+ # @option params [String, nil] :name
85
+ #
86
+ # @option params [Array<String>, nil] :restricted_to If present, replaces all restricted product IDs with this new set. To remove all
87
+ # restrictions, send empty array
88
+ #
89
+ # @option params [Symbol, Dodopayments::Models::DiscountType, nil] :type
90
+ #
91
+ # @option params [Integer, nil] :usage_limit
92
+ #
93
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
94
+ #
95
+ # @return [Dodopayments::Models::Discount]
96
+ def update(discount_id, params = {})
97
+ parsed, options = Dodopayments::Models::DiscountUpdateParams.dump_request(params)
98
+ @client.request(
99
+ method: :patch,
100
+ path: ["discounts/%0s", discount_id],
101
+ body: parsed,
102
+ model: Dodopayments::Models::Discount,
103
+ options: options
104
+ )
105
+ end
106
+
107
+ # GET /discounts
108
+ #
109
+ # @param params [Dodopayments::Models::DiscountListParams, Hash{Symbol=>Object}] .
110
+ #
111
+ # @option params [Integer, nil] :page_number Page number (default = 0).
112
+ #
113
+ # @option params [Integer, nil] :page_size Page size (default = 10, max = 100).
114
+ #
115
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
116
+ #
117
+ # @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::Discount>]
118
+ def list(params = {})
119
+ parsed, options = Dodopayments::Models::DiscountListParams.dump_request(params)
120
+ @client.request(
121
+ method: :get,
122
+ path: "discounts",
123
+ query: parsed,
124
+ page: Dodopayments::DefaultPageNumberPagination,
125
+ model: Dodopayments::Models::Discount,
126
+ options: options
127
+ )
128
+ end
129
+
130
+ # DELETE /discounts/{discount_id}
131
+ #
132
+ # @param discount_id [String] Discount Id
133
+ #
134
+ # @param params [Dodopayments::Models::DiscountDeleteParams, Hash{Symbol=>Object}] .
135
+ #
136
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
137
+ #
138
+ # @return [nil]
139
+ def delete(discount_id, params = {})
140
+ @client.request(
141
+ method: :delete,
142
+ path: ["discounts/%0s", discount_id],
143
+ model: NilClass,
144
+ options: params[:request_options]
145
+ )
146
+ end
147
+
148
+ # @param client [Dodopayments::Client]
149
+ def initialize(client:)
150
+ @client = client
151
+ end
152
+ end
153
+ end
154
+ end
@@ -0,0 +1,59 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class Disputes
6
+ # @param dispute_id [String] Dispute Id
7
+ #
8
+ # @param params [Dodopayments::Models::DisputeRetrieveParams, Hash{Symbol=>Object}] .
9
+ #
10
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
11
+ #
12
+ # @return [Dodopayments::Models::Dispute]
13
+ def retrieve(dispute_id, params = {})
14
+ @client.request(
15
+ method: :get,
16
+ path: ["disputes/%0s", dispute_id],
17
+ model: Dodopayments::Models::Dispute,
18
+ options: params[:request_options]
19
+ )
20
+ end
21
+
22
+ # @param params [Dodopayments::Models::DisputeListParams, Hash{Symbol=>Object}] .
23
+ #
24
+ # @option params [Time, nil] :created_at_gte Get events after this created time
25
+ #
26
+ # @option params [Time, nil] :created_at_lte Get events created before this time
27
+ #
28
+ # @option params [String, nil] :customer_id Filter by customer_id
29
+ #
30
+ # @option params [Symbol, Dodopayments::Models::DisputeStage, nil] :dispute_stage Filter by dispute stage
31
+ #
32
+ # @option params [Symbol, Dodopayments::Models::DisputeStatus, nil] :dispute_status Filter by dispute status
33
+ #
34
+ # @option params [Integer, nil] :page_number Page number default is 0
35
+ #
36
+ # @option params [Integer, nil] :page_size Page size default is 10 max is 100
37
+ #
38
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
39
+ #
40
+ # @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::Dispute>]
41
+ def list(params = {})
42
+ parsed, options = Dodopayments::Models::DisputeListParams.dump_request(params)
43
+ @client.request(
44
+ method: :get,
45
+ path: "disputes",
46
+ query: parsed,
47
+ page: Dodopayments::DefaultPageNumberPagination,
48
+ model: Dodopayments::Models::Dispute,
49
+ options: options
50
+ )
51
+ end
52
+
53
+ # @param client [Dodopayments::Client]
54
+ def initialize(client:)
55
+ @client = client
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class Invoices
6
+ class Payments
7
+ # @param payment_id [String]
8
+ #
9
+ # @param params [Dodopayments::Models::Invoices::PaymentRetrieveParams, Hash{Symbol=>Object}] .
10
+ #
11
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
12
+ #
13
+ # @return [nil]
14
+ def retrieve(payment_id, params = {})
15
+ @client.request(
16
+ method: :get,
17
+ path: ["invoices/payments/%0s", payment_id],
18
+ model: NilClass,
19
+ options: params[:request_options]
20
+ )
21
+ end
22
+
23
+ # @param client [Dodopayments::Client]
24
+ def initialize(client:)
25
+ @client = client
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,16 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class Invoices
6
+ # @return [Dodopayments::Resources::Invoices::Payments]
7
+ attr_reader :payments
8
+
9
+ # @param client [Dodopayments::Client]
10
+ def initialize(client:)
11
+ @client = client
12
+ @payments = Dodopayments::Resources::Invoices::Payments.new(client: client)
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,71 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class LicenseKeyInstances
6
+ # @param id [String] License key instance ID
7
+ #
8
+ # @param params [Dodopayments::Models::LicenseKeyInstanceRetrieveParams, Hash{Symbol=>Object}] .
9
+ #
10
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
11
+ #
12
+ # @return [Dodopayments::Models::LicenseKeyInstance]
13
+ def retrieve(id, params = {})
14
+ @client.request(
15
+ method: :get,
16
+ path: ["license_key_instances/%0s", id],
17
+ model: Dodopayments::Models::LicenseKeyInstance,
18
+ options: params[:request_options]
19
+ )
20
+ end
21
+
22
+ # @param id [String] License key instance ID
23
+ #
24
+ # @param params [Dodopayments::Models::LicenseKeyInstanceUpdateParams, Hash{Symbol=>Object}] .
25
+ #
26
+ # @option params [String] :name
27
+ #
28
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
29
+ #
30
+ # @return [Dodopayments::Models::LicenseKeyInstance]
31
+ def update(id, params)
32
+ parsed, options = Dodopayments::Models::LicenseKeyInstanceUpdateParams.dump_request(params)
33
+ @client.request(
34
+ method: :patch,
35
+ path: ["license_key_instances/%0s", id],
36
+ body: parsed,
37
+ model: Dodopayments::Models::LicenseKeyInstance,
38
+ options: options
39
+ )
40
+ end
41
+
42
+ # @param params [Dodopayments::Models::LicenseKeyInstanceListParams, Hash{Symbol=>Object}] .
43
+ #
44
+ # @option params [String, nil] :license_key_id Filter by license key ID
45
+ #
46
+ # @option params [Integer, nil] :page_number Page number default is 0
47
+ #
48
+ # @option params [Integer, nil] :page_size Page size default is 10 max is 100
49
+ #
50
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
51
+ #
52
+ # @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::LicenseKeyInstance>]
53
+ def list(params = {})
54
+ parsed, options = Dodopayments::Models::LicenseKeyInstanceListParams.dump_request(params)
55
+ @client.request(
56
+ method: :get,
57
+ path: "license_key_instances",
58
+ query: parsed,
59
+ page: Dodopayments::DefaultPageNumberPagination,
60
+ model: Dodopayments::Models::LicenseKeyInstance,
61
+ options: options
62
+ )
63
+ end
64
+
65
+ # @param client [Dodopayments::Client]
66
+ def initialize(client:)
67
+ @client = client
68
+ end
69
+ end
70
+ end
71
+ end
@@ -0,0 +1,82 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class LicenseKeys
6
+ # @param id [String] License key ID
7
+ #
8
+ # @param params [Dodopayments::Models::LicenseKeyRetrieveParams, Hash{Symbol=>Object}] .
9
+ #
10
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
11
+ #
12
+ # @return [Dodopayments::Models::LicenseKey]
13
+ def retrieve(id, params = {})
14
+ @client.request(
15
+ method: :get,
16
+ path: ["license_keys/%0s", id],
17
+ model: Dodopayments::Models::LicenseKey,
18
+ options: params[:request_options]
19
+ )
20
+ end
21
+
22
+ # @param id [String] License key ID
23
+ #
24
+ # @param params [Dodopayments::Models::LicenseKeyUpdateParams, Hash{Symbol=>Object}] .
25
+ #
26
+ # @option params [Integer, nil] :activations_limit The updated activation limit for the license key. Use `null` to remove the
27
+ # limit, or omit this field to leave it unchanged.
28
+ #
29
+ # @option params [Boolean, nil] :disabled Indicates whether the license key should be disabled. A value of `true` disables
30
+ # the key, while `false` enables it. Omit this field to leave it unchanged.
31
+ #
32
+ # @option params [Time, nil] :expires_at The updated expiration timestamp for the license key in UTC. Use `null` to
33
+ # remove the expiration date, or omit this field to leave it unchanged.
34
+ #
35
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
36
+ #
37
+ # @return [Dodopayments::Models::LicenseKey]
38
+ def update(id, params = {})
39
+ parsed, options = Dodopayments::Models::LicenseKeyUpdateParams.dump_request(params)
40
+ @client.request(
41
+ method: :patch,
42
+ path: ["license_keys/%0s", id],
43
+ body: parsed,
44
+ model: Dodopayments::Models::LicenseKey,
45
+ options: options
46
+ )
47
+ end
48
+
49
+ # @param params [Dodopayments::Models::LicenseKeyListParams, Hash{Symbol=>Object}] .
50
+ #
51
+ # @option params [String, nil] :customer_id Filter by customer ID
52
+ #
53
+ # @option params [Integer, nil] :page_number Page number default is 0
54
+ #
55
+ # @option params [Integer, nil] :page_size Page size default is 10 max is 100
56
+ #
57
+ # @option params [String, nil] :product_id Filter by product ID
58
+ #
59
+ # @option params [Symbol, Dodopayments::Models::LicenseKeyStatus, nil] :status Filter by license key status
60
+ #
61
+ # @option params [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil] :request_options
62
+ #
63
+ # @return [Dodopayments::DefaultPageNumberPagination<Dodopayments::Models::LicenseKey>]
64
+ def list(params = {})
65
+ parsed, options = Dodopayments::Models::LicenseKeyListParams.dump_request(params)
66
+ @client.request(
67
+ method: :get,
68
+ path: "license_keys",
69
+ query: parsed,
70
+ page: Dodopayments::DefaultPageNumberPagination,
71
+ model: Dodopayments::Models::LicenseKey,
72
+ options: options
73
+ )
74
+ end
75
+
76
+ # @param client [Dodopayments::Client]
77
+ def initialize(client:)
78
+ @client = client
79
+ end
80
+ end
81
+ end
82
+ end