modern_treasury 0.10.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +9 -0
  3. data/README.md +1 -1
  4. data/lib/modern_treasury/client.rb +12 -0
  5. data/lib/modern_treasury/models/hold_create_params.rb +74 -0
  6. data/lib/modern_treasury/models/hold_create_response.rb +143 -0
  7. data/lib/modern_treasury/models/hold_list_params.rb +89 -0
  8. data/lib/modern_treasury/models/hold_list_response.rb +143 -0
  9. data/lib/modern_treasury/models/hold_retrieve_params.rb +14 -0
  10. data/lib/modern_treasury/models/hold_retrieve_response.rb +143 -0
  11. data/lib/modern_treasury/models/hold_update_params.rb +40 -0
  12. data/lib/modern_treasury/models/hold_update_response.rb +143 -0
  13. data/lib/modern_treasury/models/internal_account_request_closure_params.rb +14 -0
  14. data/lib/modern_treasury/models/journal_entry_list_params.rb +38 -0
  15. data/lib/modern_treasury/models/journal_entry_retrieve_params.rb +14 -0
  16. data/lib/modern_treasury/models/journal_report_list_params.rb +14 -0
  17. data/lib/modern_treasury/models/journal_report_retrieve_params.rb +14 -0
  18. data/lib/modern_treasury/models/journal_report_update_params.rb +26 -0
  19. data/lib/modern_treasury/models/payment_order.rb +1 -1
  20. data/lib/modern_treasury/models/payment_order_subtype.rb +0 -1
  21. data/lib/modern_treasury/models/payment_reference.rb +1 -1
  22. data/lib/modern_treasury/models/return_object.rb +1 -1
  23. data/lib/modern_treasury/models/transaction.rb +1 -1
  24. data/lib/modern_treasury/models.rb +20 -0
  25. data/lib/modern_treasury/resources/holds.rb +126 -0
  26. data/lib/modern_treasury/resources/internal_accounts.rb +20 -0
  27. data/lib/modern_treasury/resources/journal_entries.rb +60 -0
  28. data/lib/modern_treasury/resources/journal_reports.rb +78 -0
  29. data/lib/modern_treasury/version.rb +1 -1
  30. data/lib/modern_treasury.rb +17 -0
  31. data/rbi/modern_treasury/client.rbi +9 -0
  32. data/rbi/modern_treasury/models/hold_create_params.rbi +125 -0
  33. data/rbi/modern_treasury/models/hold_create_response.rbi +232 -0
  34. data/rbi/modern_treasury/models/hold_list_params.rbi +150 -0
  35. data/rbi/modern_treasury/models/hold_list_response.rbi +225 -0
  36. data/rbi/modern_treasury/models/hold_retrieve_params.rbi +32 -0
  37. data/rbi/modern_treasury/models/hold_retrieve_response.rbi +234 -0
  38. data/rbi/modern_treasury/models/hold_update_params.rbi +79 -0
  39. data/rbi/modern_treasury/models/hold_update_response.rbi +232 -0
  40. data/rbi/modern_treasury/models/internal_account_request_closure_params.rbi +32 -0
  41. data/rbi/modern_treasury/models/journal_entry_list_params.rbi +68 -0
  42. data/rbi/modern_treasury/models/journal_entry_retrieve_params.rbi +32 -0
  43. data/rbi/modern_treasury/models/journal_report_list_params.rbi +32 -0
  44. data/rbi/modern_treasury/models/journal_report_retrieve_params.rbi +32 -0
  45. data/rbi/modern_treasury/models/journal_report_update_params.rbi +52 -0
  46. data/rbi/modern_treasury/models/payment_order.rbi +2 -2
  47. data/rbi/modern_treasury/models/payment_order_subtype.rbi +0 -1
  48. data/rbi/modern_treasury/models/payment_reference.rbi +2 -2
  49. data/rbi/modern_treasury/models/return_object.rbi +2 -2
  50. data/rbi/modern_treasury/models/transaction.rbi +2 -2
  51. data/rbi/modern_treasury/models.rbi +23 -0
  52. data/rbi/modern_treasury/resources/holds.rbi +108 -0
  53. data/rbi/modern_treasury/resources/internal_accounts.rbi +14 -0
  54. data/rbi/modern_treasury/resources/journal_entries.rbi +46 -0
  55. data/rbi/modern_treasury/resources/journal_reports.rbi +51 -0
  56. data/sig/modern_treasury/client.rbs +6 -0
  57. data/sig/modern_treasury/models/hold_create_params.rbs +66 -0
  58. data/sig/modern_treasury/models/hold_create_response.rbs +108 -0
  59. data/sig/modern_treasury/models/hold_list_params.rbs +76 -0
  60. data/sig/modern_treasury/models/hold_list_response.rbs +108 -0
  61. data/sig/modern_treasury/models/hold_retrieve_params.rbs +15 -0
  62. data/sig/modern_treasury/models/hold_retrieve_response.rbs +108 -0
  63. data/sig/modern_treasury/models/hold_update_params.rbs +41 -0
  64. data/sig/modern_treasury/models/hold_update_response.rbs +108 -0
  65. data/sig/modern_treasury/models/internal_account_request_closure_params.rbs +15 -0
  66. data/sig/modern_treasury/models/journal_entry_list_params.rbs +36 -0
  67. data/sig/modern_treasury/models/journal_entry_retrieve_params.rbs +15 -0
  68. data/sig/modern_treasury/models/journal_report_list_params.rbs +15 -0
  69. data/sig/modern_treasury/models/journal_report_retrieve_params.rbs +15 -0
  70. data/sig/modern_treasury/models/journal_report_update_params.rbs +32 -0
  71. data/sig/modern_treasury/models/payment_order.rbs +2 -2
  72. data/sig/modern_treasury/models/payment_order_subtype.rbs +0 -2
  73. data/sig/modern_treasury/models/payment_reference.rbs +2 -2
  74. data/sig/modern_treasury/models/return_object.rbs +2 -2
  75. data/sig/modern_treasury/models/transaction.rbs +2 -2
  76. data/sig/modern_treasury/models.rbs +20 -0
  77. data/sig/modern_treasury/resources/holds.rbs +38 -0
  78. data/sig/modern_treasury/resources/internal_accounts.rbs +5 -0
  79. data/sig/modern_treasury/resources/journal_entries.rbs +19 -0
  80. data/sig/modern_treasury/resources/journal_reports.rbs +21 -0
  81. metadata +53 -2
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ # @see ModernTreasury::Resources::Holds#update
6
+ class HoldUpdateParams < ModernTreasury::Internal::Type::BaseModel
7
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
8
+ include ModernTreasury::Internal::Type::RequestParameters
9
+
10
+ # @!attribute status
11
+ # The new status of the hold
12
+ #
13
+ # @return [Symbol, ModernTreasury::Models::HoldUpdateParams::Status]
14
+ required :status, enum: -> { ModernTreasury::HoldUpdateParams::Status }
15
+
16
+ # @!attribute resolution
17
+ # The resolution of the hold
18
+ #
19
+ # @return [String, nil]
20
+ optional :resolution, String, nil?: true
21
+
22
+ # @!method initialize(status:, resolution: nil, request_options: {})
23
+ # @param status [Symbol, ModernTreasury::Models::HoldUpdateParams::Status] The new status of the hold
24
+ #
25
+ # @param resolution [String, nil] The resolution of the hold
26
+ #
27
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}]
28
+
29
+ # The new status of the hold
30
+ module Status
31
+ extend ModernTreasury::Internal::Type::Enum
32
+
33
+ RESOLVED = :resolved
34
+
35
+ # @!method self.values
36
+ # @return [Array<Symbol>]
37
+ end
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,143 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ # @see ModernTreasury::Resources::Holds#update
6
+ class HoldUpdateResponse < ModernTreasury::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute created_at
13
+ #
14
+ # @return [Time]
15
+ required :created_at, Time
16
+
17
+ # @!attribute object
18
+ # The type of object
19
+ #
20
+ # @return [Symbol, ModernTreasury::Models::HoldUpdateResponse::Object]
21
+ required :object, enum: -> { ModernTreasury::Models::HoldUpdateResponse::Object }
22
+
23
+ # @!attribute status
24
+ # The status of the hold
25
+ #
26
+ # @return [Symbol, ModernTreasury::Models::HoldUpdateResponse::Status]
27
+ required :status, enum: -> { ModernTreasury::Models::HoldUpdateResponse::Status }
28
+
29
+ # @!attribute target_id
30
+ # The ID of the target being held
31
+ #
32
+ # @return [String]
33
+ required :target_id, String
34
+
35
+ # @!attribute target_type
36
+ # The type of target being held
37
+ #
38
+ # @return [Symbol, ModernTreasury::Models::HoldUpdateResponse::TargetType]
39
+ required :target_type, enum: -> { ModernTreasury::Models::HoldUpdateResponse::TargetType }
40
+
41
+ # @!attribute updated_at
42
+ #
43
+ # @return [Time]
44
+ required :updated_at, Time
45
+
46
+ # @!attribute live_mode
47
+ # This field will be true if this object exists in the live environment or false
48
+ # if it exists in the test environment.
49
+ #
50
+ # @return [Boolean, nil]
51
+ optional :live_mode, ModernTreasury::Internal::Type::Boolean
52
+
53
+ # @!attribute metadata
54
+ # Additional metadata for the hold
55
+ #
56
+ # @return [Hash{Symbol=>String}, nil]
57
+ optional :metadata, ModernTreasury::Internal::Type::HashOf[String], nil?: true
58
+
59
+ # @!attribute reason
60
+ # The reason for the hold
61
+ #
62
+ # @return [String, nil]
63
+ optional :reason, String, nil?: true
64
+
65
+ # @!attribute resolution
66
+ # The resolution of the hold
67
+ #
68
+ # @return [String, nil]
69
+ optional :resolution, String, nil?: true
70
+
71
+ # @!attribute resolved_at
72
+ # When the hold was resolved
73
+ #
74
+ # @return [Time, nil]
75
+ optional :resolved_at, Time, nil?: true
76
+
77
+ # @!method initialize(id:, created_at:, object:, status:, target_id:, target_type:, updated_at:, live_mode: nil, metadata: nil, reason: nil, resolution: nil, resolved_at: nil)
78
+ # Some parameter documentations has been truncated, see
79
+ # {ModernTreasury::Models::HoldUpdateResponse} for more details.
80
+ #
81
+ # @param id [String]
82
+ #
83
+ # @param created_at [Time]
84
+ #
85
+ # @param object [Symbol, ModernTreasury::Models::HoldUpdateResponse::Object] The type of object
86
+ #
87
+ # @param status [Symbol, ModernTreasury::Models::HoldUpdateResponse::Status] The status of the hold
88
+ #
89
+ # @param target_id [String] The ID of the target being held
90
+ #
91
+ # @param target_type [Symbol, ModernTreasury::Models::HoldUpdateResponse::TargetType] The type of target being held
92
+ #
93
+ # @param updated_at [Time]
94
+ #
95
+ # @param live_mode [Boolean] This field will be true if this object exists in the live environment or false i
96
+ #
97
+ # @param metadata [Hash{Symbol=>String}, nil] Additional metadata for the hold
98
+ #
99
+ # @param reason [String, nil] The reason for the hold
100
+ #
101
+ # @param resolution [String, nil] The resolution of the hold
102
+ #
103
+ # @param resolved_at [Time, nil] When the hold was resolved
104
+
105
+ # The type of object
106
+ #
107
+ # @see ModernTreasury::Models::HoldUpdateResponse#object
108
+ module Object
109
+ extend ModernTreasury::Internal::Type::Enum
110
+
111
+ HOLD = :hold
112
+
113
+ # @!method self.values
114
+ # @return [Array<Symbol>]
115
+ end
116
+
117
+ # The status of the hold
118
+ #
119
+ # @see ModernTreasury::Models::HoldUpdateResponse#status
120
+ module Status
121
+ extend ModernTreasury::Internal::Type::Enum
122
+
123
+ ACTIVE = :active
124
+ RESOLVED = :resolved
125
+
126
+ # @!method self.values
127
+ # @return [Array<Symbol>]
128
+ end
129
+
130
+ # The type of target being held
131
+ #
132
+ # @see ModernTreasury::Models::HoldUpdateResponse#target_type
133
+ module TargetType
134
+ extend ModernTreasury::Internal::Type::Enum
135
+
136
+ PAYMENT_ORDER = :payment_order
137
+
138
+ # @!method self.values
139
+ # @return [Array<Symbol>]
140
+ end
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ # @see ModernTreasury::Resources::InternalAccounts#request_closure
6
+ class InternalAccountRequestClosureParams < ModernTreasury::Internal::Type::BaseModel
7
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
8
+ include ModernTreasury::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ # @see ModernTreasury::Resources::JournalEntries#list
6
+ class JournalEntryListParams < ModernTreasury::Internal::Type::BaseModel
7
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
8
+ include ModernTreasury::Internal::Type::RequestParameters
9
+
10
+ # @!attribute journal_report_id
11
+ # The ID of the journal report
12
+ #
13
+ # @return [String]
14
+ required :journal_report_id, String
15
+
16
+ # @!attribute page
17
+ # Page number for pagination
18
+ #
19
+ # @return [Integer, nil]
20
+ optional :page, Integer
21
+
22
+ # @!attribute per_page
23
+ # Number of items per page
24
+ #
25
+ # @return [Integer, nil]
26
+ optional :per_page, Integer
27
+
28
+ # @!method initialize(journal_report_id:, page: nil, per_page: nil, request_options: {})
29
+ # @param journal_report_id [String] The ID of the journal report
30
+ #
31
+ # @param page [Integer] Page number for pagination
32
+ #
33
+ # @param per_page [Integer] Number of items per page
34
+ #
35
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}]
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ # @see ModernTreasury::Resources::JournalEntries#retrieve
6
+ class JournalEntryRetrieveParams < ModernTreasury::Internal::Type::BaseModel
7
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
8
+ include ModernTreasury::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ # @see ModernTreasury::Resources::JournalReports#list
6
+ class JournalReportListParams < ModernTreasury::Internal::Type::BaseModel
7
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
8
+ include ModernTreasury::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,14 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ # @see ModernTreasury::Resources::JournalReports#retrieve
6
+ class JournalReportRetrieveParams < ModernTreasury::Internal::Type::BaseModel
7
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
8
+ include ModernTreasury::Internal::Type::RequestParameters
9
+
10
+ # @!method initialize(request_options: {})
11
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}]
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Models
5
+ # @see ModernTreasury::Resources::JournalReports#update
6
+ class JournalReportUpdateParams < ModernTreasury::Internal::Type::BaseModel
7
+ extend ModernTreasury::Internal::Type::RequestParameters::Converter
8
+ include ModernTreasury::Internal::Type::RequestParameters
9
+
10
+ # @!attribute metadata
11
+ #
12
+ # @return [Object, nil]
13
+ optional :metadata, ModernTreasury::Internal::Type::Unknown
14
+
15
+ # @!attribute status
16
+ #
17
+ # @return [String, nil]
18
+ optional :status, String
19
+
20
+ # @!method initialize(metadata: nil, status: nil, request_options: {})
21
+ # @param metadata [Object]
22
+ # @param status [String]
23
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}]
24
+ end
25
+ end
26
+ end
@@ -839,7 +839,7 @@ module ModernTreasury
839
839
  JPMC_PAYMENT_RETURNED_DATETIME = :jpmc_payment_returned_datetime
