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

# Get orders

> Retrieve orders with keyset pagination. At least one filter must be provided.

**Filters (OR logic):**
- `orderIds` — Comma-separated list of order IDs
- `requestUuids` — Comma-separated list of request UUIDs
- `userRef` — User reference string

**Pagination:**
- Results are ordered by orderId descending (newest first)
- Use `afterOrderId` from `nextCursor` in the response to fetch the next page
- `hasMore` indicates if more results are available

Returns enriched order details including bets and fixture/outcome/player metadata.

**Order Status Values:** PENDING, PROCESSING, FILLED, PARTIALLY_FILLED, CANCELLED, REJECTED, EXPIRED, FAILED



## OpenAPI

````yaml /zh/abp-api/openapi.json get /orders
openapi: 3.1.0
info:
  title: ABP v2 - Automated Bet Placing API
  description: >

    Place bets across 32 bookmakers through a single API.


    ## Authentication


    All endpoints require the `x-api-key` header (except `/health`, `/ready`,
    `/status`, `/metrics`).


    **Swagger UI**: Click the **Authorize** button (lock icon) at the top right,
    enter your API key, and click **Authorize**.


    ## Quick Start


    1. **List your accounts**: `GET /accounts`

    2. **Get live odds**: `GET /betslip?fixtureId=...&outcomeId=...&playerId=0`

    3. **Place an order**: `POST /place-orders`

    4. **Track results**: `GET /orders` or subscribe to WebSocket updates


    ## WebSocket


    Connect to `/ws` for real-time order, bet, and settlement updates.


    ```json

    {"type": "login", "apiKey": "your-api-key", "channels": []}

    ```


    Send an empty `channels` array to receive all updates. Available channels:
    `orders`, `bets`, `settlements`, `accounts`, `balance`, `betslip`,
    `fixtures`, `currencies`, `status`, `emergency`.


    Send `{"type": "ping"}` every 30 seconds to keep the connection alive.
  version: '2.0'
servers:
  - url: https://v2.55-tech.com
    description: Production
security:
  - apiKey: []
tags:
  - name: Orders
    description: Place, retrieve, and cancel betting orders
  - name: Bets
    description: Query individual bets placed with bookmakers
  - name: Betslip
    description: Get live odds and metadata for fixtures
  - name: Accounts
    description: Manage bookmaker accounts
  - name: Markets
    description: Get available markets and odds types
  - name: Bookmakers
    description: List supported bookmakers
  - name: Analytics
    description: Positions and profit/loss analytics
