One Trading Trading API

Account order and trade endpoints (Bearer token, TRADE/READ scope)

Operations 12

GET /v1/account/balances Balances #
GET /v1/account/fees Account Fees #
GET /v1/account/orders Get Orders #
POST /v1/account/orders Create Order #
DELETE /v1/account/orders Cancel All Orders #
GET /v1/account/orders/{order_id} Get Order by Order ID #
DELETE /v1/account/orders/{order_id} Cancel Order by Order ID #
GET /v1/account/orders/client/{client_id} Get Order by Client ID #
DELETE /v1/account/orders/client/{client_id} Cancel Order by Client ID #
GET /v1/account/orders/{order_id}/trades Get Trades for Order #
GET /v1/account/trades Get Trades #
GET /v1/account/trade/{trade_id} Get Trade by Trade ID #

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/one-trading-trading-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

one-trading-trading-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: One Fast Funding Trading API
  version: '1.0'
  description: 'REST API for the One Trading exchange ("Fast API"). Public market-data endpoints (currencies, instruments, order book, candlesticks, market ticker, fees, funding rates, server time) require no authentication. Account, trading and futures endpoints require a Bearer API token with the appropriate permission scope (Read / Trade / Withdraw / SUBACCOUNT_TRANSFER).

    Provenance: this specification was reconstructed by API Evangelist from the provider''s public documentation index (https://docs.onetrading.com/llms.txt) and from live responses of the public endpoints. Request/response schemas for public endpoints reflect real observed payloads; authenticated operations are modeled from the documented operation catalog. It is not the provider''s official machine-readable contract.'
  x-provenance:
    generated: '2026-07-20'
    method: generated
    source:
    - https://docs.onetrading.com/llms.txt
    - https://api.onetrading.com/fast/v1/currencies
    - https://api.onetrading.com/fast/v1/instruments
    - https://api.onetrading.com/fast/v1/market-ticker
    - https://api.onetrading.com/fast/v1/order-book/BTC_USDC
    - https://api.onetrading.com/fast/v1/fees
    - https://api.onetrading.com/fast/v1/funding-rate
    - https://docs.onetrading.com/rest/trading/create-order.md
servers:
- url: https://api.onetrading.com/fast
  description: Production
security:
- BearerToken: []
tags:
- name: Trading
  description: Account order and trade endpoints (Bearer token, TRADE/READ scope)
paths:
  /v1/account/balances:
    get:
      tags:
      - Trading
      operationId: getBalances
      summary: Balances
      description: Returns the balance details for an account. Requires READ scope.
      responses:
        '200':
          description: Account balances
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /v1/account/fees:
    get:
      tags:
      - Trading
      operationId: getAccountFees
      summary: Account Fees
      description: Current fees for account, calculated and combined across all subaccounts. Requires READ scope.
      responses:
        '200':
          description: Account fees
        '403':
          description: Forbidden
  /v1/account/orders:
    get:
      tags:
      - Trading
      operationId: getOrders
      summary: Get Orders
      description: Returns a paginated list of orders. Requires READ scope.
      parameters:
      - name: instrument_code
        in: query
        required: false
        schema:
          type: string
      - name: from
        in: query
        required: false
        schema:
          type: string
          format: date-time
      - name: to
        in: query
        required: false
        schema:
          type: string
          format: date-time
      - name: max_page_size
        in: query
        required: false
        schema:
          type: integer
      - name: cursor
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Paginated orders
        '403':
          description: Forbidden
    post:
      tags:
      - Trading
      operationId: createOrder
      summary: Create Order
      description: Create a new order. Requires TRADE scope.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateOrderRequest'
      responses:
        '200':
          description: Created order
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      tags:
      - Trading
      operationId: cancelAllOrders
      summary: Cancel All Orders
      description: Submits a cancel request for all open orders of an account. Requires TRADE scope.
      responses:
        '200':
          description: Cancelled
        '403':
          description: Forbidden
  /v1/account/orders/{order_id}:
    get:
      tags:
      - Trading
      operationId: getOrderByOrderId
      summary: Get Order by Order ID
      description: Get information about an existing order using the exchange generated order_id.
      parameters:
      - name: order_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Order
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      tags:
      - Trading
      operationId: cancelOrderByOrderId
      summary: Cancel Order by Order ID
      description: Submits a request to close an open order by providing a valid order_id. Requires TRADE scope.
      parameters:
      - name: order_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Cancelled
        '404':
          description: Not Found
  /v1/account/orders/client/{client_id}:
    get:
      tags:
      - Trading
      operationId: getOrderByClientId
      summary: Get Order by Client ID
      description: Get information about an existing order using the user or exchange generated client_id.
      parameters:
      - name: client_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Order
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
        '404':
          description: Not Found
    delete:
      tags:
      - Trading
      operationId: cancelOrderByClientId
      summary: Cancel Order by Client ID
      description: Submits a request to cancel an open order by providing a valid client_id. Requires TRADE scope.
      parameters:
      - name: client_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Cancelled
        '404':
          description: Not Found
  /v1/account/orders/{order_id}/trades:
    get:
      tags:
      - Trading
      operationId: getTradesForOrder
      summary: Get Trades for Order
      description: Get list of trades for a specific order.
      parameters:
      - name: order_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Trades for order
  /v1/account/trades:
    get:
      tags:
      - Trading
      operationId: getTrades
      summary: Get Trades
      description: Retrieves trades executed within the specified date range, sorted by timestamp descending.
      parameters:
      - name: from
        in: query
        required: false
        schema:
          type: string
          format: date-time
      - name: to
        in: query
        required: false
        schema:
          type: string
          format: date-time
      - name: max_page_size
        in: query
        required: false
        schema:
          type: integer
      - name: cursor
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Paginated trades
  /v1/account/trade/{trade_id}:
    get:
      tags:
      - Trading
      operationId: getTradeByTradeId
      summary: Get Trade by Trade ID
      description: Get information about an executed trade using the exchange generated trade_id.
      parameters:
      - name: trade_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        '200':
          description: Trade
        '404':
          description: Not Found
components:
  schemas:
    Order:
      type: object
      properties:
        order_id:
          type: string
          format: uuid
        client_id:
          type: string
          format: uuid
        account_id:
          type: string
          format: uuid
        instrument_code:
          type: string
        time:
          type: string
          format: date-time
        side:
          type: string
          enum:
          - BUY
          - SELL
        price:
          type: string
        amount:
          type: string
        type:
          type: string
          enum:
          - LIMIT
        time_in_force:
          type: string
        status:
          type: string
    Error:
      type: object
      description: One Trading error envelope. Errors carry a single machine-readable code string.
      properties:
        error:
          type: string
          example: INVALID_INSTRUMENT_CODE
    CreateOrderRequest:
      type: object
      required:
      - instrument_code
      - type
      - side
      - amount
      - price
      properties:
        instrument_code:
          type: string
          description: Market ID from the instruments endpoint
        type:
          type: string
          enum:
          - LIMIT
        side:
          type: string
          enum:
          - BUY
          - SELL
        amount:
          type: string
          description: Currency amount for the order
        price:
          type: string
          description: Execution price
        client_id:
          type: string
          format: uuid
          description: User-provided unique identifier used to de-duplicate and look up the order.
        time_in_force:
          type: string
          enum:
          - GOOD_TILL_CANCELLED
          - IMMEDIATE_OR_CANCELLED
          - FILL_OR_KILL
          - POST_ONLY
          default: GOOD_TILL_CANCELLED
        reserve_price:
          type: string
          description: Maximum price for MOVE orders
  securitySchemes:
    BearerToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: 'API token generated in the One Trading UI, sent as ''Authorization: Bearer <token>''. Tokens carry one or more permission scopes: Read, Trade, Withdraw, SUBACCOUNT_TRANSFER.'