840
840
  JPMC_TRANSACTION_REFERENCE_NUMBER = :jpmc_transaction_reference_number
841
841
  LOB_CHECK_ID = :lob_check_id
842
- MT_FOF_TRANSFER_ID = :mt_fof_transfer_id
842
+ MT_FLOW_TRANSFER_ID = :mt_flow_transfer_id
843
843
  OTHER = :other
844
844
  PARTIAL_SWIFT_MIR = :partial_swift_mir
845
845
  PNC_CLEARING_REFERENCE = :pnc_clearing_reference
@@ -16,7 +16,6 @@ module ModernTreasury
16
16
  CIE = :CIE
17
17
  CTX = :CTX
18
18
  IAT = :IAT
19
- POS = :POS
20
19
  PPD = :PPD
21
20
  TEL = :TEL
22
21
  WEB = :WEB
@@ -139,7 +139,7 @@ module ModernTreasury
139
139
  JPMC_PAYMENT_RETURNED_DATETIME = :jpmc_payment_returned_datetime
140
140
  JPMC_TRANSACTION_REFERENCE_NUMBER = :jpmc_transaction_reference_number
141
141
  LOB_CHECK_ID = :lob_check_id
142
- MT_FOF_TRANSFER_ID = :mt_fof_transfer_id
142
+ MT_FLOW_TRANSFER_ID = :mt_flow_transfer_id
143
143
  OTHER = :other
