{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/bot-trade-org/json-schema/bot-trade-org-trade-queue-input-body-schema.json",
  "title": "TradeQueueInputBody",
  "x-generated": "2026-11-03",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/bot-trade-org-openapi.json#/components/schemas/TradeQueueInputBody",
  "additionalProperties": false,
  "properties": {
    "$schema": {
      "description": "A URL to the JSON Schema for this object.",
      "format": "uri",
      "readOnly": true,
      "type": "string"
    },
    "idempotency_key": {
      "description": "If set, retries of this same key + body return the cached response; same key + different body returns 409.",
      "type": "string"
    },
    "quantity": {
      "description": "Order quantity (positive). Fractional is allowed, e.g. 0.25 for crypto pairs like BTC/USD; equities are typically whole numbers.",
      "exclusiveMinimum": 0,
      "format": "double",
      "type": "number"
    },
    "reasoning": {
      "description": "Optional free-text note recorded with the fill.",
      "type": "string"
    },
    "side": {
      "description": "Trade direction. buy/sell are for long positions, short opens a short, cover reduces a short.",
      "enum": [
        "buy",
        "sell",
        "short",
        "cover"
      ],
      "type": "string"
    },
    "symbol": {
      "description": "Symbol from the scenario universe.",
      "type": "string"
    }
  },
  "required": [
    "symbol",
    "side",
    "quantity"
  ],
  "type": "object"
}