tesser-api-sdk 1.0.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 (101) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +28 -0
  3. data/README.md +148 -0
  4. data/bin/console +15 -0
  5. data/lib/tesser_apiv1/api_helper.rb +10 -0
  6. data/lib/tesser_apiv1/client.rb +118 -0
  7. data/lib/tesser_apiv1/configuration.rb +182 -0
  8. data/lib/tesser_apiv1/controllers/accounts_controller.rb +193 -0
  9. data/lib/tesser_apiv1/controllers/base_controller.rb +60 -0
  10. data/lib/tesser_apiv1/controllers/counterparties_controller.rb +171 -0
  11. data/lib/tesser_apiv1/controllers/currencies_controller.rb +39 -0
  12. data/lib/tesser_apiv1/controllers/experimental_controller.rb +49 -0
  13. data/lib/tesser_apiv1/controllers/health_controller.rb +24 -0
  14. data/lib/tesser_apiv1/controllers/networks_controller.rb +39 -0
  15. data/lib/tesser_apiv1/controllers/payments_controller.rb +202 -0
  16. data/lib/tesser_apiv1/controllers/tenants_controller.rb +156 -0
  17. data/lib/tesser_apiv1/controllers/treasury_controller.rb +77 -0
  18. data/lib/tesser_apiv1/exceptions/api_exception.rb +21 -0
  19. data/lib/tesser_apiv1/http/auth/o_auth2.rb +53 -0
  20. data/lib/tesser_apiv1/http/http_call_back.rb +10 -0
  21. data/lib/tesser_apiv1/http/http_method_enum.rb +10 -0
  22. data/lib/tesser_apiv1/http/http_request.rb +10 -0
  23. data/lib/tesser_apiv1/http/http_response.rb +10 -0
  24. data/lib/tesser_apiv1/http/proxy_settings.rb +22 -0
  25. data/lib/tesser_apiv1/models/account.rb +230 -0
  26. data/lib/tesser_apiv1/models/account_list_item.rb +230 -0
  27. data/lib/tesser_apiv1/models/account_list_response.rb +69 -0
  28. data/lib/tesser_apiv1/models/account_response.rb +60 -0
  29. data/lib/tesser_apiv1/models/account_safe.rb +218 -0
  30. data/lib/tesser_apiv1/models/balance_status1_enum.rb +40 -0
  31. data/lib/tesser_apiv1/models/balance_status_enum.rb +40 -0
  32. data/lib/tesser_apiv1/models/base_model.rb +110 -0
  33. data/lib/tesser_apiv1/models/classification7_enum.rb +36 -0
  34. data/lib/tesser_apiv1/models/classification_enum.rb +36 -0
  35. data/lib/tesser_apiv1/models/counterparty.rb +411 -0
  36. data/lib/tesser_apiv1/models/counterparty_list_response.rb +69 -0
  37. data/lib/tesser_apiv1/models/counterparty_response.rb +60 -0
  38. data/lib/tesser_apiv1/models/create_bank_request.rb +122 -0
  39. data/lib/tesser_apiv1/models/create_bank_response.rb +60 -0
  40. data/lib/tesser_apiv1/models/create_counterparty_request.rb +350 -0
  41. data/lib/tesser_apiv1/models/create_counterparty_response.rb +60 -0
  42. data/lib/tesser_apiv1/models/create_deposit_request.rb +119 -0
  43. data/lib/tesser_apiv1/models/create_payment_request.rb +168 -0
  44. data/lib/tesser_apiv1/models/create_tenant_request.rb +183 -0
  45. data/lib/tesser_apiv1/models/create_tenant_response.rb +60 -0
  46. data/lib/tesser_apiv1/models/create_wallet_request.rb +112 -0
  47. data/lib/tesser_apiv1/models/create_wallet_response.rb +60 -0
  48. data/lib/tesser_apiv1/models/create_withdrawal_request.rb +130 -0
  49. data/lib/tesser_apiv1/models/currencies_response.rb +69 -0
  50. data/lib/tesser_apiv1/models/currency.rb +119 -0
  51. data/lib/tesser_apiv1/models/data.rb +221 -0
  52. data/lib/tesser_apiv1/models/data6.rb +242 -0
  53. data/lib/tesser_apiv1/models/data7.rb +419 -0
  54. data/lib/tesser_apiv1/models/data8.rb +200 -0
  55. data/lib/tesser_apiv1/models/direction1_enum.rb +40 -0
  56. data/lib/tesser_apiv1/models/direction_enum.rb +40 -0
  57. data/lib/tesser_apiv1/models/execute_payment_request_dto.rb +71 -0
  58. data/lib/tesser_apiv1/models/fee.rb +117 -0
  59. data/lib/tesser_apiv1/models/fee1.rb +117 -0
  60. data/lib/tesser_apiv1/models/network.rb +68 -0
  61. data/lib/tesser_apiv1/models/networks_response.rb +69 -0
  62. data/lib/tesser_apiv1/models/pagination.rb +104 -0
  63. data/lib/tesser_apiv1/models/payment.rb +421 -0
  64. data/lib/tesser_apiv1/models/payment_list_response.rb +79 -0
  65. data/lib/tesser_apiv1/models/payment_response.rb +60 -0
  66. data/lib/tesser_apiv1/models/payment_type3_enum.rb +52 -0
  67. data/lib/tesser_apiv1/models/payment_type_enum.rb +54 -0
  68. data/lib/tesser_apiv1/models/provider_key1_enum.rb +36 -0
  69. data/lib/tesser_apiv1/models/provider_key_enum.rb +36 -0
  70. data/lib/tesser_apiv1/models/response.rb +81 -0
  71. data/lib/tesser_apiv1/models/review_payment_request.rb +60 -0
  72. data/lib/tesser_apiv1/models/risk_status_enum.rb +44 -0
  73. data/lib/tesser_apiv1/models/status1_enum.rb +52 -0
  74. data/lib/tesser_apiv1/models/status_enum.rb +48 -0
  75. data/lib/tesser_apiv1/models/step.rb +421 -0
  76. data/lib/tesser_apiv1/models/step_type_enum.rb +44 -0
  77. data/lib/tesser_apiv1/models/tenant.rb +275 -0
  78. data/lib/tesser_apiv1/models/tenant_api_credentials.rb +88 -0
  79. data/lib/tesser_apiv1/models/tenant_list_response.rb +69 -0
  80. data/lib/tesser_apiv1/models/tenant_response.rb +60 -0
  81. data/lib/tesser_apiv1/models/transfer_step.rb +422 -0
  82. data/lib/tesser_apiv1/models/turnkey_stamp.rb +81 -0
  83. data/lib/tesser_apiv1/models/type3_enum.rb +40 -0
  84. data/lib/tesser_apiv1/models/type4_enum.rb +44 -0
  85. data/lib/tesser_apiv1/models/type_enum.rb +44 -0
  86. data/lib/tesser_apiv1/models/update_account_request.rb +62 -0
  87. data/lib/tesser_apiv1/models/update_account_response.rb +60 -0
  88. data/lib/tesser_apiv1/models/update_counterparty_request.rb +166 -0
  89. data/lib/tesser_apiv1/models/update_counterparty_response.rb +60 -0
  90. data/lib/tesser_apiv1/models/update_payment_request.rb +100 -0
  91. data/lib/tesser_apiv1/models/update_tenant_request.rb +111 -0
  92. data/lib/tesser_apiv1/models/update_tenant_response.rb +60 -0
  93. data/lib/tesser_apiv1/utilities/date_time_helper.rb +11 -0
  94. data/lib/tesser_apiv1/utilities/file_wrapper.rb +28 -0
  95. data/lib/tesser_apiv1/utilities/union_type_lookup.rb +1234 -0
  96. data/lib/tesser_apiv1.rb +116 -0
  97. data/test/controllers/controller_test_base.rb +23 -0
  98. data/test/controllers/test_health_controller.rb +31 -0
  99. data/test/controllers/test_tenants_controller.rb +133 -0
  100. data/test/http_response_catcher.rb +19 -0
  101. metadata +212 -0