144
144
  PARTIAL_SWIFT_MIR = :partial_swift_mir
145
145
  PNC_CLEARING_REFERENCE = :pnc_clearing_reference
@@ -532,7 +532,7 @@ module ModernTreasury
532
532
  JPMC_PAYMENT_RETURNED_DATETIME = :jpmc_payment_returned_datetime
533
533
  JPMC_TRANSACTION_REFERENCE_NUMBER = :jpmc_transaction_reference_number
534
534
  LOB_CHECK_ID = :lob_check_id
535
- MT_FOF_TRANSFER_ID = :mt_fof_transfer_id
535
+ MT_FLOW_TRANSFER_ID = :mt_flow_transfer_id
536
536
  OTHER = :other
537
537
  PARTIAL_SWIFT_MIR = :partial_swift_mir
538
538
  PNC_CLEARING_REFERENCE = :pnc_clearing_reference
@@ -297,7 +297,7 @@ module ModernTreasury
297
297
  HIFI = :hifi
298
298
  ISO20022 = :iso20022
299
299
  JPMC = :jpmc
300
- MT_FOF = :mt_fof
300
+ MT_FLOW = :mt_flow
301
301
  MX = :mx
302
302
  PAYPAL = :paypal
303
303
  PNC = :pnc
@@ -183,6 +183,14 @@ module ModernTreasury
183
183
 
