---
title: "Wallet Positions"
method: GET
path: "/api/v2/wallet/{address}/positions"
---

# Wallet Positions

`GET /api/v2/wallet/{address}/positions`

## Request

- Base URL: `https://orcalayer.com` (the document declares no server; this is the origin it was published from)
- URL: `https://orcalayer.com/api/v2/wallet/{address}/positions`
- Auth: none declared

DB-first active positions with approximate values. Data API refines in background.

2026-06-08 Phase B (#30 fix): LATERAL per-address index scan with early termination
via idx_wmp_wallet_value caps response at top-`limit` positions by current_value.
Prevents 30K+ position payloads for market-maker wallets that produced 8-15s
tail-latency 504 timeouts. Hard cap 500 per call (Polymarket-parity); deep
pagination via ?offset (consider keyset migration if offset iteration shows up
in heavy-wallet logs).

## Path parameters

- `address` string, required

## Query parameters

- `proxy` string
- `limit` integer, nullable: Max positions to return; omit for the full list (cap 500 when set)
- `offset` integer: Pagination offset

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

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