modern_treasury 0.1.0.pre.alpha.15 → 0.1.0.pre.alpha.16
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 +4 -4
- data/README.md +63 -20
- data/lib/modern_treasury/base_client.rb +93 -111
- data/lib/modern_treasury/base_model.rb +442 -422
- data/lib/modern_treasury/base_page.rb +34 -15
- data/lib/modern_treasury/client.rb +21 -7
- data/lib/modern_treasury/errors.rb +15 -19
- data/lib/modern_treasury/extern.rb +1 -4
- data/lib/modern_treasury/models/account_collection_flow.rb +9 -54
- data/lib/modern_treasury/models/account_collection_flow_create_params.rb +3 -22
- data/lib/modern_treasury/models/account_collection_flow_update_params.rb +3 -12
- data/lib/modern_treasury/models/account_detail.rb +3 -22
- data/lib/modern_treasury/models/account_detail_create_params.rb +6 -33
- data/lib/modern_treasury/models/account_detail_delete_params.rb +3 -11
- data/lib/modern_treasury/models/accounts_type.rb +3 -13
- data/lib/modern_treasury/models/bulk_request.rb +9 -50
- data/lib/modern_treasury/models/bulk_request_create_params.rb +118 -656
- data/lib/modern_treasury/models/bulk_request_list_params.rb +9 -50
- data/lib/modern_treasury/models/bulk_result.rb +16 -67
- data/lib/modern_treasury/models/bulk_result_list_params.rb +9 -48
- data/lib/modern_treasury/models/connection_legal_entity.rb +3 -18
- data/lib/modern_treasury/models/connection_legal_entity_create_params.rb +33 -200
- data/lib/modern_treasury/models/connection_legal_entity_list_params.rb +3 -17
- data/lib/modern_treasury/models/connection_legal_entity_update_params.rb +3 -12
- data/lib/modern_treasury/models/counterparty.rb +15 -77
- data/lib/modern_treasury/models/counterparty_collect_account_params.rb +3 -21
- data/lib/modern_treasury/models/counterparty_create_params.rb +61 -357
- data/lib/modern_treasury/models/currency.rb +3 -22
- data/lib/modern_treasury/models/document.rb +3 -22
- data/lib/modern_treasury/models/document_create_params.rb +3 -21
- data/lib/modern_treasury/models/document_list_params.rb +3 -22
- data/lib/modern_treasury/models/expected_payment.rb +9 -46
- data/lib/modern_treasury/models/expected_payment_create_params.rb +9 -52
- data/lib/modern_treasury/models/expected_payment_list_params.rb +6 -40
- data/lib/modern_treasury/models/expected_payment_type.rb +3 -22
- data/lib/modern_treasury/models/expected_payment_update_params.rb +6 -26
- data/lib/modern_treasury/models/external_account.rb +12 -59
- data/lib/modern_treasury/models/external_account_create_params.rb +18 -110
- data/lib/modern_treasury/models/external_account_type.rb +3 -22
- data/lib/modern_treasury/models/external_account_update_params.rb +3 -14
- data/lib/modern_treasury/models/external_account_verify_params.rb +9 -48
- data/lib/modern_treasury/models/external_account_verify_response.rb +16 -66
- data/lib/modern_treasury/models/incoming_payment_detail.rb +12 -82
- data/lib/modern_treasury/models/incoming_payment_detail_create_async_params.rb +6 -36
- data/lib/modern_treasury/models/incoming_payment_detail_list_params.rb +6 -38
- data/lib/modern_treasury/models/internal_account.rb +6 -36
- data/lib/modern_treasury/models/internal_account_create_params.rb +3 -14
- data/lib/modern_treasury/models/internal_account_list_params.rb +3 -22
- data/lib/modern_treasury/models/internal_accounts/balance_report.rb +12 -46
- data/lib/modern_treasury/models/internal_accounts/balance_report_create_params.rb +6 -40
- data/lib/modern_treasury/models/internal_accounts/balance_report_list_params.rb +3 -18
- data/lib/modern_treasury/models/invoice.rb +12 -67
- data/lib/modern_treasury/models/invoice_create_params.rb +6 -31
- data/lib/modern_treasury/models/invoice_list_params.rb +3 -21
- data/lib/modern_treasury/models/invoice_update_params.rb +6 -31
- data/lib/modern_treasury/models/ledger_account.rb +3 -18
- data/lib/modern_treasury/models/ledger_account_create_params.rb +3 -18
- data/lib/modern_treasury/models/ledger_account_settlement.rb +3 -22
- data/lib/modern_treasury/models/ledger_account_settlement_create_params.rb +3 -14
- data/lib/modern_treasury/models/ledger_account_settlement_update_params.rb +3 -14
- data/lib/modern_treasury/models/ledger_entry.rb +3 -16
- data/lib/modern_treasury/models/ledger_entry_list_params.rb +9 -42
- data/lib/modern_treasury/models/ledger_event_handler.rb +4 -0
- data/lib/modern_treasury/models/ledger_event_handler_create_params.rb +3 -0
- data/lib/modern_treasury/models/ledger_event_handler_variable.rb +2 -0
- data/lib/modern_treasury/models/ledger_transaction.rb +6 -38
- data/lib/modern_treasury/models/ledger_transaction_create_params.rb +6 -38
- data/lib/modern_treasury/models/ledger_transaction_create_partial_post_params.rb +3 -14
- data/lib/modern_treasury/models/ledger_transaction_create_reversal_params.rb +6 -38
- data/lib/modern_treasury/models/ledger_transaction_list_params.rb +12 -62
- data/lib/modern_treasury/models/ledger_transaction_update_params.rb +6 -38
- data/lib/modern_treasury/models/ledger_transactions/ledger_transaction_version.rb +9 -54
- data/lib/modern_treasury/models/ledgerable_event.rb +1 -0
- data/lib/modern_treasury/models/legal_entity.rb +15 -95
- data/lib/modern_treasury/models/legal_entity_association.rb +18 -109
- data/lib/modern_treasury/models/legal_entity_association_create_params.rb +18 -107
- data/lib/modern_treasury/models/legal_entity_create_params.rb +33 -200
- data/lib/modern_treasury/models/legal_entity_list_params.rb +3 -13
- data/lib/modern_treasury/models/legal_entity_update_params.rb +12 -79
- data/lib/modern_treasury/models/line_item.rb +3 -14
- data/lib/modern_treasury/models/line_item_list_params.rb +3 -13
- data/lib/modern_treasury/models/line_item_retrieve_params.rb +3 -13
- data/lib/modern_treasury/models/line_item_update_params.rb +3 -13
- data/lib/modern_treasury/models/paper_item.rb +3 -16
- data/lib/modern_treasury/models/payment_flow.rb +12 -58
- data/lib/modern_treasury/models/payment_flow_create_params.rb +3 -14
- data/lib/modern_treasury/models/payment_flow_update_params.rb +3 -12
- data/lib/modern_treasury/models/payment_order.rb +33 -142
- data/lib/modern_treasury/models/payment_order_create_async_params.rb +39 -218
- data/lib/modern_treasury/models/payment_order_create_params.rb +42 -239
- data/lib/modern_treasury/models/payment_order_list_params.rb +9 -56
- data/lib/modern_treasury/models/payment_order_subtype.rb +3 -22
- data/lib/modern_treasury/models/payment_order_type.rb +3 -22
- data/lib/modern_treasury/models/payment_order_update_params.rb +36 -202
- data/lib/modern_treasury/models/payment_orders/reversal.rb +6 -42
- data/lib/modern_treasury/models/payment_orders/reversal_create_params.rb +9 -58
- data/lib/modern_treasury/models/payment_reference.rb +8 -39
- data/lib/modern_treasury/models/payment_reference_list_params.rb +3 -16
- data/lib/modern_treasury/models/reconciliation_rule.rb +6 -36
- data/lib/modern_treasury/models/return_create_params.rb +6 -34
- data/lib/modern_treasury/models/return_list_params.rb +3 -20
- data/lib/modern_treasury/models/return_object.rb +20 -123
- data/lib/modern_treasury/models/routing_detail.rb +6 -44
- data/lib/modern_treasury/models/routing_detail_create_params.rb +9 -55
- data/lib/modern_treasury/models/routing_detail_delete_params.rb +3 -11
- data/lib/modern_treasury/models/routing_number_lookup_request.rb +6 -43
- data/lib/modern_treasury/models/transaction.rb +9 -47
- data/lib/modern_treasury/models/transaction_create_params.rb +3 -22
- data/lib/modern_treasury/models/transaction_direction.rb +3 -13
- data/lib/modern_treasury/models/transactions/line_item_list_params.rb +3 -13
- data/lib/modern_treasury/models/transactions/transaction_line_item.rb +6 -36
- data/lib/modern_treasury/models/validation_validate_routing_number_params.rb +3 -22
- data/lib/modern_treasury/models/virtual_account_create_params.rb +12 -84
- data/lib/modern_treasury/models/wealth_and_employment_details.rb +18 -130
- data/lib/modern_treasury/page.rb +26 -28
- data/lib/modern_treasury/pooled_net_requester.rb +103 -86
- data/lib/modern_treasury/request_options.rb +5 -12
- data/lib/modern_treasury/resources/account_collection_flows.rb +0 -5
- data/lib/modern_treasury/resources/account_details.rb +26 -25
- data/lib/modern_treasury/resources/bulk_requests.rb +0 -4
- data/lib/modern_treasury/resources/bulk_results.rb +0 -3
- data/lib/modern_treasury/resources/connection_legal_entities.rb +0 -5
- data/lib/modern_treasury/resources/connections.rb +0 -2
- data/lib/modern_treasury/resources/counterparties.rb +0 -7
- data/lib/modern_treasury/resources/documents.rb +1 -5
- data/lib/modern_treasury/resources/events.rb +0 -3
- data/lib/modern_treasury/resources/expected_payments.rb +0 -6
- data/lib/modern_treasury/resources/external_accounts.rb +0 -8
- data/lib/modern_treasury/resources/foreign_exchange_quotes.rb +0 -4
- data/lib/modern_treasury/resources/incoming_payment_details.rb +0 -5
- data/lib/modern_treasury/resources/internal_accounts/balance_reports.rb +14 -14
- data/lib/modern_treasury/resources/internal_accounts.rb +0 -5
- data/lib/modern_treasury/resources/invoices/line_items.rb +13 -16
- data/lib/modern_treasury/resources/invoices.rb +4 -9
- data/lib/modern_treasury/resources/ledger_account_balance_monitors.rb +0 -6
- data/lib/modern_treasury/resources/ledger_account_categories.rb +24 -26
- data/lib/modern_treasury/resources/ledger_account_settlements/account_entries.rb +4 -5
- data/lib/modern_treasury/resources/ledger_account_settlements.rb +2 -6
- data/lib/modern_treasury/resources/ledger_account_statements.rb +0 -3
- data/lib/modern_treasury/resources/ledger_accounts.rb +0 -6
- data/lib/modern_treasury/resources/ledger_entries.rb +0 -4
- data/lib/modern_treasury/resources/ledger_event_handlers.rb +0 -5
- data/lib/modern_treasury/resources/ledger_transactions/versions.rb +0 -2
- data/lib/modern_treasury/resources/ledger_transactions.rb +0 -7
- data/lib/modern_treasury/resources/ledgerable_events.rb +0 -3
- data/lib/modern_treasury/resources/ledgers.rb +0 -6
- data/lib/modern_treasury/resources/legal_entities.rb +0 -5
- data/lib/modern_treasury/resources/legal_entity_associations.rb +0 -2
- data/lib/modern_treasury/resources/line_items.rb +22 -21
- data/lib/modern_treasury/resources/paper_items.rb +0 -3
- data/lib/modern_treasury/resources/payment_flows.rb +0 -5
- data/lib/modern_treasury/resources/payment_orders/reversals.rb +4 -7
- data/lib/modern_treasury/resources/payment_orders.rb +0 -6
- data/lib/modern_treasury/resources/payment_references.rb +1 -20
- data/lib/modern_treasury/resources/returns.rb +0 -4
- data/lib/modern_treasury/resources/routing_details.rb +26 -25
- data/lib/modern_treasury/resources/transactions/line_items.rb +0 -5
- data/lib/modern_treasury/resources/transactions.rb +0 -6
- data/lib/modern_treasury/resources/validations.rb +0 -2
- data/lib/modern_treasury/resources/virtual_accounts.rb +0 -6
- data/lib/modern_treasury/util.rb +645 -385
- data/lib/modern_treasury/version.rb +1 -1
- data/lib/modern_treasury.rb +17 -0
- data/manifest.yaml +2 -0
- data/rbi/lib/modern_treasury/base_client.rbi +108 -72
- data/rbi/lib/modern_treasury/base_model.rbi +404 -239
- data/rbi/lib/modern_treasury/base_page.rbi +3 -6
- data/rbi/lib/modern_treasury/client.rbi +55 -79
- data/rbi/lib/modern_treasury/errors.rbi +23 -24
- data/rbi/lib/modern_treasury/extern.rbi +1 -1
- data/rbi/lib/modern_treasury/models/account_collection_flow.rbi +107 -102
- data/rbi/lib/modern_treasury/models/account_collection_flow_create_params.rbi +69 -42
- data/rbi/lib/modern_treasury/models/account_collection_flow_list_params.rbi +19 -34
- data/rbi/lib/modern_treasury/models/account_collection_flow_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/account_collection_flow_update_params.rbi +31 -16
- data/rbi/lib/modern_treasury/models/account_detail.rbi +44 -73
- data/rbi/lib/modern_treasury/models/account_detail_create_params.rbi +60 -42
- data/rbi/lib/modern_treasury/models/account_detail_delete_params.rbi +24 -26
- data/rbi/lib/modern_treasury/models/account_detail_list_params.rbi +11 -23
- data/rbi/lib/modern_treasury/models/account_detail_retrieve_params.rbi +14 -22
- data/rbi/lib/modern_treasury/models/accounts_type.rbi +8 -5
- data/rbi/lib/modern_treasury/models/async_response.rbi +4 -14
- data/rbi/lib/modern_treasury/models/bank_settings.rbi +22 -62
- data/rbi/lib/modern_treasury/models/bulk_request.rbi +69 -102
- data/rbi/lib/modern_treasury/models/bulk_request_create_params.rbi +4011 -2385
- data/rbi/lib/modern_treasury/models/bulk_request_list_params.rbi +73 -62
- data/rbi/lib/modern_treasury/models/bulk_request_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/bulk_result.rbi +104 -183
- data/rbi/lib/modern_treasury/models/bulk_result_list_params.rbi +78 -66
- data/rbi/lib/modern_treasury/models/bulk_result_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/client_ping_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/connection.rbi +16 -56
- data/rbi/lib/modern_treasury/models/connection_legal_entity.rbi +33 -72
- data/rbi/lib/modern_treasury/models/connection_legal_entity_create_params.rbi +1090 -645
- data/rbi/lib/modern_treasury/models/connection_legal_entity_list_params.rbi +33 -39
- data/rbi/lib/modern_treasury/models/connection_legal_entity_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/connection_legal_entity_update_params.rbi +31 -15
- data/rbi/lib/modern_treasury/models/connection_list_params.rbi +15 -30
- data/rbi/lib/modern_treasury/models/counterparty.rbi +247 -354
- data/rbi/lib/modern_treasury/models/counterparty_collect_account_params.rbi +115 -62
- data/rbi/lib/modern_treasury/models/counterparty_collect_account_response.rbi +12 -20
- data/rbi/lib/modern_treasury/models/counterparty_create_params.rbi +1877 -1038
- data/rbi/lib/modern_treasury/models/counterparty_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/counterparty_list_params.rbi +35 -44
- data/rbi/lib/modern_treasury/models/counterparty_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/counterparty_update_params.rbi +27 -34
- data/rbi/lib/modern_treasury/models/currency.rbi +196 -192
- data/rbi/lib/modern_treasury/models/document.rbi +83 -165
- data/rbi/lib/modern_treasury/models/document_create_params.rbi +48 -44
- data/rbi/lib/modern_treasury/models/document_list_params.rbi +56 -48
- data/rbi/lib/modern_treasury/models/document_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/event.rbi +19 -73
- data/rbi/lib/modern_treasury/models/event_list_params.rbi +24 -39
- data/rbi/lib/modern_treasury/models/event_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/expected_payment.rbi +116 -194
- data/rbi/lib/modern_treasury/models/expected_payment_create_params.rbi +313 -288
- data/rbi/lib/modern_treasury/models/expected_payment_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/expected_payment_list_params.rbi +108 -105
- data/rbi/lib/modern_treasury/models/expected_payment_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/expected_payment_type.rbi +38 -33
- data/rbi/lib/modern_treasury/models/expected_payment_update_params.rbi +87 -129
- data/rbi/lib/modern_treasury/models/external_account.rbi +150 -285
- data/rbi/lib/modern_treasury/models/external_account_complete_verification_params.rbi +6 -8
- data/rbi/lib/modern_treasury/models/external_account_create_params.rbi +670 -322
- data/rbi/lib/modern_treasury/models/external_account_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/external_account_list_params.rbi +20 -29
- data/rbi/lib/modern_treasury/models/external_account_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/external_account_type.rbi +15 -11
- data/rbi/lib/modern_treasury/models/external_account_update_params.rbi +59 -92
- data/rbi/lib/modern_treasury/models/external_account_verify_params.rbi +106 -86
- data/rbi/lib/modern_treasury/models/external_account_verify_response.rbi +304 -121
- data/rbi/lib/modern_treasury/models/foreign_exchange_quote.rbi +61 -132
- data/rbi/lib/modern_treasury/models/foreign_exchange_quote_create_params.rbi +31 -41
- data/rbi/lib/modern_treasury/models/foreign_exchange_quote_list_params.rbi +37 -49
- data/rbi/lib/modern_treasury/models/foreign_exchange_quote_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/incoming_payment_detail.rbi +272 -228
- data/rbi/lib/modern_treasury/models/incoming_payment_detail_create_async_params.rbi +79 -75
- data/rbi/lib/modern_treasury/models/incoming_payment_detail_list_params.rbi +85 -76
- data/rbi/lib/modern_treasury/models/incoming_payment_detail_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/incoming_payment_detail_update_params.rbi +8 -8
- data/rbi/lib/modern_treasury/models/internal_account.rbi +106 -218
- data/rbi/lib/modern_treasury/models/internal_account_create_params.rbi +67 -99
- data/rbi/lib/modern_treasury/models/internal_account_list_params.rbi +87 -88
- data/rbi/lib/modern_treasury/models/internal_account_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/internal_account_update_params.rbi +24 -28
- data/rbi/lib/modern_treasury/models/internal_accounts/balance_report.rbi +156 -181
- data/rbi/lib/modern_treasury/models/internal_accounts/balance_report_create_params.rbi +159 -88
- data/rbi/lib/modern_treasury/models/internal_accounts/balance_report_delete_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/internal_accounts/balance_report_list_params.rbi +66 -38
- data/rbi/lib/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/invoice.rbi +239 -441
- data/rbi/lib/modern_treasury/models/invoice_add_payment_order_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/invoice_create_params.rbi +292 -378
- data/rbi/lib/modern_treasury/models/invoice_list_params.rbi +57 -71
- data/rbi/lib/modern_treasury/models/invoice_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/invoice_update_params.rbi +300 -374
- data/rbi/lib/modern_treasury/models/invoices/invoice_line_item.rbi +35 -82
- data/rbi/lib/modern_treasury/models/invoices/line_item_create_params.rbi +34 -40
- data/rbi/lib/modern_treasury/models/invoices/line_item_delete_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/invoices/line_item_list_params.rbi +7 -14
- data/rbi/lib/modern_treasury/models/invoices/line_item_retrieve_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/invoices/line_item_update_params.rbi +39 -44
- data/rbi/lib/modern_treasury/models/ledger.rbi +17 -66
- data/rbi/lib/modern_treasury/models/ledger_account.rbi +136 -237
- data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor.rbi +150 -236
- data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor_create_params.rbi +42 -52
- data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor_list_params.rbi +22 -36
- data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_account_balance_monitor_update_params.rbi +12 -13
- data/rbi/lib/modern_treasury/models/ledger_account_category.rbi +121 -197
- data/rbi/lib/modern_treasury/models/ledger_account_category_add_ledger_account_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/ledger_account_category_add_nested_category_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/ledger_account_category_create_params.rbi +28 -52
- data/rbi/lib/modern_treasury/models/ledger_account_category_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_account_category_list_params.rbi +54 -63
- data/rbi/lib/modern_treasury/models/ledger_account_category_remove_ledger_account_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/ledger_account_category_remove_nested_category_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/ledger_account_category_retrieve_params.rbi +30 -22
- data/rbi/lib/modern_treasury/models/ledger_account_category_update_params.rbi +14 -19
- data/rbi/lib/modern_treasury/models/ledger_account_create_params.rbi +65 -74
- data/rbi/lib/modern_treasury/models/ledger_account_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_account_list_params.rbi +183 -205
- data/rbi/lib/modern_treasury/models/ledger_account_retrieve_params.rbi +39 -37
- data/rbi/lib/modern_treasury/models/ledger_account_settlement.rbi +57 -116
- data/rbi/lib/modern_treasury/models/ledger_account_settlement_create_params.rbi +50 -58
- data/rbi/lib/modern_treasury/models/ledger_account_settlement_list_params.rbi +42 -54
- data/rbi/lib/modern_treasury/models/ledger_account_settlement_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_account_settlement_update_params.rbi +35 -27
- data/rbi/lib/modern_treasury/models/ledger_account_settlements/account_entry_delete_params.rbi +6 -9
- data/rbi/lib/modern_treasury/models/ledger_account_settlements/account_entry_update_params.rbi +6 -9
- data/rbi/lib/modern_treasury/models/ledger_account_statement_create_params.rbi +19 -32
- data/rbi/lib/modern_treasury/models/ledger_account_statement_create_response.rbi +238 -335
- data/rbi/lib/modern_treasury/models/ledger_account_statement_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_account_statement_retrieve_response.rbi +236 -335
- data/rbi/lib/modern_treasury/models/ledger_account_update_params.rbi +14 -19
- data/rbi/lib/modern_treasury/models/ledger_create_params.rbi +12 -20
- data/rbi/lib/modern_treasury/models/ledger_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_entry.rbi +161 -232
- data/rbi/lib/modern_treasury/models/ledger_entry_list_params.rbi +170 -143
- data/rbi/lib/modern_treasury/models/ledger_entry_retrieve_params.rbi +8 -8
- data/rbi/lib/modern_treasury/models/ledger_entry_update_params.rbi +8 -8
- data/rbi/lib/modern_treasury/models/ledger_event_handler.rbi +77 -155
- data/rbi/lib/modern_treasury/models/ledger_event_handler_create_params.rbi +76 -123
- data/rbi/lib/modern_treasury/models/ledger_event_handler_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_event_handler_list_params.rbi +22 -36
- data/rbi/lib/modern_treasury/models/ledger_event_handler_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_event_handler_variable.rbi +24 -33
- data/rbi/lib/modern_treasury/models/ledger_list_params.rbi +24 -36
- data/rbi/lib/modern_treasury/models/ledger_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_transaction.rbi +86 -143
- data/rbi/lib/modern_treasury/models/ledger_transaction_create_params.rbi +138 -133
- data/rbi/lib/modern_treasury/models/ledger_transaction_create_partial_post_params.rbi +88 -67
- data/rbi/lib/modern_treasury/models/ledger_transaction_create_reversal_params.rbi +113 -58
- data/rbi/lib/modern_treasury/models/ledger_transaction_list_params.rbi +188 -147
- data/rbi/lib/modern_treasury/models/ledger_transaction_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ledger_transaction_update_params.rbi +133 -120
- data/rbi/lib/modern_treasury/models/ledger_transactions/ledger_transaction_version.rbi +328 -378
- data/rbi/lib/modern_treasury/models/ledger_transactions/version_list_params.rbi +28 -34
- data/rbi/lib/modern_treasury/models/ledger_update_params.rbi +14 -19
- data/rbi/lib/modern_treasury/models/ledgerable_event.rbi +20 -62
- data/rbi/lib/modern_treasury/models/ledgerable_event_create_params.rbi +14 -26
- data/rbi/lib/modern_treasury/models/ledgerable_event_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/legal_entity.rbi +211 -416
- data/rbi/lib/modern_treasury/models/legal_entity_association.rbi +468 -479
- data/rbi/lib/modern_treasury/models/legal_entity_association_create_params.rbi +567 -324
- data/rbi/lib/modern_treasury/models/legal_entity_create_params.rbi +854 -608
- data/rbi/lib/modern_treasury/models/legal_entity_list_params.rbi +33 -37
- data/rbi/lib/modern_treasury/models/legal_entity_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/legal_entity_update_params.rbi +252 -267
- data/rbi/lib/modern_treasury/models/line_item.rbi +54 -105
- data/rbi/lib/modern_treasury/models/line_item_list_params.rbi +22 -28
- data/rbi/lib/modern_treasury/models/line_item_retrieve_params.rbi +26 -27
- data/rbi/lib/modern_treasury/models/line_item_update_params.rbi +25 -28
- data/rbi/lib/modern_treasury/models/paper_item.rbi +53 -122
- data/rbi/lib/modern_treasury/models/paper_item_list_params.rbi +20 -29
- data/rbi/lib/modern_treasury/models/paper_item_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/payment_flow.rbi +141 -136
- data/rbi/lib/modern_treasury/models/payment_flow_create_params.rbi +36 -46
- data/rbi/lib/modern_treasury/models/payment_flow_list_params.rbi +25 -44
- data/rbi/lib/modern_treasury/models/payment_flow_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/payment_flow_update_params.rbi +27 -16
- data/rbi/lib/modern_treasury/models/payment_order.rbi +732 -614
- data/rbi/lib/modern_treasury/models/payment_order_create_async_params.rbi +1297 -744
- data/rbi/lib/modern_treasury/models/payment_order_create_params.rbi +1346 -801
- data/rbi/lib/modern_treasury/models/payment_order_list_params.rbi +150 -157
- data/rbi/lib/modern_treasury/models/payment_order_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/payment_order_subtype.rbi +39 -32
- data/rbi/lib/modern_treasury/models/payment_order_type.rbi +39 -33
- data/rbi/lib/modern_treasury/models/payment_order_update_params.rbi +1104 -632
- data/rbi/lib/modern_treasury/models/payment_orders/reversal.rbi +58 -91
- data/rbi/lib/modern_treasury/models/payment_orders/reversal_create_params.rbi +274 -172
- data/rbi/lib/modern_treasury/models/payment_orders/reversal_list_params.rbi +7 -14
- data/rbi/lib/modern_treasury/models/payment_orders/reversal_retrieve_params.rbi +4 -9
- data/rbi/lib/modern_treasury/models/payment_reference.rbi +298 -144
- data/rbi/lib/modern_treasury/models/payment_reference_list_params.rbi +49 -39
- data/rbi/lib/modern_treasury/models/payment_reference_retireve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/payment_reference_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/ping_response.rbi +3 -8
- data/rbi/lib/modern_treasury/models/reconciliation_rule.rbi +88 -110
- data/rbi/lib/modern_treasury/models/return_create_params.rbi +98 -107
- data/rbi/lib/modern_treasury/models/return_list_params.rbi +45 -45
- data/rbi/lib/modern_treasury/models/return_object.rbi +575 -393
- data/rbi/lib/modern_treasury/models/return_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/routing_detail.rbi +140 -204
- data/rbi/lib/modern_treasury/models/routing_detail_create_params.rbi +159 -107
- data/rbi/lib/modern_treasury/models/routing_detail_delete_params.rbi +24 -26
- data/rbi/lib/modern_treasury/models/routing_detail_list_params.rbi +11 -23
- data/rbi/lib/modern_treasury/models/routing_detail_retrieve_params.rbi +14 -22
- data/rbi/lib/modern_treasury/models/routing_number_lookup_request.rbi +182 -122
- data/rbi/lib/modern_treasury/models/transaction.rbi +193 -287
- data/rbi/lib/modern_treasury/models/transaction_create_params.rbi +80 -100
- data/rbi/lib/modern_treasury/models/transaction_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/transaction_direction.rbi +8 -5
- data/rbi/lib/modern_treasury/models/transaction_list_params.rbi +56 -74
- data/rbi/lib/modern_treasury/models/transaction_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/transaction_update_params.rbi +8 -8
- data/rbi/lib/modern_treasury/models/transactions/line_item_create_params.rbi +10 -21
- data/rbi/lib/modern_treasury/models/transactions/line_item_delete_params.rbi +3 -2
- data/rbi/lib/modern_treasury/models/transactions/line_item_list_params.rbi +29 -45
- data/rbi/lib/modern_treasury/models/transactions/line_item_retrieve_params.rbi +3 -2
- data/rbi/lib/modern_treasury/models/transactions/transaction_line_item.rbi +104 -113
- data/rbi/lib/modern_treasury/models/validation_validate_routing_number_params.rbi +140 -42
- data/rbi/lib/modern_treasury/models/virtual_account.rbi +39 -106
- data/rbi/lib/modern_treasury/models/virtual_account_create_params.rbi +547 -247
- data/rbi/lib/modern_treasury/models/virtual_account_delete_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/virtual_account_list_params.rbi +19 -29
- data/rbi/lib/modern_treasury/models/virtual_account_retrieve_params.rbi +5 -2
- data/rbi/lib/modern_treasury/models/virtual_account_update_params.rbi +14 -30
- data/rbi/lib/modern_treasury/models/wealth_and_employment_details.rbi +288 -241
- data/rbi/lib/modern_treasury/page.rbi +6 -24
- data/rbi/lib/modern_treasury/pooled_net_requester.rbi +42 -39
- data/rbi/lib/modern_treasury/request_options.rbi +33 -54
- data/rbi/lib/modern_treasury/resources/account_collection_flows.rbi +32 -11
- data/rbi/lib/modern_treasury/resources/account_details.rbi +54 -15
- data/rbi/lib/modern_treasury/resources/bulk_requests.rbi +38 -12
- data/rbi/lib/modern_treasury/resources/bulk_results.rbi +22 -8
- data/rbi/lib/modern_treasury/resources/connection_legal_entities.rbi +37 -12
- data/rbi/lib/modern_treasury/resources/connections.rbi +13 -4
- data/rbi/lib/modern_treasury/resources/counterparties.rbi +78 -17
- data/rbi/lib/modern_treasury/resources/documents.rbi +28 -9
- data/rbi/lib/modern_treasury/resources/events.rbi +13 -5
- data/rbi/lib/modern_treasury/resources/expected_payments.rbi +113 -23
- data/rbi/lib/modern_treasury/resources/external_accounts.rbi +83 -26
- data/rbi/lib/modern_treasury/resources/foreign_exchange_quotes.rbi +32 -8
- data/rbi/lib/modern_treasury/resources/incoming_payment_details.rbi +53 -14
- data/rbi/lib/modern_treasury/resources/internal_accounts/balance_reports.rbi +40 -11
- data/rbi/lib/modern_treasury/resources/internal_accounts.rbi +47 -14
- data/rbi/lib/modern_treasury/resources/invoices/line_items.rbi +64 -10
- data/rbi/lib/modern_treasury/resources/invoices.rbi +173 -28
- data/rbi/lib/modern_treasury/resources/ledger_account_balance_monitors.rbi +54 -12
- data/rbi/lib/modern_treasury/resources/ledger_account_categories.rbi +101 -21
- data/rbi/lib/modern_treasury/resources/ledger_account_settlements/account_entries.rbi +22 -6
- data/rbi/lib/modern_treasury/resources/ledger_account_settlements.rbi +59 -12
- data/rbi/lib/modern_treasury/resources/ledger_account_statements.rbi +20 -5
- data/rbi/lib/modern_treasury/resources/ledger_accounts.rbi +93 -17
- data/rbi/lib/modern_treasury/resources/ledger_entries.rbi +61 -10
- data/rbi/lib/modern_treasury/resources/ledger_event_handlers.rbi +41 -11
- data/rbi/lib/modern_treasury/resources/ledger_transactions/versions.rbi +13 -3
- data/rbi/lib/modern_treasury/resources/ledger_transactions.rbi +113 -23
- data/rbi/lib/modern_treasury/resources/ledgerable_events.rbi +23 -6
- data/rbi/lib/modern_treasury/resources/ledgers.rbi +60 -12
- data/rbi/lib/modern_treasury/resources/legal_entities.rbi +83 -24
- data/rbi/lib/modern_treasury/resources/legal_entity_associations.rbi +15 -5
- data/rbi/lib/modern_treasury/resources/line_items.rbi +43 -11
- data/rbi/lib/modern_treasury/resources/paper_items.rbi +15 -5
- data/rbi/lib/modern_treasury/resources/payment_flows.rbi +36 -10
- data/rbi/lib/modern_treasury/resources/payment_orders/reversals.rbi +43 -10
- data/rbi/lib/modern_treasury/resources/payment_orders.rbi +336 -50
- data/rbi/lib/modern_treasury/resources/payment_references.rbi +17 -16
- data/rbi/lib/modern_treasury/resources/returns.rbi +33 -9
- data/rbi/lib/modern_treasury/resources/routing_details.rbi +51 -15
- data/rbi/lib/modern_treasury/resources/transactions/line_items.rbi +31 -10
- data/rbi/lib/modern_treasury/resources/transactions.rbi +63 -13
- data/rbi/lib/modern_treasury/resources/validations.rbi +16 -5
- data/rbi/lib/modern_treasury/resources/virtual_accounts.rbi +47 -12
- data/rbi/lib/modern_treasury/util.rbi +238 -92
- data/rbi/lib/modern_treasury/version.rbi +1 -1
- data/sig/modern_treasury/base_client.rbs +31 -23
- data/sig/modern_treasury/base_model.rbs +36 -20
- data/sig/modern_treasury/base_page.rbs +1 -1
- data/sig/modern_treasury/client.rbs +12 -8
- data/sig/modern_treasury/errors.rbs +22 -21
- data/sig/modern_treasury/models/account_collection_flow.rbs +25 -24
- data/sig/modern_treasury/models/account_collection_flow_create_params.rbs +10 -13
- data/sig/modern_treasury/models/account_collection_flow_list_params.rbs +9 -14
- data/sig/modern_treasury/models/account_collection_flow_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/account_collection_flow_update_params.rbs +8 -11
- data/sig/modern_treasury/models/account_detail.rbs +15 -18
- data/sig/modern_treasury/models/account_detail_create_params.rbs +14 -15
- data/sig/modern_treasury/models/account_detail_delete_params.rbs +9 -12
- data/sig/modern_treasury/models/account_detail_list_params.rbs +6 -11
- data/sig/modern_treasury/models/account_detail_retrieve_params.rbs +5 -10
- data/sig/modern_treasury/models/accounts_type.rbs +4 -2
- data/sig/modern_treasury/models/async_response.rbs +1 -6
- data/sig/modern_treasury/models/bank_settings.rbs +12 -17
- data/sig/modern_treasury/models/bulk_request.rbs +26 -24
- data/sig/modern_treasury/models/bulk_request_create_params.rbs +492 -578
- data/sig/modern_treasury/models/bulk_request_list_params.rbs +21 -20
- data/sig/modern_treasury/models/bulk_request_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/bulk_result.rbs +43 -45
- data/sig/modern_treasury/models/bulk_result_list_params.rbs +22 -21
- data/sig/modern_treasury/models/bulk_result_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/client_ping_params.rbs +1 -6
- data/sig/modern_treasury/models/connection.rbs +11 -15
- data/sig/modern_treasury/models/connection_legal_entity.rbs +16 -19
- data/sig/modern_treasury/models/connection_legal_entity_create_params.rbs +138 -166
- data/sig/modern_treasury/models/connection_legal_entity_list_params.rbs +12 -15
- data/sig/modern_treasury/models/connection_legal_entity_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/connection_legal_entity_update_params.rbs +8 -11
- data/sig/modern_treasury/models/connection_list_params.rbs +7 -12
- data/sig/modern_treasury/models/counterparty.rbs +78 -87
- data/sig/modern_treasury/models/counterparty_collect_account_params.rbs +11 -14
- data/sig/modern_treasury/models/counterparty_collect_account_response.rbs +1 -6
- data/sig/modern_treasury/models/counterparty_create_params.rbs +232 -277
- data/sig/modern_treasury/models/counterparty_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/counterparty_list_params.rbs +11 -16
- data/sig/modern_treasury/models/counterparty_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/counterparty_update_params.rbs +9 -14
- data/sig/modern_treasury/models/currency.rbs +4 -2
- data/sig/modern_treasury/models/document.rbs +33 -41
- data/sig/modern_treasury/models/document_create_params.rbs +11 -14
- data/sig/modern_treasury/models/document_list_params.rbs +11 -14
- data/sig/modern_treasury/models/document_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/event.rbs +12 -16
- data/sig/modern_treasury/models/event_list_params.rbs +10 -15
- data/sig/modern_treasury/models/event_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/expected_payment.rbs +40 -39
- data/sig/modern_treasury/models/expected_payment_create_params.rbs +62 -76
- data/sig/modern_treasury/models/expected_payment_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/expected_payment_list_params.rbs +21 -22
- data/sig/modern_treasury/models/expected_payment_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/expected_payment_type.rbs +4 -2
- data/sig/modern_treasury/models/expected_payment_update_params.rbs +28 -29
- data/sig/modern_treasury/models/external_account.rbs +60 -67
- data/sig/modern_treasury/models/external_account_complete_verification_params.rbs +4 -9
- data/sig/modern_treasury/models/external_account_create_params.rbs +73 -91
- data/sig/modern_treasury/models/external_account_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/external_account_list_params.rbs +8 -13
- data/sig/modern_treasury/models/external_account_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/external_account_type.rbs +4 -2
- data/sig/modern_treasury/models/external_account_update_params.rbs +22 -30
- data/sig/modern_treasury/models/external_account_verify_params.rbs +20 -19
- data/sig/modern_treasury/models/external_account_verify_response.rbs +28 -25
- data/sig/modern_treasury/models/foreign_exchange_quote.rbs +23 -33
- data/sig/modern_treasury/models/foreign_exchange_quote_create_params.rbs +9 -14
- data/sig/modern_treasury/models/foreign_exchange_quote_list_params.rbs +12 -17
- data/sig/modern_treasury/models/foreign_exchange_quote_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/incoming_payment_detail.rbs +43 -40
- data/sig/modern_treasury/models/incoming_payment_detail_create_async_params.rbs +19 -20
- data/sig/modern_treasury/models/incoming_payment_detail_list_params.rbs +20 -21
- data/sig/modern_treasury/models/incoming_payment_detail_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/incoming_payment_detail_update_params.rbs +4 -9
- data/sig/modern_treasury/models/internal_account.rbs +42 -48
- data/sig/modern_treasury/models/internal_account_create_params.rbs +24 -32
- data/sig/modern_treasury/models/internal_account_list_params.rbs +15 -18
- data/sig/modern_treasury/models/internal_account_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/internal_account_update_params.rbs +8 -13
- data/sig/modern_treasury/models/internal_accounts/balance_report.rbs +39 -45
- data/sig/modern_treasury/models/internal_accounts/balance_report_create_params.rbs +21 -27
- data/sig/modern_treasury/models/internal_accounts/balance_report_delete_params.rbs +4 -9
- data/sig/modern_treasury/models/internal_accounts/balance_report_list_params.rbs +11 -14
- data/sig/modern_treasury/models/internal_accounts/balance_report_retrieve_params.rbs +4 -9
- data/sig/modern_treasury/models/invoice.rbs +89 -105
- data/sig/modern_treasury/models/invoice_add_payment_order_params.rbs +4 -6
- data/sig/modern_treasury/models/invoice_create_params.rbs +79 -105
- data/sig/modern_treasury/models/invoice_list_params.rbs +18 -21
- data/sig/modern_treasury/models/invoice_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/invoice_update_params.rbs +79 -105
- data/sig/modern_treasury/models/invoices/invoice_line_item.rbs +15 -21
- data/sig/modern_treasury/models/invoices/line_item_create_params.rbs +10 -15
- data/sig/modern_treasury/models/invoices/line_item_delete_params.rbs +4 -9
- data/sig/modern_treasury/models/invoices/line_item_list_params.rbs +5 -10
- data/sig/modern_treasury/models/invoices/line_item_retrieve_params.rbs +4 -9
- data/sig/modern_treasury/models/invoices/line_item_update_params.rbs +11 -16
- data/sig/modern_treasury/models/ledger.rbs +11 -15
- data/sig/modern_treasury/models/ledger_account.rbs +49 -72
- data/sig/modern_treasury/models/ledger_account_balance_monitor.rbs +49 -80
- data/sig/modern_treasury/models/ledger_account_balance_monitor_create_params.rbs +12 -18
- data/sig/modern_treasury/models/ledger_account_balance_monitor_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_account_balance_monitor_list_params.rbs +8 -13
- data/sig/modern_treasury/models/ledger_account_balance_monitor_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_account_balance_monitor_update_params.rbs +5 -10
- data/sig/modern_treasury/models/ledger_account_category.rbs +40 -65
- data/sig/modern_treasury/models/ledger_account_category_add_ledger_account_params.rbs +4 -6
- data/sig/modern_treasury/models/ledger_account_category_add_nested_category_params.rbs +4 -6
- data/sig/modern_treasury/models/ledger_account_category_create_params.rbs +11 -16
- data/sig/modern_treasury/models/ledger_account_category_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_account_category_list_params.rbs +14 -24
- data/sig/modern_treasury/models/ledger_account_category_remove_ledger_account_params.rbs +4 -6
- data/sig/modern_treasury/models/ledger_account_category_remove_nested_category_params.rbs +4 -6
- data/sig/modern_treasury/models/ledger_account_category_retrieve_params.rbs +5 -15
- data/sig/modern_treasury/models/ledger_account_category_update_params.rbs +6 -11
- data/sig/modern_treasury/models/ledger_account_create_params.rbs +17 -20
- data/sig/modern_treasury/models/ledger_account_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_account_list_params.rbs +47 -72
- data/sig/modern_treasury/models/ledger_account_retrieve_params.rbs +11 -21
- data/sig/modern_treasury/models/ledger_account_settlement.rbs +23 -26
- data/sig/modern_treasury/models/ledger_account_settlement_create_params.rbs +15 -18
- data/sig/modern_treasury/models/ledger_account_settlement_list_params.rbs +13 -18
- data/sig/modern_treasury/models/ledger_account_settlement_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_account_settlement_update_params.rbs +10 -13
- data/sig/modern_treasury/models/ledger_account_settlements/account_entry_delete_params.rbs +4 -9
- data/sig/modern_treasury/models/ledger_account_settlements/account_entry_update_params.rbs +4 -9
- data/sig/modern_treasury/models/ledger_account_statement_create_params.rbs +8 -13
- data/sig/modern_treasury/models/ledger_account_statement_create_response.rbs +69 -114
- data/sig/modern_treasury/models/ledger_account_statement_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_account_statement_retrieve_response.rbs +69 -114
- data/sig/modern_treasury/models/ledger_account_update_params.rbs +6 -11
- data/sig/modern_treasury/models/ledger_create_params.rbs +6 -11
- data/sig/modern_treasury/models/ledger_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_entry.rbs +48 -70
- data/sig/modern_treasury/models/ledger_entry_list_params.rbs +39 -43
- data/sig/modern_treasury/models/ledger_entry_retrieve_params.rbs +4 -9
- data/sig/modern_treasury/models/ledger_entry_update_params.rbs +4 -9
- data/sig/modern_treasury/models/ledger_event_handler.rbs +27 -47
- data/sig/modern_treasury/models/ledger_event_handler_create_params.rbs +22 -42
- data/sig/modern_treasury/models/ledger_event_handler_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_event_handler_list_params.rbs +8 -13
- data/sig/modern_treasury/models/ledger_event_handler_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_event_handler_variable.rbs +5 -15
- data/sig/modern_treasury/models/ledger_list_params.rbs +8 -13
- data/sig/modern_treasury/models/ledger_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_transaction.rbs +29 -30
- data/sig/modern_treasury/models/ledger_transaction_create_params.rbs +31 -37
- data/sig/modern_treasury/models/ledger_transaction_create_partial_post_params.rbs +17 -25
- data/sig/modern_treasury/models/ledger_transaction_create_reversal_params.rbs +18 -19
- data/sig/modern_treasury/models/ledger_transaction_list_params.rbs +42 -44
- data/sig/modern_treasury/models/ledger_transaction_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/ledger_transaction_update_params.rbs +29 -35
- data/sig/modern_treasury/models/ledger_transactions/ledger_transaction_version.rbs +76 -101
- data/sig/modern_treasury/models/ledger_transactions/version_list_params.rbs +9 -14
- data/sig/modern_treasury/models/ledger_update_params.rbs +6 -11
- data/sig/modern_treasury/models/ledgerable_event.rbs +12 -17
- data/sig/modern_treasury/models/ledgerable_event_create_params.rbs +7 -12
- data/sig/modern_treasury/models/ledgerable_event_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/legal_entity.rbs +78 -87
- data/sig/modern_treasury/models/legal_entity_association.rbs +94 -107
- data/sig/modern_treasury/models/legal_entity_association_create_params.rbs +73 -86
- data/sig/modern_treasury/models/legal_entity_create_params.rbs +133 -156
- data/sig/modern_treasury/models/legal_entity_list_params.rbs +12 -15
- data/sig/modern_treasury/models/legal_entity_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/legal_entity_update_params.rbs +56 -68
- data/sig/modern_treasury/models/line_item.rbs +20 -27
- data/sig/modern_treasury/models/line_item_list_params.rbs +10 -13
- data/sig/modern_treasury/models/line_item_retrieve_params.rbs +9 -12
- data/sig/modern_treasury/models/line_item_update_params.rbs +10 -13
- data/sig/modern_treasury/models/paper_item.rbs +24 -26
- data/sig/modern_treasury/models/paper_item_list_params.rbs +8 -13
- data/sig/modern_treasury/models/paper_item_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/payment_flow.rbs +37 -33
- data/sig/modern_treasury/models/payment_flow_create_params.rbs +13 -16
- data/sig/modern_treasury/models/payment_flow_list_params.rbs +11 -16
- data/sig/modern_treasury/models/payment_flow_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/payment_flow_update_params.rbs +8 -11
- data/sig/modern_treasury/models/payment_order.rbs +107 -109
- data/sig/modern_treasury/models/payment_order_create_async_params.rbs +166 -195
- data/sig/modern_treasury/models/payment_order_create_params.rbs +177 -209
- data/sig/modern_treasury/models/payment_order_list_params.rbs +32 -31
- data/sig/modern_treasury/models/payment_order_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/payment_order_subtype.rbs +4 -2
- data/sig/modern_treasury/models/payment_order_type.rbs +4 -2
- data/sig/modern_treasury/models/payment_order_update_params.rbs +139 -160
- data/sig/modern_treasury/models/payment_orders/reversal.rbs +21 -22
- data/sig/modern_treasury/models/payment_orders/reversal_create_params.rbs +40 -49
- data/sig/modern_treasury/models/payment_orders/reversal_list_params.rbs +5 -10
- data/sig/modern_treasury/models/payment_orders/reversal_retrieve_params.rbs +4 -9
- data/sig/modern_treasury/models/payment_reference.rbs +19 -20
- data/sig/modern_treasury/models/payment_reference_list_params.rbs +12 -15
- data/sig/modern_treasury/models/payment_reference_retireve_params.rbs +1 -6
- data/sig/modern_treasury/models/payment_reference_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/ping_response.rbs +1 -6
- data/sig/modern_treasury/models/reconciliation_rule.rbs +20 -21
- data/sig/modern_treasury/models/return_create_params.rbs +17 -18
- data/sig/modern_treasury/models/return_list_params.rbs +13 -16
- data/sig/modern_treasury/models/return_object.rbs +58 -56
- data/sig/modern_treasury/models/return_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/routing_detail.rbs +34 -40
- data/sig/modern_treasury/models/routing_detail_create_params.rbs +19 -18
- data/sig/modern_treasury/models/routing_detail_delete_params.rbs +9 -12
- data/sig/modern_treasury/models/routing_detail_list_params.rbs +6 -11
- data/sig/modern_treasury/models/routing_detail_retrieve_params.rbs +5 -10
- data/sig/modern_treasury/models/routing_number_lookup_request.rbs +24 -30
- data/sig/modern_treasury/models/transaction.rbs +46 -51
- data/sig/modern_treasury/models/transaction_create_params.rbs +17 -20
- data/sig/modern_treasury/models/transaction_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/transaction_direction.rbs +4 -2
- data/sig/modern_treasury/models/transaction_list_params.rbs +17 -22
- data/sig/modern_treasury/models/transaction_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/transaction_update_params.rbs +4 -9
- data/sig/modern_treasury/models/transactions/line_item_create_params.rbs +6 -11
- data/sig/modern_treasury/models/transactions/line_item_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/transactions/line_item_list_params.rbs +12 -15
- data/sig/modern_treasury/models/transactions/line_item_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/transactions/transaction_line_item.rbs +25 -27
- data/sig/modern_treasury/models/validation_validate_routing_number_params.rbs +9 -12
- data/sig/modern_treasury/models/virtual_account.rbs +18 -23
- data/sig/modern_treasury/models/virtual_account_create_params.rbs +50 -62
- data/sig/modern_treasury/models/virtual_account_delete_params.rbs +1 -6
- data/sig/modern_treasury/models/virtual_account_list_params.rbs +8 -13
- data/sig/modern_treasury/models/virtual_account_retrieve_params.rbs +1 -6
- data/sig/modern_treasury/models/virtual_account_update_params.rbs +7 -12
- data/sig/modern_treasury/models/wealth_and_employment_details.rbs +44 -37
- data/sig/modern_treasury/page.rbs +2 -7
- data/sig/modern_treasury/pooled_net_requester.rbs +11 -16
- data/sig/modern_treasury/request_options.rbs +6 -2
- data/sig/modern_treasury/resources/account_collection_flows.rbs +24 -46
- data/sig/modern_treasury/resources/account_details.rbs +26 -50
- data/sig/modern_treasury/resources/bulk_requests.rbs +20 -36
- data/sig/modern_treasury/resources/bulk_results.rbs +14 -25
- data/sig/modern_treasury/resources/connection_legal_entities.rbs +23 -45
- data/sig/modern_treasury/resources/connections.rbs +7 -12
- data/sig/modern_treasury/resources/counterparties.rbs +51 -82
- data/sig/modern_treasury/resources/documents.rbs +18 -34
- data/sig/modern_treasury/resources/events.rbs +14 -24
- data/sig/modern_treasury/resources/expected_payments.rbs +64 -92
- data/sig/modern_treasury/resources/external_accounts.rbs +57 -94
- data/sig/modern_treasury/resources/foreign_exchange_quotes.rbs +25 -41
- data/sig/modern_treasury/resources/incoming_payment_details.rbs +32 -54
- data/sig/modern_treasury/resources/internal_accounts/balance_reports.rbs +26 -50
- data/sig/modern_treasury/resources/internal_accounts.rbs +36 -58
- data/sig/modern_treasury/resources/invoices/line_items.rbs +39 -69
- data/sig/modern_treasury/resources/invoices.rbs +80 -108
- data/sig/modern_treasury/resources/ledger_account_balance_monitors.rbs +29 -57
- data/sig/modern_treasury/resources/ledger_account_categories.rbs +60 -112
- data/sig/modern_treasury/resources/ledger_account_settlements/account_entries.rbs +10 -22
- data/sig/modern_treasury/resources/ledger_account_settlements.rbs +35 -57
- data/sig/modern_treasury/resources/ledger_account_statements.rbs +12 -23
- data/sig/modern_treasury/resources/ledger_accounts.rbs +46 -74
- data/sig/modern_treasury/resources/ledger_entries.rbs +33 -50
- data/sig/modern_treasury/resources/ledger_event_handlers.rbs +26 -48
- data/sig/modern_treasury/resources/ledger_transactions/versions.rbs +9 -14
- data/sig/modern_treasury/resources/ledger_transactions.rbs +68 -102
- data/sig/modern_treasury/resources/ledgerable_events.rbs +11 -22
- data/sig/modern_treasury/resources/ledgers.rbs +29 -56
- data/sig/modern_treasury/resources/legal_entities.rbs +65 -87
- data/sig/modern_treasury/resources/legal_entity_associations.rbs +9 -14
- data/sig/modern_treasury/resources/line_items.rbs +20 -38
- data/sig/modern_treasury/resources/paper_items.rbs +12 -23
- data/sig/modern_treasury/resources/payment_flows.rbs +29 -51
- data/sig/modern_treasury/resources/payment_orders/reversals.rbs +18 -36
- data/sig/modern_treasury/resources/payment_orders.rbs +139 -166
- data/sig/modern_treasury/resources/payment_references.rbs +13 -33
- data/sig/modern_treasury/resources/returns.rbs +22 -37
- data/sig/modern_treasury/resources/routing_details.rbs +27 -51
- data/sig/modern_treasury/resources/transactions/line_items.rbs +22 -41
- data/sig/modern_treasury/resources/transactions.rbs +43 -68
- data/sig/modern_treasury/resources/validations.rbs +5 -10
- data/sig/modern_treasury/resources/virtual_accounts.rbs +37 -65
- data/sig/modern_treasury/util.rbs +71 -26
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 982153c7e4a473fd98806a6a918c95e9d2c4089a8a078c3d0e9741cb6882cd3e
|
4
|
+
data.tar.gz: d76a8e63ff7c9359878ceef73ab83a5e709e606ac2a2a106d881130f426106bc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bdc2dcda7b64d7749815a72511cc0d3221d382c25358486ee2aa046c9df2f2ace210892069a298036f52391eae6392c4a626d22fae377e5d1f826a13925328d8
|
7
|
+
data.tar.gz: c012c05a94e1c98227696be30cc8b0bbbe40c4c7da42045ace1f0d8f0fed2d03c13140b426f91d7db5f4e0709a6c477997fff31573a122516f5cd8cd73b20c82
|
data/README.md
CHANGED
@@ -1,18 +1,16 @@
|
|
1
1
|
# Modern Treasury Ruby API library
|
2
2
|
|
3
|
-
The Modern Treasury Ruby library provides convenient access to the Modern Treasury REST API from any Ruby 3.0.0+
|
4
|
-
application.
|
3
|
+
The Modern Treasury Ruby library provides convenient access to the Modern Treasury REST API from any Ruby 3.0.0+ application.
|
5
4
|
|
6
5
|
## Documentation
|
7
6
|
|
8
|
-
Documentation for
|
7
|
+
Documentation for released of this gem can be found [on RubyDoc](https://gemdocs.org/gems/modern_treasury).
|
9
8
|
|
10
9
|
The underlying REST API documentation can be found on [docs.moderntreasury.com](https://docs.moderntreasury.com).
|
11
10
|
|
12
11
|
## Installation
|
13
12
|
|
14
|
-
To use this gem during the beta, install directly from GitHub with Bundler by
|
15
|
-
adding the following to your application's `Gemfile`:
|
13
|
+
To use this gem during the beta, install directly from GitHub with Bundler by adding the following to your application's `Gemfile`:
|
16
14
|
|
17
15
|
```ruby
|
18
16
|
gem "modern_treasury", git: "https://github.com/Modern-Treasury/modern-treasury-ruby", branch: "main"
|
@@ -24,8 +22,7 @@ To fetch an initial copy of the gem:
|
|
24
22
|
bundle install
|
25
23
|
```
|
26
24
|
|
27
|
-
To update the version used by your application when updates are pushed to
|
28
|
-
GitHub:
|
25
|
+
To update the version used by your application when updates are pushed to GitHub:
|
29
26
|
|
30
27
|
```sh
|
31
28
|
bundle update modern_treasury
|
@@ -47,11 +44,28 @@ counterparty = modern_treasury.counterparties.create(name: "my first counterpart
|
|
47
44
|
puts(counterparty.id)
|
48
45
|
```
|
49
46
|
|
47
|
+
### Pagination
|
48
|
+
|
49
|
+
List methods in the Modern Treasury API are paginated.
|
50
|
+
|
51
|
+
This library provides auto-paginating iterators with each list response, so you do not have to request successive pages manually:
|
52
|
+
|
53
|
+
```ruby
|
54
|
+
page = modern_treasury.counterparties.list
|
55
|
+
|
56
|
+
# Fetch single item from page.
|
57
|
+
counterparty = page.items[0]
|
58
|
+
puts(counterparty.id)
|
59
|
+
|
60
|
+
# Automatically fetches more pages as needed.
|
61
|
+
page.auto_paging_each do |counterparty|
|
62
|
+
puts(counterparty.id)
|
63
|
+
end
|
64
|
+
```
|
65
|
+
|
50
66
|
### Errors
|
51
67
|
|
52
|
-
When the library is unable to connect to the API, or if the API returns a
|
53
|
-
non-success status code (i.e., 4xx or 5xx response), a subclass of
|
54
|
-
`ModernTreasury::Error` will be thrown:
|
68
|
+
When the library is unable to connect to the API, or if the API returns a non-success status code (i.e., 4xx or 5xx response), a subclass of `ModernTreasury::Error` will be thrown:
|
55
69
|
|
56
70
|
```ruby
|
57
71
|
begin
|
@@ -79,10 +93,9 @@ Error codes are as followed:
|
|
79
93
|
|
80
94
|
### Retries
|
81
95
|
|
82
|
-
Certain errors will be automatically retried 2 times by default, with a short
|
83
|
-
|
84
|
-
connectivity problem), 408 Request Timeout, 409 Conflict, 429 Rate Limit, >=500 Internal errors,
|
85
|
-
and timeouts will all be retried by default.
|
96
|
+
Certain errors will be automatically retried 2 times by default, with a short exponential backoff.
|
97
|
+
|
98
|
+
Connection errors (for example, due to a network connectivity problem), 408 Request Timeout, 409 Conflict, 429 Rate Limit, >=500 Internal errors, and timeouts will all be retried by default.
|
86
99
|
|
87
100
|
You can use the `max_retries` option to configure or disable this:
|
88
101
|
|
@@ -99,8 +112,8 @@ modern_treasury.counterparties.create(name: "my first counterparty", request_opt
|
|
99
112
|
### Timeouts
|
100
113
|
|
101
114
|
By default, requests will time out after 60 seconds.
|
102
|
-
|
103
|
-
so in some cases a request could wait 2\*timeout seconds before it fails.
|
115
|
+
|
116
|
+
Timeouts are applied separately to the initial connection and the overall request time, so in some cases a request could wait 2\*timeout seconds before it fails.
|
104
117
|
|
105
118
|
You can use the `timeout` option to configure or disable this:
|
106
119
|
|
@@ -114,12 +127,42 @@ modern_treasury = ModernTreasury::Client.new(
|
|
114
127
|
modern_treasury.counterparties.create(name: "my first counterparty", request_options: {timeout: 5})
|
115
128
|
```
|
116
129
|
|
130
|
+
## Sorbet Support
|
131
|
+
|
132
|
+
**This library emits an intentional warning under the [`tapioca` toolchain](https://github.com/Shopify/tapioca)**. This is normal, and does not impact functionality.
|
133
|
+
|
134
|
+
This library is written with [Sorbet type definitions](https://sorbet.org/docs/rbi). However, there is no runtime dependency on the `sorbet-runtime`.
|
135
|
+
|
136
|
+
What this means is that while you can use Sorbet to type check your code statically, and benefit from the [Sorbet Language Server](https://sorbet.org/docs/lsp) in your editor, there is no runtime type checking and execution overhead from Sorbet itself.
|
137
|
+
|
138
|
+
Due to limitations with the Sorbet type system, where a method otherwise can take an instance of `ModernTreasury::BaseModel` class, you will need to use the `**` splat operator to pass the arguments:
|
139
|
+
|
140
|
+
Please follow Sorbet's [setup guides](https://sorbet.org/docs/adopting) for best experience.
|
141
|
+
|
142
|
+
```ruby
|
143
|
+
model = CounterpartyCreateParams.new(name: "my first counterparty")
|
144
|
+
|
145
|
+
modern_treasury.counterparties.create(**model)
|
146
|
+
```
|
147
|
+
|
148
|
+
## Advanced
|
149
|
+
|
150
|
+
### Concurrency & Connection Pooling
|
151
|
+
|
152
|
+
The `ModernTreasury::Client` instances are thread-safe, and should be re-used across multiple threads. By default, each `Client` have their own HTTP connection pool, with a maximum number of connections equal to thread count.
|
153
|
+
|
154
|
+
When the maximum number of connections has been checked out from the connection pool, the `Client` will wait for an in use connection to become available. The queue time for this mechanism is accounted for by the per-request timeout.
|
155
|
+
|
156
|
+
Unless otherwise specified, other classes in the SDK do not have locks protecting their underlying data structure.
|
157
|
+
|
158
|
+
Currently, `ModernTreasury::Client` instances are only fork-safe if there are no in-flight HTTP requests.
|
159
|
+
|
117
160
|
## Versioning
|
118
161
|
|
119
|
-
This package follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions. As the
|
120
|
-
|
121
|
-
|
162
|
+
This package follows [SemVer](https://semver.org/spec/v2.0.0.html) conventions. As the library is in initial development and has a major version of `0`, APIs may change at any time.
|
163
|
+
|
164
|
+
This package considers improvements to the (non-runtime) `*.rbi` and `*.rbs` type definitions to be non-breaking changes.
|
122
165
|
|
123
166
|
## Requirements
|
124
167
|
|
125
|
-
Ruby 3.0 or higher.
|
168
|
+
Ruby 3.0.0 or higher.
|
@@ -1,23 +1,33 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module ModernTreasury
|
4
|
-
# @private
|
4
|
+
# @api private
|
5
5
|
#
|
6
6
|
# @abstract
|
7
|
-
#
|
8
7
|
class BaseClient
|
9
8
|
# from whatwg fetch spec
|
10
9
|
MAX_REDIRECTS = 20
|
11
10
|
|
11
|
+
# rubocop:disable Style/MutableConstant
|
12
|
+
PLATFORM_HEADERS =
|
13
|
+
{
|
14
|
+
"x-stainless-arch" => ModernTreasury::Util.arch,
|
15
|
+
"x-stainless-lang" => "ruby",
|
16
|
+
"x-stainless-os" => ModernTreasury::Util.os,
|
17
|
+
"x-stainless-package-version" => ModernTreasury::VERSION,
|
18
|
+
"x-stainless-runtime" => ::RUBY_ENGINE,
|
19
|
+
"x-stainless-runtime-version" => ::RUBY_ENGINE_VERSION
|
20
|
+
}
|
21
|
+
# rubocop:enable Style/MutableConstant
|
22
|
+
|
12
23
|
class << self
|
13
|
-
# @private
|
24
|
+
# @api private
|
14
25
|
#
|
15
26
|
# @param req [Hash{Symbol=>Object}]
|
16
27
|
#
|
17
28
|
# @raise [ArgumentError]
|
18
|
-
#
|
19
29
|
def validate!(req)
|
20
|
-
keys = [:method, :path, :query, :headers, :body, :unwrap, :page, :model, :options]
|
30
|
+
keys = [:method, :path, :query, :headers, :body, :unwrap, :page, :stream, :model, :options]
|
21
31
|
case req
|
22
32
|
in Hash
|
23
33
|
req.each_key do |k|
|
@@ -30,13 +40,12 @@ module ModernTreasury
|
|
30
40
|
end
|
31
41
|
end
|
32
42
|
|
33
|
-
# @private
|
43
|
+
# @api private
|
34
44
|
#
|
35
45
|
# @param status [Integer]
|
36
46
|
# @param headers [Hash{String=>String}, Net::HTTPHeader]
|
37
47
|
#
|
38
48
|
# @return [Boolean]
|
39
|
-
#
|
40
49
|
def should_retry?(status, headers:)
|
41
50
|
coerced = ModernTreasury::Util.coerce_boolean(headers["x-should-retry"])
|
42
51
|
case [coerced, status]
|
@@ -54,7 +63,7 @@ module ModernTreasury
|
|
54
63
|
end
|
55
64
|
end
|
56
65
|
|
57
|
-
# @private
|
66
|
+
# @api private
|
58
67
|
#
|
59
68
|
# @param request [Hash{Symbol=>Object}] .
|
60
69
|
#
|
@@ -66,8 +75,6 @@ module ModernTreasury
|
|
66
75
|
#
|
67
76
|
# @option request [Object] :body
|
68
77
|
#
|
69
|
-
# @option request [Boolean] :streaming
|
70
|
-
#
|
71
78
|
# @option request [Integer] :max_retries
|
72
79
|
#
|
73
80
|
# @option request [Float] :timeout
|
@@ -77,19 +84,16 @@ module ModernTreasury
|
|
77
84
|
# @param response_headers [Hash{String=>String}, Net::HTTPHeader]
|
78
85
|
#
|
79
86
|
# @return [Hash{Symbol=>Object}]
|
80
|
-
#
|
81
87
|
def follow_redirect(request, status:, response_headers:)
|
82
88
|
method, url, headers = request.fetch_values(:method, :url, :headers)
|
83
89
|
location =
|
84
|
-
|
90
|
+
Kernel.then do
|
85
91
|
URI.join(url, response_headers["location"])
|
92
|
+
rescue ArgumentError
|
93
|
+
message = "Server responded with status #{status} but no valid location header."
|
94
|
+
raise ModernTreasury::APIConnectionError.new(url: url, message: message)
|
86
95
|
end
|
87
96
|
|
88
|
-
unless location
|
89
|
-
message = "Server responded with status #{status} but no valid location header."
|
90
|
-
raise ModernTreasury::APIConnectionError.new(url: url, message: message)
|
91
|
-
end
|
92
|
-
|
93
97
|
request = {**request, url: location}
|
94
98
|
|
95
99
|
case [url.scheme, location.scheme]
|
@@ -121,23 +125,35 @@ module ModernTreasury
|
|
121
125
|
|
122
126
|
request
|
123
127
|
end
|
128
|
+
|
129
|
+
# @api private
|
130
|
+
#
|
131
|
+
# @param status [Integer, ModernTreasury::APIConnectionError]
|
132
|
+
# @param stream [Enumerable, nil]
|
133
|
+
def reap_connection!(status, stream:)
|
134
|
+
case status
|
135
|
+
in (..199) | (300..499)
|
136
|
+
stream&.each { next }
|
137
|
+
in ModernTreasury::APIConnectionError | (500..)
|
138
|
+
ModernTreasury::Util.close_fused!(stream)
|
139
|
+
else
|
140
|
+
end
|
141
|
+
end
|
124
142
|
end
|
125
143
|
|
126
|
-
# @private
|
127
|
-
#
|
144
|
+
# @api private
|
128
145
|
# @return [ModernTreasury::PooledNetRequester]
|
129
146
|
attr_accessor :requester
|
130
147
|
|
131
|
-
# @private
|
148
|
+
# @api private
|
132
149
|
#
|
133
150
|
# @param base_url [String]
|
134
151
|
# @param timeout [Float]
|
135
152
|
# @param max_retries [Integer]
|
136
153
|
# @param initial_retry_delay [Float]
|
137
154
|
# @param max_retry_delay [Float]
|
138
|
-
# @param headers [Hash{String=>String, nil}]
|
155
|
+
# @param headers [Hash{String=>String, Integer, Array<String, Integer, nil>, nil}]
|
139
156
|
# @param idempotency_header [String, nil]
|
140
|
-
#
|
141
157
|
def initialize(
|
142
158
|
base_url:,
|
143
159
|
timeout: 0.0,
|
@@ -149,13 +165,10 @@ module ModernTreasury
|
|
149
165
|
)
|
150
166
|
@requester = ModernTreasury::PooledNetRequester.new
|
151
167
|
@headers = ModernTreasury::Util.normalized_headers(
|
168
|
+
self.class::PLATFORM_HEADERS,
|
152
169
|
{
|
153
|
-
"
|
154
|
-
"
|
155
|
-
"X-Stainless-Runtime" => RUBY_ENGINE,
|
156
|
-
"X-Stainless-Runtime-Version" => RUBY_ENGINE_VERSION,
|
157
|
-
"Content-Type" => "application/json",
|
158
|
-
"Accept" => "application/json"
|
170
|
+
"accept" => "application/json",
|
171
|
+
"content-type" => "application/json"
|
159
172
|
},
|
160
173
|
headers
|
161
174
|
)
|
@@ -167,19 +180,17 @@ module ModernTreasury
|
|
167
180
|
@max_retry_delay = max_retry_delay
|
168
181
|
end
|
169
182
|
|
170
|
-
# @private
|
183
|
+
# @api private
|
171
184
|
#
|
172
185
|
# @return [Hash{String=>String}]
|
173
|
-
#
|
174
186
|
private def auth_headers = {}
|
175
187
|
|
176
|
-
# @private
|
188
|
+
# @api private
|
177
189
|
#
|
178
190
|
# @return [String]
|
179
|
-
#
|
180
191
|
private def generate_idempotency_key = "stainless-ruby-retry-#{SecureRandom.uuid}"
|
181
192
|
|
182
|
-
# @private
|
193
|
+
# @api private
|
183
194
|
#
|
184
195
|
# @param req [Hash{Symbol=>Object}] .
|
185
196
|
#
|
@@ -189,7 +200,7 @@ module ModernTreasury
|
|
189
200
|
#
|
190
201
|
# @option req [Hash{String=>Array<String>, String, nil}, nil] :query
|
191
202
|
#
|
192
|
-
# @option req [Hash{String=>String, nil}, nil] :headers
|
203
|
+
# @option req [Hash{String=>String, Integer, Array<String, Integer, nil>, nil}, nil] :headers
|
193
204
|
#
|
194
205
|
# @option req [Object, nil] :body
|
195
206
|
#
|
@@ -197,6 +208,8 @@ module ModernTreasury
|
|
197
208
|
#
|
198
209
|
# @option req [Class, nil] :page
|
199
210
|
#
|
211
|
+
# @option req [Class, nil] :stream
|
212
|
+
#
|
200
213
|
# @option req [ModernTreasury::Converter, Class, nil] :model
|
201
214
|
#
|
202
215
|
# @param opts [Hash{Symbol=>Object}] .
|
@@ -207,23 +220,19 @@ module ModernTreasury
|
|
207
220
|
#
|
208
221
|
# @option opts [Hash{String=>String, nil}, nil] :extra_headers
|
209
222
|
#
|
210
|
-
# @option opts [
|
223
|
+
# @option opts [Object, nil] :extra_body
|
211
224
|
#
|
212
225
|
# @option opts [Integer, nil] :max_retries
|
213
226
|
#
|
214
227
|
# @option opts [Float, nil] :timeout
|
215
228
|
#
|
216
229
|
# @return [Hash{Symbol=>Object}]
|
217
|
-
#
|
218
230
|
private def build_request(req, opts)
|
219
231
|
method, uninterpolated_path = req.fetch_values(:method, :path)
|
220
232
|
|
221
233
|
path = ModernTreasury::Util.interpolate_path(uninterpolated_path)
|
222
234
|
|
223
|
-
query = ModernTreasury::Util.deep_merge(
|
224
|
-
req[:query].to_h,
|
225
|
-
opts[:extra_query].to_h
|
226
|
-
)
|
235
|
+
query = ModernTreasury::Util.deep_merge(req[:query].to_h, opts[:extra_query].to_h)
|
227
236
|
|
228
237
|
headers = ModernTreasury::Util.normalized_headers(
|
229
238
|
@headers,
|
@@ -243,8 +252,8 @@ module ModernTreasury
|
|
243
252
|
end
|
244
253
|
|
245
254
|
timeout = opts.fetch(:timeout, @timeout).to_f.clamp((0..))
|
246
|
-
unless headers.key?("x-stainless-
|
247
|
-
headers["x-stainless-
|
255
|
+
unless headers.key?("x-stainless-timeout") || timeout.zero?
|
256
|
+
headers["x-stainless-timeout"] = timeout.to_s
|
248
257
|
end
|
249
258
|
|
250
259
|
headers.reject! { |_, v| v.to_s.empty? }
|
@@ -263,19 +272,17 @@ module ModernTreasury
|
|
263
272
|
url: ModernTreasury::Util.join_parsed_uri(@base_url, {**req, path: path, query: query}),
|
264
273
|
headers: headers,
|
265
274
|
body: encoded,
|
266
|
-
streaming: false,
|
267
275
|
max_retries: opts.fetch(:max_retries, @max_retries),
|
268
276
|
timeout: timeout
|
269
277
|
}
|
270
278
|
end
|
271
279
|
|
272
|
-
# @private
|
280
|
+
# @api private
|
273
281
|
#
|
274
282
|
# @param headers [Hash{String=>String}]
|
275
283
|
# @param retry_count [Integer]
|
276
284
|
#
|
277
285
|
# @return [Float]
|
278
|
-
#
|
279
286
|
private def retry_delay(headers, retry_count:)
|
280
287
|
# Non-standard extension
|
281
288
|
span = Float(headers["retry-after-ms"], exception: false)&.then { _1 / 1000 }
|
@@ -284,8 +291,10 @@ module ModernTreasury
|
|
284
291
|
retry_header = headers["retry-after"]
|
285
292
|
return span if (span = Float(retry_header, exception: false))
|
286
293
|
|
287
|
-
span = retry_header
|
288
|
-
Time.httpdate(
|
294
|
+
span = retry_header&.then do
|
295
|
+
Time.httpdate(_1) - Time.now
|
296
|
+
rescue ArgumentError
|
297
|
+
nil
|
289
298
|
end
|
290
299
|
return span if span
|
291
300
|
|
@@ -294,7 +303,7 @@ module ModernTreasury
|
|
294
303
|
(@initial_retry_delay * scale * jitter).clamp(0, @max_retry_delay)
|
295
304
|
end
|
296
305
|
|
297
|
-
# @private
|
306
|
+
# @api private
|
298
307
|
#
|
299
308
|
# @param request [Hash{Symbol=>Object}] .
|
300
309
|
#
|
@@ -306,8 +315,6 @@ module ModernTreasury
|
|
306
315
|
#
|
307
316
|
# @option request [Object] :body
|
308
317
|
#
|
309
|
-
# @option request [Boolean] :streaming
|
310
|
-
#
|
311
318
|
# @option request [Integer] :max_retries
|
312
319
|
#
|
313
320
|
# @option request [Float] :timeout
|
@@ -319,8 +326,7 @@ module ModernTreasury
|
|
319
326
|
# @param send_retry_header [Boolean]
|
320
327
|
#
|
321
328
|
# @raise [ModernTreasury::APIError]
|
322
|
-
# @return [Array(Net::HTTPResponse, Enumerable)]
|
323
|
-
#
|
329
|
+
# @return [Array(Integer, Net::HTTPResponse, Enumerable)]
|
324
330
|
private def send_request(request, redirect_count:, retry_count:, send_retry_header:)
|
325
331
|
url, headers, max_retries, timeout = request.fetch_values(:url, :headers, :max_retries, :timeout)
|
326
332
|
input = {**request.except(:timeout), deadline: ModernTreasury::Util.monotonic_secs + timeout}
|
@@ -330,19 +336,22 @@ module ModernTreasury
|
|
330
336
|
end
|
331
337
|
|
332
338
|
begin
|
333
|
-
response, stream = @requester.execute(input)
|
334
|
-
status = Integer(response.code)
|
339
|
+
status, response, stream = @requester.execute(input)
|
335
340
|
rescue ModernTreasury::APIConnectionError => e
|
336
341
|
status = e
|
337
342
|
end
|
338
343
|
|
339
344
|
case status
|
340
345
|
in ..299
|
341
|
-
[response, stream]
|
342
|
-
in 300..399 if redirect_count >= MAX_REDIRECTS
|
343
|
-
|
346
|
+
[status, response, stream]
|
347
|
+
in 300..399 if redirect_count >= self.class::MAX_REDIRECTS
|
348
|
+
self.class.reap_connection!(status, stream: stream)
|
349
|
+
|
350
|
+
message = "Failed to complete the request within #{self.class::MAX_REDIRECTS} redirects."
|
344
351
|
raise ModernTreasury::APIConnectionError.new(url: url, message: message)
|
345
352
|
in 300..399
|
353
|
+
self.class.reap_connection!(status, stream: stream)
|
354
|
+
|
346
355
|
request = self.class.follow_redirect(request, status: status, response_headers: response)
|
347
356
|
send_request(
|
348
357
|
request,
|
@@ -352,11 +361,12 @@ module ModernTreasury
|
|
352
361
|
)
|
353
362
|
in ModernTreasury::APIConnectionError if retry_count >= max_retries
|
354
363
|
raise status
|
355
|
-
in (400..) if retry_count >= max_retries ||
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
364
|
+
in (400..) if retry_count >= max_retries || !self.class.should_retry?(status, headers: response)
|
365
|
+
decoded = Kernel.then do
|
366
|
+
ModernTreasury::Util.decode_content(response, stream: stream, suppress_error: true)
|
367
|
+
ensure
|
368
|
+
self.class.reap_connection!(status, stream: stream)
|
369
|
+
end
|
360
370
|
|
361
371
|
raise ModernTreasury::APIStatusError.for(
|
362
372
|
url: url,
|
@@ -366,6 +376,8 @@ module ModernTreasury
|
|
366
376
|
response: response
|
367
377
|
)
|
368
378
|
in (400..) | ModernTreasury::APIConnectionError
|
379
|
+
self.class.reap_connection!(status, stream: stream)
|
380
|
+
|
369
381
|
delay = retry_delay(response, retry_count: retry_count)
|
370
382
|
sleep(delay)
|
371
383
|
|
@@ -376,50 +388,6 @@ module ModernTreasury
|
|
376
388
|
send_retry_header: send_retry_header
|
377
389
|
)
|
378
390
|
end
|
379
|
-
ensure
|
380
|
-
stream&.each { break } unless status.is_a?(Integer) && status < 300
|
381
|
-
end
|
382
|
-
|
383
|
-
# @private
|
384
|
-
#
|
385
|
-
# @param req [Hash{Symbol=>Object}] .
|
386
|
-
#
|
387
|
-
# @option req [Symbol] :method
|
388
|
-
#
|
389
|
-
# @option req [String, Array<String>] :path
|
390
|
-
#
|
391
|
-
# @option req [Hash{String=>Array<String>, String, nil}, nil] :query
|
392
|
-
#
|
393
|
-
# @option req [Hash{String=>String, nil}, nil] :headers
|
394
|
-
#
|
395
|
-
# @option req [Object, nil] :body
|
396
|
-
#
|
397
|
-
# @option req [Symbol, nil] :unwrap
|
398
|
-
#
|
399
|
-
# @option req [Class, nil] :page
|
400
|
-
#
|
401
|
-
# @option req [ModernTreasury::Converter, Class, nil] :model
|
402
|
-
#
|
403
|
-
# @option req [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil] :options
|
404
|
-
#
|
405
|
-
# @param headers [Hash{String=>String}, Net::HTTPHeader]
|
406
|
-
#
|
407
|
-
# @param stream [Enumerable]
|
408
|
-
#
|
409
|
-
# @return [Object]
|
410
|
-
#
|
411
|
-
private def parse_response(req, headers:, stream:)
|
412
|
-
decoded = ModernTreasury::Util.decode_content(headers, stream: stream)
|
413
|
-
unwrapped = ModernTreasury::Util.dig(decoded, req[:unwrap])
|
414
|
-
|
415
|
-
case [req[:page], req.fetch(:model, ModernTreasury::Unknown)]
|
416
|
-
in [Class => page, _]
|
417
|
-
page.new(client: self, req: req, headers: headers, unwrapped: unwrapped)
|
418
|
-
in [nil, Class | ModernTreasury::Converter => model]
|
419
|
-
ModernTreasury::Converter.coerce(model, unwrapped)
|
420
|
-
in [nil, nil]
|
421
|
-
unwrapped
|
422
|
-
end
|
423
391
|
end
|
424
392
|
|
425
393
|
# Execute the request specified by `req`. This is the method that all resource
|
@@ -433,7 +401,7 @@ module ModernTreasury
|
|
433
401
|
#
|
434
402
|
# @option req [Hash{String=>Array<String>, String, nil}, nil] :query
|
435
403
|
#
|
436
|
-
# @option req [Hash{String=>String, nil}, nil] :headers
|
404
|
+
# @option req [Hash{String=>String, Integer, Array<String, Integer, nil>, nil}, nil] :headers
|
437
405
|
#
|
438
406
|
# @option req [Object, nil] :body
|
439
407
|
#
|
@@ -441,35 +409,49 @@ module ModernTreasury
|
|
441
409
|
#
|
442
410
|
# @option req [Class, nil] :page
|
443
411
|
#
|
412
|
+
# @option req [Class, nil] :stream
|
413
|
+
#
|
444
414
|
# @option req [ModernTreasury::Converter, Class, nil] :model
|
445
415
|
#
|
446
416
|
# @option req [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil] :options
|
447
417
|
#
|
448
418
|
# @raise [ModernTreasury::APIError]
|
449
419
|
# @return [Object]
|
450
|
-
#
|
451
420
|
def request(req)
|
452
421
|
self.class.validate!(req)
|
422
|
+
model = req.fetch(:model) { ModernTreasury::Unknown }
|
453
423
|
opts = req[:options].to_h
|
454
424
|
ModernTreasury::RequestOptions.validate!(opts)
|
455
425
|
request = build_request(req.except(:options), opts)
|
426
|
+
url = request.fetch(:url)
|
456
427
|
|
457
428
|
# Don't send the current retry count in the headers if the caller modified the header defaults.
|
458
429
|
send_retry_header = request.fetch(:headers)["x-stainless-retry-count"] == "0"
|
459
|
-
response, stream = send_request(
|
430
|
+
status, response, stream = send_request(
|
460
431
|
request,
|
461
432
|
redirect_count: 0,
|
462
433
|
retry_count: 0,
|
463
434
|
send_retry_header: send_retry_header
|
464
435
|
)
|
465
|
-
|
436
|
+
|
437
|
+
decoded = ModernTreasury::Util.decode_content(response, stream: stream)
|
438
|
+
case req
|
439
|
+
in { stream: Class => st }
|
440
|
+
st.new(model: model, url: url, status: status, response: response, stream: decoded)
|
441
|
+
in { page: Class => page }
|
442
|
+
page.new(client: self, req: req, headers: response, page_data: decoded)
|
443
|
+
else
|
444
|
+
unwrapped = ModernTreasury::Util.dig(decoded, req[:unwrap])
|
445
|
+
ModernTreasury::Converter.coerce(model, unwrapped)
|
446
|
+
end
|
466
447
|
end
|
467
448
|
|
468
449
|
# @return [String]
|
469
|
-
#
|
470
450
|
def inspect
|
451
|
+
# rubocop:disable Layout/LineLength
|
471
452
|
base_url = ModernTreasury::Util.unparse_uri(@base_url)
|
472
453
|
"#<#{self.class.name}:0x#{object_id.to_s(16)} base_url=#{base_url} max_retries=#{@max_retries} timeout=#{@timeout}>"
|
454
|
+
# rubocop:enable Layout/LineLength
|
473
455
|
end
|
474
456
|
end
|
475
457
|
end
|