184
184
  ForeignExchangeRate = ModernTreasury::Models::ForeignExchangeRate
185
185
 
186
+ HoldCreateParams = ModernTreasury::Models::HoldCreateParams
187
+
188
+ HoldListParams = ModernTreasury::Models::HoldListParams
189
+
190
+ HoldRetrieveParams = ModernTreasury::Models::HoldRetrieveParams
191
+
192
+ HoldUpdateParams = ModernTreasury::Models::HoldUpdateParams
193
+
186
194
  IdentificationCreateRequest = ModernTreasury::Models::IdentificationCreateRequest
187
195
 
188
196
  IncomingPaymentDetail = ModernTreasury::Models::IncomingPaymentDetail
@@ -201,6 +209,8 @@ module ModernTreasury
201
209
 
202
210
  InternalAccountListParams = ModernTreasury::Models::InternalAccountListParams
203
211
 
212
+ InternalAccountRequestClosureParams = ModernTreasury::Models::InternalAccountRequestClosureParams
213
+
204
214
  InternalAccountRetrieveParams = ModernTreasury::Models::InternalAccountRetrieveParams
205
215
 
206
216
  InternalAccounts = ModernTreasury::Models::InternalAccounts
@@ -224,6 +234,16 @@ module ModernTreasury
224
234
 
