> ## Documentation Index
> Fetch the complete documentation index at: https://whitebit-mintlify-fix-broken-links-1774051868.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Collateral Limit Order



## OpenAPI

````yaml /openapi/private/http-trade-v4.yaml POST /api/v4/order/collateral/limit
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: []
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/order/collateral/limit:
    post:
      tags:
        - Collateral Trading
      summary: Collateral Limit Order
      description: >
        The endpoint creates [limit order](/glossary#limit-order) using
        [collateral balance](/glossary#balance-collateral).


        <Warning>

        Rate limit: 10000 requests/10 sec.

        </Warning>


        <Note>

        For open long position use **buy**, for short **sell**. To close current
        position, place opposite order with current position amount.

        </Note>


        <Note>
          - RPI orders are post-only by design and cannot be used with the IOC flag. The API returns error code `37` when both `rpi=true` and `ioc=true` are used.
        </Note>



        <Accordion title="Error Codes">
          - `30` - default validation error code
          - `31` - market validation failed
          - `32` - amount validation failed
          - `33` - price validation failed
          - `36` - client_order_id validation failed
          - `37` - `ioc=true` cannot be used with `postOnly=true` or `rpi=true`
        </Accordion>
      operationId: createCollateralLimitOrder
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - market
                - side
                - amount
                - price
                - request
                - nonce
              properties:
                market:
                  type: string
                  description: >-
                    Available margin [market](/glossary#market). Example:
                    BTC_USDT
                  example: BTC_USDT
                side:
                  type: string
                  enum:
                    - buy
                    - sell
                  description: >-
                    Order type. Variables: 'buy' / 'sell'. For open long
                    position use **buy**, for short **sell**.
                  example: buy
                amount:
                  type: string
                  description: Amount of [stock](/glossary#stock) currency to buy or sell.
                  example: '0.01'
                price:
                  type: string
                  description: 'Price in [money](/glossary#money) currency. Example: ''9800'''
                  example: '40000'
                client_order_id:
                  type: string
                  description: >-
                    Identifier should be unique and contain letters, dashes,
                    numbers, dots or underscores.
                  example: order1987111
                stopLoss:
                  type: string
                  description: >
                    Stop loss price.


                    When provided, the system creates an
                    [OTO](/glossary#one-triggers-the-other-oto) order with a
                    stop loss condition.
                  example: '50000'
                takeProfit:
                  type: string
                  description: >
                    Take profit price.


                    When provided, the system creates an
                    [OTO](/glossary#one-triggers-the-other-oto) order with a
                    take profit condition.
                  example: '30000'
                postOnly:
                  type: boolean
                  description: >-
                    Orders are guaranteed to be the [maker](/glossary#maker)
                    order when [executed](/glossary#finished-orders).
                  example: false
                ioc:
                  type: boolean
                  description: >-
                    An immediate or cancel order (IOC) is an order that attempts
                    to execute all or part immediately and then cancels any
                    unfilled portion.
                  example: false
                rpi:
                  type: boolean
                  description: >
                    Enables Retail Price Improvement (RPI) mode.


                    RPI orders are post-only by design and cannot be used with
                    `ioc=true`. The API returns error code `37` when both
                    `rpi=true` and `ioc=true` are used.
                  example: true
                positionSide:
                  type: string
                  enum:
                    - LONG
                    - SHORT
                    - BOTH
                  description: >-
                    Defines the position direction when hedge mode is enabled.
                    See [positionSide](/glossary#position-side)
                  example: LONG
                request:
                  type: string
                  example: '{{request}}'
                nonce:
                  type: string
                  example: '{{nonce}}'
            example:
              market: BTC_USDT
              side: buy
              amount: '0.01'
              price: '40000'
              postOnly: false
              ioc: false
              client_order_id: order1987111
              stopLoss: '50000'
              takeProfit: '30000'
              positionSide: LONG
              rpi: true
              request: '{{request}}'
              nonce: '{{nonce}}'
      responses:
        '200':
          description: Successful response - order created
          content:
            application/json:
              schema:
                type: object
                properties:
                  order_id:
                    type: integer
                    description: Unique order identifier
                    example: 4180284841
                  client_order_id:
                    type: string
                    description: >-
                      Custom client order identifier. Empty string if not
                      specified
                    example: order1987111
                  market:
                    type: string
                    description: Market name
                    example: BTC_USDT
                  side:
                    type: string
                    description: Order side
                    enum:
                      - buy
                      - sell
                    example: buy
                  type:
                    type: string
                    description: Order type
                    example: limit
                  timestamp:
                    type: number
                    description: Timestamp of order creation in Unix format
                    example: 1595792396.165973
                  deal_money:
                    type: string
                    description: Amount in money currency that is finished
                    example: '0'
                  deal_stock:
                    type: string
                    description: Amount in stock currency that is finished
                    example: '0'
                  amount:
                    type: string
                    description: Order amount
                    example: '0.01'
                  left:
                    type: string
                    description: Remaining amount that must be finished
                    example: '0.001'
                  deal_fee:
                    type: string
                    description: Fee in money that is paid when order is finished
                    example: '0'
                  price:
                    type: string
                    description: Order price
                    example: '40000'
                  postOnly:
                    type: boolean
                    description: Post-only flag
                    example: false
                  ioc:
                    type: boolean
                    description: Immediate or cancel flag
                    example: false
                  status:
                    type: string
                    description: Order status
                    enum:
                      - NEW
                      - FILLED
                      - PARTIALLY_FILLED
                      - CANCELLED
                    example: FILLED
                  stp:
                    type: string
                    description: Self trade prevention mode
                    example: 'no'
                  oto:
                    type: object
                    description: OTO order data when stopLoss or takeProfit is specified
                    nullable: true
                    properties:
                      otoId:
                        type: integer
                        description: OTO order identifier
                        example: 29457221
                      stopLoss:
                        type: string
                        description: Stop loss order price
                        example: '30000'
                      takeProfit:
                        type: string
                        description: Take profit order price
                        example: '50000'
                  positionSide:
                    type: string
                    description: Position side
                    enum:
                      - LONG
                      - SHORT
                      - BOTH
                    example: LONG
                  rpi:
                    type: boolean
                    description: Retail Price Improvement flag
                    example: true
              example:
                order_id: 4180284841
                client_order_id: order1987111
                market: BTC_USDT
                side: buy
                type: limit
                timestamp: 1595792396.165973
                deal_money: '0'
                deal_stock: '0'
                amount: '0.01'
                left: '0.001'
                deal_fee: '0'
                price: '40000'
                postOnly: false
                ioc: false
                status: FILLED
                stp: 'no'
                oto:
                  otoId: 29457221
                  stopLoss: '30000'
                  takeProfit: '50000'
                positionSide: LONG
                rpi: true
        '422':
          description: Inner validation failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '503':
          description: Service temporarily unavailable
      security:
        - ApiKeyAuth: []
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: |
        API Key authentication for private endpoints.

        Required headers:
        - X-TXC-APIKEY: API key
        - X-TXC-PAYLOAD: Base64 encoded JSON payload
        - X-TXC-SIGNATURE: HMAC SHA512 signature

````