transferzero-sdk 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (338) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE +7 -0
  4. data/README.md +286 -0
  5. data/Rakefile +10 -0
  6. data/docs/APILogsApi.md +141 -0
  7. data/docs/Account.md +19 -0
  8. data/docs/AccountDebitsApi.md +199 -0
  9. data/docs/AccountListResponse.md +19 -0
  10. data/docs/AccountMeta.md +17 -0
  11. data/docs/AccountResponse.md +19 -0
  12. data/docs/AccountValidationApi.md +70 -0
  13. data/docs/AccountValidationError.md +17 -0
  14. data/docs/AccountValidationRequest.md +25 -0
  15. data/docs/AccountValidationResponse.md +19 -0
  16. data/docs/AccountValidationResult.md +17 -0
  17. data/docs/AccountsApi.md +128 -0
  18. data/docs/ApiLog.md +33 -0
  19. data/docs/ApiLogListResponse.md +19 -0
  20. data/docs/ApiLogResponse.md +17 -0
  21. data/docs/Currency.md +35 -0
  22. data/docs/CurrencyExchange.md +37 -0
  23. data/docs/CurrencyExchangeListResponse.md +17 -0
  24. data/docs/CurrencyInfoApi.md +182 -0
  25. data/docs/CurrencyListResponse.md +17 -0
  26. data/docs/CurrencyOpposite.md +37 -0
  27. data/docs/Debit.md +35 -0
  28. data/docs/DebitListRequest.md +17 -0
  29. data/docs/DebitListResponse.md +19 -0
  30. data/docs/DebitRequest.md +17 -0
  31. data/docs/DebitRequestWrapper.md +17 -0
  32. data/docs/DebitResponse.md +17 -0
  33. data/docs/Document.md +35 -0
  34. data/docs/DocumentListResponse.md +19 -0
  35. data/docs/DocumentRequest.md +17 -0
  36. data/docs/DocumentResponse.md +17 -0
  37. data/docs/DocumentWebhook.md +21 -0
  38. data/docs/DocumentsApi.md +199 -0
  39. data/docs/ErrorStatus.md +19 -0
  40. data/docs/FieldDescription.md +19 -0
  41. data/docs/FieldSelectValidation.md +19 -0
  42. data/docs/FieldValidation.md +21 -0
  43. data/docs/LogsApi.md +141 -0
  44. data/docs/Pagination.md +25 -0
  45. data/docs/PaginationMeta.md +17 -0
  46. data/docs/PayinMethod.md +25 -0
  47. data/docs/PayinMethodDetails.md +21 -0
  48. data/docs/PayinMethodDetailsMobile.md +19 -0
  49. data/docs/PayinMethodDetailsNGNBank.md +17 -0
  50. data/docs/PayinMethodRequest.md +17 -0
  51. data/docs/PaymentMethod.md +27 -0
  52. data/docs/PaymentMethodListResponse.md +17 -0
  53. data/docs/PaymentMethodOpposite.md +29 -0
  54. data/docs/PaymentMethodsApi.md +124 -0
  55. data/docs/PayoutMethod.md +27 -0
  56. data/docs/PayoutMethodBankAccountTypeEnum.md +16 -0
  57. data/docs/PayoutMethodDetails.md +53 -0
  58. data/docs/PayoutMethodDetailsBalance.md +17 -0
  59. data/docs/PayoutMethodDetailsGHSBank.md +23 -0
  60. data/docs/PayoutMethodDetailsIBAN.md +25 -0
  61. data/docs/PayoutMethodDetailsMADCash.md +37 -0
  62. data/docs/PayoutMethodDetailsMobile.md +21 -0
  63. data/docs/PayoutMethodDetailsNGNBank.md +25 -0
  64. data/docs/PayoutMethodDetailsXOFMobile.md +23 -0
  65. data/docs/PayoutMethodGenderEnum.md +16 -0
  66. data/docs/PayoutMethodIdentityCardTypeEnum.md +16 -0
  67. data/docs/PayoutMethodListResponse.md +19 -0
  68. data/docs/PayoutMethodMobileProviderEnum.md +16 -0
  69. data/docs/PayoutMethodRequest.md +17 -0
  70. data/docs/PayoutMethodResponse.md +17 -0
  71. data/docs/PayoutMethodWebhook.md +21 -0
  72. data/docs/PayoutMethodsApi.md +334 -0
  73. data/docs/Recipient.md +55 -0
  74. data/docs/RecipientListResponse.md +19 -0
  75. data/docs/RecipientRequest.md +17 -0
  76. data/docs/RecipientResponse.md +17 -0
  77. data/docs/RecipientState.md +16 -0
  78. data/docs/RecipientWebhook.md +21 -0
  79. data/docs/RecipientsApi.md +212 -0
  80. data/docs/Sender.md +67 -0
  81. data/docs/SenderListResponse.md +19 -0
  82. data/docs/SenderRequest.md +17 -0
  83. data/docs/SenderResponse.md +19 -0
  84. data/docs/SenderResponseExisting.md +17 -0
  85. data/docs/SenderResponseMeta.md +17 -0
  86. data/docs/SenderState.md +16 -0
  87. data/docs/SenderWebhook.md +21 -0
  88. data/docs/SendersApi.md +330 -0
  89. data/docs/Transaction.md +47 -0
  90. data/docs/TransactionListResponse.md +19 -0
  91. data/docs/TransactionRequest.md +17 -0
  92. data/docs/TransactionResponse.md +19 -0
  93. data/docs/TransactionResponseExisting.md +19 -0
  94. data/docs/TransactionResponseMeta.md +17 -0
  95. data/docs/TransactionState.md +16 -0
  96. data/docs/TransactionTraits.md +19 -0
  97. data/docs/TransactionWebhook.md +21 -0
  98. data/docs/TransactionsApi.md +450 -0
  99. data/docs/ValidationErrorDescription.md +17 -0
  100. data/docs/Webhook.md +21 -0
  101. data/docs/WebhookDefinition.md +25 -0
  102. data/docs/WebhookDefinitionEventListResponse.md +17 -0
  103. data/docs/WebhookDefinitionListResponse.md +19 -0
  104. data/docs/WebhookDefinitionRequest.md +17 -0
  105. data/docs/WebhookDefinitionResponse.md +17 -0
  106. data/docs/WebhookLog.md +27 -0
  107. data/docs/WebhookLogListResponse.md +19 -0
  108. data/docs/WebhookLogMetadata.md +35 -0
  109. data/docs/WebhookLogMetadataRequest.md +21 -0
  110. data/docs/WebhookLogMetadataResponse.md +21 -0
  111. data/docs/WebhookLogResponse.md +17 -0
  112. data/docs/WebhooksApi.md +319 -0
  113. data/example/client.rb +473 -0
  114. data/git_push.sh +55 -0
  115. data/lib/transferzero-sdk.rb +146 -0
  116. data/lib/transferzero-sdk/api/account_debits_api.rb +187 -0
  117. data/lib/transferzero-sdk/api/account_validation_api.rb +79 -0
  118. data/lib/transferzero-sdk/api/accounts_api.rb +135 -0
  119. data/lib/transferzero-sdk/api/api_logs_api.rb +137 -0
  120. data/lib/transferzero-sdk/api/currency_info_api.rb +167 -0
  121. data/lib/transferzero-sdk/api/documents_api.rb +197 -0
  122. data/lib/transferzero-sdk/api/logs_api.rb +137 -0
  123. data/lib/transferzero-sdk/api/payment_methods_api.rb +119 -0
  124. data/lib/transferzero-sdk/api/payout_methods_api.rb +321 -0
  125. data/lib/transferzero-sdk/api/recipients_api.rb +221 -0
  126. data/lib/transferzero-sdk/api/senders_api.rb +322 -0
  127. data/lib/transferzero-sdk/api/transactions_api.rb +428 -0
  128. data/lib/transferzero-sdk/api/webhooks_api.rb +299 -0
  129. data/lib/transferzero-sdk/api_client.rb +455 -0
  130. data/lib/transferzero-sdk/api_error.rb +61 -0
  131. data/lib/transferzero-sdk/configuration.rb +166 -0
  132. data/lib/transferzero-sdk/models/account.rb +212 -0
  133. data/lib/transferzero-sdk/models/account_list_response.rb +212 -0
  134. data/lib/transferzero-sdk/models/account_meta.rb +202 -0
  135. data/lib/transferzero-sdk/models/account_response.rb +210 -0
  136. data/lib/transferzero-sdk/models/account_validation_error.rb +202 -0
  137. data/lib/transferzero-sdk/models/account_validation_request.rb +325 -0
  138. data/lib/transferzero-sdk/models/account_validation_response.rb +210 -0
  139. data/lib/transferzero-sdk/models/account_validation_result.rb +202 -0
  140. data/lib/transferzero-sdk/models/api_log.rb +287 -0
  141. data/lib/transferzero-sdk/models/api_log_list_response.rb +213 -0
  142. data/lib/transferzero-sdk/models/api_log_response.rb +201 -0
  143. data/lib/transferzero-sdk/models/currency.rb +292 -0
  144. data/lib/transferzero-sdk/models/currency_exchange.rb +311 -0
  145. data/lib/transferzero-sdk/models/currency_exchange_list_response.rb +204 -0
  146. data/lib/transferzero-sdk/models/currency_list_response.rb +204 -0
  147. data/lib/transferzero-sdk/models/currency_opposite.rb +309 -0
  148. data/lib/transferzero-sdk/models/debit.rb +309 -0
  149. data/lib/transferzero-sdk/models/debit_list_request.rb +203 -0
  150. data/lib/transferzero-sdk/models/debit_list_response.rb +212 -0
  151. data/lib/transferzero-sdk/models/debit_request.rb +201 -0
  152. data/lib/transferzero-sdk/models/debit_request_wrapper.rb +227 -0
  153. data/lib/transferzero-sdk/models/debit_response.rb +201 -0
  154. data/lib/transferzero-sdk/models/document.rb +335 -0
  155. data/lib/transferzero-sdk/models/document_list_response.rb +212 -0
  156. data/lib/transferzero-sdk/models/document_request.rb +201 -0
  157. data/lib/transferzero-sdk/models/document_response.rb +201 -0
  158. data/lib/transferzero-sdk/models/document_webhook.rb +243 -0
  159. data/lib/transferzero-sdk/models/error_status.rb +210 -0
  160. data/lib/transferzero-sdk/models/field_description.rb +245 -0
  161. data/lib/transferzero-sdk/models/field_select_validation.rb +212 -0
  162. data/lib/transferzero-sdk/models/field_validation.rb +221 -0
  163. data/lib/transferzero-sdk/models/pagination.rb +242 -0
  164. data/lib/transferzero-sdk/models/pagination_meta.rb +201 -0
  165. data/lib/transferzero-sdk/models/payin_method.rb +242 -0
  166. data/lib/transferzero-sdk/models/payin_method_details.rb +257 -0
  167. data/lib/transferzero-sdk/models/payin_method_details_mobile.rb +218 -0
  168. data/lib/transferzero-sdk/models/payin_method_details_ngn_bank.rb +208 -0
  169. data/lib/transferzero-sdk/models/payin_method_request.rb +201 -0
  170. data/lib/transferzero-sdk/models/payment_method.rb +257 -0
  171. data/lib/transferzero-sdk/models/payment_method_list_response.rb +203 -0
  172. data/lib/transferzero-sdk/models/payment_method_opposite.rb +275 -0
  173. data/lib/transferzero-sdk/models/payout_method.rb +255 -0
  174. data/lib/transferzero-sdk/models/payout_method_bank_account_type_enum.rb +36 -0
  175. data/lib/transferzero-sdk/models/payout_method_details.rb +462 -0
  176. data/lib/transferzero-sdk/models/payout_method_details_balance.rb +202 -0
  177. data/lib/transferzero-sdk/models/payout_method_details_ghs_bank.rb +249 -0
  178. data/lib/transferzero-sdk/models/payout_method_details_iban.rb +258 -0
  179. data/lib/transferzero-sdk/models/payout_method_details_mad_cash.rb +332 -0
  180. data/lib/transferzero-sdk/models/payout_method_details_mobile.rb +235 -0
  181. data/lib/transferzero-sdk/models/payout_method_details_ngn_bank.rb +263 -0
  182. data/lib/transferzero-sdk/models/payout_method_details_xof_mobile.rb +249 -0
  183. data/lib/transferzero-sdk/models/payout_method_gender_enum.rb +36 -0
  184. data/lib/transferzero-sdk/models/payout_method_identity_card_type_enum.rb +37 -0
  185. data/lib/transferzero-sdk/models/payout_method_list_response.rb +212 -0
  186. data/lib/transferzero-sdk/models/payout_method_mobile_provider_enum.rb +36 -0
  187. data/lib/transferzero-sdk/models/payout_method_request.rb +201 -0
  188. data/lib/transferzero-sdk/models/payout_method_response.rb +201 -0
  189. data/lib/transferzero-sdk/models/payout_method_webhook.rb +243 -0
  190. data/lib/transferzero-sdk/models/recipient.rb +406 -0
  191. data/lib/transferzero-sdk/models/recipient_list_response.rb +212 -0
  192. data/lib/transferzero-sdk/models/recipient_request.rb +201 -0
  193. data/lib/transferzero-sdk/models/recipient_response.rb +201 -0
  194. data/lib/transferzero-sdk/models/recipient_state.rb +44 -0
  195. data/lib/transferzero-sdk/models/recipient_webhook.rb +243 -0
  196. data/lib/transferzero-sdk/models/sender.rb +529 -0
  197. data/lib/transferzero-sdk/models/sender_list_response.rb +212 -0
  198. data/lib/transferzero-sdk/models/sender_request.rb +201 -0
  199. data/lib/transferzero-sdk/models/sender_response.rb +210 -0
  200. data/lib/transferzero-sdk/models/sender_response_existing.rb +201 -0
  201. data/lib/transferzero-sdk/models/sender_response_meta.rb +201 -0
  202. data/lib/transferzero-sdk/models/sender_state.rb +40 -0
  203. data/lib/transferzero-sdk/models/sender_webhook.rb +243 -0
  204. data/lib/transferzero-sdk/models/transaction.rb +370 -0
  205. data/lib/transferzero-sdk/models/transaction_list_response.rb +212 -0
  206. data/lib/transferzero-sdk/models/transaction_request.rb +201 -0
  207. data/lib/transferzero-sdk/models/transaction_response.rb +210 -0
  208. data/lib/transferzero-sdk/models/transaction_response_existing.rb +210 -0
  209. data/lib/transferzero-sdk/models/transaction_response_meta.rb +201 -0
  210. data/lib/transferzero-sdk/models/transaction_state.rb +44 -0
  211. data/lib/transferzero-sdk/models/transaction_traits.rb +213 -0
  212. data/lib/transferzero-sdk/models/transaction_webhook.rb +243 -0
  213. data/lib/transferzero-sdk/models/validation_error_description.rb +203 -0
  214. data/lib/transferzero-sdk/models/webhook.rb +238 -0
  215. data/lib/transferzero-sdk/models/webhook_definition.rb +256 -0
  216. data/lib/transferzero-sdk/models/webhook_definition_event_list_response.rb +203 -0
  217. data/lib/transferzero-sdk/models/webhook_definition_list_response.rb +212 -0
  218. data/lib/transferzero-sdk/models/webhook_definition_request.rb +201 -0
  219. data/lib/transferzero-sdk/models/webhook_definition_response.rb +201 -0
  220. data/lib/transferzero-sdk/models/webhook_log.rb +249 -0
  221. data/lib/transferzero-sdk/models/webhook_log_list_response.rb +213 -0
  222. data/lib/transferzero-sdk/models/webhook_log_metadata.rb +289 -0
  223. data/lib/transferzero-sdk/models/webhook_log_metadata_request.rb +224 -0
  224. data/lib/transferzero-sdk/models/webhook_log_metadata_response.rb +225 -0
  225. data/lib/transferzero-sdk/models/webhook_log_response.rb +201 -0
  226. data/lib/transferzero-sdk/version.rb +15 -0
  227. data/spec/api/account_debits_api_spec.rb +72 -0
  228. data/spec/api/account_validation_api_spec.rb +47 -0
  229. data/spec/api/accounts_api_spec.rb +58 -0
  230. data/spec/api/api_logs_api_spec.rb +62 -0
  231. data/spec/api/currency_info_api_spec.rb +68 -0
  232. data/spec/api/documents_api_spec.rb +72 -0
  233. data/spec/api/logs_api_spec.rb +62 -0
  234. data/spec/api/payment_methods_api_spec.rb +57 -0
  235. data/spec/api/payout_methods_api_spec.rb +102 -0
  236. data/spec/api/recipients_api_spec.rb +79 -0
  237. data/spec/api/senders_api_spec.rb +100 -0
  238. data/spec/api/transactions_api_spec.rb +122 -0
  239. data/spec/api/webhooks_api_spec.rb +95 -0
  240. data/spec/api_client_spec.rb +189 -0
  241. data/spec/configuration_spec.rb +42 -0
  242. data/spec/models/account_list_response_spec.rb +47 -0
  243. data/spec/models/account_meta_spec.rb +41 -0
  244. data/spec/models/account_response_spec.rb +47 -0
  245. data/spec/models/account_spec.rb +47 -0
  246. data/spec/models/account_validation_error_spec.rb +41 -0
  247. data/spec/models/account_validation_request_spec.rb +77 -0
  248. data/spec/models/account_validation_response_spec.rb +47 -0
  249. data/spec/models/account_validation_result_spec.rb +41 -0
  250. data/spec/models/api_log_list_response_spec.rb +47 -0
  251. data/spec/models/api_log_response_spec.rb +41 -0
  252. data/spec/models/api_log_spec.rb +89 -0
  253. data/spec/models/currency_exchange_list_response_spec.rb +41 -0
  254. data/spec/models/currency_exchange_spec.rb +101 -0
  255. data/spec/models/currency_list_response_spec.rb +41 -0
  256. data/spec/models/currency_opposite_spec.rb +101 -0
  257. data/spec/models/currency_spec.rb +95 -0
  258. data/spec/models/debit_list_request_spec.rb +41 -0
  259. data/spec/models/debit_list_response_spec.rb +47 -0
  260. data/spec/models/debit_request_spec.rb +41 -0
  261. data/spec/models/debit_request_wrapper_spec.rb +41 -0
  262. data/spec/models/debit_response_spec.rb +41 -0
  263. data/spec/models/debit_spec.rb +95 -0
  264. data/spec/models/document_list_response_spec.rb +47 -0
  265. data/spec/models/document_request_spec.rb +41 -0
  266. data/spec/models/document_response_spec.rb +41 -0
  267. data/spec/models/document_spec.rb +99 -0
  268. data/spec/models/document_webhook_spec.rb +53 -0
  269. data/spec/models/error_status_spec.rb +47 -0
  270. data/spec/models/field_description_spec.rb +51 -0
  271. data/spec/models/field_select_validation_spec.rb +47 -0
  272. data/spec/models/field_validation_spec.rb +53 -0
  273. data/spec/models/pagination_meta_spec.rb +41 -0
  274. data/spec/models/pagination_spec.rb +65 -0
  275. data/spec/models/payin_method_details_mobile_spec.rb +47 -0
  276. data/spec/models/payin_method_details_ngn_bank_spec.rb +41 -0
  277. data/spec/models/payin_method_details_spec.rb +53 -0
  278. data/spec/models/payin_method_request_spec.rb +41 -0
  279. data/spec/models/payin_method_spec.rb +65 -0
  280. data/spec/models/payment_method_list_response_spec.rb +41 -0
  281. data/spec/models/payment_method_opposite_spec.rb +77 -0
  282. data/spec/models/payment_method_spec.rb +71 -0
  283. data/spec/models/payout_method_bank_account_type_enum_spec.rb +35 -0
  284. data/spec/models/payout_method_details_balance_spec.rb +41 -0
  285. data/spec/models/payout_method_details_ghs_bank_spec.rb +59 -0
  286. data/spec/models/payout_method_details_iban_spec.rb +65 -0
  287. data/spec/models/payout_method_details_mad_cash_spec.rb +101 -0
  288. data/spec/models/payout_method_details_mobile_spec.rb +53 -0
  289. data/spec/models/payout_method_details_ngn_bank_spec.rb +65 -0
  290. data/spec/models/payout_method_details_spec.rb +149 -0
  291. data/spec/models/payout_method_details_xof_mobile_spec.rb +59 -0
  292. data/spec/models/payout_method_gender_enum_spec.rb +35 -0
  293. data/spec/models/payout_method_identity_card_type_enum_spec.rb +35 -0
  294. data/spec/models/payout_method_list_response_spec.rb +47 -0
  295. data/spec/models/payout_method_mobile_provider_enum_spec.rb +35 -0
  296. data/spec/models/payout_method_request_spec.rb +41 -0
  297. data/spec/models/payout_method_response_spec.rb +41 -0
  298. data/spec/models/payout_method_spec.rb +71 -0
  299. data/spec/models/payout_method_webhook_spec.rb +53 -0
  300. data/spec/models/recipient_list_response_spec.rb +47 -0
  301. data/spec/models/recipient_request_spec.rb +41 -0
  302. data/spec/models/recipient_response_spec.rb +41 -0
  303. data/spec/models/recipient_spec.rb +155 -0
  304. data/spec/models/recipient_state_spec.rb +35 -0
  305. data/spec/models/recipient_webhook_spec.rb +53 -0
  306. data/spec/models/sender_list_response_spec.rb +47 -0
  307. data/spec/models/sender_request_spec.rb +41 -0
  308. data/spec/models/sender_response_existing_spec.rb +41 -0
  309. data/spec/models/sender_response_meta_spec.rb +41 -0
  310. data/spec/models/sender_response_spec.rb +47 -0
  311. data/spec/models/sender_spec.rb +195 -0
  312. data/spec/models/sender_state_spec.rb +35 -0
  313. data/spec/models/sender_webhook_spec.rb +53 -0
  314. data/spec/models/transaction_list_response_spec.rb +47 -0
  315. data/spec/models/transaction_request_spec.rb +41 -0
  316. data/spec/models/transaction_response_existing_spec.rb +47 -0
  317. data/spec/models/transaction_response_meta_spec.rb +41 -0
  318. data/spec/models/transaction_response_spec.rb +47 -0
  319. data/spec/models/transaction_spec.rb +131 -0
  320. data/spec/models/transaction_state_spec.rb +35 -0
  321. data/spec/models/transaction_traits_spec.rb +47 -0
  322. data/spec/models/transaction_webhook_spec.rb +53 -0
  323. data/spec/models/validation_error_description_spec.rb +41 -0
  324. data/spec/models/webhook_definition_event_list_response_spec.rb +41 -0
  325. data/spec/models/webhook_definition_list_response_spec.rb +47 -0
  326. data/spec/models/webhook_definition_request_spec.rb +41 -0
  327. data/spec/models/webhook_definition_response_spec.rb +41 -0
  328. data/spec/models/webhook_definition_spec.rb +65 -0
  329. data/spec/models/webhook_log_list_response_spec.rb +47 -0
  330. data/spec/models/webhook_log_metadata_request_spec.rb +53 -0
  331. data/spec/models/webhook_log_metadata_response_spec.rb +53 -0
  332. data/spec/models/webhook_log_metadata_spec.rb +95 -0
  333. data/spec/models/webhook_log_response_spec.rb +41 -0
  334. data/spec/models/webhook_log_spec.rb +71 -0
  335. data/spec/models/webhook_spec.rb +53 -0
  336. data/spec/spec_helper.rb +111 -0
  337. data/transferzero-sdk.gemspec +46 -0
  338. metadata +684 -0