225
235
  InvoiceUpdateParams = ModernTreasury::Models::InvoiceUpdateParams
226
236
 
237
+ JournalEntryListParams = ModernTreasury::Models::JournalEntryListParams
238
+
239
+ JournalEntryRetrieveParams = ModernTreasury::Models::JournalEntryRetrieveParams
240
+
241
+ JournalReportListParams = ModernTreasury::Models::JournalReportListParams
242
+
243
+ JournalReportRetrieveParams = ModernTreasury::Models::JournalReportRetrieveParams
244
+
245
+ JournalReportUpdateParams = ModernTreasury::Models::JournalReportUpdateParams
246
+
227
247
  Ledger = ModernTreasury::Models::Ledger
228
248
 
229
249
  LedgerAccount = ModernTreasury::Models::LedgerAccount
@@ -0,0 +1,126 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Resources
5
+ class Holds
6
+ # Create a new hold
7
+ #
8
+ # @overload create(status:, target_id:, target_type:, metadata: nil, reason: nil, request_options: {})
9
+ #
10
+ # @param status [Symbol, ModernTreasury::Models::HoldCreateParams::Status] The status of the hold
11
+ #
12
+ # @param target_id [String] The ID of the target to hold
13
+ #
14
+ # @param target_type [Symbol, ModernTreasury::Models::HoldCreateParams::TargetType] The type of target to hold
15
+ #
16
+ # @param metadata [Hash{Symbol=>String}, nil] Additional metadata for the hold
17
+ #
18
+ # @param reason [String, nil] The reason for the hold
19
+ #
20
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil]
21
+ #
22
+ # @return [ModernTreasury::Models::HoldCreateResponse]
23
+ #
24
+ # @see ModernTreasury::Models::HoldCreateParams
25
+ def create(params)
26
+ parsed, options = ModernTreasury::HoldCreateParams.dump_request(params)
27
+ @client.request(
28
+ method: :post,
29
+ path: "api/holds",
30
+ body: parsed,
31
+ model: ModernTreasury::Models::HoldCreateResponse,
32
+ options: options
33
+ )
34
+ end
35
+
36
+ # Get a specific hold
37
+ #
38
+ # @overload retrieve(id, request_options: {})
39
+ #
40
+ # @param id [String] hold id
41
+ #
42
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil]
43
+ #
44
+ # @return [ModernTreasury::Models::HoldRetrieveResponse]
45
+ #
46
+ # @see ModernTreasury::Models::HoldRetrieveParams
47
+ def retrieve(id, params = {})
48
+ @client.request(
49
+ method: :get,
50
+ path: ["api/holds/%1$s", id],
51
+ model: ModernTreasury::Models::HoldRetrieveResponse,
52
+ options: params[:request_options]
53
+ )
54
+ end
55
+
56
+ # Update a hold
57
+ #
58
+ # @overload update(id, status:, resolution: nil, request_options: {})
59
+ #
60
+ # @param id [String] hold id
61
+ #
62
+ # @param status [Symbol, ModernTreasury::Models::HoldUpdateParams::Status] The new status of the hold
63
+ #
64
+ # @param resolution [String, nil] The resolution of the hold
65
+ #
66
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil]
67
+ #
68
+ # @return [ModernTreasury::Models::HoldUpdateResponse]
69
+ #
70
+ # @see ModernTreasury::Models::HoldUpdateParams
71
+ def update(id, params)
72
+ parsed, options = ModernTreasury::HoldUpdateParams.dump_request(params)
73
+ @client.request(
74
+ method: :patch,
75
+ path: ["api/holds/%1$s", id],
76
+ body: parsed,
77
+ model: ModernTreasury::Models::HoldUpdateResponse,
78
+ options: options
79
+ )
80
+ end
81
+
82
+ # Some parameter documentations has been truncated, see
83
+ # {ModernTreasury::Models::HoldListParams} for more details.
84
+ #
85
+ # Get a list of holds.
86
+ #
87
+ # @overload list(after_cursor: nil, metadata: nil, per_page: nil, status: nil, target_id: nil, target_type: nil, request_options: {})
88
+ #
89
+ # @param after_cursor [String, nil]
90
+ #
91
+ # @param metadata [Hash{Symbol=>String}] For example, if you want to query for records with metadata key `Type` and value
92
+ #
93
+ # @param per_page [Integer]
94
+ #
95
+ # @param status [Symbol, ModernTreasury::Models::HoldListParams::Status, nil] Translation missing: en.openapi.descriptions.payment_order.query_params.status
96
+ #
97
+ # @param target_id [String, nil] Translation missing: en.openapi.descriptions.payment_order.query_params.target_i
98
+ #
99
+ # @param target_type [Symbol, ModernTreasury::Models::HoldListParams::TargetType, nil] Translation missing: en.openapi.descriptions.payment_order.query_params.target_t
100
+ #
101
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil]
102
+ #
103
+ # @return [ModernTreasury::Internal::Page<ModernTreasury::Models::HoldListResponse>]
104
+ #
105
+ # @see ModernTreasury::Models::HoldListParams
106
+ def list(params = {})
107
+ parsed, options = ModernTreasury::HoldListParams.dump_request(params)
108
+ @client.request(
109
+ method: :get,
110
+ path: "api/holds",
111
+ query: parsed,
112
+ page: ModernTreasury::Internal::Page,
113
+ model: ModernTreasury::Models::HoldListResponse,
114
+ options: options
115
+ )
116
+ end
117
+
118
+ # @api private
119
+ #
120
+ # @param client [ModernTreasury::Client]
121
+ def initialize(client:)
122
+ @client = client
123
+ end
124
+ end
125
+ end
126
+ end
@@ -148,6 +148,26 @@ module ModernTreasury
148
148
  )