@@ -0,0 +1,421 @@
1
+ # tesser_apiv1
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ require 'date'
7
+ module TesserApiv1
8
+ # Step Model.
9
+ class Step < BaseModel
10
+ SKIP = Object.new
11
+ private_constant :SKIP
12
+
13
+ # Unique identifier for the step.
14
+ # @return [String]
15
+ attr_accessor :id
16
+
17
+ # ID of the parent payment/transfer.
18
+ # @return [String]
19
+ attr_accessor :transfer_id
20
+
21
+ # Step sequence number (0-based or 1-based).
22
+ # @return [Integer]
23
+ attr_accessor :step_sequence
24
+
25
+ # Step type: 'stablecoin_transfer', 'offramp', 'onramp', 'fiat_transfer'.
26
+ # @return [StepTypeEnum]
27
+ attr_accessor :step_type
28
+
29
+ # Source account asset ID for this step.
30
+ # @return [Object]
31
+ attr_accessor :from_account_asset_id
32
+
33
+ # Source account ID for this step.
34
+ # @return [Object]
35
+ attr_accessor :from_account_id
36
+
37
+ # Amount sent in this step.
38
+ # @return [String]
39
+ attr_accessor :from_amount
40
+
41
+ # Currency code sent in this step.
42
+ # @return [String]
43
+ attr_accessor :from_currency
44
+
45
+ # Destination account asset ID for this step.
46
+ # @return [Object]
47
+ attr_accessor :to_account_asset_id
48
+
49
+ # Destination account ID for this step.
50
+ # @return [Object]
51
+ attr_accessor :to_account_id
52
+
53
+ # Amount received in this step.
54
+ # @return [String]
55
+ attr_accessor :to_amount
56
+
57
+ # Currency code received in this step.
58
+ # @return [String]
59
+ attr_accessor :to_currency
60
+
61
+ # Blockchain transaction hash (for crypto steps).
62
+ # @return [Object]
63
+ attr_accessor :transaction_hash
64
+
65
+ # List of fees associated with this step.
66
+ # @return [Array[Fee1]]
67
+ attr_accessor :fees
68
+
69
+ # Provider key used for this step (if applicable).
70
+ # @return [Object]
71
+ attr_accessor :provider_key
72
+
73
+ # Step status: 'created', 'submitted', 'confirmed', 'finalized', 'failed'.
74
+ # @return [Status1Enum]
75
+ attr_accessor :status
76
+
77
+ # Array of reasons explaining the current status (if any).
78
+ # @return [Object]
79
+ attr_accessor :status_reasons
80
+
81
+ # Submitted timestamp.
82
+ # @return [Object]
83
+ attr_accessor :submitted_at
84
+
85
+ # Confirmed timestamp.
86
+ # @return [Object]
87
+ attr_accessor :confirmed_at
88
+
89
+ # Finalized timestamp.
90
+ # @return [Object]
91
+ attr_accessor :finalized_at
92
+
93
+ # Completed timestamp.
94
+ # @return [Object]
95
+ attr_accessor :completed_at
96
+
97
+ # Failed timestamp.
98
+ # @return [Object]
99
+ attr_accessor :failed_at
100
+
101
+ # ISO 8601 timestamp of creation.
102
+ # @return [DateTime]
103
+ attr_accessor :created_at
104
+
105
+ # ISO 8601 timestamp of last update.
106
+ # @return [DateTime]
107
+ attr_accessor :updated_at
108
+
109
+ # A mapping from model property names to API property names.
110
+ def self.names
111
+ @_hash = {} if @_hash.nil?
112
+ @_hash['id'] = 'id'
113
+ @_hash['transfer_id'] = 'transfer_id'
114
+ @_hash['step_sequence'] = 'step_sequence'
115
+ @_hash['step_type'] = 'step_type'
116
+ @_hash['from_account_asset_id'] = 'from_account_asset_id'
117
+ @_hash['from_account_id'] = 'from_account_id'
118
+ @_hash['from_amount'] = 'from_amount'
119
+ @_hash['from_currency'] = 'from_currency'
120
+ @_hash['to_account_asset_id'] = 'to_account_asset_id'
121
+ @_hash['to_account_id'] = 'to_account_id'
122
+ @_hash['to_amount'] = 'to_amount'
123
+ @_hash['to_currency'] = 'to_currency'
124
+ @_hash['transaction_hash'] = 'transaction_hash'
125
+ @_hash['fees'] = 'fees'
126
+ @_hash['provider_key'] = 'provider_key'
127
+ @_hash['status'] = 'status'
128
+ @_hash['status_reasons'] = 'status_reasons'
129
+ @_hash['submitted_at'] = 'submitted_at'
130
+ @_hash['confirmed_at'] = 'confirmed_at'
131
+ @_hash['finalized_at'] = 'finalized_at'
132
+ @_hash['completed_at'] = 'completed_at'
133
+ @_hash['failed_at'] = 'failed_at'
134
+ @_hash['created_at'] = 'created_at'
135
+ @_hash['updated_at'] = 'updated_at'
136
+ @_hash
137
+ end
138
+
139
+ # An array for optional fields
140
+ def self.optionals
141
+ %w[
142
+ from_account_asset_id
143
+ from_account_id
144
+ to_account_asset_id
145
+ to_account_id
146
+ transaction_hash
147
+ fees
148
+ provider_key
149
+ status_reasons
150
+ submitted_at
151
+ confirmed_at
152
+ finalized_at
153
+ completed_at
154
+ failed_at
155
+ ]
156
+ end
157
+
158
+ # An array for nullable fields
159
+ def self.nullables
160
+ []
161
+ end
162
+
163
+ def initialize(id = nil, transfer_id = nil, step_sequence = nil,
164
+ step_type = nil, from_amount = nil, from_currency = nil,
165
+ to_amount = nil, to_currency = nil, status = nil,
166
+ created_at = nil, updated_at = nil,
167
+ from_account_asset_id = SKIP, from_account_id = SKIP,
168
+ to_account_asset_id = SKIP, to_account_id = SKIP,
169
+ transaction_hash = SKIP, fees = SKIP, provider_key = SKIP,
170
+ status_reasons = SKIP, submitted_at = SKIP,
171
+ confirmed_at = SKIP, finalized_at = SKIP,
172
+ completed_at = SKIP, failed_at = SKIP)
173
+ @id = id
174
+ @transfer_id = transfer_id
175
+ @step_sequence = step_sequence
176
+ @step_type = step_type
177
+ @from_account_asset_id = from_account_asset_id unless from_account_asset_id == SKIP
178
+ @from_account_id = from_account_id unless from_account_id == SKIP
179
+ @from_amount = from_amount
180
+ @from_currency = from_currency
181
+ @to_account_asset_id = to_account_asset_id unless to_account_asset_id == SKIP
182
+ @to_account_id = to_account_id unless to_account_id == SKIP
183
+ @to_amount = to_amount
184
+ @to_currency = to_currency
185
+ @transaction_hash = transaction_hash unless transaction_hash == SKIP
186
+ @fees = fees unless fees == SKIP
187
+ @provider_key = provider_key unless provider_key == SKIP
188
+ @status = status
189
+ @status_reasons = status_reasons unless status_reasons == SKIP
190
+ @submitted_at = submitted_at unless submitted_at == SKIP
191
+ @confirmed_at = confirmed_at unless confirmed_at == SKIP
192
+ @finalized_at = finalized_at unless finalized_at == SKIP
193
+ @completed_at = completed_at unless completed_at == SKIP
194
+ @failed_at = failed_at unless failed_at == SKIP
195
+ @created_at = created_at
196
+ @updated_at = updated_at
197
+ end
198
+
199
+ # Creates an instance of the object from a hash.
200
+ def self.from_hash(hash)
201
+ return nil unless hash
202
+
203
+ # Extract variables from the hash.
204
+ id = hash.key?('id') ? hash['id'] : nil
205
+ transfer_id = hash.key?('transfer_id') ? hash['transfer_id'] : nil
206
+ step_sequence = hash.key?('step_sequence') ? hash['step_sequence'] : nil
207
+ step_type = hash.key?('step_type') ? hash['step_type'] : nil
208
+ from_amount = hash.key?('from_amount') ? hash['from_amount'] : nil
209
+ from_currency = hash.key?('from_currency') ? hash['from_currency'] : nil
210
+ to_amount = hash.key?('to_amount') ? hash['to_amount'] : nil
211
+ to_currency = hash.key?('to_currency') ? hash['to_currency'] : nil
212
+ status = hash.key?('status') ? hash['status'] : nil
213
+ created_at = if hash.key?('created_at')
214
+ (DateTimeHelper.from_rfc3339(hash['created_at']) if hash['created_at'])
215
+ end
216
+ updated_at = if hash.key?('updated_at')
217
+ (DateTimeHelper.from_rfc3339(hash['updated_at']) if hash['updated_at'])
218
+ end
219
+ from_account_asset_id = hash.key?('from_account_asset_id') ? APIHelper.deserialize_union_type(
220
+ UnionTypeLookUp.get(:StepFromAccountAssetId), hash['from_account_asset_id']
221
+ ) : SKIP
222
+ from_account_id = hash.key?('from_account_id') ? APIHelper.deserialize_union_type(
223
+ UnionTypeLookUp.get(:StepFromAccountId), hash['from_account_id']
224
+ ) : SKIP
225
+ to_account_asset_id = hash.key?('to_account_asset_id') ? APIHelper.deserialize_union_type(
226
+ UnionTypeLookUp.get(:StepToAccountAssetId), hash['to_account_asset_id']
227
+ ) : SKIP
228
+ to_account_id = hash.key?('to_account_id') ? APIHelper.deserialize_union_type(
229
+ UnionTypeLookUp.get(:StepToAccountId), hash['to_account_id']
230
+ ) : SKIP
231
+ transaction_hash = hash.key?('transaction_hash') ? APIHelper.deserialize_union_type(
232
+ UnionTypeLookUp.get(:StepTransactionHash), hash['transaction_hash']
233
+ ) : SKIP
234
+ # Parameter is an array, so we need to iterate through it
235
+ fees = nil
236
+ unless hash['fees'].nil?
237
+ fees = []
238
+ hash['fees'].each do |structure|
239
+ fees << (Fee1.from_hash(structure) if structure)
240
+ end
241
+ end
242
+
243
+ fees = SKIP unless hash.key?('fees')
244
+ provider_key = hash.key?('provider_key') ? APIHelper.deserialize_union_type(
245
+ UnionTypeLookUp.get(:StepProviderKey), hash['provider_key']
246
+ ) : SKIP
247
+ status_reasons = hash.key?('status_reasons') ? APIHelper.deserialize_union_type(
248
+ UnionTypeLookUp.get(:StepStatusReasons), hash['status_reasons']
249
+ ) : SKIP
250
+ submitted_at = hash.key?('submitted_at') ? APIHelper.deserialize_union_type(
251
+ UnionTypeLookUp.get(:StepSubmittedAt), hash['submitted_at']
252
+ ) : SKIP
253
+ confirmed_at = hash.key?('confirmed_at') ? APIHelper.deserialize_union_type(
254
+ UnionTypeLookUp.get(:StepConfirmedAt), hash['confirmed_at']
255
+ ) : SKIP
256
+ finalized_at = hash.key?('finalized_at') ? APIHelper.deserialize_union_type(
257
+ UnionTypeLookUp.get(:StepFinalizedAt), hash['finalized_at']
258
+ ) : SKIP
259
+ completed_at = hash.key?('completed_at') ? APIHelper.deserialize_union_type(
260
+ UnionTypeLookUp.get(:StepCompletedAt), hash['completed_at']
261
+ ) : SKIP
262
+ failed_at = hash.key?('failed_at') ? APIHelper.deserialize_union_type(
263
+ UnionTypeLookUp.get(:StepFailedAt), hash['failed_at']
264
+ ) : SKIP
265
+
266
+ # Create object from extracted values.
267
+ Step.new(id,
268
+ transfer_id,
269
+ step_sequence,
270
+ step_type,
271
+ from_amount,
272
+ from_currency,
273
+ to_amount,
274
+ to_currency,
275
+ status,
276
+ created_at,
277
+ updated_at,
278
+ from_account_asset_id,
279
+ from_account_id,
280
+ to_account_asset_id,
281
+ to_account_id,
282
+ transaction_hash,
283
+ fees,
284
+ provider_key,
285
+ status_reasons,
286
+ submitted_at,
287
+ confirmed_at,
288
+ finalized_at,
289
+ completed_at,
290
+ failed_at)
291
+ end
292
+
293
+ def to_union_type_submitted_at
294
+ UnionTypeLookUp.get(:StepSubmittedAt)
295
+ .validate(submitted_at)
296
+ .serialize(submitted_at)
297
+ end
298
+
299
+ def to_union_type_confirmed_at
300
+ UnionTypeLookUp.get(:StepConfirmedAt)
301
+ .validate(confirmed_at)
302
+ .serialize(confirmed_at)
303
+ end
304
+
305
+ def to_union_type_finalized_at
306
+ UnionTypeLookUp.get(:StepFinalizedAt)
307
+ .validate(finalized_at)
308
+ .serialize(finalized_at)
309
+ end
310
+
311
+ def to_union_type_completed_at
312
+ UnionTypeLookUp.get(:StepCompletedAt)
313
+ .validate(completed_at)
314
+ .serialize(completed_at)
315
+ end
316
+
317
+ def to_union_type_failed_at
318
+ UnionTypeLookUp.get(:StepFailedAt)
319
+ .validate(failed_at)
320
+ .serialize(failed_at)
321
+ end
322
+
323
+ def to_custom_created_at
324
+ DateTimeHelper.to_rfc3339(created_at)
325
+ end
326
+
327
+ def to_custom_updated_at
328
+ DateTimeHelper.to_rfc3339(updated_at)
329
+ end
330
+
331
+ # Validates an instance of the object from a given value.
332
+ # @param [Step | Hash] The value against the validation is performed.
333
+ def self.validate(value)
334
+ if value.instance_of? self
335
+ return (
336
+ APIHelper.valid_type?(value.id,
337
+ ->(val) { val.instance_of? String }) and
338
+ APIHelper.valid_type?(value.transfer_id,
339
+ ->(val) { val.instance_of? String }) and
340
+ APIHelper.valid_type?(value.step_sequence,
341
+ ->(val) { val.instance_of? Integer }) and
342
+ APIHelper.valid_type?(value.step_type,
343
+ ->(val) { StepTypeEnum.validate(val) }) and
344
+ APIHelper.valid_type?(value.from_amount,
345
+ ->(val) { val.instance_of? String }) and
346
+ APIHelper.valid_type?(value.from_currency,
347
+ ->(val) { val.instance_of? String }) and
348
+ APIHelper.valid_type?(value.to_amount,
349
+ ->(val) { val.instance_of? String }) and
350
+ APIHelper.valid_type?(value.to_currency,
351
+ ->(val) { val.instance_of? String }) and
352
+ APIHelper.valid_type?(value.status,
353
+ ->(val) { Status1Enum.validate(val) }) and
354
+ APIHelper.valid_type?(value.created_at,
355
+ ->(val) { val.instance_of? DateTime }) and
356
+ APIHelper.valid_type?(value.updated_at,
357
+ ->(val) { val.instance_of? DateTime })
358
+ )
359
+ end
360
+
361
+ return false unless value.instance_of? Hash
362
+
363
+ (
364
+ APIHelper.valid_type?(value['id'],
365
+ ->(val) { val.instance_of? String }) and
366
+ APIHelper.valid_type?(value['transfer_id'],
367
+ ->(val) { val.instance_of? String }) and
368
+ APIHelper.valid_type?(value['step_sequence'],
369
+ ->(val) { val.instance_of? Integer }) and
370
+ APIHelper.valid_type?(value['step_type'],
371
+ ->(val) { StepTypeEnum.validate(val) }) and
372
+ APIHelper.valid_type?(value['from_amount'],
373
+ ->(val) { val.instance_of? String }) and
374
+ APIHelper.valid_type?(value['from_currency'],
375
+ ->(val) { val.instance_of? String }) and
376
+ APIHelper.valid_type?(value['to_amount'],
377
+ ->(val) { val.instance_of? String }) and
378
+ APIHelper.valid_type?(value['to_currency'],
379
+ ->(val) { val.instance_of? String }) and
380
+ APIHelper.valid_type?(value['status'],
381
+ ->(val) { Status1Enum.validate(val) }) and
382
+ APIHelper.valid_type?(value['created_at'],
383
+ ->(val) { val.instance_of? String }) and
384
+ APIHelper.valid_type?(value['updated_at'],
385
+ ->(val) { val.instance_of? String })
386
+ )
387
+ end
388
+
389
+ # Provides a human-readable string representation of the object.
390
+ def to_s
391
+ class_name = self.class.name.split('::').last
392
+ "<#{class_name} id: #{@id}, transfer_id: #{@transfer_id}, step_sequence: #{@step_sequence},"\
393
+ " step_type: #{@step_type}, from_account_asset_id: #{@from_account_asset_id},"\
394
+ " from_account_id: #{@from_account_id}, from_amount: #{@from_amount}, from_currency:"\
395
+ " #{@from_currency}, to_account_asset_id: #{@to_account_asset_id}, to_account_id:"\
396
+ " #{@to_account_id}, to_amount: #{@to_amount}, to_currency: #{@to_currency},"\
397
+ " transaction_hash: #{@transaction_hash}, fees: #{@fees}, provider_key: #{@provider_key},"\
398
+ " status: #{@status}, status_reasons: #{@status_reasons}, submitted_at: #{@submitted_at},"\
399
+ " confirmed_at: #{@confirmed_at}, finalized_at: #{@finalized_at}, completed_at:"\
400
+ " #{@completed_at}, failed_at: #{@failed_at}, created_at: #{@created_at}, updated_at:"\
401
+ " #{@updated_at}>"
402
+ end
403
+
404
+ # Provides a debugging-friendly string with detailed object information.
405
+ def inspect
406
+ class_name = self.class.name.split('::').last
407
+ "<#{class_name} id: #{@id.inspect}, transfer_id: #{@transfer_id.inspect}, step_sequence:"\
408
+ " #{@step_sequence.inspect}, step_type: #{@step_type.inspect}, from_account_asset_id:"\
409
+ " #{@from_account_asset_id.inspect}, from_account_id: #{@from_account_id.inspect},"\
410
+ " from_amount: #{@from_amount.inspect}, from_currency: #{@from_currency.inspect},"\
411
+ " to_account_asset_id: #{@to_account_asset_id.inspect}, to_account_id:"\
412
+ " #{@to_account_id.inspect}, to_amount: #{@to_amount.inspect}, to_currency:"\
413
+ " #{@to_currency.inspect}, transaction_hash: #{@transaction_hash.inspect}, fees:"\
414
+ " #{@fees.inspect}, provider_key: #{@provider_key.inspect}, status: #{@status.inspect},"\
415
+ " status_reasons: #{@status_reasons.inspect}, submitted_at: #{@submitted_at.inspect},"\
416
+ " confirmed_at: #{@confirmed_at.inspect}, finalized_at: #{@finalized_at.inspect},"\
417
+ " completed_at: #{@completed_at.inspect}, failed_at: #{@failed_at.inspect}, created_at:"\
418
+ " #{@created_at.inspect}, updated_at: #{@updated_at.inspect}>"
419
+ end
420
+ end
421
+ end
@@ -0,0 +1,44 @@
1
+ # tesser_apiv1
2
+ #
3
+ # This file was automatically generated by APIMATIC v3.0 (
4
+ # https://www.apimatic.io ).
5
+
6
+ module TesserApiv1
7
+ # Step type: 'stablecoin_transfer', 'offramp', 'onramp', 'fiat_transfer'.
8
+ class StepTypeEnum
9
+ STEP_TYPE_ENUM = [
10
+ # TODO: Write general description for STABLECOIN_TRANSFER
11
+ STABLECOIN_TRANSFER = 'stablecoin_transfer'.freeze,
12
+
13
+ # TODO: Write general description for OFFRAMP
14
+ OFFRAMP = 'offramp'.freeze,
15
+
16
+ # TODO: Write general description for ONRAMP
17
+ ONRAMP = 'onramp'.freeze,
18
+
19
+ # TODO: Write general description for FIAT_TRANSFER
20
+ FIAT_TRANSFER = 'fiat_transfer'.freeze
21
+ ].freeze
22
+
23
+ def self.validate(value)
24
+ return false if value.nil?
25
+
26
+ STEP_TYPE_ENUM.include?(value)
27
+ end
28
+
29
+ def self.from_value(value, default_value = STABLECOIN_TRANSFER)
30
+ return default_value if value.nil?
31
+
32
+ str = value.to_s.strip
33
+
34
+ case str.downcase
35
+ when 'stablecoin_transfer' then STABLECOIN_TRANSFER
36
+ when 'offramp' then OFFRAMP
37
+ when 'onramp' then ONRAMP
38
+ when 'fiat_transfer' then FIAT_TRANSFER
39
+ else
40
+ default_value
41
+ end
42
+ end
43
+ end
44
+ end