mt-sdk 0.0.1
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.
- checksums.yaml +7 -0
- data/LICENSE +28 -0
- data/README.md +188 -0
- data/bin/console +15 -0
- data/lib/modern_treasury/api_helper.rb +10 -0
- data/lib/modern_treasury/client.rb +275 -0
- data/lib/modern_treasury/configuration.rb +206 -0
- data/lib/modern_treasury/controllers/account_collection_flow_controller.rb +130 -0
- data/lib/modern_treasury/controllers/account_detail_controller.rb +131 -0
- data/lib/modern_treasury/controllers/balance_report_controller.rb +76 -0
- data/lib/modern_treasury/controllers/base_controller.rb +60 -0
- data/lib/modern_treasury/controllers/connection_controller.rb +40 -0
- data/lib/modern_treasury/controllers/counterparty_controller.rb +188 -0
- data/lib/modern_treasury/controllers/document_controller.rb +285 -0
- data/lib/modern_treasury/controllers/event_controller.rb +72 -0
- data/lib/modern_treasury/controllers/expected_payment_controller.rb +162 -0
- data/lib/modern_treasury/controllers/external_account_controller.rb +202 -0
- data/lib/modern_treasury/controllers/incoming_payment_detail_controller.rb +150 -0
- data/lib/modern_treasury/controllers/internal_account_controller.rb +134 -0
- data/lib/modern_treasury/controllers/invoice_controller.rb +98 -0
- data/lib/modern_treasury/controllers/invoice_line_item_controller.rb +136 -0
- data/lib/modern_treasury/controllers/ledger_account_category_controller.rb +292 -0
- data/lib/modern_treasury/controllers/ledger_account_controller.rb +202 -0
- data/lib/modern_treasury/controllers/ledger_account_payout_controller.rb +126 -0
- data/lib/modern_treasury/controllers/ledger_account_statement_controller.rb +60 -0
- data/lib/modern_treasury/controllers/ledger_controller.rb +152 -0
- data/lib/modern_treasury/controllers/ledger_entry_controller.rb +148 -0
- data/lib/modern_treasury/controllers/ledger_event_handler_controller.rb +119 -0
- data/lib/modern_treasury/controllers/ledger_transaction_controller.rb +328 -0
- data/lib/modern_treasury/controllers/ledgerable_event_controller.rb +61 -0
- data/lib/modern_treasury/controllers/line_item_controller.rb +107 -0
- data/lib/modern_treasury/controllers/paper_item_controller.rb +69 -0
- data/lib/modern_treasury/controllers/payment_flow_controller.rb +138 -0
- data/lib/modern_treasury/controllers/payment_order_controller.rb +368 -0
- data/lib/modern_treasury/controllers/payment_reference_controller.rb +64 -0
- data/lib/modern_treasury/controllers/ping_controller.rb +34 -0
- data/lib/modern_treasury/controllers/return_controller.rb +105 -0
- data/lib/modern_treasury/controllers/reversal_controller.rb +99 -0
- data/lib/modern_treasury/controllers/routing_detail_controller.rb +131 -0
- data/lib/modern_treasury/controllers/transaction_controller.rb +133 -0
- data/lib/modern_treasury/controllers/transaction_line_item_controller.rb +39 -0
- data/lib/modern_treasury/controllers/validation_controller.rb +41 -0
- data/lib/modern_treasury/controllers/virtual_account_controller.rb +142 -0
- data/lib/modern_treasury/exceptions/api_exception.rb +21 -0
- data/lib/modern_treasury/exceptions/error_message_exception.rb +46 -0
- data/lib/modern_treasury/http/auth/basic_auth.rb +62 -0
- data/lib/modern_treasury/http/http_call_back.rb +10 -0
- data/lib/modern_treasury/http/http_method_enum.rb +10 -0
- data/lib/modern_treasury/http/http_request.rb +10 -0
- data/lib/modern_treasury/http/http_response.rb +10 -0
- data/lib/modern_treasury/http/proxy_settings.rb +22 -0
- data/lib/modern_treasury/models/account.rb +304 -0
- data/lib/modern_treasury/models/account1.rb +217 -0
- data/lib/modern_treasury/models/account_collection_flow.rb +178 -0
- data/lib/modern_treasury/models/account_collection_flow_create_request.rb +70 -0
- data/lib/modern_treasury/models/account_collection_flow_update_request.rb +61 -0
- data/lib/modern_treasury/models/account_detail.rb +211 -0
- data/lib/modern_treasury/models/account_detail1.rb +74 -0
- data/lib/modern_treasury/models/account_detail_create_request.rb +75 -0
- data/lib/modern_treasury/models/account_number_type2_enum.rb +48 -0
- data/lib/modern_treasury/models/account_number_type_enum.rb +49 -0
- data/lib/modern_treasury/models/account_type5_enum.rb +56 -0
- data/lib/modern_treasury/models/account_type_enum.rb +56 -0
- data/lib/modern_treasury/models/accounting.rb +88 -0
- data/lib/modern_treasury/models/accounting1.rb +63 -0
- data/lib/modern_treasury/models/accounts_type1_enum.rb +26 -0
- data/lib/modern_treasury/models/accounts_type_enum.rb +36 -0
- data/lib/modern_treasury/models/address.rb +231 -0
- data/lib/modern_treasury/models/address_request.rb +118 -0
- data/lib/modern_treasury/models/async_response.rb +68 -0
- data/lib/modern_treasury/models/balance.rb +164 -0
- data/lib/modern_treasury/models/balance_report.rb +178 -0
- data/lib/modern_treasury/models/balance_report_type1_enum.rb +44 -0
- data/lib/modern_treasury/models/balance_report_type_enum.rb +45 -0
- data/lib/modern_treasury/models/balance_type_enum.rb +63 -0
- data/lib/modern_treasury/models/balances.rb +71 -0
- data/lib/modern_treasury/models/balances1.rb +81 -0
- data/lib/modern_treasury/models/balances2.rb +120 -0
- data/lib/modern_treasury/models/balances3.rb +130 -0
- data/lib/modern_treasury/models/base_model.rb +110 -0
- data/lib/modern_treasury/models/charge_bearer_enum.rb +42 -0
- data/lib/modern_treasury/models/code1_enum.rb +200 -0
- data/lib/modern_treasury/models/code_enum.rb +68 -0
- data/lib/modern_treasury/models/connection.rb +209 -0
- data/lib/modern_treasury/models/contact_detail.rb +200 -0
- data/lib/modern_treasury/models/contact_detail_create_request.rb +75 -0
- data/lib/modern_treasury/models/contact_identifier_type_enum.rb +40 -0
- data/lib/modern_treasury/models/content_type_enum.rb +36 -0
- data/lib/modern_treasury/models/counterparty.rb +200 -0
- data/lib/modern_treasury/models/counterparty_billing_address.rb +106 -0
- data/lib/modern_treasury/models/counterparty_collect_account_request.rb +104 -0
- data/lib/modern_treasury/models/counterparty_collect_account_response.rb +82 -0
- data/lib/modern_treasury/models/counterparty_create_request.rb +161 -0
- data/lib/modern_treasury/models/counterparty_shipping_address.rb +107 -0
- data/lib/modern_treasury/models/counterparty_update_request.rb +107 -0
- data/lib/modern_treasury/models/created_at_enum.rb +36 -0
- data/lib/modern_treasury/models/currency1_enum.rb +37 -0
- data/lib/modern_treasury/models/currency_enum.rb +784 -0
- data/lib/modern_treasury/models/direction10_enum.rb +38 -0
- data/lib/modern_treasury/models/direction14_enum.rb +36 -0
- data/lib/modern_treasury/models/direction15_enum.rb +36 -0
- data/lib/modern_treasury/models/direction1_enum.rb +37 -0
- data/lib/modern_treasury/models/direction4_enum.rb +36 -0
- data/lib/modern_treasury/models/direction5_enum.rb +39 -0
- data/lib/modern_treasury/models/direction9_enum.rb +37 -0
- data/lib/modern_treasury/models/direction_enum.rb +38 -0
- data/lib/modern_treasury/models/document.rb +207 -0
- data/lib/modern_treasury/models/document_create_request.rb +92 -0
- data/lib/modern_treasury/models/document_detail.rb +154 -0
- data/lib/modern_treasury/models/documentable_type1_enum.rb +72 -0
- data/lib/modern_treasury/models/documentable_type2_enum.rb +72 -0
- data/lib/modern_treasury/models/documentable_type_enum.rb +75 -0
- data/lib/modern_treasury/models/effective_at_enum.rb +36 -0
- data/lib/modern_treasury/models/errors.rb +81 -0
- data/lib/modern_treasury/models/event.rb +162 -0
- data/lib/modern_treasury/models/expected_payment.rb +343 -0
- data/lib/modern_treasury/models/expected_payment_create_request.rb +254 -0
- data/lib/modern_treasury/models/expected_payment_update_request.rb +239 -0
- data/lib/modern_treasury/models/external_account.rb +283 -0
- data/lib/modern_treasury/models/external_account_complete_verification_request.rb +62 -0
- data/lib/modern_treasury/models/external_account_create_request.rb +230 -0
- data/lib/modern_treasury/models/external_account_update_request.rb +132 -0
- data/lib/modern_treasury/models/external_account_verify_request.rb +83 -0
- data/lib/modern_treasury/models/fallback_type_enum.rb +28 -0
- data/lib/modern_treasury/models/field_enum.rb +112 -0
- data/lib/modern_treasury/models/file.rb +81 -0
- data/lib/modern_treasury/models/foreign_exchange_indicator_enum.rb +38 -0
- data/lib/modern_treasury/models/incoming_payment_detail.rb +348 -0
- data/lib/modern_treasury/models/incoming_payment_detail_create_request.rb +141 -0
- data/lib/modern_treasury/models/incoming_payment_detail_update_request.rb +63 -0
- data/lib/modern_treasury/models/internal_account.rb +361 -0
- data/lib/modern_treasury/models/internal_account_create_request.rb +135 -0
- data/lib/modern_treasury/models/internal_account_update_request.rb +95 -0
- data/lib/modern_treasury/models/invoice.rb +342 -0
- data/lib/modern_treasury/models/invoice_create_request.rb +235 -0
- data/lib/modern_treasury/models/invoice_line_item.rb +171 -0
- data/lib/modern_treasury/models/invoice_line_item_create_request.rb +104 -0
- data/lib/modern_treasury/models/invoice_line_item_update_request.rb +240 -0
- data/lib/modern_treasury/models/invoice_update_request.rb +251 -0
- data/lib/modern_treasury/models/invoicer_address.rb +106 -0
- data/lib/modern_treasury/models/itemizable_type1_enum.rb +36 -0
- data/lib/modern_treasury/models/itemizable_type_enum.rb +36 -0
- data/lib/modern_treasury/models/ledger.rb +158 -0
- data/lib/modern_treasury/models/ledger_account.rb +220 -0
- data/lib/modern_treasury/models/ledger_account_category.rb +187 -0
- data/lib/modern_treasury/models/ledger_account_category_create_request.rb +125 -0
- data/lib/modern_treasury/models/ledger_account_category_update_request.rb +84 -0
- data/lib/modern_treasury/models/ledger_account_create_request.rb +150 -0
- data/lib/modern_treasury/models/ledger_account_normal_balance_enum.rb +36 -0
- data/lib/modern_treasury/models/ledger_account_payout.rb +238 -0
- data/lib/modern_treasury/models/ledger_account_payout_create_request.rb +152 -0
- data/lib/modern_treasury/models/ledger_account_payout_update_request.rb +85 -0
- data/lib/modern_treasury/models/ledger_account_statement.rb +233 -0
- data/lib/modern_treasury/models/ledger_account_statement_create_request.rb +122 -0
- data/lib/modern_treasury/models/ledger_account_update_request.rb +84 -0
- data/lib/modern_treasury/models/ledger_balance.rb +97 -0
- data/lib/modern_treasury/models/ledger_balances.rb +81 -0
- data/lib/modern_treasury/models/ledger_balances_with_effective_at.rb +123 -0
- data/lib/modern_treasury/models/ledger_create_request.rb +83 -0
- data/lib/modern_treasury/models/ledger_entry.rb +247 -0
- data/lib/modern_treasury/models/ledger_entry_create_request.rb +177 -0
- data/lib/modern_treasury/models/ledger_entry_of_transaction_version.rb +214 -0
- data/lib/modern_treasury/models/ledger_event_handler.rb +182 -0
- data/lib/modern_treasury/models/ledger_event_handler_conditions.rb +78 -0
- data/lib/modern_treasury/models/ledger_event_handler_create_request.rb +119 -0
- data/lib/modern_treasury/models/ledger_event_handler_ledger_entries.rb +80 -0
- data/lib/modern_treasury/models/ledger_event_handler_ledger_transaction_template.rb +103 -0
- data/lib/modern_treasury/models/ledger_transaction.rb +259 -0
- data/lib/modern_treasury/models/ledger_transaction_create_request.rb +164 -0
- data/lib/modern_treasury/models/ledger_transaction_reversal_create_request.rb +142 -0
- data/lib/modern_treasury/models/ledger_transaction_update_request.rb +115 -0
- data/lib/modern_treasury/models/ledger_transaction_version.rb +254 -0
- data/lib/modern_treasury/models/ledger_type_enum.rb +37 -0
- data/lib/modern_treasury/models/ledger_update_request.rb +84 -0
- data/lib/modern_treasury/models/ledgerable_event.rb +206 -0
- data/lib/modern_treasury/models/ledgerable_event_create_request.rb +140 -0
- data/lib/modern_treasury/models/ledgerable_type2_enum.rb +71 -0
- data/lib/modern_treasury/models/ledgerable_type5_enum.rb +69 -0
- data/lib/modern_treasury/models/ledgerable_type6_enum.rb +68 -0
- data/lib/modern_treasury/models/ledgerable_type_enum.rb +38 -0
- data/lib/modern_treasury/models/legacy_document_create_request.rb +70 -0
- data/lib/modern_treasury/models/line_item.rb +200 -0
- data/lib/modern_treasury/models/line_item_request.rb +98 -0
- data/lib/modern_treasury/models/line_item_update_request.rb +63 -0
- data/lib/modern_treasury/models/mreturn.rb +425 -0
- data/lib/modern_treasury/models/normal_balance2_enum.rb +36 -0
- data/lib/modern_treasury/models/normal_balance_enum.rb +36 -0
- data/lib/modern_treasury/models/order_by.rb +72 -0
- data/lib/modern_treasury/models/originating_account_number_type_enum.rb +48 -0
- data/lib/modern_treasury/models/originating_routing_number_type_enum.rb +68 -0
- data/lib/modern_treasury/models/paper_item.rb +249 -0
- data/lib/modern_treasury/models/party_address.rb +106 -0
- data/lib/modern_treasury/models/party_type5_enum.rb +36 -0
- data/lib/modern_treasury/models/party_type_enum.rb +36 -0
- data/lib/modern_treasury/models/payment_direction_enum.rb +36 -0
- data/lib/modern_treasury/models/payment_flow.rb +230 -0
- data/lib/modern_treasury/models/payment_flow_create_request.rb +103 -0
- data/lib/modern_treasury/models/payment_flow_update_request.rb +61 -0
- data/lib/modern_treasury/models/payment_method1_enum.rb +46 -0
- data/lib/modern_treasury/models/payment_method_enum.rb +42 -0
- data/lib/modern_treasury/models/payment_order.rb +820 -0
- data/lib/modern_treasury/models/payment_order_async_create_request.rb +536 -0
- data/lib/modern_treasury/models/payment_order_create_request.rb +556 -0
- data/lib/modern_treasury/models/payment_order_update_request.rb +543 -0
- data/lib/modern_treasury/models/payment_reference.rb +175 -0
- data/lib/modern_treasury/models/payment_reference_object.rb +156 -0
- data/lib/modern_treasury/models/payment_type13_enum.rb +96 -0
- data/lib/modern_treasury/models/payment_type1_enum.rb +97 -0
- data/lib/modern_treasury/models/payment_type2_enum.rb +96 -0
- data/lib/modern_treasury/models/payment_type4_enum.rb +96 -0
- data/lib/modern_treasury/models/payment_type5_enum.rb +36 -0
- data/lib/modern_treasury/models/payment_type6_enum.rb +97 -0
- data/lib/modern_treasury/models/payment_type_enum.rb +37 -0
- data/lib/modern_treasury/models/ping_response.rb +60 -0
- data/lib/modern_treasury/models/priority4_enum.rb +36 -0
- data/lib/modern_treasury/models/priority_enum.rb +38 -0
- data/lib/modern_treasury/models/reason1_enum.rb +50 -0
- data/lib/modern_treasury/models/reason_enum.rb +48 -0
- data/lib/modern_treasury/models/receiving_account.rb +304 -0
- data/lib/modern_treasury/models/receiving_account1.rb +219 -0
- data/lib/modern_treasury/models/receiving_account_type_enum.rb +36 -0
- data/lib/modern_treasury/models/reconciliation_method_enum.rb +38 -0
- data/lib/modern_treasury/models/reference_number_type1_enum.rb +248 -0
- data/lib/modern_treasury/models/reference_number_type_enum.rb +248 -0
- data/lib/modern_treasury/models/referenceable_type1_enum.rb +40 -0
- data/lib/modern_treasury/models/referenceable_type_enum.rb +41 -0
- data/lib/modern_treasury/models/return_create_request.rb +119 -0
- data/lib/modern_treasury/models/returnable_type1_enum.rb +48 -0
- data/lib/modern_treasury/models/returnable_type_enum.rb +48 -0
- data/lib/modern_treasury/models/reversal.rb +151 -0
- data/lib/modern_treasury/models/reversal_create_request.rb +86 -0
- data/lib/modern_treasury/models/role_enum.rb +36 -0
- data/lib/modern_treasury/models/routing_detail.rb +242 -0
- data/lib/modern_treasury/models/routing_detail1.rb +83 -0
- data/lib/modern_treasury/models/routing_detail_create_request.rb +87 -0
- data/lib/modern_treasury/models/routing_number_lookup_request.rb +124 -0
- data/lib/modern_treasury/models/routing_number_type1_enum.rb +68 -0
- data/lib/modern_treasury/models/routing_number_type7_enum.rb +55 -0
- data/lib/modern_treasury/models/routing_number_type8_enum.rb +68 -0
- data/lib/modern_treasury/models/routing_number_type_enum.rb +69 -0
- data/lib/modern_treasury/models/status11_enum.rb +40 -0
- data/lib/modern_treasury/models/status12_enum.rb +40 -0
- data/lib/modern_treasury/models/status15_enum.rb +41 -0
- data/lib/modern_treasury/models/status16_enum.rb +41 -0
- data/lib/modern_treasury/models/status17_enum.rb +45 -0
- data/lib/modern_treasury/models/status18_enum.rb +74 -0
- data/lib/modern_treasury/models/status19_enum.rb +52 -0
- data/lib/modern_treasury/models/status1_enum.rb +40 -0
- data/lib/modern_treasury/models/status20_enum.rb +40 -0
- data/lib/modern_treasury/models/status21_enum.rb +40 -0
- data/lib/modern_treasury/models/status22_enum.rb +40 -0
- data/lib/modern_treasury/models/status24_enum.rb +72 -0
- data/lib/modern_treasury/models/status2_enum.rb +41 -0
- data/lib/modern_treasury/models/status3_enum.rb +72 -0
- data/lib/modern_treasury/models/status4_enum.rb +52 -0
- data/lib/modern_treasury/models/status5_enum.rb +48 -0
- data/lib/modern_treasury/models/status6_enum.rb +49 -0
- data/lib/modern_treasury/models/status7_enum.rb +37 -0
- data/lib/modern_treasury/models/status8_enum.rb +37 -0
- data/lib/modern_treasury/models/status9_enum.rb +41 -0
- data/lib/modern_treasury/models/status_enum.rb +45 -0
- data/lib/modern_treasury/models/subtype_enum.rb +71 -0
- data/lib/modern_treasury/models/supported_payment_type_enum.rb +96 -0
- data/lib/modern_treasury/models/transactable_type_enum.rb +53 -0
- data/lib/modern_treasury/models/transaction.rb +311 -0
- data/lib/modern_treasury/models/transaction_line_item.rb +211 -0
- data/lib/modern_treasury/models/type10_enum.rb +64 -0
- data/lib/modern_treasury/models/type11_enum.rb +97 -0
- data/lib/modern_treasury/models/type12_enum.rb +37 -0
- data/lib/modern_treasury/models/type13_enum.rb +96 -0
- data/lib/modern_treasury/models/type14_enum.rb +64 -0
- data/lib/modern_treasury/models/type16_enum.rb +36 -0
- data/lib/modern_treasury/models/type1_enum.rb +97 -0
- data/lib/modern_treasury/models/type4_enum.rb +65 -0
- data/lib/modern_treasury/models/type5_enum.rb +97 -0
- data/lib/modern_treasury/models/type6_enum.rb +77 -0
- data/lib/modern_treasury/models/type_enum.rb +37 -0
- data/lib/modern_treasury/models/vendor_code_type1_enum.rb +111 -0
- data/lib/modern_treasury/models/vendor_code_type_enum.rb +108 -0
- data/lib/modern_treasury/models/verification_status1_enum.rb +44 -0
- data/lib/modern_treasury/models/verification_status_enum.rb +40 -0
- data/lib/modern_treasury/models/virtual_account.rb +247 -0
- data/lib/modern_treasury/models/virtual_account_create_request.rb +172 -0
- data/lib/modern_treasury/models/virtual_account_update_request.rb +85 -0
- data/lib/modern_treasury/utilities/date_time_helper.rb +11 -0
- data/lib/modern_treasury/utilities/file_wrapper.rb +28 -0
- data/lib/modern_treasury/utilities/union_type_lookup.rb +32 -0
- data/lib/modern_treasury.rb +316 -0
- data/test/controllers/controller_test_base.rb +23 -0
- data/test/controllers/test_account_collection_flow_controller.rb +64 -0
- data/test/controllers/test_connection_controller.rb +41 -0
- data/test/controllers/test_counterparty_controller.rb +65 -0
- data/test/controllers/test_document_controller.rb +41 -0
- data/test/controllers/test_event_controller.rb +46 -0
- data/test/controllers/test_expected_payment_controller.rb +71 -0
- data/test/controllers/test_external_account_controller.rb +63 -0
- data/test/controllers/test_incoming_payment_detail_controller.rb +68 -0
- data/test/controllers/test_internal_account_controller.rb +65 -0
- data/test/controllers/test_invoice_controller.rb +56 -0
- data/test/controllers/test_ledger_account_category_controller.rb +67 -0
- data/test/controllers/test_ledger_account_controller.rb +70 -0
- data/test/controllers/test_ledger_account_payout_controller.rb +62 -0
- data/test/controllers/test_ledger_account_statement_controller.rb +36 -0
- data/test/controllers/test_ledger_controller.rb +59 -0
- data/test/controllers/test_ledger_entry_controller.rb +65 -0
- data/test/controllers/test_ledger_event_handler_controller.rb +63 -0
- data/test/controllers/test_ledger_transaction_controller.rb +112 -0
- data/test/controllers/test_ledgerable_event_controller.rb +36 -0
- data/test/controllers/test_paper_item_controller.rb +43 -0
- data/test/controllers/test_payment_flow_controller.rb +67 -0
- data/test/controllers/test_payment_order_controller.rb +76 -0
- data/test/controllers/test_payment_reference_controller.rb +43 -0
- data/test/controllers/test_ping_controller.rb +31 -0
- data/test/controllers/test_return_controller.rb +64 -0
- data/test/controllers/test_transaction_controller.rb +56 -0
- data/test/controllers/test_virtual_account_controller.rb +63 -0
- data/test/http_response_catcher.rb +19 -0
- metadata +429 -0
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# An enum for SDK environments.
|
|
8
|
+
class Environment
|
|
9
|
+
ENVIRONMENT = [
|
|
10
|
+
PRODUCTION = 'production'.freeze,
|
|
11
|
+
ENVIRONMENT2 = 'environment2'.freeze
|
|
12
|
+
].freeze
|
|
13
|
+
|
|
14
|
+
# Converts a string or symbol into a valid Environment constant.
|
|
15
|
+
def self.from_value(value, default_value = PRODUCTION)
|
|
16
|
+
return default_value if value.nil?
|
|
17
|
+
|
|
18
|
+
str = value.to_s.strip.downcase
|
|
19
|
+
case str
|
|
20
|
+
when 'production' then PRODUCTION
|
|
21
|
+
when 'environment2' then ENVIRONMENT2
|
|
22
|
+
|
|
23
|
+
else
|
|
24
|
+
warn "[Environment] Unknown environment '#{value}', falling back to #{default_value} "
|
|
25
|
+
default_value
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
# An enum for API servers.
|
|
31
|
+
class Server
|
|
32
|
+
SERVER = [
|
|
33
|
+
DEFAULT = 'default'.freeze
|
|
34
|
+
].freeze
|
|
35
|
+
|
|
36
|
+
# Converts a string or symbol into a valid Server constant.
|
|
37
|
+
def self.from_value(value, default_value = DEFAULT)
|
|
38
|
+
return default_value if value.nil?
|
|
39
|
+
|
|
40
|
+
default_value
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# All configuration including auth info and base URI for the API access
|
|
45
|
+
# are configured in this class.
|
|
46
|
+
class Configuration < CoreLibrary::HttpClientConfiguration
|
|
47
|
+
def basic_auth_user_name
|
|
48
|
+
@basic_auth_credentials.username
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def basic_auth_password
|
|
52
|
+
@basic_auth_credentials.password
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# The attribute readers for properties.
|
|
56
|
+
attr_reader :environment, :basic_auth_credentials
|
|
57
|
+
|
|
58
|
+
class << self
|
|
59
|
+
attr_reader :environments
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
def initialize(
|
|
63
|
+
connection: nil, adapter: :net_http_persistent, timeout: 60,
|
|
64
|
+
max_retries: 0, retry_interval: 1, backoff_factor: 2,
|
|
65
|
+
retry_statuses: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524],
|
|
66
|
+
retry_methods: %i[get put], http_callback: nil, proxy_settings: nil,
|
|
67
|
+
environment: Environment::PRODUCTION, basic_auth_user_name: nil,
|
|
68
|
+
basic_auth_password: nil, basic_auth_credentials: nil
|
|
69
|
+
)
|
|
70
|
+
super connection: connection, adapter: adapter, timeout: timeout,
|
|
71
|
+
max_retries: max_retries, retry_interval: retry_interval,
|
|
72
|
+
backoff_factor: backoff_factor, retry_statuses: retry_statuses,
|
|
73
|
+
retry_methods: retry_methods, http_callback: http_callback,
|
|
74
|
+
proxy_settings: proxy_settings
|
|
75
|
+
|
|
76
|
+
# Current API environment
|
|
77
|
+
@environment = String(environment)
|
|
78
|
+
|
|
79
|
+
# The username to use with basic authentication
|
|
80
|
+
@basic_auth_user_name = basic_auth_user_name
|
|
81
|
+
|
|
82
|
+
# The password to use with basic authentication
|
|
83
|
+
@basic_auth_password = basic_auth_password
|
|
84
|
+
|
|
85
|
+
# Initializing Basic Authentication credentials with the provided auth parameters
|
|
86
|
+
@basic_auth_credentials = create_auth_credentials_object(
|
|
87
|
+
basic_auth_user_name, basic_auth_password, basic_auth_credentials
|
|
88
|
+
)
|
|
89
|
+
|
|
90
|
+
# The Http Client to use for making requests.
|
|
91
|
+
set_http_client CoreLibrary::FaradayClient.new(self)
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
def clone_with(connection: nil, adapter: nil, timeout: nil,
|
|
95
|
+
max_retries: nil, retry_interval: nil, backoff_factor: nil,
|
|
96
|
+
retry_statuses: nil, retry_methods: nil, http_callback: nil,
|
|
97
|
+
proxy_settings: nil, environment: nil,
|
|
98
|
+
basic_auth_user_name: nil, basic_auth_password: nil,
|
|
99
|
+
basic_auth_credentials: nil)
|
|
100
|
+
connection ||= self.connection
|
|
101
|
+
adapter ||= self.adapter
|
|
102
|
+
timeout ||= self.timeout
|
|
103
|
+
max_retries ||= self.max_retries
|
|
104
|
+
retry_interval ||= self.retry_interval
|
|
105
|
+
backoff_factor ||= self.backoff_factor
|
|
106
|
+
retry_statuses ||= self.retry_statuses
|
|
107
|
+
retry_methods ||= self.retry_methods
|
|
108
|
+
http_callback ||= self.http_callback
|
|
109
|
+
proxy_settings ||= self.proxy_settings
|
|
110
|
+
environment ||= self.environment
|
|
111
|
+
basic_auth_credentials = create_auth_credentials_object(
|
|
112
|
+
basic_auth_user_name, basic_auth_password,
|
|
113
|
+
basic_auth_credentials || self.basic_auth_credentials
|
|
114
|
+
)
|
|
115
|
+
|
|
116
|
+
Configuration.new(connection: connection, adapter: adapter,
|
|
117
|
+
timeout: timeout, max_retries: max_retries,
|
|
118
|
+
retry_interval: retry_interval,
|
|
119
|
+
backoff_factor: backoff_factor,
|
|
120
|
+
retry_statuses: retry_statuses,
|
|
121
|
+
retry_methods: retry_methods,
|
|
122
|
+
http_callback: http_callback,
|
|
123
|
+
proxy_settings: proxy_settings,
|
|
124
|
+
environment: environment,
|
|
125
|
+
basic_auth_credentials: basic_auth_credentials)
|
|
126
|
+
end
|
|
127
|
+
|
|
128
|
+
def create_auth_credentials_object(basic_auth_user_name,
|
|
129
|
+
basic_auth_password,
|
|
130
|
+
basic_auth_credentials)
|
|
131
|
+
return basic_auth_credentials if basic_auth_user_name.nil? && basic_auth_password.nil?
|
|
132
|
+
|
|
133
|
+
warn('The \'basic_auth_user_name\', \'basic_auth_password\' params are d'\
|
|
134
|
+
'eprecated. Use \'basic_auth_credentials\' param instead.')
|
|
135
|
+
|
|
136
|
+
unless basic_auth_credentials.nil?
|
|
137
|
+
return basic_auth_credentials.clone_with(
|
|
138
|
+
username: basic_auth_user_name,
|
|
139
|
+
password: basic_auth_password
|
|
140
|
+
)
|
|
141
|
+
end
|
|
142
|
+
|
|
143
|
+
BasicAuthCredentials.new(username: basic_auth_user_name,
|
|
144
|
+
password: basic_auth_password)
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
# All the environments the SDK can run in.
|
|
148
|
+
ENVIRONMENTS = {
|
|
149
|
+
Environment::PRODUCTION => {
|
|
150
|
+
Server::DEFAULT => 'http://localhost:3000'
|
|
151
|
+
},
|
|
152
|
+
Environment::ENVIRONMENT2 => {
|
|
153
|
+
Server::DEFAULT => 'https://app.moderntreasury.com'
|
|
154
|
+
}
|
|
155
|
+
}.freeze
|
|
156
|
+
|
|
157
|
+
# Generates the appropriate base URI for the environment and the server.
|
|
158
|
+
# @param [Configuration::Server] server The server enum for which the base URI is
|
|
159
|
+
# required.
|
|
160
|
+
# @return [String] The base URI.
|
|
161
|
+
def get_base_uri(server = Server::DEFAULT)
|
|
162
|
+
ENVIRONMENTS[environment][server].clone
|
|
163
|
+
end
|
|
164
|
+
|
|
165
|
+
# Builds a Configuration instance using environment variables.
|
|
166
|
+
def self.build_default_config_from_env
|
|
167
|
+
# === Core environment ===
|
|
168
|
+
environment = Environment.from_value(ENV.fetch('ENVIRONMENT', 'production'))
|
|
169
|
+
timeout = (ENV['TIMEOUT'] || 60).to_f
|
|
170
|
+
max_retries = (ENV['MAX_RETRIES'] || 0).to_i
|
|
171
|
+
retry_interval = (ENV['RETRY_INTERVAL'] || 1).to_f
|
|
172
|
+
backoff_factor = (ENV['BACKOFF_FACTOR'] || 2).to_f
|
|
173
|
+
retry_statuses = ENV.fetch('RETRY_STATUSES',
|
|
174
|
+
'[408, 413, 429, 500, 502, 503, 504, 521, 522, 524]').gsub(/[\[\]]/, '')
|
|
175
|
+
.split(',')
|
|
176
|
+
.map(&:strip)
|
|
177
|
+
.map do |item|
|
|
178
|
+
item.match?(/\A\d+\z/) ? item.to_i : item.downcase
|
|
179
|
+
end
|
|
180
|
+
retry_methods = ENV.fetch('RETRY_METHODS', '%i[get put]').gsub(/[\[\]]/, '')
|
|
181
|
+
.split(',')
|
|
182
|
+
.map(&:strip)
|
|
183
|
+
.map do |item|
|
|
184
|
+
item.match?(/\A\d+\z/) ? item.to_i : item.downcase
|
|
185
|
+
end
|
|
186
|
+
|
|
187
|
+
# === Authentication credentials ===
|
|
188
|
+
basic_auth_credentials = BasicAuthCredentials.from_env
|
|
189
|
+
|
|
190
|
+
# === Proxy settings ===
|
|
191
|
+
proxy_settings = ProxySettings.from_env
|
|
192
|
+
|
|
193
|
+
Configuration.new(
|
|
194
|
+
environment: environment,
|
|
195
|
+
timeout: timeout,
|
|
196
|
+
max_retries: max_retries,
|
|
197
|
+
retry_interval: retry_interval,
|
|
198
|
+
backoff_factor: backoff_factor,
|
|
199
|
+
retry_statuses: retry_statuses,
|
|
200
|
+
retry_methods: retry_methods,
|
|
201
|
+
basic_auth_credentials: basic_auth_credentials,
|
|
202
|
+
proxy_settings: proxy_settings
|
|
203
|
+
)
|
|
204
|
+
end
|
|
205
|
+
end
|
|
206
|
+
end
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# AccountCollectionFlowController
|
|
8
|
+
class AccountCollectionFlowController < BaseController
|
|
9
|
+
# TODO: type endpoint description here
|
|
10
|
+
# @param [Integer] per_page Optional parameter: TODO: type description
|
|
11
|
+
# here
|
|
12
|
+
# @param [String] client_token Optional parameter: TODO: type description
|
|
13
|
+
# here
|
|
14
|
+
# @param [String] status Optional parameter: TODO: type description here
|
|
15
|
+
# @param [String] counterparty_id Optional parameter: TODO: type description
|
|
16
|
+
# here
|
|
17
|
+
# @param [String] external_account_id Optional parameter: TODO: type
|
|
18
|
+
# description here
|
|
19
|
+
# @param [String] after_cursor Optional parameter: TODO: type description
|
|
20
|
+
# here
|
|
21
|
+
# @return [Array[AccountCollectionFlow]] Response from the API call.
|
|
22
|
+
def list_account_collection_flows(per_page: nil,
|
|
23
|
+
client_token: nil,
|
|
24
|
+
status: nil,
|
|
25
|
+
counterparty_id: nil,
|
|
26
|
+
external_account_id: nil,
|
|
27
|
+
after_cursor: nil)
|
|
28
|
+
@api_call
|
|
29
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
30
|
+
'/api/account_collection_flows',
|
|
31
|
+
Server::DEFAULT)
|
|
32
|
+
.query_param(new_parameter(per_page, key: 'per_page'))
|
|
33
|
+
.query_param(new_parameter(client_token, key: 'client_token'))
|
|
34
|
+
.query_param(new_parameter(status, key: 'status'))
|
|
35
|
+
.query_param(new_parameter(counterparty_id, key: 'counterparty_id'))
|
|
36
|
+
.query_param(new_parameter(external_account_id, key: 'external_account_id'))
|
|
37
|
+
.query_param(new_parameter(after_cursor, key: 'after_cursor'))
|
|
38
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
39
|
+
.auth(Single.new('basic_auth')))
|
|
40
|
+
.response(new_response_handler
|
|
41
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
42
|
+
.deserialize_into(AccountCollectionFlow.method(:from_hash))
|
|
43
|
+
.is_response_array(true))
|
|
44
|
+
.execute
|
|
45
|
+
end
|
|
46
|
+
|
|
47
|
+
# TODO: type endpoint description here
|
|
48
|
+
# @param [String] idempotency_key Optional parameter: This key should be
|
|
49
|
+
# something unique, preferably something like an UUID.
|
|
50
|
+
# @param [AccountCollectionFlowCreateRequest] body Optional parameter: TODO:
|
|
51
|
+
# type description here
|
|
52
|
+
# @return [AccountCollectionFlow] Response from the API call.
|
|
53
|
+
def create_account_collection_flow(idempotency_key: nil,
|
|
54
|
+
body: nil)
|
|
55
|
+
@api_call
|
|
56
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
57
|
+
'/api/account_collection_flows',
|
|
58
|
+
Server::DEFAULT)
|
|
59
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
60
|
+
.header_param(new_parameter(idempotency_key, key: 'Idempotency-Key'))
|
|
61
|
+
.body_param(new_parameter(body))
|
|
62
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
63
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
64
|
+
.auth(Single.new('basic_auth')))
|
|
65
|
+
.response(new_response_handler
|
|
66
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
67
|
+
.deserialize_into(AccountCollectionFlow.method(:from_hash))
|
|
68
|
+
.local_error('422',
|
|
69
|
+
'unsuccessful',
|
|
70
|
+
ErrorMessageException))
|
|
71
|
+
.execute
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
# TODO: type endpoint description here
|
|
75
|
+
# @param [String] id Required parameter: id
|
|
76
|
+
# @param [String] idempotency_key Optional parameter: This key should be
|
|
77
|
+
# something unique, preferably something like an UUID.
|
|
78
|
+
# @return [AccountCollectionFlow] Response from the API call.
|
|
79
|
+
def get_account_collection_flow(id,
|
|
80
|
+
idempotency_key: nil)
|
|
81
|
+
@api_call
|
|
82
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
83
|
+
'/api/account_collection_flows/{id}',
|
|
84
|
+
Server::DEFAULT)
|
|
85
|
+
.template_param(new_parameter(id, key: 'id')
|
|
86
|
+
.should_encode(true))
|
|
87
|
+
.header_param(new_parameter(idempotency_key, key: 'Idempotency-Key'))
|
|
88
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
89
|
+
.auth(Single.new('basic_auth')))
|
|
90
|
+
.response(new_response_handler
|
|
91
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
92
|
+
.deserialize_into(AccountCollectionFlow.method(:from_hash)))
|
|
93
|
+
.execute
|
|
94
|
+
end
|
|
95
|
+
|
|
96
|
+
# TODO: type endpoint description here
|
|
97
|
+
# @param [String] id Required parameter: id
|
|
98
|
+
# @param [String] idempotency_key Optional parameter: This key should be
|
|
99
|
+
# something unique, preferably something like an UUID.
|
|
100
|
+
# @param [AccountCollectionFlowUpdateRequest] body Optional parameter: TODO:
|
|
101
|
+
# type description here
|
|
102
|
+
# @return [AccountCollectionFlow] Response from the API call.
|
|
103
|
+
def update_account_collection_flow(id,
|
|
104
|
+
idempotency_key: nil,
|
|
105
|
+
body: nil)
|
|
106
|
+
@api_call
|
|
107
|
+
.request(new_request_builder(HttpMethodEnum::PATCH,
|
|
108
|
+
'/api/account_collection_flows/{id}',
|
|
109
|
+
Server::DEFAULT)
|
|
110
|
+
.template_param(new_parameter(id, key: 'id')
|
|
111
|
+
.should_encode(true))
|
|
112
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
113
|
+
.header_param(new_parameter(idempotency_key, key: 'Idempotency-Key'))
|
|
114
|
+
.body_param(new_parameter(body))
|
|
115
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
116
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
117
|
+
.auth(Single.new('basic_auth')))
|
|
118
|
+
.response(new_response_handler
|
|
119
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
120
|
+
.deserialize_into(AccountCollectionFlow.method(:from_hash))
|
|
121
|
+
.local_error('404',
|
|
122
|
+
'not found',
|
|
123
|
+
ErrorMessageException)
|
|
124
|
+
.local_error('422',
|
|
125
|
+
'unsuccessful',
|
|
126
|
+
ErrorMessageException))
|
|
127
|
+
.execute
|
|
128
|
+
end
|
|
129
|
+
end
|
|
130
|
+
end
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# AccountDetailController
|
|
8
|
+
class AccountDetailController < BaseController
|
|
9
|
+
# Get a list of account details for a single internal or external account.
|
|
10
|
+
# @param [AccountsTypeEnum] accounts_type Required parameter: Example:
|
|
11
|
+
# @param [String] account_id Required parameter: The ID of the account.
|
|
12
|
+
# @param [String] after_cursor Optional parameter: TODO: type description
|
|
13
|
+
# here
|
|
14
|
+
# @param [Integer] per_page Optional parameter: TODO: type description
|
|
15
|
+
# here
|
|
16
|
+
# @return [Array[AccountDetail]] Response from the API call.
|
|
17
|
+
def list_account_details(accounts_type,
|
|
18
|
+
account_id,
|
|
19
|
+
after_cursor: nil,
|
|
20
|
+
per_page: nil)
|
|
21
|
+
@api_call
|
|
22
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
23
|
+
'/api/{accounts_type}/{account_id}/account_details',
|
|
24
|
+
Server::DEFAULT)
|
|
25
|
+
.template_param(new_parameter(accounts_type, key: 'accounts_type')
|
|
26
|
+
.should_encode(true))
|
|
27
|
+
.template_param(new_parameter(account_id, key: 'account_id')
|
|
28
|
+
.should_encode(true))
|
|
29
|
+
.query_param(new_parameter(after_cursor, key: 'after_cursor'))
|
|
30
|
+
.query_param(new_parameter(per_page, key: 'per_page'))
|
|
31
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
32
|
+
.auth(Single.new('basic_auth')))
|
|
33
|
+
.response(new_response_handler
|
|
34
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
35
|
+
.deserialize_into(AccountDetail.method(:from_hash))
|
|
36
|
+
.is_response_array(true))
|
|
37
|
+
.execute
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
# Create an account detail for an external account.
|
|
41
|
+
# @param [AccountsType1Enum] accounts_type Required parameter: Example:
|
|
42
|
+
# @param [String] account_id Required parameter: The ID of the account.
|
|
43
|
+
# @param [String] idempotency_key Optional parameter: This key should be
|
|
44
|
+
# something unique, preferably something like an UUID.
|
|
45
|
+
# @param [AccountDetailCreateRequest] body Optional parameter: TODO: type
|
|
46
|
+
# description here
|
|
47
|
+
# @return [AccountDetail] Response from the API call.
|
|
48
|
+
def create_account_detail(accounts_type,
|
|
49
|
+
account_id,
|
|
50
|
+
idempotency_key: nil,
|
|
51
|
+
body: nil)
|
|
52
|
+
@api_call
|
|
53
|
+
.request(new_request_builder(HttpMethodEnum::POST,
|
|
54
|
+
'/api/{accounts_type}/{account_id}/account_details',
|
|
55
|
+
Server::DEFAULT)
|
|
56
|
+
.template_param(new_parameter(accounts_type, key: 'accounts_type')
|
|
57
|
+
.should_encode(true))
|
|
58
|
+
.template_param(new_parameter(account_id, key: 'account_id')
|
|
59
|
+
.should_encode(true))
|
|
60
|
+
.header_param(new_parameter('application/json', key: 'Content-Type'))
|
|
61
|
+
.header_param(new_parameter(idempotency_key, key: 'Idempotency-Key'))
|
|
62
|
+
.body_param(new_parameter(body))
|
|
63
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
64
|
+
.body_serializer(proc do |param| param.to_json unless param.nil? end)
|
|
65
|
+
.auth(Single.new('basic_auth')))
|
|
66
|
+
.response(new_response_handler
|
|
67
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
68
|
+
.deserialize_into(AccountDetail.method(:from_hash))
|
|
69
|
+
.local_error('404',
|
|
70
|
+
'unsuccessful',
|
|
71
|
+
ErrorMessageException)
|
|
72
|
+
.local_error('422',
|
|
73
|
+
'unsuccessful',
|
|
74
|
+
ErrorMessageException))
|
|
75
|
+
.execute
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
# Get a single account detail for a single internal or external account.
|
|
79
|
+
# @param [AccountsTypeEnum] accounts_type Required parameter: Example:
|
|
80
|
+
# @param [String] account_id Required parameter: The ID of the account.
|
|
81
|
+
# @param [String] id Required parameter: The ID of the account detail.
|
|
82
|
+
# @return [AccountDetail] Response from the API call.
|
|
83
|
+
def get_account_detail(accounts_type,
|
|
84
|
+
account_id,
|
|
85
|
+
id)
|
|
86
|
+
@api_call
|
|
87
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
88
|
+
'/api/{accounts_type}/{account_id}/account_details/{id}',
|
|
89
|
+
Server::DEFAULT)
|
|
90
|
+
.template_param(new_parameter(accounts_type, key: 'accounts_type')
|
|
91
|
+
.should_encode(true))
|
|
92
|
+
.template_param(new_parameter(account_id, key: 'account_id')
|
|
93
|
+
.should_encode(true))
|
|
94
|
+
.template_param(new_parameter(id, key: 'id')
|
|
95
|
+
.should_encode(true))
|
|
96
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
97
|
+
.auth(Single.new('basic_auth')))
|
|
98
|
+
.response(new_response_handler
|
|
99
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
100
|
+
.deserialize_into(AccountDetail.method(:from_hash))
|
|
101
|
+
.local_error('404',
|
|
102
|
+
'not found',
|
|
103
|
+
ErrorMessageException))
|
|
104
|
+
.execute
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
# Delete a single account detail for an external account.
|
|
108
|
+
# @param [AccountsType1Enum] accounts_type Required parameter: Example:
|
|
109
|
+
# @param [String] account_id Required parameter: The ID of the account.
|
|
110
|
+
# @param [String] id Required parameter: The ID of the account detail.
|
|
111
|
+
# @return [void] Response from the API call.
|
|
112
|
+
def delete_account_detail(accounts_type,
|
|
113
|
+
account_id,
|
|
114
|
+
id)
|
|
115
|
+
@api_call
|
|
116
|
+
.request(new_request_builder(HttpMethodEnum::DELETE,
|
|
117
|
+
'/api/{accounts_type}/{account_id}/account_details/{id}',
|
|
118
|
+
Server::DEFAULT)
|
|
119
|
+
.template_param(new_parameter(accounts_type, key: 'accounts_type')
|
|
120
|
+
.should_encode(true))
|
|
121
|
+
.template_param(new_parameter(account_id, key: 'account_id')
|
|
122
|
+
.should_encode(true))
|
|
123
|
+
.template_param(new_parameter(id, key: 'id')
|
|
124
|
+
.should_encode(true))
|
|
125
|
+
.auth(Single.new('basic_auth')))
|
|
126
|
+
.response(new_response_handler
|
|
127
|
+
.is_response_void(true))
|
|
128
|
+
.execute
|
|
129
|
+
end
|
|
130
|
+
end
|
|
131
|
+
end
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# BalanceReportController
|
|
8
|
+
class BalanceReportController < BaseController
|
|
9
|
+
# Get all balance reports for a given internal account.
|
|
10
|
+
# @param [String] internal_account_id Required parameter: TODO: type
|
|
11
|
+
# description here
|
|
12
|
+
# @param [Date] as_of_date Optional parameter: The date of the balance
|
|
13
|
+
# report in local time.
|
|
14
|
+
# @param [BalanceReportType1Enum] balance_report_type Optional parameter:
|
|
15
|
+
# The specific type of balance report. One of `intraday`, `previous_day`,
|
|
16
|
+
# `real_time`, or `other`.
|
|
17
|
+
# @param [String] after_cursor Optional parameter: TODO: type description
|
|
18
|
+
# here
|
|
19
|
+
# @param [Integer] per_page Optional parameter: TODO: type description
|
|
20
|
+
# here
|
|
21
|
+
# @return [Array[BalanceReport]] Response from the API call.
|
|
22
|
+
def list_balance_reports(internal_account_id,
|
|
23
|
+
as_of_date: nil,
|
|
24
|
+
balance_report_type: nil,
|
|
25
|
+
after_cursor: nil,
|
|
26
|
+
per_page: nil)
|
|
27
|
+
@api_call
|
|
28
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
29
|
+
'/api/internal_accounts/{internal_account_id}/balance_reports',
|
|
30
|
+
Server::DEFAULT)
|
|
31
|
+
.template_param(new_parameter(internal_account_id, key: 'internal_account_id')
|
|
32
|
+
.should_encode(true))
|
|
33
|
+
.query_param(new_parameter(as_of_date, key: 'as_of_date'))
|
|
34
|
+
.query_param(new_parameter(balance_report_type, key: 'balance_report_type'))
|
|
35
|
+
.query_param(new_parameter(after_cursor, key: 'after_cursor'))
|
|
36
|
+
.query_param(new_parameter(per_page, key: 'per_page'))
|
|
37
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
38
|
+
.auth(Single.new('basic_auth')))
|
|
39
|
+
.response(new_response_handler
|
|
40
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
41
|
+
.deserialize_into(BalanceReport.method(:from_hash))
|
|
42
|
+
.is_response_array(true)
|
|
43
|
+
.local_error('403',
|
|
44
|
+
'forbidden',
|
|
45
|
+
ErrorMessageException))
|
|
46
|
+
.execute
|
|
47
|
+
end
|
|
48
|
+
|
|
49
|
+
# Get a single balance report for a given internal account.
|
|
50
|
+
# @param [String] internal_account_id Required parameter: TODO: type
|
|
51
|
+
# description here
|
|
52
|
+
# @param [String] id Required parameter: Either the unique identifier of the
|
|
53
|
+
# balance report or latest for the latest balance report.
|
|
54
|
+
# @return [BalanceReport] Response from the API call.
|
|
55
|
+
def get_balance_report(internal_account_id,
|
|
56
|
+
id)
|
|
57
|
+
@api_call
|
|
58
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
59
|
+
'/api/internal_accounts/{internal_account_id}/balance_reports/{id}',
|
|
60
|
+
Server::DEFAULT)
|
|
61
|
+
.template_param(new_parameter(internal_account_id, key: 'internal_account_id')
|
|
62
|
+
.should_encode(true))
|
|
63
|
+
.template_param(new_parameter(id, key: 'id')
|
|
64
|
+
.should_encode(true))
|
|
65
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
66
|
+
.auth(Single.new('basic_auth')))
|
|
67
|
+
.response(new_response_handler
|
|
68
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
69
|
+
.deserialize_into(BalanceReport.method(:from_hash))
|
|
70
|
+
.local_error('404',
|
|
71
|
+
'not found',
|
|
72
|
+
ErrorMessageException))
|
|
73
|
+
.execute
|
|
74
|
+
end
|
|
75
|
+
end
|
|
76
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# BaseController.
|
|
8
|
+
class BaseController
|
|
9
|
+
include CoreLibrary
|
|
10
|
+
attr_accessor :config, :http_call_back
|
|
11
|
+
|
|
12
|
+
def self.user_agent
|
|
13
|
+
'APIMATIC 3.0'
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
GLOBAL_ERRORS = {
|
|
18
|
+
'default' => ErrorCase.new
|
|
19
|
+
.error_message('HTTP response not OK.')
|
|
20
|
+
.exception_type(APIException)
|
|
21
|
+
}.freeze
|
|
22
|
+
|
|
23
|
+
# Initialization constructor.
|
|
24
|
+
# @param [GlobalConfiguration] global_configuration The instance of GlobalConfiguration.
|
|
25
|
+
def initialize(global_configuration)
|
|
26
|
+
@global_configuration = global_configuration
|
|
27
|
+
@config = @global_configuration.client_configuration
|
|
28
|
+
@http_call_back = @config.http_callback
|
|
29
|
+
@api_call = ApiCall.new(@global_configuration)
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# Creates a new instance of the request builder.
|
|
33
|
+
# @param [String] http_method The HTTP method to use in the request.
|
|
34
|
+
# @param [String] path The endpoint path to use in the request.
|
|
35
|
+
# @param [String] server The server to extract the base uri for the request.
|
|
36
|
+
# @return [RequestBuilder] The instance of RequestBuilder.
|
|
37
|
+
def new_request_builder(http_method, path, server)
|
|
38
|
+
RequestBuilder.new
|
|
39
|
+
.http_method(http_method)
|
|
40
|
+
.path(path)
|
|
41
|
+
.server(server)
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Creates a new instance of the response handler.
|
|
45
|
+
# @return [ResponseHandler] The instance of ResponseHandler.
|
|
46
|
+
def new_response_handler
|
|
47
|
+
ResponseHandler.new
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
# Creates a new instance of the parameter.
|
|
51
|
+
# @param [String|optional] key The key of the parameter.
|
|
52
|
+
# @param [Object] value The value of the parameter.
|
|
53
|
+
# @return [Parameter] The instance of Parameter.
|
|
54
|
+
def new_parameter(value, key: nil)
|
|
55
|
+
Parameter.new
|
|
56
|
+
.key(key)
|
|
57
|
+
.value(value)
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# modern_treasury
|
|
2
|
+
#
|
|
3
|
+
# This file was automatically generated by APIMATIC v3.0 (
|
|
4
|
+
# https://www.apimatic.io ).
|
|
5
|
+
|
|
6
|
+
module ModernTreasury
|
|
7
|
+
# ConnectionController
|
|
8
|
+
class ConnectionController < BaseController
|
|
9
|
+
# Get a list of all connections.
|
|
10
|
+
# @param [Integer] per_page Optional parameter: TODO: type description
|
|
11
|
+
# here
|
|
12
|
+
# @param [UUID | String] vendor_customer_id Optional parameter: An
|
|
13
|
+
# identifier assigned by the vendor to your organization.
|
|
14
|
+
# @param [String] entity Optional parameter: A string code representing the
|
|
15
|
+
# vendor (i.e. bank).
|
|
16
|
+
# @param [String] after_cursor Optional parameter: TODO: type description
|
|
17
|
+
# here
|
|
18
|
+
# @return [Array[Connection]] Response from the API call.
|
|
19
|
+
def list_connections(per_page: nil,
|
|
20
|
+
vendor_customer_id: nil,
|
|
21
|
+
entity: nil,
|
|
22
|
+
after_cursor: nil)
|
|
23
|
+
@api_call
|
|
24
|
+
.request(new_request_builder(HttpMethodEnum::GET,
|
|
25
|
+
'/api/connections',
|
|
26
|
+
Server::DEFAULT)
|
|
27
|
+
.query_param(new_parameter(per_page, key: 'per_page'))
|
|
28
|
+
.query_param(new_parameter(vendor_customer_id, key: 'vendor_customer_id'))
|
|
29
|
+
.query_param(new_parameter(entity, key: 'entity'))
|
|
30
|
+
.query_param(new_parameter(after_cursor, key: 'after_cursor'))
|
|
31
|
+
.header_param(new_parameter('application/json', key: 'accept'))
|
|
32
|
+
.auth(Single.new('basic_auth')))
|
|
33
|
+
.response(new_response_handler
|
|
34
|
+
.deserializer(APIHelper.method(:custom_type_deserializer))
|
|
35
|
+
.deserialize_into(Connection.method(:from_hash))
|
|
36
|
+
.is_response_array(true))
|
|
37
|
+
.execute
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|