Properties
| Name | Type | Description |
|---|---|---|
| marginType | string | Margin mode of the position (e.g. CROSS or ISOLATED). |
| entryPrice | number | Average entry price of the position. |
| markPrice | number | Latest mark price used to value the position. |
| symbol | string | Market symbol of the position (e.g. BTC-PERP). |
| side | string | Side of the position (BUY for long, SELL for short). |
| notionalValue | number | Notional value of the position, in the settlement currency. |
| settleWithAsset | string | Asset used to settle PnL and fees for this position. |
| unrealizedProfitLoss | number | Unrealized profit or loss at the latest mark price. |
| totalMaintenanceMargin | number | Total maintenance margin currently required for the position. |
| size | integer | Position size, in contracts. |
| liquidationPrice | number | Estimated liquidation price based on the current margin and mark price. |
| isolatedLeverage | number | Isolated leverage configured on the position; only applicable in isolated margin mode. |
| timestamp | integer | Server timestamp of the position snapshot, in milliseconds since epoch. |
| takeProfitOrder | object | Take-profit trigger currently attached to the position, if any. |
| stopLossOrder | object | Stop-loss trigger currently attached to the position, if any. |
| positionMode | string | Position mode: ONE_WAY (net position) or HEDGE (independent long and short positions). |
| positionDirection | string | Position direction in hedge mode (LONG or SHORT). |
| positionId | string | Unique identifier of the position. |
| walletName | string | Name of the wallet holding the position. |
| currentLeverage | number | Effective leverage currently applied to the position. |
| minimumRequiredMargin | number | Minimum initial margin required to hold the position at its current size. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/btse/main/json-schema/btse-position-resp-schema.json",
"title": "PositionResp",
"x-generated": "2026-10-13",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/btse-futures-openapi.yml#/components/schemas/PositionResp",
"type": "object",
"properties": {
"marginType": {
"type": "string",
"description": "Margin mode of the position (e.g. CROSS or ISOLATED).",
"enum": [
"CROSS",
"SPOT",
"ISOLATED",
"LEAD",
"COPY",
"ALL"
]
},
"entryPrice": {
"type": "number",
"format": "double",
"description": "Average entry price of the position."
},
"markPrice": {
"type": "number",
"format": "double",
"description": "Latest mark price used to value the position."
},
"symbol": {
"type": "string",
"description": "Market symbol of the position (e.g. BTC-PERP)."
},
"side": {
"type": "string",
"description": "Side of the position (BUY for long, SELL for short).",
"enum": [
"BUY",
"SELL"
]
},
"notionalValue": {
"type": "number",
"format": "double",
"description": "Notional value of the position, in the settlement currency."
},
"settleWithAsset": {
"type": "string",
"description": "Asset used to settle PnL and fees for this position."
},
"unrealizedProfitLoss": {
"type": "number",
"format": "double",
"description": "Unrealized profit or loss at the latest mark price."
},
"totalMaintenanceMargin": {
"type": "number",
"format": "double",
"description": "Total maintenance margin currently required for the position."
},
"size": {
"type": "integer",
"format": "int32",
"description": "Position size, in contracts."
},
"liquidationPrice": {
"type": "number",
"format": "double",
"description": "Estimated liquidation price based on the current margin and mark price."
},
"isolatedLeverage": {
"type": "number",
"format": "double",
"description": "Isolated leverage configured on the position; only applicable in isolated margin mode."
},
"timestamp": {
"type": "integer",
"format": "int64",
"description": "Server timestamp of the position snapshot, in milliseconds since epoch."
},
"takeProfitOrder": {
"$ref": "#/$defs/TPSLObject",
"description": "Take-profit trigger currently attached to the position, if any."
},
"stopLossOrder": {
"$ref": "#/$defs/TPSLObject",
"description": "Stop-loss trigger currently attached to the position, if any."
},
"positionMode": {
"type": "string",
"description": "Position mode: ONE_WAY (net position) or HEDGE (independent long and short positions).",
"enum": [
"ONE_WAY",
"HEDGE",
"ISOLATED"
]
},
"positionDirection": {
"type": "string",
"description": "Position direction in hedge mode (LONG or SHORT).",
"enum": [
"LONG",
"SHORT"
]
},
"positionId": {
"type": "string",
"description": "Unique identifier of the position."
},
"walletName": {
"type": "string",
"description": "Name of the wallet holding the position."
},
"currentLeverage": {
"type": "number",
"format": "double",
"description": "Effective leverage currently applied to the position."
},
"minimumRequiredMargin": {
"type": "number",
"format": "double",
"description": "Minimum initial margin required to hold the position at its current size."
}
},
"$defs": {
"TPSLObject": {
"type": "object",
"properties": {
"orderId": {
"type": "string"
},
"side": {
"type": "string",
"enum": [
"BUY",
"SELL"
]
},
"triggerPrice": {
"type": "number",
"format": "double"
},
"triggerUseLastPrice": {
"type": "boolean"
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/btse-position-resp"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.