snaptrade 2.0.37 → 2.0.39

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 (36) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +2 -2
  3. data/README.md +115 -77
  4. data/lib/snaptrade/api/account_information_api.rb +4 -4
  5. data/lib/snaptrade/api/authentication_api.rb +4 -4
  6. data/lib/snaptrade/api/connections_api.rb +70 -52
  7. data/lib/snaptrade/api/options_api.rb +4 -4
  8. data/lib/snaptrade/api/trading_api.rb +106 -106
  9. data/lib/snaptrade/models/account.rb +2 -2
  10. data/lib/snaptrade/models/brokerage.rb +25 -40
  11. data/lib/snaptrade/models/brokerage_authorization.rb +12 -8
  12. data/lib/snaptrade/models/brokerage_authorization_disabled_confirmation.rb +1 -0
  13. data/lib/snaptrade/models/brokerage_authorization_refresh_confirmation.rb +1 -0
  14. data/lib/snaptrade/models/brokerage_type.rb +1 -1
  15. data/lib/snaptrade/models/manual_trade.rb +7 -5
  16. data/lib/snaptrade/models/manual_trade_and_impact.rb +2 -2
  17. data/lib/snaptrade/models/manual_trade_balance.rb +3 -3
  18. data/lib/snaptrade/models/manual_trade_form.rb +52 -25
  19. data/lib/snaptrade/models/manual_trade_impact.rb +260 -0
  20. data/lib/snaptrade/models/manual_trade_symbol.rb +6 -1
  21. data/lib/snaptrade/models/notional_value.rb +1 -1
  22. data/lib/snaptrade/models/options_place_option_strategy_request.rb +2 -2
  23. data/lib/snaptrade/models/symbols_quotes_inner.rb +15 -10
  24. data/lib/snaptrade/models/trading_cancel_user_account_order_request.rb +1 -0
  25. data/lib/snaptrade/models/validated_trade_body.rb +1 -2
  26. data/lib/snaptrade/version.rb +1 -1
  27. data/lib/snaptrade.rb +1 -0
  28. data/spec/api/account_information_api_spec.rb +1 -1
  29. data/spec/api/authentication_api_spec.rb +1 -1
  30. data/spec/api/connections_api_spec.rb +13 -13
  31. data/spec/api/trading_api_spec.rb +15 -15
  32. data/spec/models/brokerage_spec.rb +6 -24
  33. data/spec/models/manual_trade_form_spec.rb +6 -6
  34. data/spec/models/manual_trade_impact_spec.rb +53 -0
  35. data/spec/models/symbols_quotes_inner_spec.rb +3 -3
  36. metadata +5 -2
@@ -17,11 +17,11 @@ module SnapTrade
17
17
  @api_client = api_client
18
18
  end
19
19
 
20
- # Get brokerage authorization details
20
+ # Get connection detail
21
21
  #
22
- # Returns a single brokerage authorization object for the specified ID.
22
+ # Returns a single connection for the specified ID.
23
23
  #
24
- # @param authorization_id [String] The ID of a brokerage authorization object.
24
+ # @param authorization_id [String]
25
25
  # @param user_id [String]
26
26
  # @param user_secret [String]
27
27
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
@@ -30,11 +30,11 @@ module SnapTrade
30
30
  data
31
31
  end
32
32
 
33
- # Get brokerage authorization details
33
+ # Get connection detail
34
34
  #
35
- # Returns a single brokerage authorization object for the specified ID.
35
+ # Returns a single connection for the specified ID.
36
36
  #
37
- # @param authorization_id [String] The ID of a brokerage authorization object.
37
+ # @param authorization_id [String]
38
38
  # @param user_id [String]
39
39
  # @param user_secret [String]
40
40
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
@@ -42,9 +42,9 @@ module SnapTrade
42
42
  detail_brokerage_authorization_with_http_info_impl(authorization_id, user_id, user_secret, extra)
43
43
  end
44
44
 
45
- # Get brokerage authorization details
46
- # Returns a single brokerage authorization object for the specified ID.
47
- # @param authorization_id [String] The ID of a brokerage authorization object.
45
+ # Get connection detail
46
+ # Returns a single connection for the specified ID.
47
+ # @param authorization_id [String]
48
48
  # @param user_id [String]
49
49
  # @param user_secret [String]
50
50
  # @param [Hash] opts the optional parameters
@@ -54,9 +54,9 @@ module SnapTrade
54
54
  data
