For AI agents: the documentation index is at /llms.txt, and this page is available as Markdown at /documentation/changelog.md.
Changelog
Every documented change across the True Markets API references, in one timeline, newest first. Each entry links to the reference it belongs to; the version shown is that API's own, which advances independently of the others.
| Date | API | Version | Notes |
|---|---|---|---|
| 2026-10-26 | Gateway | v1.42.0 | POST /quotes quotes a market order on the listing asset_id names (with leverage for a perp), for the caller its bearer token identifies; without a token it answers 401. A CeFi listing is quoted from its TrueX book like a base_asset quote. A DeFi quote returns the base qty, the USDC notional it spends or gets (a perp open, margin times leverage), price as notional over qty, and as fee the whole fee the order is quoted to pay, every venue fee included. CreateOrderResponse.quote.fee is that whole fee too, not only the platform's. |
| 2026-10-25 | Market data REST | v0.19.1 | GET /v1/defi/market/prices/candles serves Hyperliquid perps (asset_class=perp) from Hyperliquid's trade OHLC instead of returning 400. |
| 2026-10-22 | Market data REST | v0.19.0 | Added GET /v1/marketdata/venue-history, one venue's price or funding series for an asset (internal). |
| 2026-10-20 | Gateway | v1.41.0 | GET /portfolio reports CeFi holdings it could not identify in incomplete.unrecognized_cefi_assets (the symbol, or the TrueX asset id when TrueX could not name it) instead of leaving them out silently. They still have no row and count in no total. |
| 2026-10-20 | Market data WS | v0.0.4 | Price candles carry product_type (spot or perp). |
| 2026-10-19 | Market data WS | v0.0.3 | Per-symbol price, candles and reference topics; per-connection topic limit. |
| 2026-10-15 | Gateway | v1.40.0 | GET /portfolio adds the Strategies wallet as strategies (its value, cash, free cash, allocation and P&L from the strategy service, or zeros when the user has none) and account_total_usd, the main wallet's total_usd plus the Strategies value. DeFi rows carry allocated, the quantity committed to CeFi trading, which their value and DeFi's totals leave out because the CeFi row holds it. A CeFi row carries in_transit for funds allocated to CeFi trading that TrueX has not yet credited, and its value counts in the totals. incomplete names what could not be read or valued exactly, and a failed read no longer fails the request: when DeFi, TrueX or pricing cannot be read the other legs' rows are still returned, incomplete.defi_unavailable or incomplete.cefi_unavailable is set, and every aggregate is null; a failed Strategies read returns strategies: null with incomplete.strategies_unavailable. total_usd, balances_usd, cash_usd, change_24h_usd, change_24h_pct, unrealized_pnl_usd and realized_pnl_usd are now nullable. |
| 2026-10-15 | Institutional WS | v1.0.12 | Documented ES256 API keys as the recommended subscription auth and HMAC as legacy. |
| 2026-10-14 | Institutional WS | v1.0.11 | Added INDEX channel streaming the exchange's own view of a price index (SNAPSHOT/UPDATE + SNAPSHOT_COMPLETE), the level an up/down outcome market opens and resolves against. Items are observable ids as strings. |
| 2026-10-13 | Gateway | v1.39.0 | Breaking: the allocation and release endpoints moved from /cefi/ to /custody/: GET/POST /custody/allocations, GET /custody/allocations/{id}, GET/POST /custody/releases and GET /custody/releases/{id}. The /cefi/ paths are no longer served. Their tag is renamed from CeFi to Custody. |
| 2026-10-13 | FIX | v1.2.0 | Logon (35=A): Username (553) and Password (554) accept ES256 API keys created at app.truemarkets.co or console.truemarkets.co. Password is the base64url raw r || s ES256 signature of the same message HMAC keys sign. HMAC keys keep working while they are phased out. |
| 2026-10-13 | Institutional REST | v1.0.8 | Document JWT bearer auth as the primary method and HMAC as legacy; correct the HMAC header and payload description; REST is reachable over the internet. x-truex-auth-token, x-truex-auth-signature and x-truex-auth-userid are optional, sent only with HMAC. |
| 2026-10-12 | Gateway | v1.38.0 | POST /orders takes an optional venue: smart (the default), cefi or defi. cefi and defi send the order to the asset's listing on that venue, whichever listing asset_id names, and answer 400 when the asset has none there. smart lets the conductor choose between the two listings of an asset that trades on both venues (a CeFi listing that settles to DeFi and the DeFi listing it settles on): a market order goes to the better price after fees, a limit order to CeFi, and when only one venue is open to the user the order goes there. For users not yet released to smart routing, smart sends the order to the listing it names. The response returns venue, where the order went, and route_reason when the conductor chose it. Sign whatever payloads come back, whichever venue was chosen. |
| 2026-10-12 | Institutional WS | v1.0.10 | Added the opt-in HEARTBEAT channel: a HEARTBEAT message after 10 seconds with no other traffic on the connection. |
| 2026-10-08 | Gateway | v1.37.0 | Added the CeFi endpoints. POST /cefi/allocations allocates part of the caller's DeFi wallet balance to CeFi trading without moving tokens, and POST /cefi/releases releases it again; both answer 202, and GET /cefi/allocations/{id} and GET /cefi/releases/{id} report the outcome. Added POST /paper/deposits and POST /paper/withdrawals, served only in non-production paper-trading environments, which add test funds to the caller's paper wallet (allocating them to CeFi trading by default) and send test funds back out. |
| 2026-10-08 | Institutional REST | v1.0.7 | Add client fees endpoint. |
| 2026-10-06 | Gateway | v1.36.0 | CeFi spot listings in GET /assets and GET /assets/{chain}/{address} carry settlement (paxos or defi). A listing settles on defi only when both its base and its instrument's quote asset are DEFI-custodied. Orders on a defi listing require only a CeFi trading account; orders on a paxos listing still require Paxos KYC, and either missing answers 403 with code kyc_required. |
| 2026-10-06 | Account | v1.20.0 | Added GET /me/trading, which reports the caller's wallets, the CeFi and DeFi venues they can trade on, and the custody rails their CeFi trades can settle on. It accepts TM-On-Behalf-Of. GET /kyc/status no longer returns cefi_trading_account; read trading.cefi.enabled from GET /me/trading instead. |
| 2026-10-06 | Market data REST | v0.18.0 | Every operation has a stable operationId (getPrices, getPriceHistory, listMarketCaps, …), so generated client method names change; getV1DefiMarketPricesIndicators and getV1CefiMarketPricesIndicators are now getPriceIndicators and getCefiPriceIndicators. |
| 2026-10-05 | Gateway | v1.35.0 | CeFi spot listings in GET /assets and GET /assets/{chain}/{address} carry cefi_instrument, the TrueX instrument symbol the listing trades on (e.g. NVDAC-USDC). A CeFi order's quote_asset is its listing's instrument quote, and a buy short of a non-PYUSD quote answers 422 with code insufficient_balance instead of bridging. |
| 2026-10-05 | Gateway | v1.33.1 | Authentication describes the Gateway and Trading API credential paths separately: an organization token lasts one hour with no refresh token, and a Gateway client signs payloads with each user's signer key. UnsignedPayload and the execute requests say which bytes to sign and what one signatures entry contains, and organization_id says where the id comes from. |
| 2026-10-05 | Account | v1.17.1 | Authentication describes the Gateway and Trading API credential paths separately: an organization token lasts one hour with no refresh token, and a Gateway client signs payloads with each user's signer key. organization_id says where the id comes from. |
| 2026-10-05 | Auth | v1.3.2 | Authentication describes the Gateway and Trading API credential paths separately. An organization key's token lasts one hour with no refresh token, and organization_id says where the id comes from. |
| 2026-10-01 | FIX | v1.1.3 | Logon (35=A): an internal authentication outage rejects the Logon with SessionRejectReason (373) 99 and Text (58) "Authentication temporarily unavailable". ResendRequest (35=2): if stored messages can't be read, the exchange sends Logout (35=5) instead of a gap fill; reconnect and re-request. |
| 2026-10-01 | FIX | v1.1.2 | BusinessReject (35=j): unsupported message types get BusinessRejectReason (380) 3 on every session, and drop copy requests during startup get 4. |
| 2026-09-30 | FIX | v1.1.1 | ExecutionReport (35=8) and OrderCancelReject (35=9): replaced orders report OrdStatus (39) 0 or 1 instead of 5. A cancel or replace that arrives after the order finished gets one OrderCancelReject with CxlRejReason (102) 0. |
| 2026-09-29 | Gateway | v1.32.0 | POST /quotes returns notional, the quote asset amount the order is expected to execute, and fee, the expected taker fee in quote asset units. qty is documented as the base asset quantity for every side and qty_unit, which is what it has always returned. |
| 2026-09-29 | Gateway | v1.31.0 | Chain accepts robinhood (Robinhood Chain, an Arbitrum-based Ethereum L2) for DeFi orders, alongside solana, base, hypercore-spot, and hypercore-perp. |
| 2026-09-28 | Gateway | v1.31.1 | Declared TM-On-Behalf-Of as a header parameter on every user route, documented acting for a user under Authentication, and listed the 400, 401, 403 and 500 responses every user route can return. |
| 2026-09-28 | Account | v1.17.0 | Grouped POST/GET /organizations/{organization_id}/users and GET /organizations/{organization_id}/users/{user_id} under a public Organizations tag. |
| 2026-09-15 | Market data REST | v0.15.0 | GET /v1/defi/market/prices accepts asset_class, matching prices/history and prices/candles; fixes a symbol listed on both spot and perp always returning the perp series. |
| 2026-09-02 | Institutional REST | v1.0.6 | Remove the deprecated /api/v1/ paths. |
| 2026-08-27 | Gateway | v1.30.0 | Added GET /assets/{chain}/{address}, which returns one catalog listing in the same shape GET /assets returns, replacing the retired DeFi-service asset lookup. Chain and address match case-insensitively. |
| 2026-08-19 | Gateway | v1.28.0 | Added GET /transactions, one paginated feed of the caller's orders, transfers, and ramps, so clients no longer merge the per-type endpoints themselves. Order responses carry qty_unit. |
| 2026-08-18 | Gateway | v1.27.0 | GET /assets/availability accepts an optional bearer token and resolves availability for the authenticated caller when one is supplied. |
| 2026-08-17 | Gateway | v1.26.0 | POST /ramps accepts direction=onramp, which buys crypto with fiat and returns the provider page in redirect_url. Adds the onramp-only payment methods APPLE_PAY and GOOGLE_PAY, which require the new channel field (web/ios/android). Provider preconditions the caller can clear now answer 422, and an expired phone verification answers 409. The signing relays remain offramp-only. |
| 2026-08-17 | Gateway | v1.25.0 | Trading is restricted by the country the request comes from: POST /orders returns 403 when the asset is not available there. Added GET /assets/availability, which reports the product types and asset classes the caller's country may trade. |
| 2026-08-14 | Gateway | v1.24.0 | Added the ramp endpoints: POST /ramps creates an offramp and tops any shortfall up from the user's CeFi balance, then POST /ramps/{id}/bridge/execute, POST /ramps/{id}/prepare, POST /ramps/{id}/execute, and GET /ramps/{id} carry it to settlement. GET /ramps lists the caller's ramps. The venue is chosen with payment_method; the provider is resolved downstream. |
| 2026-08-14 | Gateway | v1.23.0 | GET /assets accepts product_type (renamed from type, which stays as a deprecated alias) and a new asset_class (crypto, stock) defaulting to crypto. Assets carry asset_class, orthogonal to type: a tokenized stock is an ordinary spot listing. |
| 2026-07-30 | Institutional WS | v1.0.9 | Timestamp validation now allows a 1-second future grace window (accepted window: 15s past to 1s future of server time). Documented how to avoid timestamp-based subscription rejects. |
| 2026-07-29 | Market data REST | v0.11.0 | prices/indicators gained the momentum measures surging_1h, surging_4h, surging_24h and trending_ratio; the surging measures serve on CeFi too, trending_ratio needs a resolution of at least 1h. |
| 2026-07-29 | Market data REST | v0.10.0 | Added GET /v1/defi/market/prices/candles, returning OHLC buckets for tick-backed price sources. prices/indicators gained atr and now rejects a sub-1h resolution for windows over 1d. |
| 2026-07-28 | Institutional WS | v1.0.8 | ERROR confirmations may now carry a message explaining the failure. DROPCOPY subscriptions made while the exchange catalog is still syncing receive a retry message instead of being silently dropped. |
| 2026-07-24 | Gateway | v1.22.0 | Asset listings carry a status (active, preview, sell_only, transfer_only, disabled), enforced on order create. Transfer endpoints document their 400, 403, 404, and 500 responses. |
| 2026-07-23 | Gateway | v1.21.0 | Order responses carry asset_type (spot or perp), separating perp orders from spot orders on the same symbol. |
| 2026-07-20 | Account | v1.11.2 | Account creation and funding endpoints made public and grouped under KYC, Account, Deposits, and Reference. |
| 2026-07-16 | Gateway | v1.20.0 | Added take-profit / stop-loss triggers for Hyperliquid perps, and max_leverage on perp assets in GET /assets. |
| 2026-07-15 | Gateway | v1.19.0 | Perp assets carry hourly market data — funding, open interest, and volume. |
| 2026-07-14 | Institutional WS | v1.0.7 | Added AUCTION channel streaming the opening-auction indicative (SNAPSHOT/UPDATE + SNAPSHOT_COMPLETE). The payload carries a type discriminator (currently always OPENING). |
| 2026-07-10 | Account | v1.11.1 | Document org scope reads and writes are org-wide for any member, not org-admins only. |
| 2026-07-09 | FIX | v1.1.0 | MarketDataSnapshotFullRefresh (35=W): MDEntryType (269) 4, Opening Price, carries the opening auction's indicative price and matched volume. |
| 2026-07-08 | Gateway | v1.18.0 | GET /assets accepts a type parameter gating perp assets. Failed CeFi orders carry failure_reason. |
| 2026-07-08 | Institutional WS | v1.0.6 | Canonical endpoint moved to wss://api.truemarkets.co/v1/cefi/market; legacy wss://api.truex.co/api/v1 deprecated (still supported). Authenticated signatures accept the canonical or legacy path. Documented retail ES256 subscription auth. |
| 2026-07-08 | Market data REST | v0.8.0 | Price history, range, and point endpoints accept asset_class, serving historical prices for Hyperliquid perps. |
| 2026-07-07 | Gateway | v1.17.0 | POST /orders can return 422 when an asset cannot be resolved. |
| 2026-07-01 | Gateway | v1.16.0 | Added GET /positions for read-only Hyperliquid perp positions, and POST /orders/all/cancel for CeFi mass cancels. |
| 2026-06-30 | Gateway | v1.15.1 | Documented the insufficient-balance case: a DeFi order the account cannot fund returns the quote with an Insufficient balance entry in quote.issues, an empty order_id, and no payloads. |
| 2026-06-29 | Account | v1.9.3 | Deposit read endpoints grouped under the Deposits tag. |
| 2026-06-29 | Auth | v1.3.1 | GET /health and GET /.well-known/jwks.json marked internal. POST /api-key/token and POST /token/refresh consolidated under one Authentication tag. |
| 2026-06-26 | Gateway | v1.15.0 | Added POST /orders/{id}/cancel and /cancel/execute for Hyperliquid limit orders. DELETE /orders/{id} is deprecated. |
| 2026-06-26 | Market data WS | v0.0.2 | Topic-based subscriptions; stream messages carry the concrete topic. |
| 2026-06-25 | Gateway | v1.14.0 | Perp orders accept leverage (1–50, isolated margin) and reduce_only. |
| 2026-06-24 | Gateway | v1.13.0 | Base path moved to /v1/gateway; /v1/conductor continues to work but is deprecated. Added PATCH /orders/{id} to modify a CeFi order. |
| 2026-06-23 | Account | v1.9.1 | Published to the public docs site with only the deposit endpoints exposed; KYC, referral, organization, and Paxos operations marked internal. |
| 2026-06-18 | Gateway | v1.12.0 | Breaking: GET /balances unified with GET /balances/unified and now returns the unified shape. Hyperliquid limit orders can rest on-chain by supplying a DeFi chain. |
| 2026-06-17 | Gateway | v1.11.1 | GET /orders defaults to all venues (cefi,defi) instead of cefi. |
| 2026-06-15 | Gateway | v1.11.0 | quote_asset is no longer required; DeFi resolves the quote asset per chain. |
| 2026-06-12 | Gateway | v1.10.0 | Chain accepts hypercore-spot and hypercore-perp alongside solana and base. |
| 2026-06-10 | Gateway | v1.9.0 | GET /orders accepts a venue filter. |
| 2026-06-01 | Account | v1.9.0 | Per-recipient referral rewards gained payment_status, distinguishing a queued reward from a paid one. |
| 2026-05-20 | FIX | v1.0.2 | Document TrdMatchID (880) on execution reports and update many fields to match implementation. |
| 2026-05-18 | Gateway | v1.8.0 | Added GET /orders/{id} and order fee reporting. |
| 2026-05-12 | Market data REST | v0.7.1 | Published production and UAT base URLs. |
| 2026-05-11 | Account | v1.6.0 | Referral status gained payment_status (pending, queued, paid, failed, voided). reward_queued retained for back-compat. |
| 2026-05-11 | Market data REST | v0.7.0 | Added GET /v1/cefi/market/prices/history and /prices/range. CeFi history and range now report bid/ask midpoints from the latest EBBO snapshot rather than last-trade prices. |
| 2026-05-09 | Account | v1.5.1 | Spec marked internal; not published to the public docs site. |
| 2026-05-07 | Market data REST | v0.6.0 | Breaking: the WebSocket endpoint was removed from this document; it is described by the Market Data WebSocket AsyncAPI spec. |
| 2026-05-07 | Market data WS | v0.0.1 | Initial release. |
| 2026-05-05 | Institutional REST | v1.0.5 | Add /v1/cefi/ path prefix. Deprecate /api/v1/ paths. |
| 2026-05-05 | Market data REST | v0.5.1 | Operations grouped under Prices and Market Cap. The health endpoint was removed from the public reference. |
| 2026-05-01 | Gateway | v1.7.3 | Expanded the order lifecycle documentation. |
| 2026-04-27 | Gateway | v1.7.2 | Aligned the authentication documentation with the API-key JWT flow. |
| 2026-04-27 | Auth | v1.2.2 | First-party browser flows (passkey, magic link, one-time code, Sign in with Apple, JumpCloud SSO, credential management) marked internal. The public reference now covers the API-key token flow. |
| 2026-04-24 | Gateway | v1.7.1 | Published the UAT base URL and documented credentials and quick start. |
| 2026-04-24 | Auth | v1.2.1 | Published production and UAT base URLs and documented the API-key JWT flow end to end. |
| 2026-04-23 | Gateway | v1.7.0 | Assets carry network details for CeFi venues. |
| 2026-04-21 | Gateway | v1.6.0 | Added transfers: POST /transfers, POST /transfers/{id}/execute, GET /transfers, and GET /transfers/{id}. |
| 2026-04-13 | Gateway | v1.5.1 | Operations grouped under Quotes, Orders, Assets, and Balances. |
| 2026-04-09 | Institutional WS | v1.0.5 | Added SNAPSHOT_COMPLETE update type with item field — sent per-item after snapshot delivery. |
| 2026-04-07 | Institutional WS | v1.0.4 | Add text field to order reports. |
| 2026-04-01 | Gateway | v1.5.0 | Added GET /assets, the unified asset catalog across venues. |
| 2026-03-27 | Gateway | v1.4.0 | Added GET /balances/unified. |
| 2026-03-19 | Gateway | v1.3.0 | Added DELETE /orders/{id} to cancel an order, and a status filter on GET /orders returning both in-flight and settled orders. |
| 2026-03-17 | Gateway | v1.2.0 | Added limit orders — order type accepts limit and requires price with qty_unit: base. |
| 2026-03-16 | Auth | v1.2.0 | Added credential management: POST /api-key/register, POST /api-key/token, GET /api-key/, PUT/DELETE /api-key/{id}, and the matching /passkey/ endpoints. |
| 2026-03-12 | Institutional REST | v1.0.4 | Compute quote now works for both base and qoute bases. |
| 2026-03-04 | Account | v1.2.0 | Prove prefill accepts a flow type, supporting the desktop KYC flow. |
| 2026-02-26 | Gateway | v1.1.0 | Added settled order history with cursor pagination. |
| 2026-02-23 | Institutional WS | v1.0.3 | Added UNSUBSCRIBE_NO_AUTH and clarified no-auth request requirements on authenticated sessions. |
| 2026-02-10 | Account | v1.1.1 | Breaking: reward_distributed renamed to reward_queued on the referral status response. |
| 2026-02-10 | Institutional WS | v1.0.2 | Clarified authentication/signature rules and subscription field requirements. |
| 2026-02-05 | Gateway | v1.0.1 | Paths are now relative to the service base URL rather than repeating the prefix. |
| 2026-02-03 | Account | v1.0.0 | Initial release. KYC inquiries and status, Prove prefill, CDD, Paxos account setup, referrals, and onboarding reference data. |
| 2026-02-02 | Gateway | v1.0.0 | Initial release. Quotes, order create/execute/list/status, and balances. |
| 2026-01-28 | Institutional WS | v1.0.1 | Added DROPCOPY channel for order drop copy. |
| 2026-01-27 | Institutional REST | v1.0.3 | Pluralize all endpoints. Deprecate singular versions. |
| 2026-01-24 | Institutional REST | v1.0.2 | Add API versioning support and versions endpoint. |
| 2025-12-11 | Auth | v1.0.0 | Initial release. Passkey registration and authentication, email magic link and one-time code, Sign in with Apple, JumpCloud SSO, token refresh, and JWKS. |
| 2025-12-11 | Market data REST | v0.0.1 | Initial release. Health, current prices, and historical prices. |
| 2025-11-05 | FIX | v1.0.1. | Add drop copy documentation. |
| 2025-10-24 | Institutional REST | v1.0.1 | Add gateway health endpoint. |
| 2025-10-16 | FIX | v1.0.0 | Initial Release. |
| 2025-10-16 | Institutional REST | v1.0.0 | Initial Release. |
| 2025-10-16 | Institutional WS | v1.0.0 | Initial Release. |
- Need help? [email protected]
- Chat with us on Discord
- See what changed in the changelog