---
title: "Get user position in a specific vault"
method: GET
path: "/v1/users/{wallet_address}/positions/{vault_id}"
tags: ["Users"]
---

# Get user position in a specific vault

`GET /v1/users/{wallet_address}/positions/{vault_id}`

Returns the current position snapshot for a wallet in a single vault. Historical points live on `/positions/{vault_id}/timeseries`.

## Path parameters

- `wallet_address` string, required
- `vault_id` string, required

## Response `200`

Single vault position

- UserPositionLatestResponse
  - `data` UserPosition, required
    - `metrics` UserPositionMetrics, required
      - `cost_basis` AmountPair, required — Decimal-string metric paired across native (numeraire-token) and USD. `native` is always present; `usd` is JSON null when pricing is unavailable.
        - `native` string, required
        - `usd` string, nullable
      - `pending_deposit_assets` string, required — Assets escrowed at the Aera Provisioner pending share mint.
      - `pending_redeem_shares` string, required — Shares escrowed at the Aera Provisioner pending asset return.
      - `realized_pnl` AmountPair, required — Decimal-string metric paired across native (numeraire-token) and USD. `native` is always present; `usd` is JSON null when pricing is unavailable.
        - `native` string, required
        - `usd` string, nullable
      - `roi_pct` RatioPair, required — JSON-number ratio paired across native (in-kind) and USD denominations.
        - `native` number, double, required
        - `usd` number, double, nullable
      - `shares_owned` string, required — Shares currently held by the wallet.
      - `total_pnl` AmountPair, required — Decimal-string metric paired across native (numeraire-token) and USD. `native` is always present; `usd` is JSON null when pricing is unavailable.
        - `native` string, required
        - `usd` string, nullable
      - `unrealized_pnl` AmountPair, required — Decimal-string metric paired across native (numeraire-token) and USD. `native` is always present; `usd` is JSON null when pricing is unavailable.
        - `native` string, required
        - `usd` string, nullable
      - `value` AmountPair, required — Decimal-string metric paired across native (numeraire-token) and USD. `native` is always present; `usd` is JSON null when pricing is unavailable.
        - `native` string, required
        - `usd` string, nullable
    - `vault_id` string, required
    - `wallet_address` string, required
  - `meta` BasicMeta, required
    - `refreshed_at` string, date-time, required
    - `request_id` string, required

## Other responses

- `401` — Missing or invalid auth
- `404` — Position not found

---

[API](https://skmtc.net/gauntlet/apis/gauntlet-api.md) · [All operations](https://skmtc.net/gauntlet/apis/gauntlet-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/gauntlet/gauntlet-api/revisions/13d81b1b355d/schema)