paths:
  /orders:
    get:
      tags:
        - Orders
      summary: Get orders
      description: >-
        Retrieve orders with keyset pagination. At least one filter must be
        provided.


        **Filters (OR logic):**

        - `orderIds` — Comma-separated list of order IDs

        - `requestUuids` — Comma-separated list of request UUIDs

        - `userRef` — User reference string


        **Pagination:**

        - Results are ordered by orderId descending (newest first)

        - Use `afterOrderId` from `nextCursor` in the response to fetch the next
        page

        - `hasMore` indicates if more results are available


        Returns enriched order details including bets and fixture/outcome/player
        metadata.


        **Order Status Values:** PENDING, PROCESSING, FILLED, PARTIALLY_FILLED,
        CANCELLED, REJECTED, EXPIRED, FAILED
      operationId: get_orders
      parameters:
        - name: orderIds
          in: query
          required: false
          schema:
            type: string
            nullable: true
          description: Comma-separated order IDs (e.g., '123,456,789')
          example: 123,456
        - name: requestUuids
          in: query
          required: false
          schema:
            type: string
            nullable: true
          description: Comma-separated request UUIDs
          example: eb45b192-317b-42d5-9f65-af497b9fa8c1
        - name: userRef
          in: query
          required: false
          schema:
            type: string
            nullable: true
          description: User reference to filter by
          example: bettor1234
        - name: afterOrderId
          in: query
          required: false
          schema:
            type: integer
            nullable: true
          description: >-
            Cursor for pagination: fetch orders with orderId less than this
            value
          example: 1000
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 1000
          description: Maximum number of orders to return per page
      responses:
        '200':
          description: Successfully retrieved matching orders with enriched metadata
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetOrdersResponse'
              example:
                orders:
                  - orderId: 371
                    requestUuid: 9eb7d99a-ab9b-41f3-9a06-23e70006bbe5
                    allowedBookmakers: '*'
                    fixtureId: id1000004461512432
                    outcomeId: 103
                    playerId: 0
                    orderPrice: 1.95
                    orderStake: 50
                    filledStake: 0
                    userRef: bettor1234
                    testOrder: false
                    orderCurrency: USD
                    back: true
                    expiresAt: '2026-02-07T16:15:53.270816+00:00'
                    acceptBetterOdds: true
                    acceptPartialStake: true
                    clientName: demo
                    orderStatus: PENDING
                    createdAt: '2026-02-07T16:15:48.270816+00:00'
                    updatedAt: '2026-02-07T16:15:48.270816+00:00'
                    meta: null
                    bets: []
                    fixtureInfo:
                      fixtureId: id1000004461512432
                      status:
                        live: false
                        statusId: 0
                        statusName: Pre-Game
                      sport:
                        sportId: 10
                        sportName: Soccer
                      tournament:
                        tournamentId: 44
                        tournamentName: 2. Bundesliga
                        categoryName: Germany
                      startTime: 1754159400
                      participants:
                        participant1Id: 2540
                        participant1Name: Arminia Bielefeld
                        participant2Id: 2588
                        participant2Name: Fortuna Dusseldorf
                    outcomeInfo:
                      marketId: 101
                      marketName: Full Time Result
                      marketNameShort: 1X2
                      marketType: 1x2
                      period: fulltime
                      playerProp: false
                      handicap: 0
                      outcomeId: 103
                      outcomeName: '2'
                    playerInfo: null
                    currencyInfo:
                      currency: USD
                      currencyValue: 1
                      updatedAt: '2026-02-07T17:29:32+00:00'
                  - orderId: 372
                    requestUuid: be81ba8f-55f4-48ed-a6f9-69b8d920263b
                    allowedBookmakers: sharpbet
                    fixtureId: id1000004461512432
                    outcomeId: 103
                    playerId: 0
                    orderPrice: 2.65
                    orderStake: 10
                    filledStake: 10
                    userRef: bettor1234
                    testOrder: false
                    orderCurrency: USD
                    back: true
                    expiresAt: '2026-02-07T16:18:34.366795+00:00'
                    acceptBetterOdds: true
                    acceptPartialStake: true
                    clientName: demo
                    orderStatus: FILLED
                    createdAt: '2026-02-07T16:18:29.366795+00:00'
                    updatedAt: '2026-02-07T16:18:29.366795+00:00'
                    meta: null
                    bets:
                      - betId: 91
                        orderId: 372
                        bookmaker: sharpbet
                        bookmakerBetId: 63aeba8d-a2d6-49ba-a6cd-7ce70bb17701
                        placedPrice: 2.65
                        placedStake: 10
                        placedCurrency: USD
                        placedAt: '2026-02-07T16:18:29.300906+00:00'
                        betStatus: CONFIRMED
                        settlementStatus: UNSETTLED
                        clientName: demo
                        testBet: false
                        userRef: bettor1234
                        requestUuid: be81ba8f-55f4-48ed-a6f9-69b8d920263b
                        declineReason: null
                    fixtureInfo:
                      fixtureId: id1000004461512432
                      status:
                        live: false
                        statusId: 0
                        statusName: Pre-Game
                      sport:
                        sportId: 10
                        sportName: Soccer
                      tournament:
                        tournamentId: 44
                        tournamentName: 2. Bundesliga
                        categoryName: Germany
                      startTime: 1754159400
                      participants:
                        participant1Id: 2540
                        participant1Name: Arminia Bielefeld
                        participant2Id: 2588
                        participant2Name: Fortuna Dusseldorf
                    outcomeInfo:
                      marketId: 101
                      marketName: Full Time Result
                      marketNameShort: 1X2
                      marketType: 1x2
                      period: fulltime
                      playerProp: false
                      handicap: 0
                      outcomeId: 103
                      outcomeName: '2'
                    playerInfo: null
                    currencyInfo:
                      currency: USD
                      currencyValue: 1
                      updatedAt: '2026-02-07T17:29:32+00:00'
                count: 2
                hasMore: false
                nextCursor: null
        '400':
          description: >-
            Missing required query parameter (at least one of orderIds,
            requestUuids, or userRef required)
        '401':
          description: Unauthorized — missing or invalid API key
        '403':
          description: Access denied — client not resolved from API key
        '404':
          description: No orders found matching the filters
        '500':
          description: Internal server error
components:
  schemas:
    GetOrdersResponse:
      type: object
      properties:
        orders:
          type: array
          items:
            type: object
          description: List of enriched orders with bets and metadata
        count:
          type: integer
          description: Number of orders in this response
        hasMore:
          type: boolean
          description: Whether more orders are available
        nextCursor:
          type: integer
          nullable: true
          description: Pass as afterOrderId to fetch the next page
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication. Contact contact@55-tech.com to obtain a key.

````