@@ -0,0 +1,428 @@
1
+ =begin
2
+ #TransferZero API
3
+
4
+ #Reference documentation for the TransferZero API V1
5
+
6
+ OpenAPI spec version: 1.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.0.0-beta3
10
+
11
+ =end
12
+
13
+ require 'uri'
14
+
15
+ module TransferZero
16
+ class TransactionsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+
24
+ # Calculates transaction amounts for a transaction payload
25
+ # Calculates the input, output and fee amounts for the recipients in a transaction payload
26
+ # @param transaction_request
27
+ # @param [Hash] opts the optional parameters
28
+ # @return [TransactionResponse]
29
+ def calculate_transactions(transaction_request, opts = {})
30
+ data, _status_code, _headers = calculate_transactions_with_http_info(transaction_request, opts)
31
+ data
32
+ end
33
+
34
+ # Calculates transaction amounts for a transaction payload
35
+ # Calculates the input, output and fee amounts for the recipients in a transaction payload
36
+ # @param transaction_request
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(TransactionResponse, Fixnum, Hash)>] TransactionResponse data, response status code and response headers
39
+ def calculate_transactions_with_http_info(transaction_request, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: TransactionsApi.calculate_transactions ...'
42
+ end
43
+ # verify the required parameter 'transaction_request' is set
44
+ if @api_client.config.client_side_validation && transaction_request.nil?
45
+ fail ArgumentError, "Missing the required parameter 'transaction_request' when calling TransactionsApi.calculate_transactions"
46
+ end
47
+ # resource path
48
+ local_var_path = '/transactions/calculate'
49
+
50
+ # query parameters
51
+ query_params = {}
52
+
53
+ # header parameters
54
+ header_params = {}
55
+ # HTTP header 'Accept' (if needed)
56
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
57
+ # HTTP header 'Content-Type'
58
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
59
+
60
+ # form parameters
61
+ form_params = {}
62
+
63
+ # http body (model)
64
+ post_body = @api_client.object_to_http_body(transaction_request)
65
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
66
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
67
+ :header_params => header_params,
68
+ :query_params => query_params,
69
+ :form_params => form_params,
70
+ :body => post_body,
71
+ :auth_names => auth_names,
72
+ :return_type => 'TransactionResponse')
73
+ if @api_client.config.debugging
74
+ @api_client.config.logger.debug "API called: TransactionsApi#calculate_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
75
+ end
76
+ return data, status_code, headers
77
+ end
78
+
79
+
80
+ # Fetch a single transaction
81
+ # Finds and returns a Transaction created by the requesting API key, using the provided Transaction ID.
82
+ # @param transaction_id ID of the transaction. Example: &#x60;/v1/transactions/bf9ff782-e182-45ac-abea-5bce83ad6670&#x60;
83
+ # @param [Hash] opts the optional parameters
84
+ # @return [TransactionResponse]
85
+ def get_transaction(transaction_id, opts = {})
86
+ data, _status_code, _headers = get_transaction_with_http_info(transaction_id, opts)
87
+ data
88
+ end
89
+
90
+ # Fetch a single transaction
91
+ # Finds and returns a Transaction created by the requesting API key, using the provided Transaction ID.
92
+ # @param transaction_id ID of the transaction. Example: &#x60;/v1/transactions/bf9ff782-e182-45ac-abea-5bce83ad6670&#x60;
93
+ # @param [Hash] opts the optional parameters
94
+ # @return [Array<(TransactionResponse, Fixnum, Hash)>] TransactionResponse data, response status code and response headers
95
+ def get_transaction_with_http_info(transaction_id, opts = {})
96
+ if @api_client.config.debugging
97
+ @api_client.config.logger.debug 'Calling API: TransactionsApi.get_transaction ...'
98
+ end
99
+ # verify the required parameter 'transaction_id' is set
100
+ if @api_client.config.client_side_validation && transaction_id.nil?
101
+ fail ArgumentError, "Missing the required parameter 'transaction_id' when calling TransactionsApi.get_transaction"
102
+ end
103
+ # resource path
104
+ local_var_path = '/transactions/{Transaction ID}'.sub('{' + 'Transaction ID' + '}', transaction_id.to_s)
105
+
106
+ # query parameters
107
+ query_params = {}
108
+
109
+ # header parameters
110
+ header_params = {}
111
+ # HTTP header 'Accept' (if needed)
112
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
113
+
114
+ # form parameters
115
+ form_params = {}
116
+
117
+ # http body (model)
118
+ post_body = nil
119
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
120
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
121
+ :header_params => header_params,
122
+ :query_params => query_params,
123
+ :form_params => form_params,
124
+ :body => post_body,
125
+ :auth_names => auth_names,
126
+ :return_type => 'TransactionResponse')
127
+ if @api_client.config.debugging
128
+ @api_client.config.logger.debug "API called: TransactionsApi#get_transaction\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
129
+ end
130
+ return data, status_code, headers
131
+ end
132
+
133
+ def get_transactions_all(opts = {})
134
+ result = []
135
+ response = get_transactions(opts)
136
+ result += response["object"]
137
+ while next_page = response["meta"]["pagination"]["next_page"]
138
+ response = get_transactions(opts.merge(page: next_page))
139
+ result += response["object"]
140
+ end
141
+ result
142
+ end
143
+
144
+ # Get a list of transactions
145
+ # Retrieves a paginated list of the Transactions created by your API key.
146
+ # @param [Hash] opts the optional parameters
147
+ # @option opts [Integer] :page The page number to request (defaults to 1)
148
+ # @option opts [Integer] :per The number of results to load per page (defaults to 10)
149
+ # @option opts [String] :external_id Allows filtering results by &#x60;external_id&#x60;. Example: &#x60;/v1/senders?external_id&#x3D;26ec8517-2f0d-48c0-b74f-0bccb9ab3a87&#x60;
150
+ # @return [TransactionListResponse]
151
+ def get_transactions(opts = {})
152
+ data, _status_code, _headers = get_transactions_with_http_info(opts)
153
+ data
154
+ end
155
+
156
+ # Get a list of transactions
157
+ # Retrieves a paginated list of the Transactions created by your API key.
158
+ # @param [Hash] opts the optional parameters
159
+ # @option opts [Integer] :page The page number to request (defaults to 1)
160
+ # @option opts [Integer] :per The number of results to load per page (defaults to 10)
161
+ # @option opts [String] :external_id Allows filtering results by &#x60;external_id&#x60;. Example: &#x60;/v1/senders?external_id&#x3D;26ec8517-2f0d-48c0-b74f-0bccb9ab3a87&#x60;
162
+ # @return [Array<(TransactionListResponse, Fixnum, Hash)>] TransactionListResponse data, response status code and response headers
163
+ def get_transactions_with_http_info(opts = {})
164
+ if @api_client.config.debugging
165
+ @api_client.config.logger.debug 'Calling API: TransactionsApi.get_transactions ...'
166
+ end
167
+ # resource path
168
+ local_var_path = '/transactions'
169
+
170
+ # query parameters
171
+ query_params = {}
172
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
173
+ query_params[:'per'] = opts[:'per'] if !opts[:'per'].nil?
174
+ query_params[:'external_id'] = opts[:'external_id'] if !opts[:'external_id'].nil?
175
+
176
+ # header parameters
177
+ header_params = {}
178
+ # HTTP header 'Accept' (if needed)
179
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
180
+
181
+ # form parameters
182
+ form_params = {}
183
+
184
+ # http body (model)
185
+ post_body = nil
186
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
187
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
188
+ :header_params => header_params,
189
+ :query_params => query_params,
190
+ :form_params => form_params,
191
+ :body => post_body,
192
+ :auth_names => auth_names,
193
+ :return_type => 'TransactionListResponse')
194
+ if @api_client.config.debugging
195
+ @api_client.config.logger.debug "API called: TransactionsApi#get_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
196
+ end
197
+ return data, status_code, headers
198
+ end
199
+
200
+
201
+ # Creates a fake payin for transaction
202
+ # This method is available only in sandbox environment and is supposed to be used only for testing integration. It allows you to emulate a payin without paying actual money.
203
+ # @param transaction_id ID of the transaction to payin. Example: &#x60;/v1/transactions/bf9ff782-e182-45ac-abea-5bce83ad6670/payin&#x60;
204
+ # @param payin_method_request
205
+ # @param [Hash] opts the optional parameters
206
+ # @return [TransactionResponse]
207
+ def payin_transaction(transaction_id, payin_method_request, opts = {})
208
+ data, _status_code, _headers = payin_transaction_with_http_info(transaction_id, payin_method_request, opts)
209
+ data
210
+ end
211
+
212
+ # Creates a fake payin for transaction
213
+ # This method is available only in sandbox environment and is supposed to be used only for testing integration. It allows you to emulate a payin without paying actual money.
214
+ # @param transaction_id ID of the transaction to payin. Example: &#x60;/v1/transactions/bf9ff782-e182-45ac-abea-5bce83ad6670/payin&#x60;
215
+ # @param payin_method_request
216
+ # @param [Hash] opts the optional parameters
217
+ # @return [Array<(TransactionResponse, Fixnum, Hash)>] TransactionResponse data, response status code and response headers
218
+ def payin_transaction_with_http_info(transaction_id, payin_method_request, opts = {})
219
+ if @api_client.config.debugging
220
+ @api_client.config.logger.debug 'Calling API: TransactionsApi.payin_transaction ...'
221
+ end
222
+ # verify the required parameter 'transaction_id' is set
223
+ if @api_client.config.client_side_validation && transaction_id.nil?
224
+ fail ArgumentError, "Missing the required parameter 'transaction_id' when calling TransactionsApi.payin_transaction"
225
+ end
226
+ # verify the required parameter 'payin_method_request' is set
227
+ if @api_client.config.client_side_validation && payin_method_request.nil?
228
+ fail ArgumentError, "Missing the required parameter 'payin_method_request' when calling TransactionsApi.payin_transaction"
229
+ end
230
+ # resource path
231
+ local_var_path = '/transactions/{Transaction ID}/payin'.sub('{' + 'Transaction ID' + '}', transaction_id.to_s)
232
+
233
+ # query parameters
234
+ query_params = {}
235
+
236
+ # header parameters
237
+ header_params = {}
238
+ # HTTP header 'Accept' (if needed)
239
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
240
+ # HTTP header 'Content-Type'
241
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
242
+
243
+ # form parameters
244
+ form_params = {}
245
+
246
+ # http body (model)
247
+ post_body = @api_client.object_to_http_body(payin_method_request)
248
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
249
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
250
+ :header_params => header_params,
251
+ :query_params => query_params,
252
+ :form_params => form_params,
253
+ :body => post_body,
254
+ :auth_names => auth_names,
255
+ :return_type => 'TransactionResponse')
256
+ if @api_client.config.debugging
257
+ @api_client.config.logger.debug "API called: TransactionsApi#payin_transaction\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
258
+ end
259
+ return data, status_code, headers
260
+ end
261
+
262
+
263
+ # Creates a fake payout for transaction
264
+ # This method is available only in sandbox environment and is supposed to be used only for testing. It allows you to emulate the payout of a transaction after payin.
265
+ # @param transaction_id ID of the transaction to payout. Example: &#x60;/v1/transactions/bf9ff782-e182-45ac-abea-5bce83ad6670/payout&#x60;
266
+ # @param [Hash] opts the optional parameters
267
+ # @return [TransactionResponse]
268
+ def payout_transaction(transaction_id, opts = {})
269
+ data, _status_code, _headers = payout_transaction_with_http_info(transaction_id, opts)
270
+ data
271
+ end
272
+
273
+ # Creates a fake payout for transaction
274
+ # This method is available only in sandbox environment and is supposed to be used only for testing. It allows you to emulate the payout of a transaction after payin.
275
+ # @param transaction_id ID of the transaction to payout. Example: &#x60;/v1/transactions/bf9ff782-e182-45ac-abea-5bce83ad6670/payout&#x60;
276
+ # @param [Hash] opts the optional parameters
277
+ # @return [Array<(TransactionResponse, Fixnum, Hash)>] TransactionResponse data, response status code and response headers
278
+ def payout_transaction_with_http_info(transaction_id, opts = {})
279
+ if @api_client.config.debugging
280
+ @api_client.config.logger.debug 'Calling API: TransactionsApi.payout_transaction ...'
281
+ end
282
+ # verify the required parameter 'transaction_id' is set
283
+ if @api_client.config.client_side_validation && transaction_id.nil?
284
+ fail ArgumentError, "Missing the required parameter 'transaction_id' when calling TransactionsApi.payout_transaction"
285
+ end
286
+ # resource path
287
+ local_var_path = '/transactions/{Transaction ID}/payout'.sub('{' + 'Transaction ID' + '}', transaction_id.to_s)
288
+
289
+ # query parameters
290
+ query_params = {}
291
+
292
+ # header parameters
293
+ header_params = {}
294
+ # HTTP header 'Accept' (if needed)
295
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
296
+
297
+ # form parameters
298
+ form_params = {}
299
+
300
+ # http body (model)
301
+ post_body = nil
302
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
303
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
304
+ :header_params => header_params,
305
+ :query_params => query_params,
306
+ :form_params => form_params,
307
+ :body => post_body,
308
+ :auth_names => auth_names,
309
+ :return_type => 'TransactionResponse')
310
+ if @api_client.config.debugging
311
+ @api_client.config.logger.debug "API called: TransactionsApi#payout_transaction\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
312
+ end
313
+ return data, status_code, headers
314
+ end
315
+
316
+
317
+ # Creates a new transaction
318
+ # Transactions are the main objects in the TransferZero API, so it's important to understand how to create and manage them. Transactions facilitate money movement from one Sender in a specific currency to one or multiple Recipients in another currency. The main flow of a successful transaction flow is the following - - Transaction is created linking the Sender to the Recipient(s) with the requested amounts. - Once the sender is KYC'd and approved the transaction can be funded. - Once the transaction is funded, we will initiate the payout to the recipient(s). - After the recipient (or all recipients) has received the money, the transaction is finished.
319
+ # @param transaction_request
320
+ # @param [Hash] opts the optional parameters
321
+ # @return [TransactionResponse]
322
+ def post_transactions(transaction_request, opts = {})
323
+ data, _status_code, _headers = post_transactions_with_http_info(transaction_request, opts)
324
+ data
325
+ end
326
+
327
+ # Creates a new transaction
328
+ # Transactions are the main objects in the TransferZero API, so it&#39;s important to understand how to create and manage them. Transactions facilitate money movement from one Sender in a specific currency to one or multiple Recipients in another currency. The main flow of a successful transaction flow is the following - - Transaction is created linking the Sender to the Recipient(s) with the requested amounts. - Once the sender is KYC&#39;d and approved the transaction can be funded. - Once the transaction is funded, we will initiate the payout to the recipient(s). - After the recipient (or all recipients) has received the money, the transaction is finished.
329
+ # @param transaction_request
330
+ # @param [Hash] opts the optional parameters
331
+ # @return [Array<(TransactionResponse, Fixnum, Hash)>] TransactionResponse data, response status code and response headers
332
+ def post_transactions_with_http_info(transaction_request, opts = {})
333
+ if @api_client.config.debugging
334
+ @api_client.config.logger.debug 'Calling API: TransactionsApi.post_transactions ...'
335
+ end
336
+ # verify the required parameter 'transaction_request' is set
337
+ if @api_client.config.client_side_validation && transaction_request.nil?
338
+ fail ArgumentError, "Missing the required parameter 'transaction_request' when calling TransactionsApi.post_transactions"
339
+ end
340
+ # resource path
341
+ local_var_path = '/transactions'
342
+
343
+ # query parameters
344
+ query_params = {}
345
+
346
+ # header parameters
347
+ header_params = {}
348
+ # HTTP header 'Accept' (if needed)
349
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
350
+ # HTTP header 'Content-Type'
351
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
352
+
353
+ # form parameters
354
+ form_params = {}
355
+
356
+ # http body (model)
357
+ post_body = @api_client.object_to_http_body(transaction_request)
358
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
359
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
360
+ :header_params => header_params,
361
+ :query_params => query_params,
362
+ :form_params => form_params,
363
+ :body => post_body,
364
+ :auth_names => auth_names,
365
+ :return_type => 'TransactionResponse')
366
+ if @api_client.config.debugging
367
+ @api_client.config.logger.debug "API called: TransactionsApi#post_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
368
+ end
369
+ return data, status_code, headers
370
+ end
371
+
372
+
373
+ # Validates a transaction payload
374
+ # Validates fields in a transaction payload and displays invalid or missing fields
375
+ # @param transaction_request
376
+ # @param [Hash] opts the optional parameters
377
+ # @return [TransactionResponse]
378
+ def validate_transactions(transaction_request, opts = {})
379
+ data, _status_code, _headers = validate_transactions_with_http_info(transaction_request, opts)
380
+ data
381
+ end
382
+
383
+ # Validates a transaction payload
384
+ # Validates fields in a transaction payload and displays invalid or missing fields
385
+ # @param transaction_request
386
+ # @param [Hash] opts the optional parameters
387
+ # @return [Array<(TransactionResponse, Fixnum, Hash)>] TransactionResponse data, response status code and response headers
388
+ def validate_transactions_with_http_info(transaction_request, opts = {})
389
+ if @api_client.config.debugging
390
+ @api_client.config.logger.debug 'Calling API: TransactionsApi.validate_transactions ...'
391
+ end
392
+ # verify the required parameter 'transaction_request' is set
393
+ if @api_client.config.client_side_validation && transaction_request.nil?
394
+ fail ArgumentError, "Missing the required parameter 'transaction_request' when calling TransactionsApi.validate_transactions"
395
+ end
396
+ # resource path
397
+ local_var_path = '/transactions/validate'
398
+
399
+ # query parameters
400
+ query_params = {}
401
+
402
+ # header parameters
403
+ header_params = {}
404
+ # HTTP header 'Accept' (if needed)
405
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
406
+ # HTTP header 'Content-Type'
407
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
408
+
409
+ # form parameters
410
+ form_params = {}
411
+
412
+ # http body (model)
413
+ post_body = @api_client.object_to_http_body(transaction_request)
414
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
415
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
416
+ :header_params => header_params,
417
+ :query_params => query_params,
418
+ :form_params => form_params,
419
+ :body => post_body,
420
+ :auth_names => auth_names,
421
+ :return_type => 'TransactionResponse')
422
+ if @api_client.config.debugging
423
+ @api_client.config.logger.debug "API called: TransactionsApi#validate_transactions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
424
+ end
425
+ return data, status_code, headers
426
+ end
427
+ end
428
+ end
@@ -0,0 +1,299 @@
1
+ =begin
2
+ #TransferZero API
3
+
4
+ #Reference documentation for the TransferZero API V1
5
+
6
+ OpenAPI spec version: 1.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.0.0-beta3
10
+
11
+ =end
12
+
13
+ require 'uri'
14
+
15
+ module TransferZero
16
+ class WebhooksApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+
23
+
24
+ # Unsubscribing from a webhook
25
+ # Unsubscribes from a webhook specified
26
+ # @param webhook_id The ID of webhook to cancel. Example: &#x60;/v1/webhooks/9d4d7b73-a94c-4979-ab57-09074fd55d33&#x60;
27
+ # @param [Hash] opts the optional parameters
28
+ # @return [WebhookDefinitionResponse]
29
+ def delete_webhook(webhook_id, opts = {})
30
+ data, _status_code, _headers = delete_webhook_with_http_info(webhook_id, opts)
31
+ data
32
+ end
33
+
34
+ # Unsubscribing from a webhook
35
+ # Unsubscribes from a webhook specified
36
+ # @param webhook_id The ID of webhook to cancel. Example: &#x60;/v1/webhooks/9d4d7b73-a94c-4979-ab57-09074fd55d33&#x60;
37
+ # @param [Hash] opts the optional parameters
38
+ # @return [Array<(WebhookDefinitionResponse, Fixnum, Hash)>] WebhookDefinitionResponse data, response status code and response headers
39
+ def delete_webhook_with_http_info(webhook_id, opts = {})
40
+ if @api_client.config.debugging
41
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.delete_webhook ...'
42
+ end
43
+ # verify the required parameter 'webhook_id' is set
44
+ if @api_client.config.client_side_validation && webhook_id.nil?
45
+ fail ArgumentError, "Missing the required parameter 'webhook_id' when calling WebhooksApi.delete_webhook"
46
+ end
47
+ # resource path
48
+ local_var_path = '/webhooks/{Webhook ID}'.sub('{' + 'Webhook ID' + '}', webhook_id.to_s)
49
+
50
+ # query parameters
51
+ query_params = {}
52
+
53
+ # header parameters
54
+ header_params = {}
55
+ # HTTP header 'Accept' (if needed)
56
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
57
+
58
+ # form parameters
59
+ form_params = {}
60
+
61
+ # http body (model)
62
+ post_body = nil
63
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
64
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path,
65
+ :header_params => header_params,
66
+ :query_params => query_params,
67
+ :form_params => form_params,
68
+ :body => post_body,
69
+ :auth_names => auth_names,
70
+ :return_type => 'WebhookDefinitionResponse')
71
+ if @api_client.config.debugging
72
+ @api_client.config.logger.debug "API called: WebhooksApi#delete_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
73
+ end
74
+ return data, status_code, headers
75
+ end
76
+
77
+
78
+ # Find a webhook's details
79
+ # Look up a webhook's details with its ID
80
+ # @param webhook_id The ID of the Webhook to look up Example: &#x60;/v1/webhooks/9d4d7b73-a94c-4979-ab57-09074fd55d33&#x60;
81
+ # @param [Hash] opts the optional parameters
82
+ # @return [WebhookDefinitionResponse]
83
+ def get_webhook(webhook_id, opts = {})
84
+ data, _status_code, _headers = get_webhook_with_http_info(webhook_id, opts)
85
+ data
86
+ end
87
+
88
+ # Find a webhook&#39;s details
89
+ # Look up a webhook&#39;s details with its ID
90
+ # @param webhook_id The ID of the Webhook to look up Example: &#x60;/v1/webhooks/9d4d7b73-a94c-4979-ab57-09074fd55d33&#x60;
91
+ # @param [Hash] opts the optional parameters
92
+ # @return [Array<(WebhookDefinitionResponse, Fixnum, Hash)>] WebhookDefinitionResponse data, response status code and response headers
93
+ def get_webhook_with_http_info(webhook_id, opts = {})
94
+ if @api_client.config.debugging
95
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.get_webhook ...'
96
+ end
97
+ # verify the required parameter 'webhook_id' is set
98
+ if @api_client.config.client_side_validation && webhook_id.nil?
99
+ fail ArgumentError, "Missing the required parameter 'webhook_id' when calling WebhooksApi.get_webhook"
100
+ end
101
+ # resource path
102
+ local_var_path = '/webhooks/{Webhook ID}'.sub('{' + 'Webhook ID' + '}', webhook_id.to_s)
103
+
104
+ # query parameters
105
+ query_params = {}
106
+
107
+ # header parameters
108
+ header_params = {}
109
+ # HTTP header 'Accept' (if needed)
110
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
111
+
112
+ # form parameters
113
+ form_params = {}
114
+
115
+ # http body (model)
116
+ post_body = nil
117
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
118
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
119
+ :header_params => header_params,
120
+ :query_params => query_params,
121
+ :form_params => form_params,
122
+ :body => post_body,
123
+ :auth_names => auth_names,
124
+ :return_type => 'WebhookDefinitionResponse')
125
+ if @api_client.config.debugging
126
+ @api_client.config.logger.debug "API called: WebhooksApi#get_webhook\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
127
+ end
128
+ return data, status_code, headers
129
+ end
130
+
131
+
132
+ # Find possible webhook events
133
+ # Fetching possible webhook events
134
+ # @param [Hash] opts the optional parameters
135
+ # @return [WebhookDefinitionEventListResponse]
136
+ def get_webhook_events(opts = {})
137
+ data, _status_code, _headers = get_webhook_events_with_http_info(opts)
138
+ data
139
+ end
140
+
141
+ # Find possible webhook events
142
+ # Fetching possible webhook events
143
+ # @param [Hash] opts the optional parameters
144
+ # @return [Array<(WebhookDefinitionEventListResponse, Fixnum, Hash)>] WebhookDefinitionEventListResponse data, response status code and response headers
145
+ def get_webhook_events_with_http_info(opts = {})
146
+ if @api_client.config.debugging
147
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.get_webhook_events ...'
148
+ end
149
+ # resource path
150
+ local_var_path = '/webhooks/events'
151
+
152
+ # query parameters
153
+ query_params = {}
154
+
155
+ # header parameters
156
+ header_params = {}
157
+ # HTTP header 'Accept' (if needed)
158
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
159
+
160
+ # form parameters
161
+ form_params = {}
162
+
163
+ # http body (model)
164
+ post_body = nil
165
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
166
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
167
+ :header_params => header_params,
168
+ :query_params => query_params,
169
+ :form_params => form_params,
170
+ :body => post_body,
171
+ :auth_names => auth_names,
172
+ :return_type => 'WebhookDefinitionEventListResponse')
173
+ if @api_client.config.debugging
174
+ @api_client.config.logger.debug "API called: WebhooksApi#get_webhook_events\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
175
+ end
176
+ return data, status_code, headers
177
+ end
178
+
179
+ def get_webhooks_all(opts = {})
180
+ result = []
181
+ response = get_webhooks(opts)
182
+ result += response["object"]
183
+ while next_page = response["meta"]["pagination"]["next_page"]
184
+ response = get_webhooks(opts.merge(page: next_page))
185
+ result += response["object"]
186
+ end
187
+ result
188
+ end
189
+
190
+ # Listing webhooks
191
+ # Get a list of created webhooks
192
+ # @param [Hash] opts the optional parameters
193
+ # @option opts [Integer] :page The page number to request (defaults to 1)
194
+ # @option opts [Integer] :per The number of results to load per page (defaults to 10)
195
+ # @return [WebhookDefinitionListResponse]
196
+ def get_webhooks(opts = {})
197
+ data, _status_code, _headers = get_webhooks_with_http_info(opts)
198
+ data
199
+ end
200
+
201
+ # Listing webhooks
202
+ # Get a list of created webhooks
203
+ # @param [Hash] opts the optional parameters
204
+ # @option opts [Integer] :page The page number to request (defaults to 1)
205
+ # @option opts [Integer] :per The number of results to load per page (defaults to 10)
206
+ # @return [Array<(WebhookDefinitionListResponse, Fixnum, Hash)>] WebhookDefinitionListResponse data, response status code and response headers
207
+ def get_webhooks_with_http_info(opts = {})
208
+ if @api_client.config.debugging
209
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.get_webhooks ...'
210
+ end
211
+ # resource path
212
+ local_var_path = '/webhooks'
213
+
214
+ # query parameters
215
+ query_params = {}
216
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
217
+ query_params[:'per'] = opts[:'per'] if !opts[:'per'].nil?
218
+
219
+ # header parameters
220
+ header_params = {}
221
+ # HTTP header 'Accept' (if needed)
222
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
223
+
224
+ # form parameters
225
+ form_params = {}
226
+
227
+ # http body (model)
228
+ post_body = nil
229
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
230
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path,
231
+ :header_params => header_params,
232
+ :query_params => query_params,
233
+ :form_params => form_params,
234
+ :body => post_body,
235
+ :auth_names => auth_names,
236
+ :return_type => 'WebhookDefinitionListResponse')
237
+ if @api_client.config.debugging
238
+ @api_client.config.logger.debug "API called: WebhooksApi#get_webhooks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
239
+ end
240
+ return data, status_code, headers
241
+ end
242
+
243
+
244
+ # Creating a webhook
245
+ # Creates a new webhook, subscribing the provided endpoint to the specified event(s)
246
+ # @param webhook_definition_request
247
+ # @param [Hash] opts the optional parameters
248
+ # @return [WebhookDefinitionResponse]
249
+ def post_webhooks(webhook_definition_request, opts = {})
250
+ data, _status_code, _headers = post_webhooks_with_http_info(webhook_definition_request, opts)
251
+ data
252
+ end
253
+
254
+ # Creating a webhook
255
+ # Creates a new webhook, subscribing the provided endpoint to the specified event(s)
256
+ # @param webhook_definition_request
257
+ # @param [Hash] opts the optional parameters
258
+ # @return [Array<(WebhookDefinitionResponse, Fixnum, Hash)>] WebhookDefinitionResponse data, response status code and response headers
259
+ def post_webhooks_with_http_info(webhook_definition_request, opts = {})
260
+ if @api_client.config.debugging
261
+ @api_client.config.logger.debug 'Calling API: WebhooksApi.post_webhooks ...'
262
+ end
263
+ # verify the required parameter 'webhook_definition_request' is set
264
+ if @api_client.config.client_side_validation && webhook_definition_request.nil?
265
+ fail ArgumentError, "Missing the required parameter 'webhook_definition_request' when calling WebhooksApi.post_webhooks"
266
+ end
267
+ # resource path
268
+ local_var_path = '/webhooks'
269
+
270
+ # query parameters
271
+ query_params = {}
272
+
273
+ # header parameters
274
+ header_params = {}
275
+ # HTTP header 'Accept' (if needed)
276
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
277
+ # HTTP header 'Content-Type'
278
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
279
+
280
+ # form parameters
281
+ form_params = {}
282
+
283
+ # http body (model)
284
+ post_body = @api_client.object_to_http_body(webhook_definition_request)
285
+ auth_names = ['AuthorizationKey', 'AuthorizationNonce', 'AuthorizationSecret', 'AuthorizationSignature']
286
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
287
+ :header_params => header_params,
288
+ :query_params => query_params,
289
+ :form_params => form_params,
290
+ :body => post_body,
291
+ :auth_names => auth_names,
292
+ :return_type => 'WebhookDefinitionResponse')
293
+ if @api_client.config.debugging
294
+ @api_client.config.logger.debug "API called: WebhooksApi#post_webhooks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
295
+ end
296
+ return data, status_code, headers
297
+ end
298
+ end
299
+ end