55
55
  end
56
56
 
57
- # Get brokerage authorization details
58
- # Returns a single brokerage authorization object for the specified ID.
59
- # @param authorization_id [String] The ID of a brokerage authorization object.
57
+ # Get connection detail
58
+ # Returns a single connection for the specified ID.
59
+ # @param authorization_id [String]
60
60
  # @param user_id [String]
61
61
  # @param user_secret [String]
62
62
  # @param [Hash] opts the optional parameters
@@ -120,11 +120,14 @@ module SnapTrade
120
120
  end
121
121
 
122
122
 
123
- # Manually disable a connection for testing
123
+ # Force disable connection
124
124
  #
125
- # Manually disable a connection. This should only be used for testing a reconnect flow, and never used on production connections. Will trigger a disconnect as if it happened naturally, and send a CONNECTION_BROKEN webhook for the connection. Please contact us in order to use this endpoint as it is disabled by default.
125
+ # Manually force the specified connection to become disabled. This should only be used for testing a reconnect flow, and never used on production connections.
126
+ # Will trigger a disconnect as if it happened naturally, and send a [`CONNECTION_BROKEN` webhook](https://docs.snaptrade.com/docs/webhooks#webhooks-connection_broken) for the connection.
127
+ #
128
+ # *Please contact us in order to use this endpoint as it is disabled by default.*
126
129
  #
127
- # @param authorization_id [String] The ID of a brokerage authorization object.
130
+ # @param authorization_id [String]
128
131
  # @param user_id [String]
129
132
  # @param user_secret [String]
130
133
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
@@ -133,11 +136,14 @@ module SnapTrade
133
136
  data
134
137
  end
135
138
 
136
- # Manually disable a connection for testing
139
+ # Force disable connection
137
140
  #
138
- # Manually disable a connection. This should only be used for testing a reconnect flow, and never used on production connections. Will trigger a disconnect as if it happened naturally, and send a CONNECTION_BROKEN webhook for the connection. Please contact us in order to use this endpoint as it is disabled by default.
141
+ # Manually force the specified connection to become disabled. This should only be used for testing a reconnect flow, and never used on production connections.
142
+ # Will trigger a disconnect as if it happened naturally, and send a [`CONNECTION_BROKEN` webhook](https://docs.snaptrade.com/docs/webhooks#webhooks-connection_broken) for the connection.
143
+ #
144
+ # *Please contact us in order to use this endpoint as it is disabled by default.*
139
145
  #
140
- # @param authorization_id [String] The ID of a brokerage authorization object.
146
+ # @param authorization_id [String]
141
147
  # @param user_id [String]
142
148
  # @param user_secret [String]
143
149
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
@@ -145,9 +151,9 @@ module SnapTrade
145
151
  disable_brokerage_authorization_with_http_info_impl(authorization_id, user_id, user_secret, extra)
146
152
  end
147
153
 
148
- # Manually disable a connection for testing
149
- # Manually disable a connection. This should only be used for testing a reconnect flow, and never used on production connections. Will trigger a disconnect as if it happened naturally, and send a CONNECTION_BROKEN webhook for the connection. Please contact us in order to use this endpoint as it is disabled by default.
150
- # @param authorization_id [String] The ID of a brokerage authorization object.
154
+ # Force disable connection
155
+ # Manually force the specified connection to become disabled. This should only be used for testing a reconnect flow, and never used on production connections. Will trigger a disconnect as if it happened naturally, and send a [`CONNECTION_BROKEN` webhook](https://docs.snaptrade.com/docs/webhooks#webhooks-connection_broken) for the connection. *Please contact us in order to use this endpoint as it is disabled by default.*
156
+ # @param authorization_id [String]
151
157
  # @param user_id [String]
152
158
  # @param user_secret [String]
153
159
  # @param [Hash] opts the optional parameters
@@ -157,9 +163,9 @@ module SnapTrade
157
163
  data
158
164
  end
159
165
 
160
- # Manually disable a connection for testing
161
- # Manually disable a connection. This should only be used for testing a reconnect flow, and never used on production connections. Will trigger a disconnect as if it happened naturally, and send a CONNECTION_BROKEN webhook for the connection. Please contact us in order to use this endpoint as it is disabled by default.
162
- # @param authorization_id [String] The ID of a brokerage authorization object.
166
+ # Force disable connection
167
+ # Manually force the specified connection to become disabled. This should only be used for testing a reconnect flow, and never used on production connections. Will trigger a disconnect as if it happened naturally, and send a [`CONNECTION_BROKEN` webhook](https://docs.snaptrade.com/docs/webhooks#webhooks-connection_broken) for the connection. *Please contact us in order to use this endpoint as it is disabled by default.*
168
+ # @param authorization_id [String]
163
169
  # @param user_id [String]
