---
title: "List positions"
method: GET
path: "/accounts/{account_id}/positions"
tags: ["Positions"]
---

# List positions

`GET /accounts/{account_id}/positions`

## Request

- Base URL: `https://sandbox.upvest.co`
- URL: `https://sandbox.upvest.co/accounts/{account_id}/positions`
- Auth: OAuth 2 (client credentials, token URL `https://sandbox.upvest.co/auth/token`, scopes: `positions:read`)

Returns the list of positions held by the account.

Use the `offset` and `limit` query parameters to page through results; `meta.total_count` gives the total number of matching positions.

See the Positions guide ([TOL](https://docs.upvest.co/products/tol/guides/positions/retrieving_positions) / [BYOL](https://docs.upvest.co/products/byol/guides/positions/retrieving_positions)) for how to interpret the `quantity`, `locked_for_trading`, `pending_settlement`, `available_for_trading`, `available_for_instruction`, and `settled_quantity` fields.

## Query parameters

- `offset` integer
- `limit` integer

## Response `200`

Response

- object: Paginated list of positions held by the account. Contains a `data` array of position objects and a `meta` object with offset/limit pagination metadata.
  - `data` object[], required: The list of position objects for the current page of results.
    - `account_id` string, uuid, required: Universally Unique Identifier (UUID) of the account.
    - `instrument` object, required: The instrument this position is held in, identified by its `uuid` and, if assigned, its `isin`.
      - `uuid` string, uuid, required: Instrument unique identifier.
      - `isin` string: International securities identification number defined by [ISO 6166](https://en.wikipedia.org/wiki/International_Securities_Identification_Number).
    - `quantity` string, required
    - `locked_for_trading` string, required: A positive decimal amount, as a string.
    - `pending_settlement` string, required: A positive decimal amount, as a string.
    - `available_for_trading` string, required
    - `available_for_instruction` string, required
    - `settled_quantity` string, required: A positive decimal amount, as a string.
  - `meta` object, required: Offset/limit pagination metadata for a list response. Contains the `offset` and `limit` applied to the request, the `count` of resources returned in this page, and the `total_count` of matching resources.
    - `offset` integer, required: Amount of resource to offset in the response.
    - `limit` integer, required: Total limit of the response.
    - `count` integer, required: Count of the resources returned in the response.
    - `total_count` integer, required: Total count of all the resources.
    - `sort` string: The field that the list is sorted by.
    - `order` 'ASC' | 'DESC': The ordering applied to the list. * ASC — Ascending order. * DESC — Descending order.

## Other responses

- `400`: Bad Request. The incoming request had a malformed parameter/object.
- `401`: Unauthorized. The caller has not been authenticated.
- `403`: Forbidden. The caller has been authenticated but is not allowed to take the requested action.
- `404`: Not Found. The requested resource could not be found.
- `406`: Not Acceptable. The resource does not have a current representation that would be acceptable to the user agent. "Accept" header defined unsupported value.
- `429`: Too Many Requests. The caller has exceeded their quota for the time period and has been throttled.
- `500`: Internal Server Error. The service encountered an unexpected error.
- `503`: Service Unavailable. The service handling for this request cannot be reached at this time.
- `504`: Gateway Timeout. The service gateway has reached its internal timeout.

---

[API](https://skmtc.dev/upvest/apis/upvest-investment-api.md) · [All operations](https://skmtc.dev/upvest/apis/upvest-investment-api/llms.txt) · [OpenAPI document](https://skmtc.dev/upvest/apis/upvest-investment-api/revisions/ca69534b631d?raw)
