kintsugi_sdk 5.5.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 (278) hide show
  1. checksums.yaml +7 -0
  2. data/lib/crystalline/metadata_fields.rb +209 -0
  3. data/lib/crystalline/module.rb +92 -0
  4. data/lib/crystalline/types.rb +78 -0
  5. data/lib/crystalline/utils.rb +56 -0
  6. data/lib/crystalline.rb +13 -0
  7. data/lib/kintsugi_sdk/addressvalidation.rb +350 -0
  8. data/lib/kintsugi_sdk/customers.rb +981 -0
  9. data/lib/kintsugi_sdk/exemptions.rb +779 -0
  10. data/lib/kintsugi_sdk/models/callbacks.rb +12 -0
  11. data/lib/kintsugi_sdk/models/errors/apierror.rb +37 -0
  12. data/lib/kintsugi_sdk/models/errors/apierror.rbi +16 -0
  13. data/lib/kintsugi_sdk/models/errors/backend_src_address_validation_responses_validationerrorresponse.rb +33 -0
  14. data/lib/kintsugi_sdk/models/errors/backend_src_address_validation_responses_validationerrorresponse.rbi +13 -0
  15. data/lib/kintsugi_sdk/models/errors/backend_src_customers_responses_validationerrorresponse.rb +33 -0
  16. data/lib/kintsugi_sdk/models/errors/backend_src_customers_responses_validationerrorresponse.rbi +13 -0
  17. data/lib/kintsugi_sdk/models/errors/backend_src_exemptions_responses_validationerrorresponse.rb +33 -0
  18. data/lib/kintsugi_sdk/models/errors/backend_src_exemptions_responses_validationerrorresponse.rbi +13 -0
  19. data/lib/kintsugi_sdk/models/errors/backend_src_products_responses_validationerrorresponse.rb +33 -0
  20. data/lib/kintsugi_sdk/models/errors/backend_src_products_responses_validationerrorresponse.rbi +13 -0
  21. data/lib/kintsugi_sdk/models/errors/backend_src_tax_estimation_responses_validationerrorresponse.rb +33 -0
  22. data/lib/kintsugi_sdk/models/errors/backend_src_tax_estimation_responses_validationerrorresponse.rbi +13 -0
  23. data/lib/kintsugi_sdk/models/errors/backend_src_transactions_responses_validationerrorresponse.rb +33 -0
  24. data/lib/kintsugi_sdk/models/errors/backend_src_transactions_responses_validationerrorresponse.rbi +13 -0
  25. data/lib/kintsugi_sdk/models/errors/errorresponse.rb +33 -0
  26. data/lib/kintsugi_sdk/models/errors/errorresponse.rbi +13 -0
  27. data/lib/kintsugi_sdk/models/errors/httpvalidationerror.rb +33 -0
  28. data/lib/kintsugi_sdk/models/errors/httpvalidationerror.rbi +13 -0
  29. data/lib/kintsugi_sdk/models/errors.rb +20 -0
  30. data/lib/kintsugi_sdk/models/ops/createtransactionbycustomer_request.rb +37 -0
  31. data/lib/kintsugi_sdk/models/ops/createtransactionbycustomer_request.rbi +15 -0
  32. data/lib/kintsugi_sdk/models/ops/estimate_tax_v1_tax_estimate_post_request.rb +39 -0
  33. data/lib/kintsugi_sdk/models/ops/estimate_tax_v1_tax_estimate_post_request.rbi +15 -0
  34. data/lib/kintsugi_sdk/models/ops/get_customer_by_external_id_v1_customers_external_external_id_get_request.rb +33 -0
  35. data/lib/kintsugi_sdk/models/ops/get_customer_by_external_id_v1_customers_external_external_id_get_request.rbi +13 -0
  36. data/lib/kintsugi_sdk/models/ops/get_customer_by_id_v1_customers_customer_id_get_request.rb +33 -0
  37. data/lib/kintsugi_sdk/models/ops/get_customer_by_id_v1_customers_customer_id_get_request.rbi +13 -0
  38. data/lib/kintsugi_sdk/models/ops/get_customers_v1_request.rb +57 -0
  39. data/lib/kintsugi_sdk/models/ops/get_customers_v1_request.rbi +25 -0
  40. data/lib/kintsugi_sdk/models/ops/get_exemption_by_id_v1_exemptions_exemption_id_get_request.rb +33 -0
  41. data/lib/kintsugi_sdk/models/ops/get_exemption_by_id_v1_exemptions_exemption_id_get_request.rbi +13 -0
  42. data/lib/kintsugi_sdk/models/ops/get_exemptions_v1_exemptions_get_request.rb +73 -0
  43. data/lib/kintsugi_sdk/models/ops/get_exemptions_v1_exemptions_get_request.rbi +33 -0
  44. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_request.rb +57 -0
  45. data/lib/kintsugi_sdk/models/ops/get_nexus_for_org_v1_nexus_get_request.rbi +25 -0
  46. data/lib/kintsugi_sdk/models/ops/get_product_by_id_v1_products_product_id_get_request.rb +33 -0
  47. data/lib/kintsugi_sdk/models/ops/get_product_by_id_v1_products_product_id_get_request.rbi +13 -0
  48. data/lib/kintsugi_sdk/models/ops/get_products_v1_products_get_request.rb +61 -0
  49. data/lib/kintsugi_sdk/models/ops/get_products_v1_products_get_request.rbi +27 -0
  50. data/lib/kintsugi_sdk/models/ops/get_transaction_by_id_v1_transactions_transaction_id_get_request.rb +33 -0
  51. data/lib/kintsugi_sdk/models/ops/get_transaction_by_id_v1_transactions_transaction_id_get_request.rbi +13 -0
  52. data/lib/kintsugi_sdk/models/ops/get_transactions_v1_transactions_get_request.rb +107 -0
  53. data/lib/kintsugi_sdk/models/ops/get_transactions_v1_transactions_get_request.rbi +45 -0
  54. data/lib/kintsugi_sdk/models/ops/getexemptionattachments_request.rb +34 -0
  55. data/lib/kintsugi_sdk/models/ops/getexemptionattachments_request.rbi +13 -0
  56. data/lib/kintsugi_sdk/models/ops/gettransactionbyexternalid_request.rb +33 -0
  57. data/lib/kintsugi_sdk/models/ops/gettransactionbyexternalid_request.rbi +13 -0
  58. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_request.rb +33 -0
  59. data/lib/kintsugi_sdk/models/ops/gettransactionsbycustomer_request.rbi +13 -0
  60. data/lib/kintsugi_sdk/models/ops/gettransactionsbyfiling_request.rb +35 -0
  61. data/lib/kintsugi_sdk/models/ops/gettransactionsbyfiling_request.rbi +13 -0
  62. data/lib/kintsugi_sdk/models/ops/search_v1_address_validation_search_post_security.rb +33 -0
  63. data/lib/kintsugi_sdk/models/ops/search_v1_address_validation_search_post_security.rbi +13 -0
  64. data/lib/kintsugi_sdk/models/ops/update_customer_v1_customers_customer_id_put_request.rb +37 -0
  65. data/lib/kintsugi_sdk/models/ops/update_customer_v1_customers_customer_id_put_request.rbi +15 -0
  66. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_request.rb +37 -0
  67. data/lib/kintsugi_sdk/models/ops/update_product_v1_products_product_id_put_request.rbi +15 -0
  68. data/lib/kintsugi_sdk/models/ops/update_transaction_v1_transactions_transaction_id_put_request.rb +37 -0
  69. data/lib/kintsugi_sdk/models/ops/update_transaction_v1_transactions_transaction_id_put_request.rbi +15 -0
  70. data/lib/kintsugi_sdk/models/ops/uploadexemptioncert_request.rb +37 -0
  71. data/lib/kintsugi_sdk/models/ops/uploadexemptioncert_request.rbi +15 -0
  72. data/lib/kintsugi_sdk/models/ops.rb +32 -0
  73. data/lib/kintsugi_sdk/models/shared/addressbase.rb +65 -0
  74. data/lib/kintsugi_sdk/models/shared/addressbase.rbi +29 -0
  75. data/lib/kintsugi_sdk/models/shared/addresses.rb +76 -0
  76. data/lib/kintsugi_sdk/models/shared/addresses.rbi +33 -0
  77. data/lib/kintsugi_sdk/models/shared/addressresponsedata.rb +61 -0
  78. data/lib/kintsugi_sdk/models/shared/addressresponsedata.rbi +27 -0
  79. data/lib/kintsugi_sdk/models/shared/addresssearchresponse.rb +45 -0
  80. data/lib/kintsugi_sdk/models/shared/addresssearchresponse.rbi +19 -0
  81. data/lib/kintsugi_sdk/models/shared/addressstatus.rb +26 -0
  82. data/lib/kintsugi_sdk/models/shared/addressstatus.rbi +11 -0
  83. data/lib/kintsugi_sdk/models/shared/addresssubmittedresponse.rb +61 -0
  84. data/lib/kintsugi_sdk/models/shared/addresssubmittedresponse.rbi +27 -0
  85. data/lib/kintsugi_sdk/models/shared/addresstype.rb +24 -0
  86. data/lib/kintsugi_sdk/models/shared/addresstype.rbi +11 -0
  87. data/lib/kintsugi_sdk/models/shared/appliedto.rb +22 -0
  88. data/lib/kintsugi_sdk/models/shared/appliedto.rbi +11 -0
  89. data/lib/kintsugi_sdk/models/shared/attachmentread.rb +42 -0
  90. data/lib/kintsugi_sdk/models/shared/attachmentread.rbi +17 -0
  91. data/lib/kintsugi_sdk/models/shared/backend_src_address_validation_responses_validationerroritem.rb +49 -0
  92. data/lib/kintsugi_sdk/models/shared/backend_src_address_validation_responses_validationerroritem.rbi +21 -0
  93. data/lib/kintsugi_sdk/models/shared/backend_src_customers_responses_validationerroritem.rb +49 -0
  94. data/lib/kintsugi_sdk/models/shared/backend_src_customers_responses_validationerroritem.rbi +21 -0
  95. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_models_exemptionread.rb +87 -0
  96. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_models_exemptionread.rbi +39 -0
  97. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_responses_validationerroritem.rb +50 -0
  98. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_responses_validationerroritem.rbi +21 -0
  99. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_serializers_exemptionread.rb +81 -0
  100. data/lib/kintsugi_sdk/models/shared/backend_src_exemptions_serializers_exemptionread.rbi +37 -0
  101. data/lib/kintsugi_sdk/models/shared/backend_src_products_responses_validationerroritem.rb +50 -0
  102. data/lib/kintsugi_sdk/models/shared/backend_src_products_responses_validationerroritem.rbi +21 -0
  103. data/lib/kintsugi_sdk/models/shared/backend_src_tax_estimation_responses_validationerroritem.rb +49 -0
  104. data/lib/kintsugi_sdk/models/shared/backend_src_tax_estimation_responses_validationerroritem.rbi +21 -0
  105. data/lib/kintsugi_sdk/models/shared/backend_src_transactions_responses_validationerroritem.rb +50 -0
  106. data/lib/kintsugi_sdk/models/shared/backend_src_transactions_responses_validationerroritem.rbi +21 -0
  107. data/lib/kintsugi_sdk/models/shared/body_upload_exemption_certificate_v1_exemptions_exemption_id_attachments_post.rb +33 -0
  108. data/lib/kintsugi_sdk/models/shared/body_upload_exemption_certificate_v1_exemptions_exemption_id_attachments_post.rbi +13 -0
  109. data/lib/kintsugi_sdk/models/shared/countrycodeenum.rb +270 -0
  110. data/lib/kintsugi_sdk/models/shared/countrycodeenum.rbi +11 -0
  111. data/lib/kintsugi_sdk/models/shared/currencyenum.rb +182 -0
  112. data/lib/kintsugi_sdk/models/shared/currencyenum.rbi +11 -0
  113. data/lib/kintsugi_sdk/models/shared/customerbase.rb +97 -0
  114. data/lib/kintsugi_sdk/models/shared/customerbase.rbi +45 -0
  115. data/lib/kintsugi_sdk/models/shared/customerbasebase.rb +109 -0
  116. data/lib/kintsugi_sdk/models/shared/customerbasebase.rbi +51 -0
  117. data/lib/kintsugi_sdk/models/shared/customerbasepublic.rb +97 -0
  118. data/lib/kintsugi_sdk/models/shared/customerbasepublic.rbi +45 -0
  119. data/lib/kintsugi_sdk/models/shared/customercreate.rb +97 -0
  120. data/lib/kintsugi_sdk/models/shared/customercreate.rbi +45 -0
  121. data/lib/kintsugi_sdk/models/shared/customerread.rb +105 -0
  122. data/lib/kintsugi_sdk/models/shared/customerread.rbi +49 -0
  123. data/lib/kintsugi_sdk/models/shared/customerupdate.rb +89 -0
  124. data/lib/kintsugi_sdk/models/shared/customerupdate.rbi +41 -0
  125. data/lib/kintsugi_sdk/models/shared/discountbuilder.rb +41 -0
  126. data/lib/kintsugi_sdk/models/shared/discountbuilder.rbi +17 -0
  127. data/lib/kintsugi_sdk/models/shared/exemption.rb +91 -0
  128. data/lib/kintsugi_sdk/models/shared/exemption.rbi +41 -0
  129. data/lib/kintsugi_sdk/models/shared/exemptioncreate.rb +73 -0
  130. data/lib/kintsugi_sdk/models/shared/exemptioncreate.rbi +33 -0
  131. data/lib/kintsugi_sdk/models/shared/exemptionrequired.rb +57 -0
  132. data/lib/kintsugi_sdk/models/shared/exemptionrequired.rbi +25 -0
  133. data/lib/kintsugi_sdk/models/shared/exemptionstatus.rb +25 -0
  134. data/lib/kintsugi_sdk/models/shared/exemptionstatus.rbi +11 -0
  135. data/lib/kintsugi_sdk/models/shared/exemptiontype.rb +23 -0
  136. data/lib/kintsugi_sdk/models/shared/exemptiontype.rbi +11 -0
  137. data/lib/kintsugi_sdk/models/shared/fastapi_pagination_default_page_exemptionread_2.rb +49 -0
  138. data/lib/kintsugi_sdk/models/shared/fastapi_pagination_default_page_exemptionread_2.rbi +21 -0
  139. data/lib/kintsugi_sdk/models/shared/file.rb +37 -0
  140. data/lib/kintsugi_sdk/models/shared/file.rbi +15 -0
  141. data/lib/kintsugi_sdk/models/shared/jurisdictiontype.rb +28 -0
  142. data/lib/kintsugi_sdk/models/shared/jurisdictiontype.rbi +11 -0
  143. data/lib/kintsugi_sdk/models/shared/nexusresponse.rb +253 -0
  144. data/lib/kintsugi_sdk/models/shared/nexusresponse.rbi +121 -0
  145. data/lib/kintsugi_sdk/models/shared/nexusstateenum.rb +27 -0
  146. data/lib/kintsugi_sdk/models/shared/nexusstateenum.rbi +11 -0
  147. data/lib/kintsugi_sdk/models/shared/nexusstatusenum.rb +23 -0
  148. data/lib/kintsugi_sdk/models/shared/nexusstatusenum.rbi +11 -0
  149. data/lib/kintsugi_sdk/models/shared/nexustypeenum.rb +24 -0
  150. data/lib/kintsugi_sdk/models/shared/nexustypeenum.rbi +11 -0
  151. data/lib/kintsugi_sdk/models/shared/page_customerread_.rb +49 -0
  152. data/lib/kintsugi_sdk/models/shared/page_customerread_.rbi +21 -0
  153. data/lib/kintsugi_sdk/models/shared/page_nexusresponse_.rb +49 -0
  154. data/lib/kintsugi_sdk/models/shared/page_nexusresponse_.rbi +21 -0
  155. data/lib/kintsugi_sdk/models/shared/page_productread_.rb +49 -0
  156. data/lib/kintsugi_sdk/models/shared/page_productread_.rbi +21 -0
  157. data/lib/kintsugi_sdk/models/shared/page_transactionestimateresponse_.rb +49 -0
  158. data/lib/kintsugi_sdk/models/shared/page_transactionestimateresponse_.rbi +21 -0
  159. data/lib/kintsugi_sdk/models/shared/page_transactionread_.rb +49 -0
  160. data/lib/kintsugi_sdk/models/shared/page_transactionread_.rbi +21 -0
  161. data/lib/kintsugi_sdk/models/shared/periodmodelenum.rb +29 -0
  162. data/lib/kintsugi_sdk/models/shared/periodmodelenum.rbi +11 -0
  163. data/lib/kintsugi_sdk/models/shared/processingstatusenum.rb +34 -0
  164. data/lib/kintsugi_sdk/models/shared/processingstatusenum.rbi +11 -0
  165. data/lib/kintsugi_sdk/models/shared/productcategories.rb +38 -0
  166. data/lib/kintsugi_sdk/models/shared/productcategories.rbi +15 -0
  167. data/lib/kintsugi_sdk/models/shared/productcategoryenum.rb +25 -0
  168. data/lib/kintsugi_sdk/models/shared/productcategoryenum.rbi +11 -0
  169. data/lib/kintsugi_sdk/models/shared/productcodeenum.rb +82 -0
  170. data/lib/kintsugi_sdk/models/shared/productcodeenum.rbi +11 -0
  171. data/lib/kintsugi_sdk/models/shared/productcreatemanual.rb +61 -0
  172. data/lib/kintsugi_sdk/models/shared/productcreatemanual.rbi +27 -0
  173. data/lib/kintsugi_sdk/models/shared/productread.rb +81 -0
  174. data/lib/kintsugi_sdk/models/shared/productread.rbi +37 -0
  175. data/lib/kintsugi_sdk/models/shared/productstatusenum.rb +23 -0
  176. data/lib/kintsugi_sdk/models/shared/productstatusenum.rbi +11 -0
  177. data/lib/kintsugi_sdk/models/shared/productsubcategory.rb +46 -0
  178. data/lib/kintsugi_sdk/models/shared/productsubcategory.rbi +19 -0
  179. data/lib/kintsugi_sdk/models/shared/productsubcategoryenum.rb +83 -0
  180. data/lib/kintsugi_sdk/models/shared/productsubcategoryenum.rbi +11 -0
  181. data/lib/kintsugi_sdk/models/shared/productupdate.rb +70 -0
  182. data/lib/kintsugi_sdk/models/shared/productupdate.rbi +31 -0
  183. data/lib/kintsugi_sdk/models/shared/registration.rb +28 -0
  184. data/lib/kintsugi_sdk/models/shared/registration.rbi +11 -0
  185. data/lib/kintsugi_sdk/models/shared/registrationsregimeenum.rb +22 -0
  186. data/lib/kintsugi_sdk/models/shared/registrationsregimeenum.rbi +11 -0
  187. data/lib/kintsugi_sdk/models/shared/relatedentitytype.rb +24 -0
  188. data/lib/kintsugi_sdk/models/shared/relatedentitytype.rbi +11 -0
  189. data/lib/kintsugi_sdk/models/shared/salesortransactionsenum.rb +24 -0
  190. data/lib/kintsugi_sdk/models/shared/salesortransactionsenum.rbi +11 -0
  191. data/lib/kintsugi_sdk/models/shared/security.rb +37 -0
  192. data/lib/kintsugi_sdk/models/shared/security.rbi +15 -0
  193. data/lib/kintsugi_sdk/models/shared/sourceenum.rb +70 -0
  194. data/lib/kintsugi_sdk/models/shared/sourceenum.rbi +11 -0
  195. data/lib/kintsugi_sdk/models/shared/statusenum.rb +22 -0
  196. data/lib/kintsugi_sdk/models/shared/statusenum.rbi +11 -0
  197. data/lib/kintsugi_sdk/models/shared/taxexemptionenum.rb +31 -0
  198. data/lib/kintsugi_sdk/models/shared/taxexemptionenum.rbi +11 -0
  199. data/lib/kintsugi_sdk/models/shared/taxitembuilder.rb +77 -0
  200. data/lib/kintsugi_sdk/models/shared/taxitembuilder.rbi +35 -0
  201. data/lib/kintsugi_sdk/models/shared/taxitemestimate.rb +53 -0
  202. data/lib/kintsugi_sdk/models/shared/taxitemestimate.rbi +23 -0
  203. data/lib/kintsugi_sdk/models/shared/taxitemread.rb +73 -0
  204. data/lib/kintsugi_sdk/models/shared/taxitemread.rbi +33 -0
  205. data/lib/kintsugi_sdk/models/shared/taxitemreturnreasonenum.rb +25 -0
  206. data/lib/kintsugi_sdk/models/shared/taxitemreturnreasonenum.rbi +11 -0
  207. data/lib/kintsugi_sdk/models/shared/taxitemtypeenum.rb +23 -0
  208. data/lib/kintsugi_sdk/models/shared/taxitemtypeenum.rbi +11 -0
  209. data/lib/kintsugi_sdk/models/shared/taxliabilitysourceenum.rb +22 -0
  210. data/lib/kintsugi_sdk/models/shared/taxliabilitysourceenum.rbi +11 -0
  211. data/lib/kintsugi_sdk/models/shared/transactionaddressbuilder.rb +81 -0
  212. data/lib/kintsugi_sdk/models/shared/transactionaddressbuilder.rbi +37 -0
  213. data/lib/kintsugi_sdk/models/shared/transactionaddresspublic.rb +69 -0
  214. data/lib/kintsugi_sdk/models/shared/transactionaddresspublic.rbi +31 -0
  215. data/lib/kintsugi_sdk/models/shared/transactionaddressread_output.rb +85 -0
  216. data/lib/kintsugi_sdk/models/shared/transactionaddressread_output.rbi +39 -0
  217. data/lib/kintsugi_sdk/models/shared/transactioncreate.rb +235 -0
  218. data/lib/kintsugi_sdk/models/shared/transactioncreate.rbi +111 -0
  219. data/lib/kintsugi_sdk/models/shared/transactionestimatepublicrequest.rb +70 -0
  220. data/lib/kintsugi_sdk/models/shared/transactionestimatepublicrequest.rbi +31 -0
  221. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse.rb +91 -0
  222. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse.rbi +41 -0
  223. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_addresses.rb +80 -0
  224. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_addresses.rbi +35 -0
  225. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_type.rb +23 -0
  226. data/lib/kintsugi_sdk/models/shared/transactionestimateresponse_type.rbi +11 -0
  227. data/lib/kintsugi_sdk/models/shared/transactionexemptstatusenum.rb +26 -0
  228. data/lib/kintsugi_sdk/models/shared/transactionexemptstatusenum.rbi +11 -0
  229. data/lib/kintsugi_sdk/models/shared/transactionitembuilder.rb +141 -0
  230. data/lib/kintsugi_sdk/models/shared/transactionitembuilder.rbi +67 -0
  231. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate.rb +141 -0
  232. data/lib/kintsugi_sdk/models/shared/transactionitemcreateupdate.rbi +67 -0
  233. data/lib/kintsugi_sdk/models/shared/transactionitemestimatebase.rb +78 -0
  234. data/lib/kintsugi_sdk/models/shared/transactionitemestimatebase.rbi +35 -0
  235. data/lib/kintsugi_sdk/models/shared/transactionitemestimateresponse.rb +98 -0
  236. data/lib/kintsugi_sdk/models/shared/transactionitemestimateresponse.rbi +45 -0
  237. data/lib/kintsugi_sdk/models/shared/transactionitemread.rb +149 -0
  238. data/lib/kintsugi_sdk/models/shared/transactionitemread.rbi +71 -0
  239. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest.rb +194 -0
  240. data/lib/kintsugi_sdk/models/shared/transactionpublicrequest.rbi +91 -0
  241. data/lib/kintsugi_sdk/models/shared/transactionread.rb +259 -0
  242. data/lib/kintsugi_sdk/models/shared/transactionread.rbi +123 -0
  243. data/lib/kintsugi_sdk/models/shared/transactionrefundstatus.rb +24 -0
  244. data/lib/kintsugi_sdk/models/shared/transactionrefundstatus.rbi +11 -0
  245. data/lib/kintsugi_sdk/models/shared/transactionstatusenum.rb +27 -0
  246. data/lib/kintsugi_sdk/models/shared/transactionstatusenum.rbi +11 -0
  247. data/lib/kintsugi_sdk/models/shared/transactiontypeenum.rb +25 -0
  248. data/lib/kintsugi_sdk/models/shared/transactiontypeenum.rbi +11 -0
  249. data/lib/kintsugi_sdk/models/shared/transactionupdate.rb +235 -0
  250. data/lib/kintsugi_sdk/models/shared/transactionupdate.rbi +111 -0
  251. data/lib/kintsugi_sdk/models/shared/treatmentenum.rb +25 -0
  252. data/lib/kintsugi_sdk/models/shared/treatmentenum.rbi +11 -0
  253. data/lib/kintsugi_sdk/models/shared/type.rb +23 -0
  254. data/lib/kintsugi_sdk/models/shared/type.rbi +11 -0
  255. data/lib/kintsugi_sdk/models/shared/validationaddress.rb +73 -0
  256. data/lib/kintsugi_sdk/models/shared/validationaddress.rbi +31 -0
  257. data/lib/kintsugi_sdk/models/shared/validationerror.rb +41 -0
  258. data/lib/kintsugi_sdk/models/shared/validationerror.rbi +17 -0
  259. data/lib/kintsugi_sdk/models/shared.rb +104 -0
  260. data/lib/kintsugi_sdk/nexus.rb +155 -0
  261. data/lib/kintsugi_sdk/openapisdk.rb +104 -0
  262. data/lib/kintsugi_sdk/products.rb +756 -0
  263. data/lib/kintsugi_sdk/sdk_hooks/hooks.rb +95 -0
  264. data/lib/kintsugi_sdk/sdk_hooks/types.rb +170 -0
  265. data/lib/kintsugi_sdk/sdkconfiguration.rb +104 -0
  266. data/lib/kintsugi_sdk/sdkconfiguration.rbi +57 -0
  267. data/lib/kintsugi_sdk/taxestimation.rb +197 -0
  268. data/lib/kintsugi_sdk/transactions.rb +902 -0
  269. data/lib/kintsugi_sdk/utils/forms.rb +206 -0
  270. data/lib/kintsugi_sdk/utils/headers.rb +77 -0
  271. data/lib/kintsugi_sdk/utils/query_params.rb +131 -0
  272. data/lib/kintsugi_sdk/utils/request_bodies.rb +61 -0
  273. data/lib/kintsugi_sdk/utils/retries.rb +95 -0
  274. data/lib/kintsugi_sdk/utils/security.rb +130 -0
  275. data/lib/kintsugi_sdk/utils/url.rb +100 -0
  276. data/lib/kintsugi_sdk/utils/utils.rb +187 -0
  277. data/lib/kintsugi_sdk.rb +31 -0
  278. metadata +492 -0
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Ops::GetCustomerByIdV1CustomersCustomerIdGetRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Ops::GetCustomerByIdV1CustomersCustomerIdGetRequest
11
+ def customer_id(); end
12
+ def customer_id=(str_); end
13
+ end
@@ -0,0 +1,57 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Ops
10
+
11
+
12
+ class GetCustomersV1Request
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Search term to filter customers by name or other details
17
+ field :search_query, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'search_query', 'style': 'form', 'explode': true } }
18
+ # Country code in ISO 3166-1 alpha-2 format (e.g., 'US')
19
+ field :country, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::CountryCodeEnum)), { 'query_param': { 'field_name': 'country', 'style': 'form', 'explode': true } }
20
+ # State or province code to filter customers
21
+ field :state, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'state', 'style': 'form', 'explode': true } }
22
+ # Filter customers by source (comma-separated)
23
+ field :source_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'source__in', 'style': 'form', 'explode': true } }
24
+ # Comma-separated list of fields to sort results by.
25
+ field :order_by, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'order_by', 'style': 'form', 'explode': true } }
26
+ # Page number
27
+ field :page, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
28
+ # Page size
29
+ field :size, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'size', 'style': 'form', 'explode': true } }
30
+
31
+ sig { params(search_query: T.nilable(::String), country: T.nilable(T::Array[Models::Shared::CountryCodeEnum]), state: T.nilable(::String), source_in: T.nilable(::String), order_by: T.nilable(::String), page: T.nilable(::Integer), size: T.nilable(::Integer)).void }
32
+ def initialize(search_query: nil, country: nil, state: nil, source_in: nil, order_by: nil, page: 1, size: 50)
33
+ @search_query = search_query
34
+ @country = country
35
+ @state = state
36
+ @source_in = source_in
37
+ @order_by = order_by
38
+ @page = page
39
+ @size = size
40
+ end
41
+
42
+ sig { params(other: T.untyped).returns(T::Boolean) }
43
+ def ==(other)
44
+ return false unless other.is_a? self.class
45
+ return false unless @search_query == other.search_query
46
+ return false unless @country == other.country
47
+ return false unless @state == other.state
48
+ return false unless @source_in == other.source_in
49
+ return false unless @order_by == other.order_by
50
+ return false unless @page == other.page
51
+ return false unless @size == other.size
52
+ true
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Ops::GetCustomersV1Request
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Ops::GetCustomersV1Request
11
+ def search_query(); end
12
+ def search_query=(str_); end
13
+ def country(); end
14
+ def country=(str_); end
15
+ def state(); end
16
+ def state=(str_); end
17
+ def source_in(); end
18
+ def source_in=(str_); end
19
+ def order_by(); end
20
+ def order_by=(str_); end
21
+ def page(); end
22
+ def page=(str_); end
23
+ def size(); end
24
+ def size=(str_); end
25
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Ops
10
+
11
+
12
+ class GetExemptionByIdV1ExemptionsExemptionIdGetRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The unique identifier for the exemption being retrieved.
17
+ field :exemption_id, ::String, { 'path_param': { 'field_name': 'exemption_id', 'style': 'simple', 'explode': false } }
18
+
19
+ sig { params(exemption_id: ::String).void }
20
+ def initialize(exemption_id:)
21
+ @exemption_id = exemption_id
22
+ end
23
+
24
+ sig { params(other: T.untyped).returns(T::Boolean) }
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @exemption_id == other.exemption_id
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Ops::GetExemptionByIdV1ExemptionsExemptionIdGetRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Ops::GetExemptionByIdV1ExemptionsExemptionIdGetRequest
11
+ def exemption_id(); end
12
+ def exemption_id=(str_); end
13
+ end
@@ -0,0 +1,73 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Ops
10
+
11
+
12
+ class GetExemptionsV1ExemptionsGetRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Search term to filter exemptions by exemption ID, customer name, or customer email
17
+ field :search_query, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'search_query', 'style': 'form', 'explode': true } }
18
+ # Country code in ISO 3166-1 alpha-2 format
19
+ field :country_code, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::CountryCodeEnum)), { 'query_param': { 'field_name': 'country_code', 'style': 'form', 'explode': true } }
20
+ # Jurisdiction identifier
21
+ field :jurisdiction, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'jurisdiction', 'style': 'form', 'explode': true } }
22
+ # Start date for filtering exemptions
23
+ field :start_date, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'start_date', 'style': 'form', 'explode': true } }
24
+ # End date for filtering exemptions
25
+ field :end_date, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'end_date', 'style': 'form', 'explode': true } }
26
+ # Customer ID to filter exemptions
27
+ field :customer_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'customer_id', 'style': 'form', 'explode': true } }
28
+ # Transaction ID to filter exemptions
29
+ field :transaction_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'transaction_id', 'style': 'form', 'explode': true } }
30
+ # Filter exemptions by their status
31
+ field :status_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'status__in', 'style': 'form', 'explode': true } }
32
+ # Fields to sort by (comma-separated)
33
+ field :order_by, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'order_by', 'style': 'form', 'explode': true } }
34
+ # Page number
35
+ field :page, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
36
+ # Page size
37
+ field :size, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'size', 'style': 'form', 'explode': true } }
38
+
39
+ sig { params(search_query: T.nilable(::String), country_code: T.nilable(T::Array[Models::Shared::CountryCodeEnum]), jurisdiction: T.nilable(::String), start_date: T.nilable(::String), end_date: T.nilable(::String), customer_id: T.nilable(::String), transaction_id: T.nilable(::String), status_in: T.nilable(::String), order_by: T.nilable(::String), page: T.nilable(::Integer), size: T.nilable(::Integer)).void }
40
+ def initialize(search_query: nil, country_code: nil, jurisdiction: nil, start_date: nil, end_date: nil, customer_id: nil, transaction_id: nil, status_in: 'ACTIVE,INACTIVE,EXPIRED', order_by: 'end_date,FEIN,sales_tax_id,status', page: 1, size: 50)
41
+ @search_query = search_query
42
+ @country_code = country_code
43
+ @jurisdiction = jurisdiction
44
+ @start_date = start_date
45
+ @end_date = end_date
46
+ @customer_id = customer_id
47
+ @transaction_id = transaction_id
48
+ @status_in = status_in
49
+ @order_by = order_by
50
+ @page = page
51
+ @size = size
52
+ end
53
+
54
+ sig { params(other: T.untyped).returns(T::Boolean) }
55
+ def ==(other)
56
+ return false unless other.is_a? self.class
57
+ return false unless @search_query == other.search_query
58
+ return false unless @country_code == other.country_code
59
+ return false unless @jurisdiction == other.jurisdiction
60
+ return false unless @start_date == other.start_date
61
+ return false unless @end_date == other.end_date
62
+ return false unless @customer_id == other.customer_id
63
+ return false unless @transaction_id == other.transaction_id
64
+ return false unless @status_in == other.status_in
65
+ return false unless @order_by == other.order_by
66
+ return false unless @page == other.page
67
+ return false unless @size == other.size
68
+ true
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,33 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Ops::GetExemptionsV1ExemptionsGetRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Ops::GetExemptionsV1ExemptionsGetRequest
11
+ def search_query(); end
12
+ def search_query=(str_); end
13
+ def country_code(); end
14
+ def country_code=(str_); end
15
+ def jurisdiction(); end
16
+ def jurisdiction=(str_); end
17
+ def start_date(); end
18
+ def start_date=(str_); end
19
+ def end_date(); end
20
+ def end_date=(str_); end
21
+ def customer_id(); end
22
+ def customer_id=(str_); end
23
+ def transaction_id(); end
24
+ def transaction_id=(str_); end
25
+ def status_in(); end
26
+ def status_in=(str_); end
27
+ def order_by(); end
28
+ def order_by=(str_); end
29
+ def page(); end
30
+ def page=(str_); end
31
+ def size(); end
32
+ def size=(str_); end
33
+ end
@@ -0,0 +1,57 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Ops
10
+
11
+
12
+ class GetNexusForOrgV1NexusGetRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+
17
+ field :state_code, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'state_code', 'style': 'form', 'explode': true } }
18
+
19
+ field :country_code_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'country_code__in', 'style': 'form', 'explode': true } }
20
+
21
+ field :collected_tax_nexus_met, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'query_param': { 'field_name': 'collected_tax_nexus_met', 'style': 'form', 'explode': true } }
22
+
23
+ field :status_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'status__in', 'style': 'form', 'explode': true } }
24
+
25
+ field :order_by, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'order_by', 'style': 'form', 'explode': true } }
26
+ # Page number
27
+ field :page, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
28
+ # Page size
29
+ field :size, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'size', 'style': 'form', 'explode': true } }
30
+
31
+ sig { params(state_code: T.nilable(::String), country_code_in: T.nilable(::String), collected_tax_nexus_met: T.nilable(T::Boolean), status_in: T.nilable(::String), order_by: T.nilable(::String), page: T.nilable(::Integer), size: T.nilable(::Integer)).void }
32
+ def initialize(state_code: nil, country_code_in: nil, collected_tax_nexus_met: nil, status_in: 'APPROACHING,NOT_EXPOSED,PENDING_REGISTRATION,EXPOSED,APPROACHING,REGISTERED', order_by: 'state_code,country_code', page: 1, size: 50)
33
+ @state_code = state_code
34
+ @country_code_in = country_code_in
35
+ @collected_tax_nexus_met = collected_tax_nexus_met
36
+ @status_in = status_in
37
+ @order_by = order_by
38
+ @page = page
39
+ @size = size
40
+ end
41
+
42
+ sig { params(other: T.untyped).returns(T::Boolean) }
43
+ def ==(other)
44
+ return false unless other.is_a? self.class
45
+ return false unless @state_code == other.state_code
46
+ return false unless @country_code_in == other.country_code_in
47
+ return false unless @collected_tax_nexus_met == other.collected_tax_nexus_met
48
+ return false unless @status_in == other.status_in
49
+ return false unless @order_by == other.order_by
50
+ return false unless @page == other.page
51
+ return false unless @size == other.size
52
+ true
53
+ end
54
+ end
55
+ end
56
+ end
57
+ end
@@ -0,0 +1,25 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Ops::GetNexusForOrgV1NexusGetRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Ops::GetNexusForOrgV1NexusGetRequest
11
+ def state_code(); end
12
+ def state_code=(str_); end
13
+ def country_code_in(); end
14
+ def country_code_in=(str_); end
15
+ def collected_tax_nexus_met(); end
16
+ def collected_tax_nexus_met=(str_); end
17
+ def status_in(); end
18
+ def status_in=(str_); end
19
+ def order_by(); end
20
+ def order_by=(str_); end
21
+ def page(); end
22
+ def page=(str_); end
23
+ def size(); end
24
+ def size=(str_); end
25
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Ops
10
+
11
+
12
+ class GetProductByIdV1ProductsProductIdGetRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The unique identifier for the product you want to retrieve.
17
+ field :product_id, ::String, { 'path_param': { 'field_name': 'product_id', 'style': 'simple', 'explode': false } }
18
+
19
+ sig { params(product_id: ::String).void }
20
+ def initialize(product_id:)
21
+ @product_id = product_id
22
+ end
23
+
24
+ sig { params(other: T.untyped).returns(T::Boolean) }
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @product_id == other.product_id
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Ops::GetProductByIdV1ProductsProductIdGetRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Ops::GetProductByIdV1ProductsProductIdGetRequest
11
+ def product_id(); end
12
+ def product_id=(str_); end
13
+ end
@@ -0,0 +1,61 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Ops
10
+
11
+
12
+ class GetProductsV1ProductsGetRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Search term to filter products by name or other details.
17
+ field :query, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'query', 'style': 'form', 'explode': true } }
18
+ # Filter products by status (comma-separated)
19
+ field :status_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'status__in', 'style': 'form', 'explode': true } }
20
+ # Filter products by category (comma-separated)
21
+ field :product_category_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'product_category__in', 'style': 'form', 'explode': true } }
22
+ # Filter products by subcategory (comma-separated)
23
+ field :product_subcategory_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'product_subcategory__in', 'style': 'form', 'explode': true } }
24
+ # Filter products by source (comma-separated)
25
+ field :source_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'source__in', 'style': 'form', 'explode': true } }
26
+ # Order results by specified fields (comma-separated)
27
+ field :order_by, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'order_by', 'style': 'form', 'explode': true } }
28
+ # Page number
29
+ field :page, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
30
+ # Page size
31
+ field :size, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'size', 'style': 'form', 'explode': true } }
32
+
33
+ sig { params(query: T.nilable(::String), status_in: T.nilable(::String), product_category_in: T.nilable(::String), product_subcategory_in: T.nilable(::String), source_in: T.nilable(::String), order_by: T.nilable(::String), page: T.nilable(::Integer), size: T.nilable(::Integer)).void }
34
+ def initialize(query: nil, status_in: nil, product_category_in: nil, product_subcategory_in: nil, source_in: nil, order_by: nil, page: 1, size: 50)
35
+ @query = query
36
+ @status_in = status_in
37
+ @product_category_in = product_category_in
38
+ @product_subcategory_in = product_subcategory_in
39
+ @source_in = source_in
40
+ @order_by = order_by
41
+ @page = page
42
+ @size = size
43
+ end
44
+
45
+ sig { params(other: T.untyped).returns(T::Boolean) }
46
+ def ==(other)
47
+ return false unless other.is_a? self.class
48
+ return false unless @query == other.query
49
+ return false unless @status_in == other.status_in
50
+ return false unless @product_category_in == other.product_category_in
51
+ return false unless @product_subcategory_in == other.product_subcategory_in
52
+ return false unless @source_in == other.source_in
53
+ return false unless @order_by == other.order_by
54
+ return false unless @page == other.page
55
+ return false unless @size == other.size
56
+ true
57
+ end
58
+ end
59
+ end
60
+ end
61
+ end
@@ -0,0 +1,27 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Ops::GetProductsV1ProductsGetRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Ops::GetProductsV1ProductsGetRequest
11
+ def query(); end
12
+ def query=(str_); end
13
+ def status_in(); end
14
+ def status_in=(str_); end
15
+ def product_category_in(); end
16
+ def product_category_in=(str_); end
17
+ def product_subcategory_in(); end
18
+ def product_subcategory_in=(str_); end
19
+ def source_in(); end
20
+ def source_in=(str_); end
21
+ def order_by(); end
22
+ def order_by=(str_); end
23
+ def page(); end
24
+ def page=(str_); end
25
+ def size(); end
26
+ def size=(str_); end
27
+ end
@@ -0,0 +1,33 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Ops
10
+
11
+
12
+ class GetTransactionByIdV1TransactionsTransactionIdGetRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # The unique identifier of the transaction to retrieve.
17
+ field :transaction_id, ::String, { 'path_param': { 'field_name': 'transaction_id', 'style': 'simple', 'explode': false } }
18
+
19
+ sig { params(transaction_id: ::String).void }
20
+ def initialize(transaction_id:)
21
+ @transaction_id = transaction_id
22
+ end
23
+
24
+ sig { params(other: T.untyped).returns(T::Boolean) }
25
+ def ==(other)
26
+ return false unless other.is_a? self.class
27
+ return false unless @transaction_id == other.transaction_id
28
+ true
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,13 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+
5
+ class KintsugiSDK::Models::Ops::GetTransactionByIdV1TransactionsTransactionIdGetRequest
6
+ extend ::Crystalline::MetadataFields::ClassMethods
7
+ end
8
+
9
+
10
+ class KintsugiSDK::Models::Ops::GetTransactionByIdV1TransactionsTransactionIdGetRequest
11
+ def transaction_id(); end
12
+ def transaction_id=(str_); end
13
+ end
@@ -0,0 +1,107 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module KintsugiSDK
8
+ module Models
9
+ module Ops
10
+
11
+
12
+ class GetTransactionsV1TransactionsGetRequest
13
+ extend T::Sig
14
+ include Crystalline::MetadataFields
15
+
16
+ # Filter transactions by state code.
17
+ field :state_code, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'state_code', 'style': 'form', 'explode': true } }
18
+ # Filter by transaction type (e.g., SALE, FULL_CREDIT_NOTE,
19
+ # PARTIAL_CREDIT_NOTE, ARCHIVE etc.).
20
+ field :transaction_type, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'transaction_type', 'style': 'form', 'explode': true } }
21
+ # Filter transactions based on the source.
22
+ field :transaction_source, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'transaction_source', 'style': 'form', 'explode': true } }
23
+ # Search for transactions using a general query
24
+ # (e.g., order ID, customer name).
25
+ field :search_query, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'search_query', 'style': 'form', 'explode': true } }
26
+ # Filter transactions by country code
27
+ # (ISO 3166-1 alpha-2 format, e.g., US).
28
+ field :country, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::CountryCodeEnum)), { 'query_param': { 'field_name': 'country', 'style': 'form', 'explode': true } }
29
+ # Filter by full state name (e.g., California).
30
+ field :state, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'state', 'style': 'form', 'explode': true } }
31
+ # Filter by transaction status (e.g., PENDING, COMMITTED,
32
+ # CANCELLED, FULLY_REFUNDED, PARTIALLY_REFUNDED, ARCHIVED).
33
+ field :status, Crystalline::Nilable.new(Models::Shared::TransactionStatusEnum), { 'query_param': { 'field_name': 'status', 'style': 'form', 'explode': true } }
34
+ # Retrieve transactions linked to a specific filing ID.
35
+ field :filing_id, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'filing_id', 'style': 'form', 'explode': true } }
36
+ # Retrieve transactions with a date
37
+ # greater than or equal to (YYYY-MM-DD).
38
+ field :date_gte, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'date__gte', 'style': 'form', 'explode': true } }
39
+ # Retrieve transactions with a date
40
+ # less than or equal to (YYYY-MM-DD).
41
+ field :date_lte, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'date__lte', 'style': 'form', 'explode': true } }
42
+ # Filter transactions based on processing status.
43
+ # Multiple values can be passed as a comma-separated list.
44
+ field :processing_status_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'processing_status__in', 'style': 'form', 'explode': true } }
45
+ # Filter transactions by marketplace (e.g., AMAZON, EBAY).
46
+ field :marketplace, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'query_param': { 'field_name': 'marketplace', 'style': 'form', 'explode': true } }
47
+ # Filter transactions by exemption status.
48
+ # Multiple values can be passed as a comma-separated list (e.g., EXEMPT,TAXABLE).
49
+ field :exempt_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'exempt__in', 'style': 'form', 'explode': true } }
50
+ # Filter by address status (e.g., UNVERIFIED, INVALID,
51
+ # PARTIALLY_VERIFIED, VERIFIED, UNVERIFIABLE).
52
+ field :address_status_in, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'address_status__in', 'style': 'form', 'explode': true } }
53
+ # Sort results based on specified fields.
54
+ # Prefix with - for descending order (e.g., -date for newest first).
55
+ field :order_by, Crystalline::Nilable.new(::String), { 'query_param': { 'field_name': 'order_by', 'style': 'form', 'explode': true } }
56
+ # Page number
57
+ field :page, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'page', 'style': 'form', 'explode': true } }
58
+ # Page size
59
+ field :size, Crystalline::Nilable.new(::Integer), { 'query_param': { 'field_name': 'size', 'style': 'form', 'explode': true } }
60
+
61
+ sig { params(state_code: T.nilable(::String), transaction_type: T.nilable(::String), transaction_source: T.nilable(::String), search_query: T.nilable(::String), country: T.nilable(T::Array[Models::Shared::CountryCodeEnum]), state: T.nilable(::String), status: T.nilable(Models::Shared::TransactionStatusEnum), filing_id: T.nilable(::String), date_gte: T.nilable(::String), date_lte: T.nilable(::String), processing_status_in: T.nilable(::String), marketplace: T.nilable(T::Boolean), exempt_in: T.nilable(::String), address_status_in: T.nilable(::String), order_by: T.nilable(::String), page: T.nilable(::Integer), size: T.nilable(::Integer)).void }
62
+ def initialize(state_code: nil, transaction_type: nil, transaction_source: nil, search_query: nil, country: nil, state: nil, status: nil, filing_id: nil, date_gte: nil, date_lte: nil, processing_status_in: nil, marketplace: nil, exempt_in: nil, address_status_in: 'UNVERIFIED,INVALID,PARTIALLY_VERIFIED,VERIFIED,UNVERIFIABLE', order_by: 'date,state,customer_name,status', page: 1, size: 50)
63
+ @state_code = state_code
64
+ @transaction_type = transaction_type
65
+ @transaction_source = transaction_source
66
+ @search_query = search_query
67
+ @country = country
68
+ @state = state
69
+ @status = status
70
+ @filing_id = filing_id
71
+ @date_gte = date_gte
72
+ @date_lte = date_lte
73
+ @processing_status_in = processing_status_in
74
+ @marketplace = marketplace
75
+ @exempt_in = exempt_in
76
+ @address_status_in = address_status_in
77
+ @order_by = order_by
78
+ @page = page
79
+ @size = size
80
+ end
81
+
82
+ sig { params(other: T.untyped).returns(T::Boolean) }
83
+ def ==(other)
84
+ return false unless other.is_a? self.class
85
+ return false unless @state_code == other.state_code
86
+ return false unless @transaction_type == other.transaction_type
87
+ return false unless @transaction_source == other.transaction_source
88
+ return false unless @search_query == other.search_query
89
+ return false unless @country == other.country
90
+ return false unless @state == other.state
91
+ return false unless @status == other.status
92
+ return false unless @filing_id == other.filing_id
93
+ return false unless @date_gte == other.date_gte
94
+ return false unless @date_lte == other.date_lte
95
+ return false unless @processing_status_in == other.processing_status_in
96
+ return false unless @marketplace == other.marketplace
97
+ return false unless @exempt_in == other.exempt_in
98
+ return false unless @address_status_in == other.address_status_in
99
+ return false unless @order_by == other.order_by
100
+ return false unless @page == other.page
101
+ return false unless @size == other.size
102
+ true
103
+ end
104
+ end
105
+ end
106
+ end
107
+ end