164
170
  # @param user_secret [String]
165
171
  # @param [Hash] opts the optional parameters
@@ -223,9 +229,13 @@ module SnapTrade
223
229
  end
224
230
 
225
231
 
226
- # List all brokerage authorizations for the User
232
+ # List all connections
227
233
  #
228
- # Returns a list of Brokerage Authorization objects for the user
234
+ # Returns a list of all connections for the specified user. Note that `Connection` and `Brokerage Authorization` are interchangeable, but the term `Connection` is preferred and used in the doc for consistency.
235
+ #
236
+ # A connection is usually tied to a single login at a brokerage. A single connection can contain multiple brokerage accounts.
237
+ #
238
+ # SnapTrade performs de-duping on connections for a given user. If the user has an existing connection with the brokerage, when connecting the brokerage with the same credentials, SnapTrade will return the existing connection instead of creating a new one.
229
239
  #
230
240
  # @param user_id [String]
231
241
  # @param user_secret [String]
@@ -235,9 +245,13 @@ module SnapTrade
235
245
  data
236
246
  end
237
247
 
238
- # List all brokerage authorizations for the User
248
+ # List all connections
239
249
  #
240
- # Returns a list of Brokerage Authorization objects for the user
250
+ # Returns a list of all connections for the specified user. Note that `Connection` and `Brokerage Authorization` are interchangeable, but the term `Connection` is preferred and used in the doc for consistency.
251
+ #
252
+ # A connection is usually tied to a single login at a brokerage. A single connection can contain multiple brokerage accounts.
253
+ #
254
+ # SnapTrade performs de-duping on connections for a given user. If the user has an existing connection with the brokerage, when connecting the brokerage with the same credentials, SnapTrade will return the existing connection instead of creating a new one.
241
255
  #
242
256
  # @param user_id [String]
243
257
  # @param user_secret [String]
@@ -246,8 +260,8 @@ module SnapTrade
246
260
  list_brokerage_authorizations_with_http_info_impl(user_id, user_secret, extra)
247
261
  end
248
262
 
249
- # List all brokerage authorizations for the User
250
- # Returns a list of Brokerage Authorization objects for the user
263
+ # List all connections
264
+ # Returns a list of all connections for the specified user. Note that `Connection` and `Brokerage Authorization` are interchangeable, but the term `Connection` is preferred and used in the doc for consistency. A connection is usually tied to a single login at a brokerage. A single connection can contain multiple brokerage accounts. SnapTrade performs de-duping on connections for a given user. If the user has an existing connection with the brokerage, when connecting the brokerage with the same credentials, SnapTrade will return the existing connection instead of creating a new one.
251
265
  # @param user_id [String]
252
266
  # @param user_secret [String]
253
267
  # @param [Hash] opts the optional parameters
@@ -257,8 +271,8 @@ module SnapTrade
257
271
  data
258
272
  end
259
273
 
260
- # List all brokerage authorizations for the User
261
- # Returns a list of Brokerage Authorization objects for the user
274
+ # List all connections
275
+ # Returns a list of all connections for the specified user. Note that `Connection` and `Brokerage Authorization` are interchangeable, but the term `Connection` is preferred and used in the doc for consistency. A connection is usually tied to a single login at a brokerage. A single connection can contain multiple brokerage accounts. SnapTrade performs de-duping on connections for a given user. If the user has an existing connection with the brokerage, when connecting the brokerage with the same credentials, SnapTrade will return the existing connection instead of creating a new one.
262
276
  # @param user_id [String]
263
277
  # @param user_secret [String]
264
278
  # @param [Hash] opts the optional parameters
@@ -320,9 +334,11 @@ module SnapTrade
320
334
 
321
335
  # Refresh holdings for a connection
322
336
  #
