limitless-sdk

Limitless Exchange's own async Python SDK - CLOB and NegRisk orders, WebSocket, MIT.

by Limitless

Last updated

US persons
No
Taker fee
None
Settlement
Crypto
Liquidity
CLOB

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 solveA 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 youFour 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

  • CCXTOne client for seven prediction venues, inside a 104-exchange crypto library.
  • PMXTCCXT-shaped client for prediction markets, with a hosted API and a self-hosted mode.
  • polymarket-clientPolymarket's own unified Python SDK - sync and async, data through order signing.
  • py-clob-clientPolymarket'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-pythonKalshi'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.