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

# Query executed order deals

> Get the individual trade fills for a specific executed spot order via the WhiteBIT V4 API.

* [Query executed orders](/api-reference/spot-trading/query-executed-orders) — view executed order history
* [Query executed order history](/api-reference/spot-trading/query-executed-order-history) — view full execution history


## OpenAPI

````yaml /openapi/private/http-trade-v4.yaml POST /api/v4/trade-account/order
openapi: 3.0.3
info:
  title: Private HTTP API V4 - Collateral Trading
  description: |
    WhiteBIT Private HTTP API V4 for collateral/margin trading operations.

    Base URL: https://whitebit.com

    All endpoints return time in Unix-time format.
    All endpoints return either a JSON object or array.
    For receiving responses from API calls please use http method POST.

    Authentication required for all endpoints.
  version: 4.0.0
  license:
    name: WhiteBIT Terms of Service
    url: https://whitebit.com/terms
servers:
  - url: https://whitebit.com
    description: WhiteBIT Global Server
  - url: https://whitebit.eu
    description: WhiteBIT EU Server
security:
  - ApiKeyAuth: []
    PayloadAuth: []
    SignatureAuth: []
tags:
  - name: Collateral Trading
    description: Endpoints for collateral/margin trading operations
  - name: Spot Trading
    description: Endpoints for spot trading operations
  - name: Market Fee
    description: Endpoints for querying trading fees
paths:
  /api/v4/trade-account/order:
    post:
      tags:
        - Spot Trading
      summary: Query executed order deals
      description: >
        The endpoint retrieves individual trade fills (deals) for a specific
        order. Each deal represents a partial or full execution of the order
        against a counterparty. The response includes pagination and returns
        deal details such as price, amount, fee, and execution role (maker or
        taker).


        <Warning>

        Rate limit: 12000 requests/10 sec.

        </Warning>


        <Note>

        This endpoint supports pagination. Use `limit` (default: 50) and
        `offset` (default: 0) to page through results. The response does not
        include a `total` field — detect the last page when `records.length <
        limit`. An empty `records` array means you have paged past the end;
        receiving exactly `limit` records does not guarantee that another page
        exists.

        </Note>


        <Note>

        An unknown or not-owned `orderId` is **not** an error. The endpoint
        always returns HTTP 200 with the paged-list envelope; a non-matching
        `orderId` simply filters down to an empty `records` array.

        </Note>


        <Accordion title="Error Codes">
          - `30` - default validation error code (for example, a missing or malformed `orderId`, or invalid pagination)
        </Accordion>
      operationId: getOrderDeals
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - orderId
                - request
                - nonce
              properties:
                orderId:
                  type: integer
                  description: Identifier of the order to retrieve deals for.
                  example: 3134995325
                offset:
                  type: integer
                  default: 0
                  minimum: 0
                  description: 'Number of records to skip. Default: `0`.'
                  example: 0
                limit:
                  type: integer
                  default: 50
                  minimum: 1
                  description: 'Maximum number of records to return. Default: `50`.'
                  example: 50
                request:
                  type: string
                  example: '{{request}}'
                nonce:
                  type: integer
                  example: 1594297865000
      responses:
        '200':
          description: Successful response - returns paginated order deals
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    description: Array of deal records
                    items:
                      type: object
                      properties:
                        time:
                          type: number
                          description: >-
                            Unix timestamp of the deal execution, with
                            microsecond precision.
                          example: 1593342324.613711
                        fee:
                          type: string
                          description: >-
                            Fee charged for the deal, denominated in the asset
                            specified by `feeAsset`.
                          example: '0.00000419198'
                        price:
                          type: string
                          description: Execution price per unit in quote currency.
                          example: '0.00000701'
                        amount:
                          type: string
                          description: Executed quantity in base (stock) currency.
                          example: '598'
                        id:
                          type: integer
                          description: >-
                            Unique deal identifier assigned by the matching
                            engine.
                          example: 149156519
                        dealOrderId:
                          type: integer
                          description: >-
                            Identifier of the counterparty order that matched
                            against the queried order.
                          example: 3134995325
                        clientOrderId:
                          type: string
                          description: >-
                            Custom order identifier supplied in the original
                            order request. Returns an empty string when not
                            specified.
                          example: customId11
                        role:
                          type: integer
                          description: >-
                            Execution role in the deal. `1` = maker (order was
                            resting on the book), `2` = taker (order matched
                            immediately).
                          enum:
                            - 1
                            - 2
                          example: 2
                        deal:
                          type: string
                          description: >-
                            Total deal value in quote (money) currency. Equals
                            `amount * price`.
                          example: '0.00419198'
                        feeAsset:
                          type: string
                          description: >-
                            Currency ticker of the asset used to pay the trading
                            fee.
                          example: USDT
                        rpi:
                          type: boolean
                          description: >-
                            Retail Price Improvement flag. `true` when the deal
                            executed under RPI pricing.
                          example: true
                  offset:
                    type: integer
                    description: Number of records skipped
                    example: 0
                  limit:
                    type: integer
                    description: Number of records per page
                    example: 100
              example:
                records:
                  - time: 1593342324.613711
                    fee: '0.00000419198'
                    price: '0.00000701'
                    amount: '598'
                    id: 149156519
                    dealOrderId: 3134995325
                    clientOrderId: customId11
                    role: 2
                    deal: '0.00419198'
                    feeAsset: USDT
                    rpi: true
                offset: 0
                limit: 100
        '400':
          description: Inner validation failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Request validation failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service temporarily unavailable
      security:
        - ApiKeyAuth: []
          PayloadAuth: []
          SignatureAuth: []
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        code:
          type: integer
          description: Error code
          example: 30
        message:
          type: string
          description: Error message
          example: Validation failed
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
          description: Detailed error information
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-TXC-APIKEY
      description: The public WhiteBIT API key.
    PayloadAuth:
      type: apiKey
      in: header
      name: X-TXC-PAYLOAD
      description: Base64-encoded JSON request body.
    SignatureAuth:
      type: apiKey
      in: header
      name: X-TXC-SIGNATURE
      description: >-
        HMAC-SHA512 signature of the payload, hex-encoded. Computed as
        hex(HMAC-SHA512(payload, api_secret)).

````