> ## 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.

# Place a paper trading order



## OpenAPI

````yaml /openapi/openapi.json post /apps/{appId}/paper-trading/accounts/{accountId}/orders
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:
  /apps/{appId}/paper-trading/accounts/{accountId}/orders:
    post:
      tags:
        - Execution
      summary: Place a paper trading order
      operationId: placePaperTradingOrder
      parameters:
        - name: appId
          in: path
          required: true
          schema:
            type: string
        - name: accountId
          in: path
          required: true
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - venueMarketOutcomeId
                - side
              properties:
                venueMarketOutcomeId:
                  type: string
                side:
                  type: string
                  enum:
                    - buy
                    - sell
                spendRaw:
                  pattern: ^[0-9]+$
                  type: string
                spend:
                  exclusiveMinimum: true
                  type: number
                  minimum: 0
                shares:
                  exclusiveMinimum: true
                  type: number
                  minimum: 0
                slippageBps:
                  minimum: 0
                  maximum: 10000
                  type: number
                clientOrderId:
                  minLength: 1
                  maxLength: 160
                  type: string
      responses:
        '201':
          description: '201'
          content:
            application/json:
              schema:
                type: object
                required:
                  - id
                  - accountId
                  - venue
                  - venueMarketId
                  - venueMarketOutcomeId
                  - marketQuestion
                  - outcomeLabel
                  - side
                  - status
                  - clientOrderId
                  - requestedSpendRaw
                  - requestedSpend
                  - requestedShares
                  - filledShares
                  - avgPrice
                  - slippageBps
                  - notionalRaw
                  - notional
                  - cashDeltaRaw
                  - cashDelta
                  - realizedPnlRaw
                  - realizedPnl
                  - rejectionReason
                  - createdAt
                properties:
                  id:
                    type: string
                  accountId:
                    type: string
                  venue:
                    type: string
                  venueMarketId:
                    type: string
                  venueMarketOutcomeId:
                    type: string
                  marketQuestion:
                    type: string
                  outcomeLabel:
                    type: string
                  side:
                    type: string
                    enum:
                      - buy
                      - sell
                  status:
                    type: string
                    enum:
                      - filled
                      - rejected
                  clientOrderId:
                    type: string
                    nullable: true
                  requestedSpendRaw:
                    type: string
                    nullable: true
                  requestedSpend:
                    type: number
                    nullable: true
                  requestedShares:
                    type: number
                    nullable: true
                  filledShares:
                    type: number
                  avgPrice:
                    type: number
                    nullable: true
                  slippageBps:
                    type: number
                    nullable: true
                  notionalRaw:
                    type: string
                  notional:
                    type: number
                  cashDeltaRaw:
                    type: string
                  cashDelta:
                    type: number
                  realizedPnlRaw:
                    type: string
                  realizedPnl:
                    type: number
                  rejectionReason:
                    type: string
                    nullable: true
                  createdAt:
                    type: string
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '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
        '404':
          description: '404'
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
        '503':
          description: '503'
          content:
            application/json:
              schema:
                type: object
                required:
                  - message
                properties:
                  message:
                    type: string
      security:
        - appApiKey: []
components:
  securitySchemes:
    appApiKey:
      type: apiKey
      in: header
      name: x-app-api-key
      description: App-scoped API key for programmatic app management.

````