Zero Hash CLOB API

Central Limit Order Book

Operations 14

POST /clob/accounts Create account (CLOB)
GET /clob/accounts List accounts (CLOB)
PATCH /clob/accounts Update CLOB account
POST /orders/v1/get_account_balance Get account balance
POST /orders/v1/list_account_balances List account balances
POST /orders/v1/get_open_orders List open orders
POST /orders/v1/search_orders List orders
POST /orders/v1/search_executions Get order executions
POST /orders/v1/create_order_subscription Create order subscription
POST /orders/v1/create_market_data_subscription Market data subscription
POST /orders/v1/insert_order Submit order
POST /orders/v1/cancel_order Cancel order
POST /orders/v1/list_instruments List instruments
POST /orders/v1/get_trade_stats Get trade stats

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/zero-hash-clob-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

zero-hash-clob-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: zerohash CLOB API
  description: '

    ### Authentication


    zerohash Uses HMAC SHA-256 verification to ensure the authenticity of API requests, follow instructions by link [https://docs.zerohash.com/reference/api-authentication](https://docs.zerohash.com/reference/api-authentication)


    <a href="/zh-swagger.json">Download zerohash OpenAPI Schema as JSON</a>

    '
  version: 1.7.0
servers:
- url: https://api.cert.zerohash.com
  description: Certification API server
security:
- apiKey: []
  apiPassphrase: []
tags:
- name: CLOB
  description: Central Limit Order Book
paths:
  /clob/accounts:
    post:
      tags:
      - CLOB
      summary: Create account (CLOB)
      description: Creates a new trading account on the CLOB. This is only relevant to our Central Limit Order Book (CLOB).
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: CLOB account attributes.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostCLOBAccountBody'
      responses:
        '202':
          description: CLOB account creation accepted. The returned resource reflects the account created on the trading engine.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostCLOBAccountResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code400'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code403'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code404'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code500'
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code503'
    get:
      tags:
      - CLOB
      summary: List accounts (CLOB)
      description: Retrieve a paginated list of your CLOB trading accounts. This is only relevant to our Central Limit Order Book (CLOB).
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      - name: participant_code
        in: query
        description: Filter results to a single participant code.
        required: false
        schema:
          type: string
      - name: account_label
        in: query
        description: Filter results to a single account label.
        required: false
        schema:
          type: string
      - name: prefunded
        in: query
        description: Filter results to prefunded (`true`) or non-prefunded (`false`) accounts.
        required: false
        schema:
          type: string
          enum:
          - 'true'
          - 'false'
      - name: account_tier
        in: query
        description: Filter results to a single account tier.
        required: false
        schema:
          type: string
          enum:
          - lite
          - pro
          - bronze
          - silver
          - gold
      - name: page
        in: query
        description: Page number to fetch. Must be a positive integer. Defaults to 1 when omitted.
        required: false
        schema:
          type: integer
          minimum: 1
          default: 1
      responses:
        '200':
          description: Successfully retrieved the paginated list of CLOB accounts.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetCLOBAccountsResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code400'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code403'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code404'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code500'
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code503'
    patch:
      tags:
      - CLOB
      summary: Update CLOB account
      description: Updates `prefunded` and/or `account_tier` attributes of an account on the CLOB.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: CLOB account update. Identifies the target account by `account_label` (and optionally `participant_code`).
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchPrefundedAccountBody'
      responses:
        '202':
          description: CLOB account update accepted. Returns the updated attributes of the account.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PatchPrefundedAccountResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code400'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code403'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code404'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code500'
        '503':
          description: Service Unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Code503'
  /orders/v1/get_account_balance:
    post:
      tags:
      - CLOB
      summary: Get account balance
      description: Returns a snapshot of an account balance and buying power on the CLOB matching the given filters.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostGetAccountBalanceRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostGetAccountBalanceResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/list_account_balances:
    post:
      tags:
      - CLOB
      summary: List account balances
      description: Returns a snapshotted list  balances and buying for an account power on the CLOB matching the given filter.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostListAccountBalanceRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostGetAccountBalancesResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/get_open_orders:
    post:
      tags:
      - CLOB
      summary: List open orders
      description: Returns snapshot of working orders the CLOB matching the given filters.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostGetOpenOrdersRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostGetOpenOrdersResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/search_orders:
    post:
      tags:
      - CLOB
      summary: List orders
      description: Search for orders places on the CLOB matching the given filters.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostSearchOrdersRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostSearchOrdersResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/search_executions:
    post:
      tags:
      - CLOB
      summary: Get order executions
      description: "Search for order executions on the CLOB matching the given filters. This endpoint returns all the executions for the given filters, and is paginated. \nNote: This executions means all the events that has been triggered for your orders on the CLOB."
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostSearchExecutionsRequest'
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostSearchExecutionsResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/create_order_subscription:
    post:
      tags:
      - CLOB
      summary: Create order subscription
      description: Create a subscription to receive updates on working orders.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostCreateOrderSubscriptionRequest'
      responses:
        '200':
          description: A successful response.(streaming responses)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostCreateOrderSubscriptionResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/create_market_data_subscription:
    post:
      tags:
      - CLOB
      summary: Market data subscription
      description: Subscribe to market data for CLOB instrument.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostMarketDataSubscriptionRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostMarketDataSubscriptionResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/insert_order:
    post:
      tags:
      - CLOB
      summary: Submit order
      description: Submit a new order to the CLOB.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostInsertOrderRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostInsertOrderResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/cancel_order:
    post:
      tags:
      - CLOB
      summary: Cancel order
      description: Cancel an order on the CLOB.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostCancelOrderRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostCancelOrderResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/list_instruments:
    post:
      tags:
      - CLOB
      summary: List instruments
      description: List all instruments available on the CLOB.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostListInstrumentsRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostListInstrumentsResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
  /orders/v1/get_trade_stats:
    post:
      tags:
      - CLOB
      summary: Get trade stats
      description: Get trade stats for a given instrument.
      parameters:
      - $ref: '#/components/parameters/Signature'
      - $ref: '#/components/parameters/Timestamp'
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostTradeStatsRequest'
      responses:
        '200':
          description: A successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostTradeStatsResponse'
        default:
          description: An error occurred
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorCLOBGeneric'
components:
  schemas:
    PostCreateOrderSubscriptionRequest:
      type: object
      properties:
        accounts:
          type: array
          description: The list of account IDs to subscribe to order updates for on working orders.
          items:
            type: string
            description: The account ID to subscribe to order updates for. Account ID can be the participant code assigned by zerohash, or the account_label defined by the platform.
            example:
            - CUST01
            - '{participant_code}'
            - CUST01-label
            - '{account_label}'
        user:
          type: string
          description: "Fully-qualified user. Format: `firms/F-{platform_code}/users/{participant_code}`. This value is case sensitive.\n### Clearing House Designations\n* **USA:** 00SXCM (ZH Clearing House)\n* **EU:** ZHDSEU\n\n### Prefunded Model \n  * USD balances are ledgered directly to the participants on their CLOB account.\n    * Participants will be credit checked against their available balance on the zerohash platform.\n  * Accounts must be registed with the `prefunded` field as `true` on the `POST /accounts` endpoint.\n * Trade settlement is handled directly between participants and occurs instantly upon execution.\n\n### Novated Model\n * Utilizes a central float account to manage the cumulative buying power of your customers.\n   * USD balance is ledgeder to the platforms float account.\n   * USD credit checks must be performed by the platform prior to order placement.\n * Accounts must be registed with the `prefunded` field as `false` on the `POST /accounts` endpoint.\n * Allows platforms to manage the buying power of their customers effectively, allowing for better operational efficiency."
          example: firms/F-PLAT01/user/CUST01
          enum:
          - firms/F-{platform_code}/users/{participant_code}
          - firms/F-{platform_code}/users/{account_label}
          - firms/{zerohash}/users/{platform_code}
        subscription_id:
          type: string
          description: The identifier of the subscription
          example: subscription-id
    Code400:
      type: object
      description: Request was rejected by validation or a downstream service. `errors` is an array of human-readable messages; each entry describes a single validation failure or business-rule violation.
      required:
      - errors
      properties:
        errors:
          type: array
          items:
            type: string
          example:
          - body/amount must be >= 0
          - body/asset is required
    PostTradeStatsRequest:
      type: object
      properties:
        bars:
          type: number
          example: 0
          description: The number of bars to return in the given time window
        end_time:
          type: string
          example: '2024-04-19T22:48:56.383Z'
          description: The end time of the time window
        start_time:
          type: string
          example: '2024-04-19T22:48:56.383Z'
          description: The start time of the time window
        symbol:
          type: string
          example: BTC/USD
          description: The symbol for the instrument
    PostInsertOrderRequest:
      oneOf:
      - $ref: '#/components/schemas/PostInsertOrderRequestEntity'
      - title: Limit Order
        description: Limit order request for inserting a new order.
        type: object
        properties:
          account:
            type: string
            example: firms/F-PLAT01/accounts/CUST01-customlabel
            description: 'The account associated with the order. This can be either the `participant_code` assigned by zerohash or the `account_label` defined by the platform.

              - Custom account label : `firms/{platform_code}/accounts/{account_label}`.

              - General account label : `firms/{platform_code}/accounts/{participant_code}`.

              '
          user:
            type: string
            description: "Fully-qualified user. Format: `firms/F-{platform_code}/users/{participant_code}`. This value is case sensitive.\n### Clearing House Designations\n* **USA:** 00SXCM (ZH Clearing House)\n* **EU:** ZHDSEU\n\n### Prefunded Model \n  * USD balances are ledgered directly to the participants on their CLOB account.\n    * Participants will be credit checked against their available balance on the zerohash platform.\n  * Accounts must be registed with the `prefunded` field as `true` on the `POST /accounts` endpoint.\n * Trade settlement is handled directly between participants and occurs instantly upon execution.\n\n### Novated Model\n * Utilizes a central float account to manage the cumulative buying power of your customers.\n   * USD balance is ledgeder to the platforms float account.\n   * USD credit checks must be performed by the platform prior to order placement.\n * Accounts must be registed with the `prefunded` field as `false` on the `POST /accounts` endpoint.\n * Allows platforms to manage the buying power of their customers effectively, allowing for better operational efficiency."
            example: firms/F-PLAT01/user/CUST01
            enum:
            - firms/F-{platform_code}/users/{participant_code}
            - firms/F-{platform_code}/users/{account_label}
            - firms/{zerohash}/users/{platform_code}
          side:
            type: string
            example: SIDE_BUY
            description: The side of the order, indicating whether it is a buy or sell order.
          symbol:
            type: string
            example: ETH/USD
            description: The trading pair for the order.
          order_qty:
            type: string
            example: '200000'
            description: The quantity of the order scaled by using the `fractional_quantity_scale`.
          price:
            type: string
            example: '420000'
            description: The limit price for the order scaled by using the `price_scale`.
          clord_id:
            type: string
            example: '1245567889'
            description: Client-provided order ID.
          self_match_prevention_instruction:
            type: string
            enum:
            - SELF_MATCH_PREVENTION_INSTRUCTION_UNDEFINED
            - SELF_MATCH_PREVENTION_INSTRUCTION_REJECT_AGGRESSOR
            - SELF_MATCH_PREVENTION_INSTRUCTION_CANCEL_RESTING
            - SELF_MATCH_PREVENTION_INSTRUCTION_REMOVE_BOTH
            example: SELF_MATCH_PREVENTION_INSTRUCTION_UNDEFINED
            description: "The self-match prevention instruction\n\n- `SELF_MATCH_PREVENTION_INSTRUCTION_UNDEFINED`: \nAn unset value for the self match prevention instruction uses the default behavior of the exchange, which is to reject the incoming order and allow resting orders to remain on the book.\n\n- `SELF_MATCH_PREVENTION_INSTRUCTION_REJECT_AGGRESSOR`: \nReject the incoming aggressor order and allow resting orders to remain on the book.\n\n- `SELF_MATCH_PREVENTION_INSTRUCTION_CANCEL_RESTING`: \nCancel any resting orders on the book that would self match and allow the aggressor to insert on the book.\n\n- `SELF_MATCH_PREVENTION_INSTRUCTION_REMOVE_BOTH`: \nCancel any resting orders on the book that would self match and reject the aggressor insertion on the book."
          all_or_none:
            type: boolean
            example: false
            description: Indicates if the order is an all-or-none order. An all-or-none order will only execute if the entire order quantity can be filled, otherwise it will remain as instructed with regards to time in force and type of the order.
          best_limit:
            type: boolean
            example: false
            description: Indicates if the order should be entered at the best available price on the same side of the market.
          client_account_id:
            type: string
            example: ''
          client_participant_id:
            type: string
            example: ''
          good_till_time:
            type: string
            format: date-time
            nullable: true
            example: '2025-09-12T18:07:22.155905574Z'
            description: The time until which the order is valid. If the order has a time in force of `TIME_IN_FORCE_GOOD_TILL_TIME`, then this field will indicate the time until which the order will remain active before it is cancelled by the system.
          ignore_price_validity_checks:
            type: boolean
            example: false
            description: 'Indicates if the order should bypass price validity checks and be accepted even if the price is outside of the normal price bands or limits set by the exchange.

              This may be used in conjunction with order `type` as `ORDER_TYPE_MARKET_TO_LIMIT` and the `side` as `SIDE_SELL` to bypass the exchange minimum order placement values to liquidate customer positions.'
          immediately_executable_limit:
            type: boolean
            example: false
            description: Indicates if the order should be executed immediately at the best available price.
          min_qty:
            type: string
            example: '0'
          order_capacity:
            type: string
            example: ORDER_CAPACITY_INDIVIDUAL
            description: 'The order capacity for the order, which indicates the capacity in which the participant is acting when placing the order. This may be used by the exchange for regulatory reporting purposes.


              - `ORDER_CAPACITY_UNDEFINED`: An unset value for order capacity uses the default behavior of the exchange, which is typically to treat the order as if it were entered in an individual capacity.

              - `ORDER_CAPACITY_AGENCY`: The participant is acting in an agency capacity, meaning they are placing the order on behalf of another party.

              - `ORDER_CAPACITY_PRINCIPAL`: The participant is acting in a principal capacity, meaning they are placing the order for their own account and risk.

              - `ORDER_CAPACITY_PROPRIETARY`: The participant is acting in a proprietary capacity, meaning they are placing the order for their own account but not for their own risk (e.g., a market maker).

              - `ORDER_CAPACITY_INDIVIDUAL`: The participant is acting in an individual capacity, meaning they are placing the order for their own account and risk.

              - `ORDER_CAPACITY_RISKLESS_PRINCIPAL`: The participant is acting in a riskless principal capacity, meaning they are placing the order on behalf of another party but will not assume any market risk (e.g., they will hedge out the position immediately).

              - `ORDER_CAPACITY_AGENT_FOR_OTHER_MEMBER`: The participant is acting as an agent for another member of the exchange.'
            enum:
            - ORDER_CAPACITY_UNDEFINED
            - ORDER_CAPACITY_AGENCY
            - ORDER_CAPACITY_PRINCIPAL
            - ORDER_CAPACITY_PROPRIETARY
            - ORDER_CAPACITY_INDIVIDUAL
            - ORDER_CAPACITY_RISKLESS_PRINCIPAL
            - ORDER_CAPACITY_AGENT_FOR_OTHER_MEMBER
          strict_limit:
            type: boolean
            example: false
            description: Indicates if the order is a strict limit order and must be executed at the specified price.
          time_in_force:
            type: string
            example: TIME_IN_FORCE_GOOD_TILL_CANCEL
            enum:
            - TIME_IN_FORCE_GOOD_TILL_CANCEL
            - TIME_IN_FORCE_IMMEDIATE_OR_CANCEL
            - TIME_IN_FORCE_FILL_OR_KILL
            - TIME_IN_FORCE_GOOD_TILL_TIME
            description: 'The time in force for the order, which indicates how long the order will remain active before it is executed or expires.


              - `TIME_IN_FORCE_UNDEFINED`: An unset value for time in force uses the default behavior of the exchange, which is typically to treat the order as a day order that expires at the end of the trading day.

              - `TIME_IN_FORCE_GOOD_TILL_CANCEL`: The order will remain active until it is executed or cancelled by the participant.

              - `TIME_IN_FORCE_IMMEDIATE_OR_CANCEL`: The order will be executed immediately at the best available price, and any portion of the order that is not filled will be cancelled.

              - `TIME_IN_FORCE_FILL_OR_KILL`: The order will be executed immediately at the best available price, and if the entire order cannot be filled, it will be cancelled.

              - `TIME_IN_FORCE_GOOD_TILL_TIME`: The order will remain active until it is executed or until a specified time in the future, at which point it will expire if it has not been filled.'
          type:
            type: string
            example: ORDER_TYPE_LIMIT
            enum:
            - ORDER_TYPE_MARKET_TO_LIMIT
            - ORDER_TYPE_LIMIT
            - ORDER_TYPE_STOP
            - ORDER_TYPE_STOP_LIMIT
            description: The type of the order, indicating whether it is a limit or market order.
        required:
        - account
        - user
        - side
        - type
        - time_in_force
        - symbol
        - order_qty
        - price
      - title: Market to Limit Order
        description: Market to limit order request for inserting a new order.
        type: object
        properties:
          account:
            type: string
            example: firms/F-PLAT01/accounts/CUST01-customlabel
            description: 'The account associated with the order. This can be either the `participant_code` assigned by zerohash or the `account_label` defined by the platform.

              - Custom account label : `firms/{platform_code}/accounts/{account_label}`.

              - General account label : `firms/{platform_code}/accounts/{participant_code}`.

              '
          user:
            type: string
            description: "Fully-qualified user. Format: `firms/F-{platform_code}/users/{participant_code}`. This value is case sensitive.\n### Clearing House Designations\n* **USA:** 00SXCM (ZH Clearing House)\n* **EU:** ZHDSEU\n\n### Prefunded Model \n  * USD balances are ledgered directly to the participants on their CLOB account.\n    * Participants will be credit checked against their available balance on the zerohash platform.\n  * Accounts must be registed with the `prefunded` field as `true` on the `POST /accounts` endpoint.\n * Trade settlement is handled directly between participants and occurs instantly upon execution.\n\n### Novated Model\n * Utilizes a central float account to manage the cumulative buying power of your customers.\n   * USD balance is ledgeder to the platforms float account.\n   * USD credit checks must be performed by the platform prior to order placement.\n * Accounts must be registed with the `prefunded` field as `false` on the `POST /accounts` endpoint.\n * Allows platforms to manage the buying power of their customers effectively, allowing for better operational efficiency."
            example: firms/F-PLAT01/user/CUST01
            enum:
            - firms/F-{platform_code}/users/{participant_code}
            - firms/F-{platform_code}/users/{account_label}
            - firms/{zerohash}/users/{platform_code}
          side:
            type: string
            example: SIDE_BUY
            description: The side of the order, indicating whether it is a buy or sell order.
          symbol:
            type: string
            example: ETH/USD
            description: The trading pair for the order.
          order_qty:
            type: string
            example: '200000'
            description: The quantity of the order scaled by using the `fractional_quantity_scale`.
          cash_order_qty:
            type: string
            example: '0'
            description: The notional value of the order to execute, used with market orders.
          clord_id:
            type: string
            example: '1245567889'
            description: Client-provided order ID.
          self_match_prevention_instruction:
            type: string
            enum:
            - SELF_MATCH_PREVENTION_INSTRUCTION_UNDEFINED
            - SELF_MATCH_PREVENTION_INSTRUCT

# --- truncated at 32 KB (256 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/zero-hash/refs/heads/main/openapi/zero-hash-clob-api-openapi.yml