> ## Documentation Index
> Fetch the complete documentation index at: https://readme.amana-dev.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List open positions

> List all open positions with their current profit and loss.

## Response

`200` Success.

<ResponseField name="positions" type="object[]">
  <Expandable title="properties">
    <ResponseField name="id" type="string" />

    <ResponseField name="symbol" type="string" />

    <ResponseField name="logo" type="string" />

    <ResponseField name="delayed" type="boolean" default="false" />

    <ResponseField name="sharia" type="boolean" default="false" />

    <ResponseField name="digits" type="number" />

    <ResponseField name="friendlyName" type="string" />

    <ResponseField name="units" type="number" />

    <ResponseField name="priceOpen" type="number" />

    <ResponseField name="priceCurrent" type="number" />

    <ResponseField name="timeCreate" type="number" />

    <ResponseField name="timeUpdate" type="number" />

    <ResponseField name="leverage" type="number" />

    <ResponseField name="rateMargin" type="number" default="1" />

    <ResponseField name="rateProfit" type="number" default="1" />

    <ResponseField name="isBuy" type="boolean" />

    <ResponseField name="sl" type="number" default="0" />

    <ResponseField name="tp" type="number" default="0" />

    <ResponseField name="storage" type="number" default="0" />

    <ResponseField name="comment" type="string" />

    <ResponseField name="profit" type="number" default="0" />

    <ResponseField name="invested" type="number" default="0" />
  </Expandable>
</ResponseField>

## Possible Errors

| Error | Possible cause | What to do |
| - | - | - |
| 401 | Token missing or expired | Log in again or use the refresh token. |
| 403 | IP not whitelisted, or account restricted | Confirm your IP is whitelisted; otherwise contact Amana. |
| 429 / 5xx | Rate limit, or temporary issue on our side | Retry with backoff; contact support if it persists. |

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://gateway.amana.io/trading/positions' \
    --header 'Authorization: Bearer <token>'
  ```

  ```python Python theme={null}
  import requests

  url = "https://gateway.amana.io/trading/positions"
  headers = {"Authorization": "Bearer <token>"}

  response = requests.request("GET", url, headers=headers)
  print(response.json())
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch('https://gateway.amana.io/trading/positions', {
    method: 'GET',
    headers: {"Authorization": "Bearer <token>"},
  });
  console.log(await response.json());
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "positions": [
      {
        "id": "<string>",
        "symbol": "<string>",
        "logo": "<string>",
        "delayed": false,
        "sharia": false,
        "digits": 123.45,
        "friendlyName": "<string>",
        "units": 123.45,
        "priceOpen": 123.45,
        "priceCurrent": 123.45,
        "timeCreate": 123.45,
        "timeUpdate": 123.45,
        "leverage": 123.45,
        "rateMargin": 1,
        "rateProfit": 1,
        "isBuy": true,
        "sl": 0,
        "tp": 0,
        "storage": 0,
        "comment": "<string>",
        "profit": 0,
        "invested": 0
      }
    ]
  }
  ```

  ```json 401 theme={null}
  {
    "error": "<string>",
    "message": "<string>",
    "details": {}
  }
  ```

  ```json 403 theme={null}
  {
    "error": "<string>",
    "message": "<string>"
  }
  ```

  ```json 429 theme={null}
  {
    "error": "<string>",
    "message": "<string>"
  }
  ```

  ```json 500 theme={null}
  {
    "error": "<string>",
    "message": "<string>"
  }
  ```
</ResponseExample>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.