323
- # Trigger a holdings update for all accounts under this authorization. Updates will be queued asynchronously. ACCOUNT_HOLDINGS_UPDATED webhook will be sent once the sync completes. Please contact support for access as this endpoint is not enabled by default
337
+ # Trigger a holdings update for all accounts under this connection. Updates will be queued asynchronously. [`ACCOUNT_HOLDINGS_UPDATED` webhook](https://docs.snaptrade.com/docs/webhooks#webhooks-account_holdings_updated) will be sent once the sync completes for each account under the connection.
338
+ #
339
+ # *Please contact support for access as this endpoint is not enabled by default.*
324
340
  #
325
- # @param authorization_id [String] The ID of a brokerage authorization object.
341
+ # @param authorization_id [String]
326
342
  # @param user_id [String]
327
343
  # @param user_secret [String]
328
344
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
@@ -333,9 +349,11 @@ module SnapTrade
333
349
 
334
350
  # Refresh holdings for a connection
335
351
  #
336
- # Trigger a holdings update for all accounts under this authorization. Updates will be queued asynchronously. ACCOUNT_HOLDINGS_UPDATED webhook will be sent once the sync completes. Please contact support for access as this endpoint is not enabled by default
352
+ # Trigger a holdings update for all accounts under this connection. Updates will be queued asynchronously. [`ACCOUNT_HOLDINGS_UPDATED` webhook](https://docs.snaptrade.com/docs/webhooks#webhooks-account_holdings_updated) will be sent once the sync completes for each account under the connection.
353
+ #
354
+ # *Please contact support for access as this endpoint is not enabled by default.*
337
355
  #
338
- # @param authorization_id [String] The ID of a brokerage authorization object.
356
+ # @param authorization_id [String]
339
357
  # @param user_id [String]
340
358
  # @param user_secret [String]
341
359
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
@@ -344,8 +362,8 @@ module SnapTrade
344
362
  end
345
363
 
346
364
  # Refresh holdings for a connection
347
- # Trigger a holdings update for all accounts under this authorization. Updates will be queued asynchronously. ACCOUNT_HOLDINGS_UPDATED webhook will be sent once the sync completes. Please contact support for access as this endpoint is not enabled by default
348
- # @param authorization_id [String] The ID of a brokerage authorization object.
365
+ # Trigger a holdings update for all accounts under this connection. Updates will be queued asynchronously. [`ACCOUNT_HOLDINGS_UPDATED` webhook](https://docs.snaptrade.com/docs/webhooks#webhooks-account_holdings_updated) will be sent once the sync completes for each account under the connection. *Please contact support for access as this endpoint is not enabled by default.*
366
+ # @param authorization_id [String]
349
367
  # @param user_id [String]
350
368
  # @param user_secret [String]
351
369
  # @param [Hash] opts the optional parameters
@@ -356,8 +374,8 @@ module SnapTrade
356
374
  end
357
375
 
358
376
  # Refresh holdings for a connection
359
- # Trigger a holdings update for all accounts under this authorization. Updates will be queued asynchronously. ACCOUNT_HOLDINGS_UPDATED webhook will be sent once the sync completes. Please contact support for access as this endpoint is not enabled by default
360
- # @param authorization_id [String] The ID of a brokerage authorization object.
377
+ # Trigger a holdings update for all accounts under this connection. Updates will be queued asynchronously. [`ACCOUNT_HOLDINGS_UPDATED` webhook](https://docs.snaptrade.com/docs/webhooks#webhooks-account_holdings_updated) will be sent once the sync completes for each account under the connection. *Please contact support for access as this endpoint is not enabled by default.*
378
+ # @param authorization_id [String]
361
379
  # @param user_id [String]
362
380
  # @param user_secret [String]
363
381
  # @param [Hash] opts the optional parameters
@@ -421,11 +439,11 @@ module SnapTrade
421
439
  end
422
440
 
423
441
 
424
- # Delete brokerage authorization
442
+ # Delete connection
425
443
  #
426
- # Deletes a specified brokerage authorization given by the ID.
444
+ # Deletes the connection specified by the ID. This will also delete all accounts and holdings associated with the connection. This action is irreversible. This endpoint is synchronous, a 204 response indicates that the connection has been successfully deleted.
427
445
  #
428
- # @param authorization_id [String] The ID of the Authorization to delete.
446
+ # @param authorization_id [String]
429
447
  # @param user_id [String]
430
448
  # @param user_secret [String]
431
449
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
@@ -434,11 +452,11 @@ module SnapTrade
434
452
  nil
435
453
  end
436
454
 
437
- # Delete brokerage authorization
455
+ # Delete connection
438
456
  #
