bullpen polymarket limit-sell¶
Last updated: July 13, 2026
Place a limit sell order on a prediction market outcome
Usage¶
Live Help¶
Place a limit sell order on a prediction market outcome
Usage: bullpen polymarket limit-sell [OPTIONS] --price <PRICE> --shares <SHARES> <MARKET_SLUG> <OUTCOME>
Arguments:
<MARKET_SLUG>
Market slug
<OUTCOME>
Outcome name
Options:
--output <OUTPUT>
Output format for command results
[possible values: table, json]
--price <PRICE>
Limit price (e.g., "0.65" for 65 cents — valid range depends on market tick size)
--env <ENV>
Target environment to connect to (overrides config.toml)
[env: BULLPEN_ENV=]
[possible values: staging, production]
--shares <SHARES>
Number of shares to sell (minimum 5 CLOB shares). Values are floored down to the CLOB-accepted two-decimal share amount; sub-0.01 residual shares may remain as dust
--config <CONFIG>
Path to a custom config.toml file (overrides $BULLPEN_CONFIG and the default location).
Explicit --config and BULLPEN_CONFIG paths fail closed: if the file is missing, the CLI exits validation instead of silently loading defaults. Credentials still resolve via BULLPEN_HOME, so set BULLPEN_HOME too when isolating a session.
--expiration <EXPIRATION>
Order time-in-force: gtc (Good-Til-Cancelled, default), fok (Fill-Or-Kill), or fak (Fill-And-Kill). gtd is reserved and rejected until explicit expiration timestamps are supported
Possible values:
- gtc: Good-Til-Cancelled: rests on the book until explicitly cancelled
- fok: Fill-Or-Kill: must fill entirely immediately, otherwise cancelled
- gtd: Reserved Good-Til-Date value. Currently rejected until an explicit expiration timestamp is supported
- fak: Fill-And-Kill: fills as much as possible immediately, rest cancelled
[default: gtc]
--post-only
Post-only mode: reject the order if it would fill immediately
--yes
Skip confirmation
--preview
Show order preview without executing
--auto-wrap
Accepted for compatibility; no-op on sells (no collateral consumed)
--read-only
Enable read-only mode: blocks all mutating commands
--non-interactive
Suppress interactive prompts; does NOT imply --yes for money-moving commands
[env: BULLPEN_NON_INTERACTIVE=]
--wallet <WALLET>
Pin the signer to a specific owner EOA (0x…). Does not override the server-selected Safe/Proxy/Deposit Wallet or bypass 1151 safety checks. Use in bot automation to avoid wallet-select races
-h, --help
Print help (see a summary with '-h')
EXAMPLES:
# Preview a resting limit sell without signing or submitting
bullpen polymarket limit-sell will-ronaldo-cry-at-the-world-cup-20260604013616610 No --price 0.001 --shares 10 --preview --output json
# Place a Good-Til-Cancelled limit sell
bullpen polymarket limit-sell will-ronaldo-cry-at-the-world-cup-20260604013616610 No --price 0.001 --shares 10 --yes
# Preview a post-only limit sell from a pinned owner EOA
bullpen polymarket limit-sell will-ronaldo-cry-at-the-world-cup-20260604013616610 No --price 0.001 --shares 10 --post-only --wallet 0xYourOwnerEOA --preview
Example Commands¶
JSON Output¶
Contract: JSON Output Contract.
This command supports --output json, but this generated reference page intentionally does not include a synthetic success schema or example.
Use the live command in your target environment to inspect command-specific success fields. Error output follows the shared JSON output contract linked above.
Error Envelope¶
When a Polymarket CLOB or gasless-relayer rejection coincides with a degraded Polymarket status page, the error envelope may include a polymarket_status object:
{
"polymarket_status": {
"page_status": "HASISSUES",
"status_url": "https://status.polymarket.com",
"affected_components": [
{"name": "CLOB API", "status": "PARTIALOUTAGE"}
],
"advisory": "Polymarket is experiencing issues; this rejection is most likely a Polymarket-side outage."
}
}
The field is omitted on local validation/auth/balance errors and when the status-page fetch times out or reports healthy relevant components.
Schema version: 1 when a command emits schema_version; otherwise treat the current command shape as contract version 1.
Stability¶
Patch releases may add nullable or optional fields. Minor releases may add required fields or increment schema_version. Major releases may remove or rename fields.