Skip to main content
An agent that trades on Limitless is bound by the same rules as a person trading in the app. This page is the developer-facing summary of those rules: the conduct the Terms of Service prohibit, the safeguards the exchange enforces on every order, the safeguards your agent has to enforce on its own, and where to report something that looks wrong.
It applies to every automated path: the MCP server, bots built on the SDKs or agents-starter, and partner integrations placing orders for their own users through the Programmatic API. The Terms govern; this page does not replace them.

Prohibited conduct

The Terms prohibit any activity intended to artificially influence market prices or outcomes. The list below is what that means for an agent. It is not exhaustive, and Limitless may monitor all platform activity and suspend accounts, restrict addresses, or share information with authorities without prior notice. Market making is not on this list. Quoting both sides, cancelling and replacing quotes as fair value moves, and pulling quotes when inventory or risk limits trip are normal. The line is intent: every order your agent rests must be one it is willing to have filled.

What the exchange enforces

These controls run on every order, whether it comes from the app, an SDK, or an assistant. They are what your agent can rely on.
Cancel through the API, never on-chain. Legitimate cancels go through POST /orders/cancel and the related endpoints. An on-chain OrderCancelled for a CLOB order is treated as a settlement-integrity signal, and the maker address can be blocked from order submission as a result.

What the exchange does not do for you

Design your agent around these gaps rather than assuming they are covered.
  • No per-account exposure or position caps. The only ceiling on an order is your collateral.
  • No account-wide cancel-all. DELETE /orders/all/{slug} cancels one market or one group. A full flatten loops over markets.
  • Self-trade prevention is per profile. Two profiles you control can match each other. That is wash trading, not an STP gap.
  • Attribution is not your audit log. The exchange records who acted, not why. Your decision log is yours to keep.

What your agent must enforce

Each production safeguard below maps to a prohibited behavior or to a failure mode that turns into one. Agents Academy Module 14 walks through the runtime code for all of them; the cross-market strategy in agents-starter ships them configured.

Provenance logging

Send a clientOrderId on every order. It is your idempotency key, up to 128 characters, unique per profile, and it is the identifier you will use in a report or a support thread. Send an x-request-id header too; it is stored with the action record. Keep a local log that links each clientOrderId to the strategy, the signal, and the outcome, so that “why did my agent do this” has an answer.

Spending limits

Enforce hard limits in code, before the SDK call, not in the prompt: a per-order cap, a daily notional budget, a maximum open-position count, and per-market exposure. The cross-market strategy in agents-starter adds a max_loss_usd circuit breaker that cancels all orders and halts, and a max_net_shares inventory guard that stops quoting while hedges catch up. Run with DRY_RUN=true until the limits have tripped in a log and you have read what they said.

Anti-self-trading

If several strategies share one profile, set stpPolicy explicitly. cancel_taker protects resting quotes from your own taker orders; the default cancel_maker protects the taker at the cost of the quote. If you run several profiles, self-trade prevention does not apply between them, and your agent must never route an order that could fill against another account you control. Self-trades also earn no maker rebate, so there is nothing to gain.

Manipulation checks

Before resting an order, the agent should be able to answer yes to “would I accept this fill”. Cancel-replace to track fair value is fine; resting size to change what the book shows is not. Do not treat reward programs as a reason to trade against yourself or to coordinate with another account. Do not create a second account or wallet to get around a block, a rewards exclusion, or a limit.

Kill switches

Wire a stop that works in seconds without touching the LLM: a file flag or panel button the loop checks at the top of every iteration. When it trips, cancel resting orders first, per market, with DELETE /orders/all/{slug}. Halting the loop does not cancel orders already on the book. If the credential itself is suspect, revoke the token with DELETE /api-token/{tokenId}, or revoke the MCP grant from Limitless; both invalidate access immediately.

Reporting suspected abuse

Report market manipulation, a suspected exploit, or an agent that is misbehaving to help@limitless.network with the subject line Market integrity report. Include:
  • the market slug or group slug
  • order ids, clientOrderId values, or transaction hashes
  • UTC timestamps
  • the wallet addresses involved
  • what you observed and why it looks wrong
Reports are handled under the Terms of Service. Detection methods, thresholds, and the outcome of individual reports are not published. For integration questions rather than reports, use the Builders Chat.

Terms of Service

The prohibited-activities section this page summarizes.

Create Order

stpPolicy values and the response fields they produce.

Agents Academy: Kill Switches

Hard limits, budgets, and the file-flag kill switch, in TypeScript and Python.

Build a Trading Agent

The agents-starter template with dry run and circuit breakers built in.