439
- # Deletes a specified brokerage authorization given by the ID.
457
+ # Deletes the connection specified by the ID. This will also delete all accounts and holdings associated with the connection. This action is irreversible. This endpoint is synchronous, a 204 response indicates that the connection has been successfully deleted.
440
458
  #
441
- # @param authorization_id [String] The ID of the Authorization to delete.
459
+ # @param authorization_id [String]
442
460
  # @param user_id [String]
443
461
  # @param user_secret [String]
444
462
  # @param [Hash] extra additional parameters to pass along through :header_params, :query_params, or parameter name
@@ -446,9 +464,9 @@ module SnapTrade
446
464
  remove_brokerage_authorization_with_http_info_impl(authorization_id, user_id, user_secret, extra)
447
465
  end
448
466
 
449
- # Delete brokerage authorization
450
- # Deletes a specified brokerage authorization given by the ID.
451
- # @param authorization_id [String] The ID of the Authorization to delete.
467
+ # Delete connection
468
+ # Deletes the connection specified by the ID. This will also delete all accounts and holdings associated with the connection. This action is irreversible. This endpoint is synchronous, a 204 response indicates that the connection has been successfully deleted.
469
+ # @param authorization_id [String]
452
470
  # @param user_id [String]
453
471
  # @param user_secret [String]
454
472
  # @param [Hash] opts the optional parameters
@@ -458,9 +476,9 @@ module SnapTrade
458
476
  nil
459
477
  end
460
478
 
461
- # Delete brokerage authorization
462
- # Deletes a specified brokerage authorization given by the ID.
463
- # @param authorization_id [String] The ID of the Authorization to delete.
479
+ # Delete connection
480
+ # Deletes the connection specified by the ID. This will also delete all accounts and holdings associated with the connection. This action is irreversible. This endpoint is synchronous, a 204 response indicates that the connection has been successfully deleted.
481
+ # @param authorization_id [String]
464
482
  # @param user_id [String]
465
483
  # @param user_secret [String]
466
484
  # @param [Hash] opts the optional parameters
@@ -483,8 +483,8 @@ module SnapTrade
483
483
  #
484
484
  # Places the option strategy order and returns the order record received from the brokerage.
485
485
  #
486
- # @param order_type [OrderTypeStrict] Order Type
487
- # @param time_in_force [TimeInForceStrict] Trade time in force examples: * FOK - Fill Or Kill * Day - Day * GTC - Good Til Canceled
486
+ # @param order_type [OrderTypeStrict] The type of order to place. - For `Limit` and `StopLimit` orders, the `price` field is required. - For `Stop` and `StopLimit` orders, the `stop` field is required.
487
+ # @param time_in_force [TimeInForceStrict] The Time in Force type for the order. This field indicates how long the order will remain active before it is executed or expires. Here are the supported values: - `Day` - Day. The order is valid only for the trading day on which it is placed. - `GTC` - Good Til Canceled. The order is valid until it is executed or canceled. - `FOK` - Fill Or Kill. The order must be executed in its entirety immediately or be canceled completely.
488
488
  # @param user_id [String]
489
489
  # @param user_secret [String]
490
490
  # @param account_id [String] The ID of the account to execute the strategy in.
@@ -506,8 +506,8 @@ module SnapTrade
506
506
  #
507
507
  # Places the option strategy order and returns the order record received from the brokerage.
508
508
  #
509
- # @param order_type [OrderTypeStrict] Order Type
510
- # @param time_in_force [TimeInForceStrict] Trade time in force examples: * FOK - Fill Or Kill * Day - Day * GTC - Good Til Canceled
509
+ # @param order_type [OrderTypeStrict] The type of order to place. - For `Limit` and `StopLimit` orders, the `price` field is required. - For `Stop` and `StopLimit` orders, the `stop` field is required.
510
+ # @param time_in_force [TimeInForceStrict] The Time in Force type for the order. This field indicates how long the order will remain active before it is executed or expires. Here are the supported values: - `Day` - Day. The order is valid only for the trading day on which it is placed. - `GTC` - Good Til Canceled. The order is valid until it is executed or canceled. - `FOK` - Fill Or Kill. The order must be executed in its entirety immediately or be canceled completely.
511
511
  # @param user_id [String]
512
512
  # @param user_secret [String]
513
513
  # @param account_id [String] The ID of the account to execute the strategy in.