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

# Place Order

> Place Order.

Submits an order.

**Base URL:** `https://api.dexbuilder.com`

**Authentication:** Use a Broker API Key and sign this request with `Timestamp` and `SIGN`. Pass a wallet address that belongs to your Broker in `X-User-Wallet-Address`. Calculate the signature using the external Broker path. See [Broker API Key and signing](https://dexbuilder.mintlify.site/en/api-reference/common/broker-authentication.md) and [Access on behalf of a user](https://dexbuilder.mintlify.site/en/api-reference/common/sub-user-wallet.md).

## Request

```bash theme={null}
curl -X POST "https://api.dexbuilder.com/api/v4/broker/event_contracts/orders" \
  -H "KEY: ${BROKER_API_KEY}" \
  -H "SIGN: ${SIGN}" \
  -H "Timestamp: ${TIMESTAMP}" \
  -H "X-User-Wallet-Address: ${USER_WALLET}" \
  -H "Content-Type: application/json" \
  -d '<request-body>'
```

The request body contains only the public token, side, price/size or total cost, order type/mode, and optional client order and expiry fields shown in the OpenAPI definition.

The OpenAPI panel below is the source of truth for required parameters, types, enum values, and request-body fields. Timestamps are Unix timestamps unless the field description states otherwise.

## Response

Returns an acceptance object containing the order identifier and processing status. Query the order or subscribe to the private order channel for subsequent state changes.

A successful response uses HTTP 200. Invalid parameters or request bodies return HTTP 400. Private endpoints can return HTTP 401 when authentication fails, and temporary upstream failures can return HTTP 503. The error response contains a machine-readable label and message.

For order, position, claim, transfer, and account operations, treat the response as the current server result and query the resource again when the operation is asynchronous.


## OpenAPI

````yaml openapi/event-contracts-en.yaml POST /api/v4/broker/event_contracts/orders
openapi: 3.0.3
info:
  title: DexBuilder Event Contracts API
  version: 1.0.0
  description: DexBuilder Event Contracts REST API.
servers:
  - url: https://api.dexbuilder.com
security: []
paths:
  /api/v4/broker/event_contracts/orders:
    post:
      summary: Place Order
      description: Place Order.
      operationId: place_order
      parameters:
        - name: Timestamp
          in: header
          required: true
          description: >-
            Unix timestamp in seconds; the gateway allows at most 60 seconds of
            clock skew.
          schema:
            type: string
        - name: SIGN
          in: header
          required: true
          description: >-
            Hexadecimal HMAC-SHA512 signature over the external request path,
            query string, and body.
          schema:
            type: string
        - name: X-User-Wallet-Address
          in: header
          required: true
          description: >-
            End-user wallet address. The gateway checks that this wallet belongs
            to the current Broker.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - token_id
                - side
              properties:
                token_id:
                  type: string
                side:
                  type: string
                  enum:
                    - BUY
                    - SELL
                price:
                  type: string
                size:
                  type: string
                total_cost:
                  type: string
                order_type:
                  type: string
                  enum:
                    - GTC
                    - GTD
                    - FOK
                    - FAK
                  description: 'Time-in-force: GTC, GTD, FOK, or FAK'
                order_mode:
                  type: string
                  enum:
                    - LIMIT
                    - MARKET
                  description: 'Execution mode: LIMIT or MARKET'
                client_order_id:
                  type: string
                post_only:
                  type: boolean
                sell_all:
                  type: boolean
                expire_time:
                  type: integer
      responses:
        '200':
          description: Request succeeded
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PlaceOrderAcceptResp'
        '400':
          description: Invalid request or parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Authentication failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: Service temporarily unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - BrokerAPIKey: []
components:
  schemas:
    PlaceOrderAcceptResp:
      type: object
      properties:
        client_order_id:
          type: string
        created_at:
          type: integer
        order_id:
          type: string
        status:
          type: string
          enum:
            - processing
      description: Response object.
    Error:
      type: object
      description: Error response.
      properties:
        label:
          type: string
          example: INVALID_ARGUMENT
        message:
          type: string
          example: invalid request
  securitySchemes:
    BrokerAPIKey:
      type: apiKey
      in: header
      name: KEY
      description: Broker API Key, created through the project administrator's process.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.