> ## Documentation Index
> Fetch the complete documentation index at: https://docs.agg.market/llms.txt
> Use this file to discover all available pages before exploring further.

# Get user positions

> Returns open positions grouped by matched market with per-venue breakdown and current pricing.



## OpenAPI

````yaml /openapi/openapi.json get /execution/positions
openapi: 3.0.2
info:
  title: AGG API
  version: 1.0.0
  description: >-
    Prediction market aggregator REST API — authentication, users, venue events,
    venue markets, orderbooks, charts, and execution workflows.
servers:
  - url: https://api.agg.market
    description: Production
  - url: https://api.staging.agg.market
    description: Staging
security: []
paths:
  /execution/positions:
    get:
      tags:
        - Users
      summary: Get user positions
      description: >-
        Returns open positions grouped by matched market with per-venue
        breakdown and current pricing.
      operationId: getPositions
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                  - nextCursor
                  - hasMore
                properties:
                  data:
                    type: array
                    items:
                      type: object
                      required:
                        - targetMarketId
                        - redeemStatus
                        - status
                        - resolutionDate
                        - venueMarket
                      properties:
                        targetMarketId:
                          type: string
                        eventId:
                          type: string
                        redeemStatus:
                          type: string
                          enum:
                            - eligible
                            - pending
                            - redeemed
                            - ineligible
                        status:
                          type: string
                          enum:
                            - active
                            - closed
                        resolutionDate:
                          type: string
                          nullable: true
                        venueMarket:
                          type: object
                          required:
                            - venueEventId
                            - question
                            - image
                            - status
                            - venueMarketOutcomes
                          properties:
                            venueEventId:
                              type: string
                            question:
                              type: string
                            image:
                              type: string
                              nullable: true
                            status:
                              type: string
                              enum:
                                - open
                                - closed
                                - resolved
                                - unopened
                                - paused
                            venueMarketOutcomes:
                              type: array
                              items:
                                type: object
                                required:
                                  - label
                                  - title
                                  - venueBreakdown
                                  - totalSize
                                  - avgEntryPrice
                                  - currentPrice
                                  - totalValue
                                  - unrealizedPnl
                                  - unrealizedPnlPercent
                                  - winner
                                  - priceSource
                                  - bookQuality
                                properties:
                                  label:
                                    type: string
                                  title:
                                    type: string
                                    nullable: true
                                  venueBreakdown:
                                    type: array
                                    items:
                                      type: object
                                      required:
                                        - venue
                                        - venueMarketId
                                        - size
                                      properties:
                                        venue:
                                          type: string
                                          enum:
                                            - kalshi
                                            - polymarket
                                            - limitless
                                            - opinion
                                            - predict
                                            - probable
                                            - myriad
                                            - hyperliquid
                                        venueMarketId:
                                          type: string
                                        venueMarketOutcomeId:
                                          type: string
                                          nullable: true
                                        size:
                                          type: number
                                        custodyKind:
                                          type: string
                                          enum:
                                            - EOA
                                            - DEPOSIT_WALLET
                                            - VENUE_OMNIBUS
                                  totalSize:
                                    type: number
                                  avgEntryPrice:
                                    type: number
                                  currentPrice:
                                    type: number
                                  totalValue:
                                    type: number
                                  unrealizedPnl:
                                    type: number
                                  unrealizedPnlPercent:
                                    type: number
                                  winner:
                                    type: boolean
                                    nullable: true
                                  priceSource:
                                    type: string
                                    enum:
                                      - orderbook
                                      - cached
                                      - entry
                                      - settled
                                  bookQuality:
                                    type: string
                                    enum:
                                      - healthy
                                      - bid_only
                                      - ask_only
                                      - endpoint_stub
                                      - wide_spread
                                      - crossed
                                      - empty
                  nextCursor:
                    type: string
                    nullable: true
                  hasMore:
                    type: boolean
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '403':
          description: '403'
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
      security:
        - appId: []
          bearerAuth: []
components:
  securitySchemes:
    appId:
      type: apiKey
      in: header
      name: x-app-id
      description: Your application ID. Required for all app-tier and user-tier routes.
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        JWT access token returned by POST /auth/verify. Required for user-tier
        routes.

````