149
149
  end
150
150
 
151
+ # request closure of internal account
152
+ #
153
+ # @overload request_closure(id, request_options: {})
154
+ #
155
+ # @param id [String] Unique identifier for the account.
156
+ #
157
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil]
158
+ #
159
+ # @return [ModernTreasury::Models::InternalAccount]
160
+ #
161
+ # @see ModernTreasury::Models::InternalAccountRequestClosureParams
162
+ def request_closure(id, params = {})
163
+ @client.request(
164
+ method: :post,
165
+ path: ["api/internal_accounts/%1$s/request_closure", id],
166
+ model: ModernTreasury::InternalAccount,
167
+ options: params[:request_options]
168
+ )
169
+ end
170
+
151
171
  # Some parameter documentations has been truncated, see
152
172
  # {ModernTreasury::Models::InternalAccountUpdateAccountCapabilityParams} for more
153
173
  # details.
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ModernTreasury
4
+ module Resources
5
+ class JournalEntries
6
+ # Retrieve a specific journal entry
7
+ #
8
+ # @overload retrieve(id, request_options: {})
9
+ #
10
+ # @param id [String] The ID of the journal entry
11
+ #
12
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil]
13
+ #
14
+ # @return [nil]
15
+ #
16
+ # @see ModernTreasury::Models::JournalEntryRetrieveParams
17
+ def retrieve(id, params = {})
18
+ @client.request(
19
+ method: :get,
20
+ path: ["api/journal_entries/%1$s", id],
21
+ model: NilClass,
22
+ options: params[:request_options]
23
+ )
24
+ end
25
+
26
+ # Retrieve a list of journal entries
27
+ #
28
+ # @overload list(journal_report_id:, page: nil, per_page: nil, request_options: {})
29
+ #
30
+ # @param journal_report_id [String] The ID of the journal report
31
+ #
32
+ # @param page [Integer] Page number for pagination
33
+ #
34
+ # @param per_page [Integer] Number of items per page
35
+ #
36
+ # @param request_options [ModernTreasury::RequestOptions, Hash{Symbol=>Object}, nil]
37
+ #
38
+ # @return [nil]
39
+ #
40
+ # @see ModernTreasury::Models::JournalEntryListParams
41
+ def list(params)
42
+ parsed, options = ModernTreasury::JournalEntryListParams.dump_request(params)
43
+ @client.request(
44
+ method: :get,
45
+ path: "api/journal_entries",
46
+ query: parsed,
47
+ model: NilClass,
48
+ options: options
49
+ )
50
+ end
51
+
52
+ # @api private
53
+ #
54
+ # @param client [ModernTreasury::Client]
55
+ def initialize(client:)
56
+ @client = client
57
+ end
58
+ end
59
+ end
60
+ end