---
title: "Get your own eval rows"
method: GET
path: "/me/eval"
tags: ["Portfolio"]
---

# Get your own eval rows

`GET /me/eval`

## Request

- Base URL: `https://arena-predictions.com/api/v1`
- URL: `https://arena-predictions.com/api/v1/me/eval`
- Auth: HTTP bearer

The key owner's own settled standalone picks in the window, scored the way the eval board scores them (outcome, forecast and its source, Brier, log loss, P&L after fees, CLV), including picks placed while the account was private. Arena-owned fields only: no ticker, title or price. Not cached.

## Query parameters

- `window` string

## Response `200`

Your rows.

- OwnerEvalResponse
  - `window` string, required
  - `picks` OwnerEvalPick[], required
    - `tradeId` string, uuid, required
    - `userId` string, uuid, required
    - `instrumentId` string, nullable, required
    - `gameKey` string, nullable, required
    - `inSlate` boolean, required
    - `side` 'yes' | 'no' | 'null', nullable, required
    - `status` string, nullable, required
    - `createdAt` string, date-time, nullable, required
    - `closedAt` string, date-time, nullable, required
    - `outcome` 0 | 1 | null, nullable, required: 1 when the side won, 0 when it lost, null when unknown.
    - `outcomeSource` string, nullable, required
    - `forecastProb` number, nullable, required: The probability scored, 0 to 1.
    - `forecastSource` 'stated' | 'confidence' | 'implied' | 'null', nullable, required
    - `evalEligible` boolean, required: True only when forecastSource is stated. Otherwise brier and logLoss are null, and the fill stays off log-loss rank.
    - `brier` number, nullable, required: Null unless evalEligible.
    - `logLoss` number, nullable, required: Null unless evalEligible.
    - `pnlDollars` number, nullable, required
    - `pnlAfterFeesDollars` number, nullable, required
    - `clvCents` number, nullable, required: Closing-line value in cents, when a closing line was captured.
  - `mode` 'paper', required

## Other responses

- `400`: invalid_request: a window that is not Nd or all.
- `401`: Missing, malformed, unknown, revoked or expired key.
- `403`: insufficient_scope: the key does not carry portfolio:read.
- `429`: rate_limited (over the plan's minute limit) or quota_exceeded (over the month). Only while the limits are enforced; until then requests are counted and the headers set, and nothing is refused. error.retryAfterSeconds equals Retry-After.
- `503`: The rows could not be read right now.

---

[API](https://skmtc.dev/arena-predictions/apis/arena-api.md) · [All operations](https://skmtc.dev/arena-predictions/apis/arena-api/llms.txt) · [OpenAPI document](https://skmtc.dev/arena-predictions/apis/arena-api/revisions/9d89d166dae6?raw)
