diff --git a/artifacts/apidocs/schemas/api_cancel_order_response.md b/artifacts/apidocs/schemas/api_cancel_order_response.md
index 5de6e3e..12c6d0e 100644
--- a/artifacts/apidocs/schemas/api_cancel_order_response.md
+++ b/artifacts/apidocs/schemas/api_cancel_order_response.md
@@ -11,7 +11,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_category_affinity_score_request.md b/artifacts/apidocs/schemas/api_category_affinity_score_request.md
new file mode 100644
index 0000000..a4a95e0
--- /dev/null
+++ b/artifacts/apidocs/schemas/api_category_affinity_score_request.md
@@ -0,0 +1,5 @@
+!!! info "[ApiCategoryAffinityScoreRequest](/../../schemas/api_category_affinity_score_request)"
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |start_time
`st` |string|True|The start time of query. Can leave empty to query from the beginning|
+ |end_time
`et` |string|True|The end time of query. Can leave empty to query until now|
diff --git a/artifacts/apidocs/schemas/api_category_affinity_score_response.md b/artifacts/apidocs/schemas/api_category_affinity_score_response.md
new file mode 100644
index 0000000..fece118
--- /dev/null
+++ b/artifacts/apidocs/schemas/api_category_affinity_score_response.md
@@ -0,0 +1,12 @@
+!!! info "[ApiCategoryAffinityScoreResponse](/../../schemas/api_category_affinity_score_response)"
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |result
`r` |[UserCategoryAffinityScore]|True|The list of categoryAffinities score|
+ ??? info "[UserCategoryAffinityScore](/../../schemas/user_category_affinity_score)"
+
+
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |account_id
`ai` |string|True|The off chain account id|
+ |category_id
`ci` |string|True|target category|
+ |affinity_score
`as` |number|True|affinity score|
diff --git a/artifacts/apidocs/schemas/api_create_bulk_orders_request.md b/artifacts/apidocs/schemas/api_create_bulk_orders_request.md
index b0068e9..868451e 100644
--- a/artifacts/apidocs/schemas/api_create_bulk_orders_request.md
+++ b/artifacts/apidocs/schemas/api_create_bulk_orders_request.md
@@ -13,7 +13,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_create_bulk_orders_response.md b/artifacts/apidocs/schemas/api_create_bulk_orders_response.md
index 64b7666..7d29ae3 100644
--- a/artifacts/apidocs/schemas/api_create_bulk_orders_response.md
+++ b/artifacts/apidocs/schemas/api_create_bulk_orders_response.md
@@ -11,7 +11,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_create_order_request.md b/artifacts/apidocs/schemas/api_create_order_request.md
index b31f672..5cffa3d 100644
--- a/artifacts/apidocs/schemas/api_create_order_request.md
+++ b/artifacts/apidocs/schemas/api_create_order_request.md
@@ -13,7 +13,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_create_order_response.md b/artifacts/apidocs/schemas/api_create_order_response.md
index 77d22fe..67e514b 100644
--- a/artifacts/apidocs/schemas/api_create_order_response.md
+++ b/artifacts/apidocs/schemas/api_create_order_response.md
@@ -11,7 +11,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_get_order_response.md b/artifacts/apidocs/schemas/api_get_order_response.md
index 8a2f97b..86f37bb 100644
--- a/artifacts/apidocs/schemas/api_get_order_response.md
+++ b/artifacts/apidocs/schemas/api_get_order_response.md
@@ -11,7 +11,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_latest_snap_sub_accounts_response.md b/artifacts/apidocs/schemas/api_latest_snap_sub_accounts_response.md
index 73f63ea..35257e1 100644
--- a/artifacts/apidocs/schemas/api_latest_snap_sub_accounts_response.md
+++ b/artifacts/apidocs/schemas/api_latest_snap_sub_accounts_response.md
@@ -107,3 +107,4 @@
|roi
`r` |string|True|The ROI of the position, expressed as a percentage
`roi = (total_pnl / (entry_price * abs(size))) * 100^`|
|quote_index_price
`qi` |string|True|The index price of the quote currency. (reported in `USD`)|
|est_liquidation_price
`el` |string|True|The estimated liquidation price|
+ |leverage
`l` |string|True|The current leverage value for this position|
diff --git a/artifacts/apidocs/schemas/api_open_orders_response.md b/artifacts/apidocs/schemas/api_open_orders_response.md
index 4655df8..8ec0f03 100644
--- a/artifacts/apidocs/schemas/api_open_orders_response.md
+++ b/artifacts/apidocs/schemas/api_open_orders_response.md
@@ -13,7 +13,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_order_history_response.md b/artifacts/apidocs/schemas/api_order_history_response.md
index 10f951d..9a72efd 100644
--- a/artifacts/apidocs/schemas/api_order_history_response.md
+++ b/artifacts/apidocs/schemas/api_order_history_response.md
@@ -12,7 +12,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_positions_response.md b/artifacts/apidocs/schemas/api_positions_response.md
index 8527406..eeb43e5 100644
--- a/artifacts/apidocs/schemas/api_positions_response.md
+++ b/artifacts/apidocs/schemas/api_positions_response.md
@@ -19,3 +19,4 @@
|roi
`r` |string|True|The ROI of the position, expressed as a percentage
`roi = (total_pnl / (entry_price * abs(size))) * 100^`|
|quote_index_price
`qi` |string|True|The index price of the quote currency. (reported in `USD`)|
|est_liquidation_price
`el` |string|True|The estimated liquidation price|
+ |leverage
`l` |string|True|The current leverage value for this position|
diff --git a/artifacts/apidocs/schemas/api_pre_order_check_request.md b/artifacts/apidocs/schemas/api_pre_order_check_request.md
index 48c8e75..cb05d52 100644
--- a/artifacts/apidocs/schemas/api_pre_order_check_request.md
+++ b/artifacts/apidocs/schemas/api_pre_order_check_request.md
@@ -14,7 +14,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/api_sub_account_history_response.md b/artifacts/apidocs/schemas/api_sub_account_history_response.md
index b2bf5c3..97877af 100644
--- a/artifacts/apidocs/schemas/api_sub_account_history_response.md
+++ b/artifacts/apidocs/schemas/api_sub_account_history_response.md
@@ -108,3 +108,4 @@
|roi
`r` |string|True|The ROI of the position, expressed as a percentage
`roi = (total_pnl / (entry_price * abs(size))) * 100^`|
|quote_index_price
`qi` |string|True|The index price of the quote currency. (reported in `USD`)|
|est_liquidation_price
`el` |string|True|The estimated liquidation price|
+ |leverage
`l` |string|True|The current leverage value for this position|
diff --git a/artifacts/apidocs/schemas/api_sub_account_summary_response.md b/artifacts/apidocs/schemas/api_sub_account_summary_response.md
index 978eda2..3aca394 100644
--- a/artifacts/apidocs/schemas/api_sub_account_summary_response.md
+++ b/artifacts/apidocs/schemas/api_sub_account_summary_response.md
@@ -109,3 +109,4 @@
|roi
`r` |string|True|The ROI of the position, expressed as a percentage
`roi = (total_pnl / (entry_price * abs(size))) * 100^`|
|quote_index_price
`qi` |string|True|The index price of the quote currency. (reported in `USD`)|
|est_liquidation_price
`el` |string|True|The estimated liquidation price|
+ |leverage
`l` |string|True|The current leverage value for this position|
diff --git a/artifacts/apidocs/schemas/api_user_category_affinity_score_request.md b/artifacts/apidocs/schemas/api_user_category_affinity_score_request.md
new file mode 100644
index 0000000..0dab406
--- /dev/null
+++ b/artifacts/apidocs/schemas/api_user_category_affinity_score_request.md
@@ -0,0 +1,6 @@
+!!! info "[ApiUserCategoryAffinityScoreRequest](/../../schemas/api_user_category_affinity_score_request)"
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |account_id
`ai` |string|True|The off chain account id|
+ |start_time
`st` |string|True|The start time of query. Can leave empty to query from the beginning|
+ |end_time
`et` |string|True|The end time of query. Can leave empty to query until now|
diff --git a/artifacts/apidocs/schemas/api_user_category_affinity_score_response.md b/artifacts/apidocs/schemas/api_user_category_affinity_score_response.md
new file mode 100644
index 0000000..169bb7a
--- /dev/null
+++ b/artifacts/apidocs/schemas/api_user_category_affinity_score_response.md
@@ -0,0 +1,12 @@
+!!! info "[ApiUserCategoryAffinityScoreResponse](/../../schemas/api_user_category_affinity_score_response)"
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |result
`r` |[UserCategoryAffinityScore]|True|The list of categoryAffinities score|
+ ??? info "[UserCategoryAffinityScore](/../../schemas/user_category_affinity_score)"
+
+
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |account_id
`ai` |string|True|The off chain account id|
+ |category_id
`ci` |string|True|target category|
+ |affinity_score
`as` |number|True|affinity score|
diff --git a/artifacts/apidocs/schemas/order.md b/artifacts/apidocs/schemas/order.md
index a6d43b2..8a203d1 100644
--- a/artifacts/apidocs/schemas/order.md
+++ b/artifacts/apidocs/schemas/order.md
@@ -7,7 +7,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/positions.md b/artifacts/apidocs/schemas/positions.md
index 96665d3..1fa92a4 100644
--- a/artifacts/apidocs/schemas/positions.md
+++ b/artifacts/apidocs/schemas/positions.md
@@ -15,3 +15,4 @@
|roi
`r` |string|True|The ROI of the position, expressed as a percentage
`roi = (total_pnl / (entry_price * abs(size))) * 100^`|
|quote_index_price
`qi` |string|True|The index price of the quote currency. (reported in `USD`)|
|est_liquidation_price
`el` |string|True|The estimated liquidation price|
+ |leverage
`l` |string|True|The current leverage value for this position|
diff --git a/artifacts/apidocs/schemas/session_information.md b/artifacts/apidocs/schemas/session_information.md
new file mode 100644
index 0000000..1db55d6
--- /dev/null
+++ b/artifacts/apidocs/schemas/session_information.md
@@ -0,0 +1,8 @@
+!!! info "[SessionInformation](/../../schemas/session_information)"
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |country_code
`cc` |string|True|country code of user based on IP address|
+ |client_session_id
`cs` |string|True|unique identity of the session generated from client|
+ |device_screen_size
`ds` |string|True|screen size|
+ |device_os
`do` |string|True|OS of user's device|
+ |device_os_version
`do1` |string|True|OS version of user's device|
diff --git a/artifacts/apidocs/schemas/snap_funding_account_summary.md b/artifacts/apidocs/schemas/snap_funding_account_summary.md
index 1cd7568..1cb26ab 100644
--- a/artifacts/apidocs/schemas/snap_funding_account_summary.md
+++ b/artifacts/apidocs/schemas/snap_funding_account_summary.md
@@ -4,6 +4,7 @@
|Name
`Lite`|Type|Required
`Default`| Description |
|-|-|-|-|
|event_time
`et` |string|True|Time at which the event was emitted in unix nanoseconds|
+ |start_interval
`si` |string|True|The start of the interval in unix nanoseconds|
|main_account_id
`ma` |string|True|The main account ID of the account to which the summary belongs|
|total_equity
`te` |string|True|Total equity of the main account, denominated in USD|
|spot_balances
`sb` |[SpotBalance]|True|The list of spot assets owned by this main account, and their balances|
diff --git a/artifacts/apidocs/schemas/sub_account.md b/artifacts/apidocs/schemas/sub_account.md
index c5c0487..2fef746 100644
--- a/artifacts/apidocs/schemas/sub_account.md
+++ b/artifacts/apidocs/schemas/sub_account.md
@@ -103,3 +103,4 @@
|roi
`r` |string|True|The ROI of the position, expressed as a percentage
`roi = (total_pnl / (entry_price * abs(size))) * 100^`|
|quote_index_price
`qi` |string|True|The index price of the quote currency. (reported in `USD`)|
|est_liquidation_price
`el` |string|True|The estimated liquidation price|
+ |leverage
`l` |string|True|The current leverage value for this position|
diff --git a/artifacts/apidocs/schemas/user_category_affinity_score.md b/artifacts/apidocs/schemas/user_category_affinity_score.md
new file mode 100644
index 0000000..f320c1f
--- /dev/null
+++ b/artifacts/apidocs/schemas/user_category_affinity_score.md
@@ -0,0 +1,8 @@
+!!! info "[UserCategoryAffinityScore](/../../schemas/user_category_affinity_score)"
+
+
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |account_id
`ai` |string|True|The off chain account id|
+ |category_id
`ci` |string|True|target category|
+ |affinity_score
`as` |number|True|affinity score|
diff --git a/artifacts/apidocs/schemas/user_tracking_event.md b/artifacts/apidocs/schemas/user_tracking_event.md
new file mode 100644
index 0000000..886a5a3
--- /dev/null
+++ b/artifacts/apidocs/schemas/user_tracking_event.md
@@ -0,0 +1,21 @@
+!!! info "[UserTrackingEvent](/../../schemas/user_tracking_event)"
+ event of user
+
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |event_id
`ei` |string|True|uuid for event|
+ |tracking_version
`tv` |integer|True|version of tracking|
+ |event_time
`et` |string|True|timestamp of event|
+ |event_type
`et1` |string|True|event type|
+ |event_sub_type
`es` |string|True|event sub type|
+ |client_session_id
`cs` |string|True|unique identity of the session generated from client|
+ |device_os
`do` |string|True|OS of user's device|
+ |device_os_version
`do1` |string|True|OS version of user's device|
+ |sub_account_id
`sa` |string|True|sub account id|
+ |trading_address
`ta` |string|True|trading session key|
+ |screen_size
`ss` |string|True|screen size|
+ |event_data
`ed` |string|True|event data|
+ |user_id
`ui` |string|True|user id|
+ |account_id
`ai` |string|True|account id|
+ |auth_session_hash
`as` |string|True|auth session hash of the authenticated session on backend|
+ |country_code
`cc` |string|True|country code of user based on IP address|
diff --git a/artifacts/apidocs/schemas/user_vault_category_event_pay_load.md b/artifacts/apidocs/schemas/user_vault_category_event_pay_load.md
new file mode 100644
index 0000000..558eec9
--- /dev/null
+++ b/artifacts/apidocs/schemas/user_vault_category_event_pay_load.md
@@ -0,0 +1,7 @@
+!!! info "[UserVaultCategoryEventPayLoad](/../../schemas/user_vault_category_event_pay_load)"
+ |Name
`Lite`|Type|Required
`Default`| Description |
+ |-|-|-|-|
+ |category_id
`ci` |string|True|category ID of event|
+ |vault_id
`vi` |string|True|vault ID|
+ |action
`a` |string|True|action of event. search/filter/invest...|
+ |num_bumps
`nb` |string|True|number of bumps in this event. default 1|
diff --git a/artifacts/apidocs/schemas/ws_order_feed_data_v1.md b/artifacts/apidocs/schemas/ws_order_feed_data_v1.md
index 60a656b..de7f87a 100644
--- a/artifacts/apidocs/schemas/ws_order_feed_data_v1.md
+++ b/artifacts/apidocs/schemas/ws_order_feed_data_v1.md
@@ -14,7 +14,7 @@
|sub_account_id
`sa` |string|True|The subaccount initiating the order|
|is_market
`im` |boolean|False
`false`|If the order is a market order
Market Orders do not have a limit price, and are always executed according to the maker order price.
Market Orders must always be taker orders|
|time_in_force
`ti` |TimeInForce|True|Four supported types of orders: GTT, IOC, AON, FOK:
- PARTIAL EXECUTION = GTT / IOC - allows partial size execution on each leg
- FULL EXECUTION = AON / FOK - only allows full size execution on all legs
- TAKER ONLY = IOC / FOK - only allows taker orders
- MAKER OR TAKER = GTT / AON - allows maker or taker orders
Exchange only supports (GTT, IOC, FOK)
RFQ Maker only supports (GTT, AON), RFQ Taker only supports (FOK)|
- |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
+ |post_only
`po` |boolean|False
`false`|If True, Order must be a maker order. It has to fill the orderbook instead of match it.
If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
| Must Be Taker | FOK + False | IOC + False |
| Can Be Either | AON + False | GTC + False |
| Must Be Maker | AON + True | GTC + True |
|
|reduce_only
`ro` |boolean|False
`false`|If True, Order must reduce the position size, or be cancelled|
|legs
`l` |[OrderLeg]|True|The legs present in this order
The legs must be sorted by Asset.Instrument/Underlying/Quote/Expiration/StrikePrice|
|signature
`s` |Signature|True|The signature approving this order|
diff --git a/artifacts/apidocs/schemas/ws_positions_feed_data_v1.md b/artifacts/apidocs/schemas/ws_positions_feed_data_v1.md
index c4cbcda..44c4fc7 100644
--- a/artifacts/apidocs/schemas/ws_positions_feed_data_v1.md
+++ b/artifacts/apidocs/schemas/ws_positions_feed_data_v1.md
@@ -22,3 +22,4 @@
|roi
`r` |string|True|The ROI of the position, expressed as a percentage
`roi = (total_pnl / (entry_price * abs(size))) * 100^`|
|quote_index_price
`qi` |string|True|The index price of the quote currency. (reported in `USD`)|
|est_liquidation_price
`el` |string|True|The estimated liquidation price|
+ |leverage
`l` |string|True|The current leverage value for this position|
diff --git a/artifacts/apidocs/schemas/ws_positions_feed_selector_v1.md b/artifacts/apidocs/schemas/ws_positions_feed_selector_v1.md
index 1766ac9..3a4838f 100644
--- a/artifacts/apidocs/schemas/ws_positions_feed_selector_v1.md
+++ b/artifacts/apidocs/schemas/ws_positions_feed_selector_v1.md
@@ -1,5 +1,5 @@
!!! info "[WSPositionsFeedSelectorV1](/../../schemas/ws_positions_feed_selector_v1)"
- Subscribes to a feed of position updates. This happens when a trade is executed.
To subscribe to all positions, specify an empty `instrument` (eg. `2345123`).
Otherwise, specify the `instrument` to only receive positions for that instrument (eg. `2345123-BTC_USDT_Perp`).
+ Subscribes to a feed of position updates.
Updates get published when a trade is executed, and when leverage configurations are changed for instruments with ongoing positions.
To subscribe to all positions, specify an empty `instrument` (eg. `2345123`).
Otherwise, specify the `instrument` to only receive positions for that instrument (eg. `2345123-BTC_USDT_Perp`).
|Name
`Lite`|Type|Required
`Default`| Description |
|-|-|-|-|
diff --git a/artifacts/apidocs/trading_api.md b/artifacts/apidocs/trading_api.md
index 7aa74d7..5e804f0 100644
--- a/artifacts/apidocs/trading_api.md
+++ b/artifacts/apidocs/trading_api.md
@@ -6581,7 +6581,8 @@ LITE ENDPOINT: lite/v1/positions
"total_pnl": "100000.20",
"roi": "10.20",
"quote_index_price": "1.0000102",
- "est_liquidation_price": 60000.25
+ "est_liquidation_price": 60000.25,
+ "leverage": "10"
}]
}
```
@@ -6602,7 +6603,8 @@ LITE ENDPOINT: lite/v1/positions
"tp": "100000.20",
"r": "10.20",
"qi": "1.0000102",
- "el": 60000.25
+ "el": 60000.25,
+ "l": "10"
}]
}
```
@@ -10129,7 +10131,8 @@ LITE ENDPOINT: lite/v1/account_summary
"total_pnl": "100000.20",
"roi": "10.20",
"quote_index_price": "1.0000102",
- "est_liquidation_price": 60000.25
+ "est_liquidation_price": 60000.25,
+ "leverage": "10"
}],
"settle_index_price": "1.0000102"
}
@@ -10167,7 +10170,8 @@ LITE ENDPOINT: lite/v1/account_summary
"tp": "100000.20",
"r": "10.20",
"qi": "1.0000102",
- "el": 60000.25
+ "el": 60000.25,
+ "l": "10"
}],
"si": "1.0000102"
}
@@ -10509,7 +10513,8 @@ LITE ENDPOINT: lite/v1/account_history
"total_pnl": "100000.20",
"roi": "10.20",
"quote_index_price": "1.0000102",
- "est_liquidation_price": 60000.25
+ "est_liquidation_price": 60000.25,
+ "leverage": "10"
}],
"settle_index_price": "1.0000102"
}],
@@ -10548,7 +10553,8 @@ LITE ENDPOINT: lite/v1/account_history
"tp": "100000.20",
"r": "10.20",
"qi": "1.0000102",
- "el": 60000.25
+ "el": 60000.25,
+ "l": "10"
}],
"si": "1.0000102"
}],
diff --git a/artifacts/apidocs/trading_streams.md b/artifacts/apidocs/trading_streams.md
index 3ea5d86..c4bd5cd 100644
--- a/artifacts/apidocs/trading_streams.md
+++ b/artifacts/apidocs/trading_streams.md
@@ -3222,7 +3222,8 @@ STREAM: v1.position
"total_pnl": "100000.20",
"roi": "10.20",
"quote_index_price": "1.0000102",
- "est_liquidation_price": 60000.25
+ "est_liquidation_price": 60000.25,
+ "leverage": "10"
}
}
```
@@ -3246,7 +3247,8 @@ STREAM: v1.position
"tp": "100000.20",
"r": "10.20",
"qi": "1.0000102",
- "el": 60000.25
+ "el": 60000.25,
+ "l": "10"
}
}
```
diff --git a/artifacts/pysdk/grvt_raw_types.py b/artifacts/pysdk/grvt_raw_types.py
index a04c9a6..8d3196d 100644
--- a/artifacts/pysdk/grvt_raw_types.py
+++ b/artifacts/pysdk/grvt_raw_types.py
@@ -458,6 +458,8 @@ class Positions:
quote_index_price: str
# The estimated liquidation price
est_liquidation_price: str
+ # The current leverage value for this position
+ leverage: str
@dataclass
@@ -1662,6 +1664,8 @@ class ApiGetAllInstrumentsResponse:
class SnapFundingAccountSummary:
# Time at which the event was emitted in unix nanoseconds
event_time: str
+ # The start of the interval in unix nanoseconds
+ start_interval: str
# The main account ID of the account to which the summary belongs
main_account_id: str
# Total equity of the main account, denominated in USD
@@ -1847,7 +1851,7 @@ class Order:
is_market: bool | None = None
"""
If True, Order must be a maker order. It has to fill the orderbook instead of match it.
- If False, Order can be either a maker or taker order.
+ If False, Order can be either a maker or taker order. In this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.
| | Must Fill All | Can Fill Partial |
| - | - | - |
@@ -2882,7 +2886,8 @@ class WSOrderStateFeedDataV1:
@dataclass
class WSPositionsFeedSelectorV1:
"""
- Subscribes to a feed of position updates. This happens when a trade is executed.
+ Subscribes to a feed of position updates.
+ Updates get published when a trade is executed, and when leverage configurations are changed for instruments with ongoing positions.
To subscribe to all positions, specify an empty `instrument` (eg. `2345123`).
Otherwise, specify the `instrument` to only receive positions for that instrument (eg. `2345123-BTC_USDT_Perp`).
"""
@@ -3211,6 +3216,108 @@ class ApiGetMarginTiersResponse:
results: list[AssetMarginTierResponse]
+@dataclass
+class SessionInformation:
+ # country code of user based on IP address
+ country_code: str
+ # unique identity of the session generated from client
+ client_session_id: str
+ # screen size
+ device_screen_size: str
+ # OS of user's device
+ device_os: str
+ # OS version of user's device
+ device_os_version: str
+
+
+@dataclass
+class UserVaultCategoryEventPayLoad:
+ # category ID of event
+ category_id: str
+ # vault ID
+ vault_id: str
+ # action of event. search/filter/invest...
+ action: str
+ # number of bumps in this event. default 1
+ num_bumps: str
+
+
+@dataclass
+class ApiUserCategoryAffinityScoreRequest:
+ # The off chain account id
+ account_id: str
+ # The start time of query. Can leave empty to query from the beginning
+ start_time: str
+ # The end time of query. Can leave empty to query until now
+ end_time: str
+
+
+@dataclass
+class UserCategoryAffinityScore:
+ # The off chain account id
+ account_id: str
+ # target category
+ category_id: str
+ # affinity score
+ affinity_score: float
+
+
+@dataclass
+class ApiUserCategoryAffinityScoreResponse:
+ # The list of categoryAffinities score
+ result: list[UserCategoryAffinityScore]
+
+
+@dataclass
+class ApiCategoryAffinityScoreRequest:
+ # The start time of query. Can leave empty to query from the beginning
+ start_time: str
+ # The end time of query. Can leave empty to query until now
+ end_time: str
+
+
+@dataclass
+class ApiCategoryAffinityScoreResponse:
+ # The list of categoryAffinities score
+ result: list[UserCategoryAffinityScore]
+
+
+@dataclass
+class UserTrackingEvent:
+ # uuid for event
+ event_id: str
+ # version of tracking
+ tracking_version: int
+ # timestamp of event
+ event_time: str
+ # event type
+ event_type: str
+ # event sub type
+ event_sub_type: str
+ # unique identity of the session generated from client
+ client_session_id: str
+ # OS of user's device
+ device_os: str
+ # OS version of user's device
+ device_os_version: str
+ # sub account id
+ sub_account_id: str
+ # trading session key
+ trading_address: str
+ # screen size
+ screen_size: str
+ # event data
+ event_data: str
+ # user id
+ user_id: str
+ # account id
+ account_id: str
+ # auth session hash of the authenticated session on backend
+ auth_session_hash: str
+ # country code of user based on IP address
+ country_code: str
+
+
@dataclass
class ApiWithdrawalRequest:
"""
diff --git a/src/codegen/apispec.json b/src/codegen/apispec.json
index fd1de76..1cce840 100644
--- a/src/codegen/apispec.json
+++ b/src/codegen/apispec.json
@@ -3334,6 +3334,19 @@
"comment": [
"The estimated liquidation price"
]
+ },
+ {
+ "name": "leverage",
+ "lite_name": "l",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 14,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'10'",
+ "comment": [
+ "The current leverage value for this position"
+ ]
}
],
"comment": []
@@ -8159,12 +8172,25 @@
"Time at which the event was emitted in unix nanoseconds"
]
},
+ {
+ "name": "start_interval",
+ "lite_name": "si",
+ "semantic_type": "timestamp",
+ "json_type": "string",
+ "index": 1,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'1697788800000000000'",
+ "comment": [
+ "The start of the interval in unix nanoseconds"
+ ]
+ },
{
"name": "main_account_id",
"lite_name": "ma",
"semantic_type": "address",
"json_type": "string",
- "index": 1,
+ "index": 2,
"array_depth": 0,
"optional": false,
"example": "'0xc73c0c2538fd9b833d20933ccc88fdaa74fcb0d0'",
@@ -8177,7 +8203,7 @@
"lite_name": "te",
"semantic_type": "string",
"json_type": "string",
- "index": 2,
+ "index": 3,
"array_depth": 0,
"optional": false,
"example": "'3945034.23'",
@@ -8190,7 +8216,7 @@
"lite_name": "sb",
"semantic_type": "SpotBalance",
"json_type": "SpotBalance",
- "index": 3,
+ "index": 4,
"array_depth": 1,
"optional": false,
"comment": [
@@ -8737,7 +8763,7 @@
"example": "false",
"comment": [
"If True, Order must be a maker order. It has to fill the orderbook instead of match it.",
- "If False, Order can be either a maker or taker order.",
+ "If False, Order can be either a maker or taker order. \u003cb\u003eIn this case, order creation is currently subject to a speedbump of 25ms to ensure orders are matched against updated orderbook quotes.\u003c/b\u003e",
"",
"| | Must Fill All | Can Fill Partial |",
"| - | - | - |",
@@ -13204,7 +13230,8 @@
}
],
"comment": [
- "Subscribes to a feed of position updates. This happens when a trade is executed.",
+ "Subscribes to a feed of position updates.",
+ "Updates get published when a trade is executed, and when leverage configurations are changed for instruments with ongoing positions.",
"To subscribe to all positions, specify an empty `instrument` (eg. `2345123`).",
"Otherwise, specify the `instrument` to only receive positions for that instrument (eg. `2345123-BTC_USDT_Perp`)."
]
@@ -14393,6 +14420,493 @@
],
"comment": []
},
+ {
+ "name": "SessionInformation",
+ "is_root": true,
+ "fields": [
+ {
+ "name": "country_code",
+ "lite_name": "cc",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 0,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "country code of user based on IP address"
+ ]
+ },
+ {
+ "name": "client_session_id",
+ "lite_name": "cs",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 1,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "unique identity of the session generated from client"
+ ]
+ },
+ {
+ "name": "device_screen_size",
+ "lite_name": "ds",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 2,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "screen size"
+ ]
+ },
+ {
+ "name": "device_os",
+ "lite_name": "do",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 3,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "OS of user's device"
+ ]
+ },
+ {
+ "name": "device_os_version",
+ "lite_name": "do1",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 4,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "OS version of user's device"
+ ]
+ }
+ ],
+ "comment": []
+ },
+ {
+ "name": "UserVaultCategoryEventPayLoad",
+ "is_root": true,
+ "fields": [
+ {
+ "name": "category_id",
+ "lite_name": "ci",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 0,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "category ID of event"
+ ]
+ },
+ {
+ "name": "vault_id",
+ "lite_name": "vi",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 1,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "vault ID"
+ ]
+ },
+ {
+ "name": "action",
+ "lite_name": "a",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 2,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "action of event. search/filter/invest..."
+ ]
+ },
+ {
+ "name": "num_bumps",
+ "lite_name": "nb",
+ "semantic_type": "int64",
+ "json_type": "string",
+ "index": 3,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "number of bumps in this event. default 1"
+ ]
+ }
+ ],
+ "comment": []
+ },
+ {
+ "name": "ApiUserCategoryAffinityScoreRequest",
+ "is_root": true,
+ "fields": [
+ {
+ "name": "account_id",
+ "lite_name": "ai",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 0,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'ACC_1234567890'",
+ "comment": [
+ "The off chain account id"
+ ]
+ },
+ {
+ "name": "start_time",
+ "lite_name": "st",
+ "semantic_type": "timestamp",
+ "json_type": "string",
+ "index": 1,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'1697788800000000000'",
+ "comment": [
+ "The start time of query. Can leave empty to query from the beginning"
+ ]
+ },
+ {
+ "name": "end_time",
+ "lite_name": "et",
+ "semantic_type": "timestamp",
+ "json_type": "string",
+ "index": 2,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'1697788800000000000'",
+ "comment": [
+ "The end time of query. Can leave empty to query until now"
+ ]
+ }
+ ],
+ "comment": []
+ },
+ {
+ "name": "UserCategoryAffinityScore",
+ "is_root": false,
+ "fields": [
+ {
+ "name": "account_id",
+ "lite_name": "ai",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 0,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'ACC_1234567890'",
+ "comment": [
+ "The off chain account id"
+ ]
+ },
+ {
+ "name": "category_id",
+ "lite_name": "ci",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 1,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "target category"
+ ]
+ },
+ {
+ "name": "affinity_score",
+ "lite_name": "as",
+ "semantic_type": "float64",
+ "json_type": "number",
+ "index": 2,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "affinity score"
+ ]
+ }
+ ],
+ "comment": [
+ ""
+ ]
+ },
+ {
+ "name": "ApiUserCategoryAffinityScoreResponse",
+ "is_root": true,
+ "fields": [
+ {
+ "name": "result",
+ "lite_name": "r",
+ "semantic_type": "UserCategoryAffinityScore",
+ "json_type": "UserCategoryAffinityScore",
+ "index": 0,
+ "array_depth": 1,
+ "optional": false,
+ "comment": [
+ "The list of categoryAffinities score"
+ ]
+ }
+ ],
+ "comment": []
+ },
+ {
+ "name": "ApiCategoryAffinityScoreRequest",
+ "is_root": true,
+ "fields": [
+ {
+ "name": "start_time",
+ "lite_name": "st",
+ "semantic_type": "timestamp",
+ "json_type": "string",
+ "index": 0,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'1697788800000000000'",
+ "comment": [
+ "The start time of query. Can leave empty to query from the beginning"
+ ]
+ },
+ {
+ "name": "end_time",
+ "lite_name": "et",
+ "semantic_type": "timestamp",
+ "json_type": "string",
+ "index": 1,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'1697788800000000000'",
+ "comment": [
+ "The end time of query. Can leave empty to query until now"
+ ]
+ }
+ ],
+ "comment": []
+ },
+ {
+ "name": "ApiCategoryAffinityScoreResponse",
+ "is_root": true,
+ "fields": [
+ {
+ "name": "result",
+ "lite_name": "r",
+ "semantic_type": "UserCategoryAffinityScore",
+ "json_type": "UserCategoryAffinityScore",
+ "index": 0,
+ "array_depth": 1,
+ "optional": false,
+ "comment": [
+ "The list of categoryAffinities score"
+ ]
+ }
+ ],
+ "comment": []
+ },
+ {
+ "name": "UserTrackingEvent",
+ "is_root": true,
+ "fields": [
+ {
+ "name": "event_id",
+ "lite_name": "ei",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 0,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "uuid for event"
+ ]
+ },
+ {
+ "name": "tracking_version",
+ "lite_name": "tv",
+ "semantic_type": "int32",
+ "json_type": "integer",
+ "index": 1,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "version of tracking"
+ ]
+ },
+ {
+ "name": "event_time",
+ "lite_name": "et",
+ "semantic_type": "timestamp",
+ "json_type": "string",
+ "index": 2,
+ "array_depth": 0,
+ "optional": false,
+ "example": "'1697788800000000000'",
+ "comment": [
+ "timestamp of event"
+ ]
+ },
+ {
+ "name": "event_type",
+ "lite_name": "et1",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 3,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "event type"
+ ]
+ },
+ {
+ "name": "event_sub_type",
+ "lite_name": "es",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 4,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "event sub type"
+ ]
+ },
+ {
+ "name": "client_session_id",
+ "lite_name": "cs",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 5,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "unique identity of the session generated from client"
+ ]
+ },
+ {
+ "name": "device_os",
+ "lite_name": "do",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 6,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "OS of user's device"
+ ]
+ },
+ {
+ "name": "device_os_version",
+ "lite_name": "do1",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 7,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "OS version of user's device"
+ ]
+ },
+ {
+ "name": "sub_account_id",
+ "lite_name": "sa",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 8,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "sub account id"
+ ]
+ },
+ {
+ "name": "trading_address",
+ "lite_name": "ta",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 9,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "trading session key"
+ ]
+ },
+ {
+ "name": "screen_size",
+ "lite_name": "ss",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 10,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "screen size"
+ ]
+ },
+ {
+ "name": "event_data",
+ "lite_name": "ed",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 11,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "event data"
+ ]
+ },
+ {
+ "name": "user_id",
+ "lite_name": "ui",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 12,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "user id"
+ ]
+ },
+ {
+ "name": "account_id",
+ "lite_name": "ai",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 13,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "account id"
+ ]
+ },
+ {
+ "name": "auth_session_hash",
+ "lite_name": "as",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 14,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "auth session hash of the authenticated session on backend"
+ ]
+ },
+ {
+ "name": "country_code",
+ "lite_name": "cc",
+ "semantic_type": "string",
+ "json_type": "string",
+ "index": 15,
+ "array_depth": 0,
+ "optional": false,
+ "comment": [
+ "country code of user based on IP address"
+ ]
+ }
+ ],
+ "comment": [
+ "event of user"
+ ]
+ },
{
"name": "ApiWithdrawalRequest",
"is_root": true,