All notable changes to this project are documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- REST endpoints:
createVault,setReferrer,userPortfolioMargin,exchangeStatus,createSubAccount,subAccountTransfer,userBorrowLendInterest,liquidatable,twapHistory,userTwapSliceFillsByTime,activeAssetData. Brings coverage to 59 of 78 documented info endpoints and 41 of 68 documented exchange actions. - Windows/MSVC support: the SDK now builds under MSVC, with CI covering
windows-latestin the build matrix alongside GCC/Clang/macOS. ApiConfig::validateJsonto opt out ofWebsocketMessageParser's upfront simdjson DOM validation pass once a feed is known-trusted, avoiding a full DOM parse ahead of the on-demand parse on every message.
- Dropped the
secp256k1overlay port now that vcpkg's registry port carries therecoveryfeature this SDK needs, so consumers no longer need a custom overlay to build it.
crackL2BookFast, the specialized fast-pathl2Bookparser; the general simdjson path is now the solel2Bookparser.
Initial release.
- REST API (
RestApi): 53 of 78 documented/infoendpoints and 36 of 68 documented/exchangeactions, each with a synchronous method and anAsync+RestApiListenercounterpart. Covers market data, account/portfolio state, order placement/cancellation/ modification, leverage and margin management, transfers (USD/spot/EVM), vaults, staking and delegation, sub-accounts, borrow/lend, HIP-3 perp/spot deployment, and prediction markets. See the README's coverage tables for the full endpoint-by-endpoint breakdown. - WebSocket API (
WebsocketApi,WebsocketMessageParser): full typed parsing for all 24 documented subscription channels, plus apostmechanism that can carry any info request or signed exchange action over the socket with typed response dispatch. - Signing: EIP-712 typed-data signing for both L1 actions and user-signed actions (transfers, staking, agent approval), shared between REST and WebSocket transports.
- Typed request/response models throughout, replacing raw JSON with
structs and enums for every implemented endpoint and channel. - Docs site: quickstart, a full examples index, and API coverage tables at https://TuxedoFish.github.io/hyperliquid-sdk-cpp/.
- Worked examples for both transports under
examples/, most verified live against testnet. - CI: build matrix across GCC/Clang/macOS, AddressSanitizer + UndefinedBehaviorSanitizer, code coverage via Codecov, CodeQL static analysis, OSV-Scanner dependency scanning, and a scheduled libFuzzer campaign against both message parsers.
- Packaging: CMake install/export targets (
find_package(hyperliquid-sdk)) and a vcpkg manifest for consuming this SDK's own dependencies, withgtestbehind an opt-intestsfeature so library-only consumers never build it. SECURITY.md,CODE_OF_CONDUCT.md, andCONTRIBUTING.mddocumenting the vulnerability reporting process, community standards, and the repeatable pattern for adding new endpoints/channels.