# SUBSCRIBE Positions

**REQUEST**

```
<tr>
  <td>
    * \*data\*\* <span class="ws-data-type ws-small-font">array of strings</span>  <span class="ws-required-tag ws-small-font">required</span>\
      Channel name: `positions`
  </td>
</tr>
```

<table data-header-hidden><thead><tr><th></th></tr></thead><tbody><tr><td><pre><code>  &#x3C;/th>
&#x3C;/tr>
</code></pre></td></tr><tr><td>* \*op\*\* string required Operation code allowed values: `subscribe` `unsubscribe`</td></tr></tbody></table>

<details>

<summary>Example</summary>

```json
{
	"op":"subscribe", 
	"data": ["positions"]
}
```

</details>

<br>

**RESPONSE**

```
<tr>
  <td>
    <span class="ws-small-font">data.</span>**timestamp** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>\
    Update timestamp in UNIX timestamp in nanoseconds. Eg. `1680249600000000000`
  </td>
</tr>

<tr>
  <td>
    <span class="ws-small-font">data.</span>**positions** <span class="ws-data-type ws-small-font">array of objects</span> <span class="ws-required-tag ws-small-font">required</span>\
    Positions in `Position` object format.  

    <div style={{ height: "10px" }}></div><table><tr><td class="child-header">**POSITION OBJECT**</td></tr><tr><td>**instrument_id** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Instrument ID number. Eg. `12` </td></tr><tr><td>**instrument_name** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Instrument name. Eg. `ETH-24DEC22-1250-C`</td></tr><tr><td>**instrument_type** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Type of instrument. Allowed values: `OPTION` `PERPETUAL`</td></tr><tr><td>**amount** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Amount of contracts. Negative amount means the position is net short. Eg. `12.23`</td></tr><tr><td>**mark_price** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Mark price. Eg. `12.23`</td></tr><tr><td>**option** <span class="ws-data-type ws-small-font">object</span>  
    <div style={{ height: "10px" }}></div><table><tr><td class="child-header">**OPTION OBJECT**</td></tr><tr><td>**strike** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Option strike price. Eg. `2500` </td></tr><tr><td>**option_type** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Type of option contract. Allowed values: `call` `put` </td></tr><tr><td>**expiry** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Option expiry in UNIX timestamp in nanoseconds. Eg. `1680249600000000000` </td></tr><tr><td>**iv** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Implied volatility. Eg. `0.23`</td></tr><tr><td>**delta** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Option's Delta. Eg. `0.23`</td></tr><tr><td>**theta** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Option's Theta. Eg. `0.23`</td></tr><tr><td>**rho** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Option's Rho. Eg. `0.23`</td></tr><tr><td>**vega** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Option's Vega. Eg. `0.23`</td></tr></table></td></tr><tr><td>**asset** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Name of underlying asset. Eg. `ETH`</td></tr><tr><td>**side** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Trade side. Allowed values: `buy` `sell`</td></tr><tr><td>**avg_entry_price** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Average entry price. Eg. `12.23`</td></tr><tr><td>**unrealized_pnl** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Unrealized PNL. Eg. `12.23`</td></tr><tr><td>**maintenance_margin** <span class="ws-data-type ws-small-font">string</span> <span class="ws-required-tag ws-small-font">required</span>  
    Maintenance margin. Eg. `12.23`</td></tr></table>
  </td>
</tr>
```

<table data-header-hidden><thead><tr><th></th></tr></thead><tbody><tr><td><pre><code>  &#x3C;/th>
&#x3C;/tr>
</code></pre></td></tr><tr><td>* \*channel\*\* string required Channel name: `positions`</td></tr></tbody></table>

<details>

<summary>Example</summary>

```json
{
	"channel": "positions",
	"data": {
		"timestamp": "1673671845685460000",
		"positions": [
			{
				"instrument_id": "12",
				"instrument_name": "ETH-30JUN23-1600-C",
				"instrument_type": "OPTION",
				"amount": "12.23",
				"mark_price": "12.23",
				"option": {
					"iv": "0.23",
					"strike": "2500",
					"option_type": "put",
					"expiry": "1680249600000000000",
					"delta": "0.23",
					"theta": "0.23",
					"vega": "0.23",
					"rho": "0.23"
				},
				"asset": "ETH",
				"side": "buy",
				"avg_entry_price": "12.23",
				"unrealized_pnl": "12.23",
				"maintenance_margin": "12.23"
			}
		]
	}
}

```

</details>

<br>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.aevo.xyz/api-reference/websocket-api/private-operations/subcribe-positions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
