limitless-sdk
Limitless Exchange's own async Python SDK - CLOB and NegRisk orders, WebSocket, MIT.
by Limitless
Last updated
What it is
Limitless Exchange's own Python SDK, and one of the few official venue clients here with a release
as recent as its last commit: twenty versions on PyPI since 0.1.0 on 2025-07-16, the latest 1.1.1
on 2026-09-17, which is also the date of the last commit on main. MIT, not
archived, published in the limitless-labs-group organisation beside the exchange's TypeScript,
Go and Rust SDKs.
It is async throughout - aiohttp for HTTP, python-socketio for streams, pydantic for models,
eth-account, eth-abi and eth-utils for order signing - and it needs Python 3.8 or newer,
which is the widest floor in this category.
What it covers, from the README and the package metadata:
- Markets and pages. Active markets with sorting (
lp_rewards,ending_soon,newest,high_value), single markets, order books, historical data, and a navigation tree with dynamic filters that mirrors the site's own category pages. - Orders. GTC, FAK and FOK on both the CLOB and NegRisk multi-outcome markets, signed automatically, with the venue's contract addresses cached after the first market fetch.
- Portfolio. Authenticated profile reads through
/profiles/me, positions and user history. - Streams. CLOB order book updates, AMM and oracle price updates, position changes, transactions, order events and market lifecycle events.
- Partner flows. Server-wallet child accounts, HMAC-scoped api-token v3 authentication, delegated order placement, withdrawal allowlists and server-wallet redemption. This is the half written for a front end that trades on behalf of its own users, not for an individual.
Availability
The package installs anywhere. What the SDK itself warns about is where you may place an order from: its README states that Limitless restricts order placement from US locations for regulatory and sanctions reasons, and asks builders to verify their location first. Reads are not what is restricted.
That matches the venue card - see limitless - and it is the reason
us_persons is false here where it is true on the single-venue SDKs for US exchanges. No identity
check stands between you and an API key; a geographic one stands between you and a fill.
Pricing
Free, MIT, nothing metered. An API key from a Limitless account is the only requirement, and the exchange does not charge for it.
Fees are charged by the venue, not by the library: Limitless takes 1.5% on the taker side and nothing on the maker side, which is on limitless with the rest of the economics.
Markets & resolution
The SDK resolves nothing; Limitless does, and how it does it is the interesting part of that card rather than this one - Pyth for most markets, a Chainlink time-weighted average for short crypto markets, and the team by hand for custom events.
Two shapes in the data model are worth knowing before writing against it. Markets come in two
kinds - plain CLOB markets and NegRisk groups, where several outcomes share a market and the
order path differs - and the SDK exposes both rather than flattening them. And order payload
fields (makerAmount, takerAmount, price, salt) come back as numeric strings, which the
client parses without going through a float; the README calls this out as IEEE-safe parsing, which
tells you what went wrong before it was fixed.
Integrations
Seven runtime dependencies, of which three are the Ethereum signing stack. No CLI in this package
- Limitless publishes a separate Rust CLI in the same organisation, which carries no licence file and is not listed here - and no MCP server.
The same team publishes a TypeScript SDK on npm (@limitless-exchange/sdk, 1.1.0 on 2026-08-11)
plus Go and Rust SDKs, all MIT, all last touched in August 2026. The Python package is the one
that shipped most recently.
For the underlying HTTP surface without any client, see limitless-api.
Limitations
The README lags the release. The version banner at the top of the repository's README says
1.0.11 while PyPI serves 1.1.1, and the changelog paragraph beneath it describes the older
release. Read CHANGELOG.md rather than the banner.
Async only. There is no synchronous client, so this is an awkward import inside a script that is otherwise blocking.
Single venue. It speaks Limitless and nothing else; the NegRisk and partner concepts in it do not generalise.
Six stars and a small circle of committers. It is maintained by the exchange and released often, which is what matters, but there is no community around it: if it breaks in a way the exchange has not hit, you are the one who finds out.
No paper mode. Nothing in the package simulates a fill; testing against real markets means real money, which is what the README's own disclaimer says at some length.
Alternatives
pmxt carries Limitless among several venues and is the only multi-venue client here that supports Limitless writes.
limitless-api is the REST and WebSocket surface underneath, which needs no library at all if you are only reading prices.
If the goal is a US-accessible venue rather than this one, the SDKs for the US exchanges are kalshi-python-sync and polymarket-us-python.
Specs
- Interfaces
- API, websocket, Python
- Export
- JSON
- Available in
- Global
- KYC required
- No
- Market subjects
- —
- Resolved by
- Resolves nothing
- Maker fee
- None
- Platforms
- Library
- AI features
- None
- Capabilities
- Order book, Automation, Live trading, Portfolio tracking
- Pricing verified
- Availability verified
- Capabilities verified
Also from Limitless
Background
How this part of the sector works, rather than which product to pick.
- What running a bot does not solve — A bot fixes speed and consistency. Rate limits, a missing rehearsal, a field that stops arriving, a partial fill and a paused market are not coding problems.
- Where your key lives when software trades for you — Four different credentials are all called a key, and they differ in what a copy permits. What the clients in this catalogue ask for, and what to ask them back.
Also worth comparing
- CCXT — One client for seven prediction venues, inside a 104-exchange crypto library.
- PMXT — CCXT-shaped client for prediction markets, with a hosted API and a self-hosted mode.
- polymarket-client — Polymarket's own unified Python SDK - sync and async, data through order signing.
- py-clob-client — Polymarket's own Python CLOB client - archived, and declared non-functional by its README.
- Kalshi Python SDK (sync and async) — Kalshi's current official Python client - weekly releases, Python 3.13 only, no source.
- kalshi-python — Kalshi's own generated Python client - closed-source, and unreleased since September 2025.
FAQ
Is limitless-sdk official?
Yes. It is published in the limitless-labs-group GitHub organisation alongside the exchange's TypeScript, Go and Rust SDKs, and the TypeScript twin is published to npm by an account on the limitless.network domain. Version 1.1.1 reached PyPI on 2026-09-17.
Can I place orders from the United States with it?
The SDK's own README says Limitless restricts order placement from US locations, for regulatory and sanctions reasons, and asks builders to check their location before placing orders. Reading markets is not what is restricted - placing orders is. The venue's own terms are the thing to check, not this note.
Is it synchronous or asynchronous?
Asynchronous only. Every call is awaited, transport is aiohttp and the streams run on python-socketio, so a synchronous script has to drive it through asyncio.run. There is no blocking client in the package.
Does it sign orders locally?
Yes. Order signing uses eth-account and eth-abi in process, with a cached copy of the venue contract addresses so an order can be built without a round trip. The API key authenticates the HTTP session; the signing key never goes anywhere.