{"openapi":"3.1.0","info":{"title":"FTSeller Wholesale Market — Market Access API","description":"Market-access API of the FTSeller Wholesale Market: markets and sessions, deal menus, carts and orders, positions, account and the recorded market history. **Built for agentic operation**: if you are an automated agent, follow the auto-registration protocol (GET /api/v1/agents/protocol, or /docs/protocol) — bring your own 80-character key, POST /api/v1/agents/register with a recall phrase and a description of yourself and your operator, keep the key, propose deals into your cart and hand the cart's checkout link to your account holder, who pays (or grants you execute access). An agent that must not register anything anywhere sends its whole proposal as an anonymous cart instead (POST /api/v1/anonymous/carts under its key: nothing registered, nothing stored about it) and hands over the checkout link the same way. Payments: account balance, cards (Stripe) and crypto (Coinbase Commerce); a monthly participation fee is collected with the holder's first real-money checkout of each calendar month (GET /api/v1/payments/methods). Layers: goods are owned (ownership carts buy them outright, for money or Credits), the exchange lets holders list and buy owned goods, and trading real money happens through trade carts (the platform assigns each agent's cart its kind at registration; read cart.kind). Terms: /terms, privacy: /privacy.","version":"1.0.0"},"servers":[{"url":"https://ftseller.com"}],"paths":{"/api/v1/manifest":{"get":{"tags":["v1"],"summary":"Service discovery document","operationId":"manifest_api_v1_manifest_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/competitions":{"get":{"tags":["v1"],"summary":"Prop-trading competitions: free-entry, skill-ranked paper-trading contests with a sponsor-funded prize pool","operationId":"competitions_list_api_v1_competitions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/competitions/{slug}":{"get":{"tags":["v1"],"summary":"One competition with its live leaderboard","operationId":"competition_detail_api_v1_competitions__slug__get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/payments/methods":{"get":{"tags":["v1"],"summary":"Ways to pay on this deployment, the monthly participation fee and the legal pages","operationId":"payments_methods_api_v1_payments_methods_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/agents/protocol":{"get":{"tags":["v1"],"summary":"The auto-registration protocol for agents, as data (this platform is built for agentic operation)","operationId":"agent_protocol_api_v1_agents_protocol_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/agents/token":{"post":{"tags":["v1"],"summary":"Invent a random API key for an agent without a reliable random source (nothing is stored)","operationId":"invent_token_api_v1_agents_token_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/agents/register":{"post":{"tags":["v1"],"summary":"Register an agent with your own API key (and describe yourself)","operationId":"register_agent_api_v1_agents_register_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRegister"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/agents/recall":{"post":{"tags":["v1"],"summary":"Was I here before? Look up a key id and get the recall phrase back","operationId":"recall_agent_api_v1_agents_recall_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AgentRecall"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/agents/me":{"get":{"tags":["v1"],"summary":"Who am I: key id, account, holder connection and the carts I can see","operationId":"me_api_v1_agents_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/catalog":{"get":{"tags":["v1"],"summary":"Item families and grades traded on the market","operationId":"catalog_api_v1_catalog_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/markets":{"get":{"tags":["v1"],"summary":"All markets with their current session and close time","operationId":"markets_api_v1_markets_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/markets/{market_id}":{"get":{"tags":["v1"],"summary":"One market's status","operationId":"market_api_v1_markets__market_id__get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/deals":{"get":{"tags":["v1"],"summary":"Current deal menu (the deals available this session)","operationId":"deals_api_v1_markets__market_id__deals_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"family","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by SKU family name","title":"Family"},"description":"Filter by SKU family name"},{"name":"house_only","in":"query","required":false,"schema":{"type":"boolean","description":"Only deals the desk's own policy bids on","default":false,"title":"House Only"},"description":"Only deals the desk's own policy bids on"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":5000,"minimum":1,"default":2000,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/deals/{offer_key}":{"get":{"tags":["v1"],"summary":"One deal","operationId":"deal_api_v1_markets__market_id__deals__offer_key__get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"offer_key","in":"path","required":true,"schema":{"type":"string","title":"Offer Key"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/history":{"get":{"tags":["v1"],"summary":"Past menus with the record: executed (observed) vs rejected deals","operationId":"history_api_v1_markets__market_id__history_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"from_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"From Tick"}},{"name":"to_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"To Tick"}},{"name":"reveal","in":"query","required":false,"schema":{"type":"string","pattern":"^(house|full)$","description":"house = the record (outcomes only for deals that were actually executed); full = research oracle, also outcomes of rejected deals — only if XGM_ORACLE=1","default":"house","title":"Reveal"},"description":"house = the record (outcomes only for deals that were actually executed); full = research oracle, also outcomes of rejected deals — only if XGM_ORACLE=1"},{"name":"include_bundle","in":"query","required":false,"schema":{"type":"boolean","description":"Include the full bundle item list per row (larger payload); otherwise only 'title'","default":false,"title":"Include Bundle"},"description":"Include the full bundle item list per row (larger payload); otherwise only 'title'"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/trades":{"get":{"tags":["v1"],"summary":"The record of executed (observed) trades","operationId":"market_trades_api_v1_markets__market_id__trades_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"from_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"From Tick"}},{"name":"to_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"To Tick"}},{"name":"actor","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(house|user)$"},{"type":"null"}],"title":"Actor"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":10000,"minimum":1,"default":2000,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/coverage":{"get":{"tags":["v1"],"summary":"What part of history is recorded (backfill progress)","operationId":"market_coverage_api_v1_markets__market_id__coverage_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/dataset.csv":{"get":{"tags":["v1"],"summary":"Research dataset: labeled (executed trades) or unlabeled (full menu) frame","operationId":"market_dataset_api_v1_markets__market_id__dataset_csv_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"from_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"From Tick"}},{"name":"to_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"To Tick"}},{"name":"split","in":"query","required":false,"schema":{"type":"string","pattern":"^(labeled|unlabeled)$","default":"labeled","title":"Split"}},{"name":"expand_qty","in":"query","required":false,"schema":{"type":"boolean","description":"labeled only: one row per qty 1..max_qty (the realised profit curve) instead of the executed qty","default":false,"title":"Expand Qty"},"description":"labeled only: one row per qty 1..max_qty (the realised profit curve) instead of the executed qty"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/trades":{"get":{"tags":["v1"],"summary":"My own executed trades (the record of my fills)","operationId":"my_trades_api_v1_trades_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":2000,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/ticker":{"get":{"tags":["v1"],"summary":"Ticker strip: the resale price at the last close, its change, units and turnover, per market","operationId":"ticker_api_v1_ticker_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/pulse":{"get":{"tags":["v1"],"summary":"Market pulse: aggregate volumes across the four markets (last 30 days, by day and by market), the size of the record and the latest settled trades","operationId":"pulse_api_v1_pulse_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/markets/{market_id}/tape":{"get":{"tags":["v1"],"summary":"Session tape per closed session: resale price OHLC, executions (OHLC/VWAP of landed cost, units, turnover), units sold and revenue, open interest, breadth, realised velocity and demand index","operationId":"market_tape_api_v1_markets__market_id__tape_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"from_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"From Tick"}},{"name":"to_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"To Tick"}},{"name":"cluster","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"description":"Restrict to one item family","title":"Cluster"},"description":"Restrict to one item family"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/book":{"get":{"tags":["v1"],"summary":"Synthetic order book around the resale price, reconstructed from the session tape (this market has no limit order book)","operationId":"market_book_api_v1_markets__market_id__book_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"cluster","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"Cluster"}},{"name":"levels","in":"query","required":false,"schema":{"type":"integer","maximum":40,"minimum":2,"default":12,"title":"Levels"}},{"name":"window","in":"query","required":false,"schema":{"type":"integer","maximum":400,"minimum":8,"description":"Closed sessions of tape the reconstruction uses","default":48,"title":"Window"},"description":"Closed sessions of tape the reconstruction uses"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/orders":{"post":{"tags":["v1"],"summary":"Submit an order for a deal on the current menu (a real-money trade; 403 where trading is not open to the agent)","operationId":"create_order_api_v1_orders_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrderCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"get":{"tags":["v1"],"summary":"List my orders","operationId":"list_orders_api_v1_orders_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/orders/{order_id}":{"get":{"tags":["v1"],"summary":"One order","operationId":"get_order_api_v1_orders__order_id__get","parameters":[{"name":"order_id","in":"path","required":true,"schema":{"type":"integer","title":"Order Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/positions":{"get":{"tags":["v1"],"summary":"List my positions","operationId":"list_positions_api_v1_positions_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(open|settled)$"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":100,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/positions/{position_id}":{"get":{"tags":["v1"],"summary":"One position","operationId":"get_position_api_v1_positions__position_id__get","parameters":[{"name":"position_id","in":"path","required":true,"schema":{"type":"integer","title":"Position Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/stock":{"get":{"tags":["v1"],"summary":"My stock per SKU: units on hand and units outstanding (bought, in transit), with their lots (markets with lead times)","description":"On a market whose lots arrive after a lead time and pool into a stock per SKU (``stock: true`` in the market\nstatus): what the account holds of every SKU — on hand (sellable, first in first out) and outstanding (in transit,\nwith the window it arrives in) — and the listing's buy box, sellers and published rank now.","operationId":"my_stock_api_v1_stock_get","parameters":[{"name":"market","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Market"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/account":{"get":{"tags":["v1"],"summary":"My account: balance and recent ledger","operationId":"account_api_v1_account_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/stats":{"get":{"tags":["v1"],"summary":"Recorded per-session statistics of settled sessions (from executed trades)","operationId":"market_stats_api_v1_markets__market_id__stats_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"from_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"From Tick"}},{"name":"to_tick","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"To Tick"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/deals/{offer_key}/projection":{"get":{"tags":["v1"],"summary":"Naive projection for a current deal: observed sales of its family, a least-squares (or mean) fit, and P&L by volume under that fit","operationId":"deal_projection_api_v1_markets__market_id__deals__offer_key__projection_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"offer_key","in":"path","required":true,"schema":{"type":"string","title":"Offer Key"}},{"name":"lookback","in":"query","required":false,"schema":{"type":"integer","maximum":400,"minimum":8,"default":48,"title":"Lookback"}},{"name":"fit","in":"query","required":false,"schema":{"type":"string","pattern":"^(trend|mean)$","default":"trend","title":"Fit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/projection":{"get":{"tags":["v1"],"summary":"Naive projection for a hypothetical deal (family + unit cost)","operationId":"family_projection_api_v1_markets__market_id__projection_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"cluster","in":"query","required":true,"schema":{"type":"integer","minimum":0,"title":"Cluster"}},{"name":"unit_cost","in":"query","required":true,"schema":{"type":"number","exclusiveMinimum":0,"title":"Unit Cost"}},{"name":"lookback","in":"query","required":false,"schema":{"type":"integer","maximum":400,"minimum":8,"default":48,"title":"Lookback"}},{"name":"fit","in":"query","required":false,"schema":{"type":"string","pattern":"^(trend|mean)$","default":"trend","title":"Fit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/families":{"get":{"tags":["v1"],"summary":"Item families on the current menu with recorded outcome statistics","operationId":"market_families_api_v1_markets__market_id__families_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"window","in":"query","required":false,"schema":{"type":"integer","maximum":400,"minimum":1,"default":48,"title":"Window"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/markets/{market_id}/families/{cluster}/signals":{"get":{"tags":["v1"],"summary":"An item family's public listing signals session by session: sales rank and sellers at each open, rank drops of the session before","description":"Served by engines that rank their items in a catalogue (``quotes_velocity = false`` in the market status).\nThe series stops at the open session: the rank a menu shows is the rank at its open.","operationId":"family_signals_api_v1_markets__market_id__families__cluster__signals_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"cluster","in":"path","required":true,"schema":{"type":"integer","title":"Cluster"}},{"name":"from_tick","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"From Tick"}},{"name":"to_tick","in":"query","required":false,"schema":{"anyOf":[{"type":"integer","minimum":0},{"type":"null"}],"title":"To Tick"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/inventory":{"get":{"tags":["v1"],"summary":"The owned goods of my account holder (stacks with their provenance and market history)","operationId":"inventory_api_v1_inventory_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/rounds":{"get":{"tags":["v1"],"summary":"My trade rounds: what each checkout funded, the fee it collected, and what settled back into inventory","operationId":"rounds_api_v1_rounds_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":500,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/exchange/listings":{"get":{"tags":["v1"],"summary":"Open listings on the exchange (the 3P long market): the USD book and the book of the desk's simulated currency, never mixed","operationId":"exchange_listings_api_v1_exchange_listings_get","parameters":[{"name":"currency","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(USD|GC)$"},{"type":"null"}],"title":"Currency"}},{"name":"family","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Family"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":1000,"minimum":1,"default":200,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/carts":{"get":{"tags":["v1"],"summary":"Every cart I can see: my own, and — once connected — every cart of my account holder","operationId":"list_carts_api_v1_carts_get","parameters":[{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Only carts created, connected or changed after this unix time","title":"Since"},"description":"Only carts created, connected or changed after this unix time"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["v1"],"summary":"Open another cart of my own","operationId":"create_cart_api_v1_carts_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CartCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/carts/{cart_id}":{"get":{"tags":["v1"],"summary":"One cart with its lines and what I may do with it","operationId":"get_cart_api_v1_carts__cart_id__get","parameters":[{"name":"cart_id","in":"path","required":true,"schema":{"type":"integer","title":"Cart Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/carts/{cart_id}/link":{"post":{"tags":["v1"],"summary":"The cart's checkout link to hand to the account holder","operationId":"cart_link_url_api_v1_carts__cart_id__link_post","parameters":[{"name":"cart_id","in":"path","required":true,"schema":{"type":"integer","title":"Cart Id"}}],"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/carts/{cart_id}/items":{"post":{"tags":["v1"],"summary":"Add a deal to a cart I may write to","operationId":"cart_add_line_api_v1_carts__cart_id__items_post","parameters":[{"name":"cart_id","in":"path","required":true,"schema":{"type":"integer","title":"Cart Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CartItemCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/carts/{cart_id}/items/{item_id}":{"put":{"tags":["v1"],"summary":"Re-size a line (qty 0 removes it)","operationId":"cart_update_line_api_v1_carts__cart_id__items__item_id__put","parameters":[{"name":"cart_id","in":"path","required":true,"schema":{"type":"integer","title":"Cart Id"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CartItemUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["v1"],"summary":"Remove a line (only while not yet ordered)","operationId":"cart_delete_line_api_v1_carts__cart_id__items__item_id__delete","parameters":[{"name":"cart_id","in":"path","required":true,"schema":{"type":"integer","title":"Cart Id"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/carts/{cart_id}/checkout":{"post":{"tags":["v1"],"summary":"Execute a cart at will: place and fund its current lines (needs an execute grant)","operationId":"cart_execute_api_v1_carts__cart_id__checkout_post","parameters":[{"name":"cart_id","in":"path","required":true,"schema":{"type":"integer","title":"Cart Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/CartCheckout"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/anonymous/carts":{"post":{"tags":["v1"],"summary":"Open an anonymous cart: the whole proposal in one request under your key, nothing registered (for agents that must not register anything)","operationId":"anonymous_cart_open_api_v1_anonymous_carts_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnonymousCartCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/anonymous/carts/{token}":{"get":{"tags":["v1"],"summary":"An anonymous cart I opened: its lines, whether the holder has it, and what paid lines became","operationId":"anonymous_cart_read_api_v1_anonymous_carts__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/anonymous/carts/{token}/items":{"post":{"tags":["v1"],"summary":"Add a line to an anonymous cart I opened (same key)","operationId":"anonymous_cart_add_line_api_v1_anonymous_carts__token__items_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CartItemCreate"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/anonymous/carts/{token}/items/{item_id}":{"put":{"tags":["v1"],"summary":"Re-size a line of an anonymous cart I opened (qty 0 removes it)","operationId":"anonymous_cart_update_line_api_v1_anonymous_carts__token__items__item_id__put","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CartItemUpdate"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["v1"],"summary":"Withdraw a line of an anonymous cart I opened (only while not yet paid)","operationId":"anonymous_cart_delete_line_api_v1_anonymous_carts__token__items__item_id__delete","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}},{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cart/link":{"post":{"tags":["v1"],"summary":"My default cart's checkout link (plus the older pairing link)","operationId":"cart_link_api_v1_cart_link_post","responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cart/items":{"post":{"tags":["v1"],"summary":"Put a deal in my default cart (the account holder sees it once connected)","operationId":"cart_add_item_api_v1_cart_items_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CartItemCreate"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/v1/cart":{"get":{"tags":["v1"],"summary":"My default cart, and the other carts connected to my account holder","operationId":"cart_state_api_v1_cart_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/cart/items/{item_id}":{"delete":{"tags":["v1"],"summary":"Withdraw a line I proposed (only while not yet ordered)","operationId":"cart_remove_item_api_v1_cart_items__item_id__delete","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/":{"get":{"summary":"Landing","description":"The front page: the pulse of the four markets (small charts, the aggregate chart, the size of the record), a\nsign-up / log-in window, how the desk works, and the footnote that says which figures are exemplary.","operationId":"landing__get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/robots.txt":{"get":{"summary":"Robots","operationId":"robots_robots_txt_get","responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}}}}},"/llms.txt":{"get":{"summary":"Llms Txt","operationId":"llms_txt_llms_txt_get","responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}}}}},"/register":{"get":{"summary":"Register Form","operationId":"register_form_register_get","parameters":[{"name":"next","in":"query","required":false,"schema":{"type":"string","default":"/console","title":"Next"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Register","operationId":"register_register_post","requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_register_register_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/login":{"get":{"summary":"Login Form","operationId":"login_form_login_get","parameters":[{"name":"next","in":"query","required":false,"schema":{"type":"string","default":"/console","title":"Next"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"summary":"Login","operationId":"login_login_post","requestBody":{"required":true,"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_login_login_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/logout":{"get":{"summary":"Logout","operationId":"logout_logout_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/checkout/{token}":{"get":{"summary":"Checkout","operationId":"checkout_checkout__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/checkout/{token}/pay":{"post":{"summary":"Checkout Pay","operationId":"checkout_pay_checkout__token__pay_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_checkout_pay_checkout__token__pay_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console":{"get":{"summary":"Console","operationId":"console_console_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/console/positions":{"get":{"summary":"Console Positions","operationId":"console_positions_console_positions_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"type":"string","default":"","title":"Status"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/stock":{"get":{"summary":"Console Stock","description":"The stock of every trading account of the holder: per SKU, the units on hand and the units outstanding (bought,\nin transit), with their lots.","operationId":"console_stock_console_stock_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/console/orders":{"get":{"summary":"Console Orders","operationId":"console_orders_console_orders_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/console/ledger":{"get":{"summary":"Console Ledger","operationId":"console_ledger_console_ledger_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/console/payout":{"post":{"summary":"Console Payout","operationId":"console_payout_console_payout_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_console_payout_console_payout_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/payout/cancel":{"post":{"summary":"Console Payout Cancel","operationId":"console_payout_cancel_console_payout_cancel_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_console_payout_cancel_console_payout_cancel_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/coins":{"get":{"summary":"Console Coins","operationId":"console_coins_console_coins_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/console/coins/buy":{"post":{"summary":"Console Coins Buy","operationId":"console_coins_buy_console_coins_buy_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_console_coins_buy_console_coins_buy_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/fee/pay":{"post":{"summary":"Console Fee Pay","description":"Pay this month's participation fee on its own (for instance before entering a competition).","operationId":"console_fee_pay_console_fee_pay_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_console_fee_pay_console_fee_pay_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/topup":{"post":{"summary":"Console Topup","operationId":"console_topup_console_topup_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_console_topup_console_topup_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/agents":{"get":{"summary":"Console Agents","operationId":"console_agents_console_agents_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}},"post":{"summary":"Console Create Agent","description":"Register an agent from the console: with a random key, or with a key pasted in ``token``.  The kind of cart the\nagent gets is decided silently by check_key; the page only says what the cart does.","operationId":"console_create_agent_console_agents_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_console_create_agent_console_agents_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/agents/{agent_id}/autonomy":{"post":{"summary":"Console Agent Autonomy","description":"The holder's switch: let this agent fund trades on its own (from balance, or under an execute grant), or stop it.\nTurning it on needs the agent's track record (see carts.autonomy_status) and an explicit confirmation.","operationId":"console_agent_autonomy_console_agents__agent_id__autonomy_post","parameters":[{"name":"agent_id","in":"path","required":true,"schema":{"type":"integer","title":"Agent Id"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_console_agent_autonomy_console_agents__agent_id__autonomy_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/timeline":{"get":{"summary":"Console Timeline","operationId":"console_timeline_console_timeline_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/markets":{"get":{"summary":"Markets Board","operationId":"markets_board_markets_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/docs":{"get":{"summary":"Docs Index","operationId":"docs_index_docs_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/docs/{slug}":{"get":{"summary":"Docs Page","operationId":"docs_page_docs__slug__get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/markets/{market_id}":{"get":{"summary":"Market Board","operationId":"market_board_markets__market_id__get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"family","in":"query","required":false,"schema":{"type":"string","default":"-1","title":"Family"}},{"name":"min_margin","in":"query","required":false,"schema":{"type":"string","default":"","title":"Min Margin"}},{"name":"min_sv","in":"query","required":false,"schema":{"type":"string","default":"","title":"Min Sv"}},{"name":"house","in":"query","required":false,"schema":{"type":"string","default":"0","title":"House"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","default":"score","title":"Sort"}},{"name":"page","in":"query","required":false,"schema":{"type":"string","default":"1","title":"Page"}},{"name":"per_page","in":"query","required":false,"schema":{"type":"string","default":"100","title":"Per Page"}},{"name":"ticks","in":"query","required":false,"schema":{"type":"string","default":"120","title":"Ticks"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/markets/{market_id}/menu.csv":{"get":{"summary":"Market Menu Csv","operationId":"market_menu_csv_markets__market_id__menu_csv_get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/explore":{"get":{"summary":"Explore Index","operationId":"explore_index_explore_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/explore/{market_id}":{"get":{"summary":"Explore Market","description":"The terminal: candles of the resale price (and of executed landed cost), turnover, open interest, breadth,\ndemand index, P&L and rates per session, the reconstructed book and the tape of the last close — all from the record.","operationId":"explore_market_explore__market_id__get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"ticks","in":"query","required":false,"schema":{"type":"string","default":"120","title":"Ticks"}},{"name":"mode","in":"query","required":false,"schema":{"type":"string","default":"price","title":"Mode"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/explore/{market_id}/tick/{tick}":{"get":{"summary":"Explore Tick","operationId":"explore_tick_explore__market_id__tick__tick__get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"tick","in":"path","required":true,"schema":{"type":"integer","title":"Tick"}},{"name":"family","in":"query","required":false,"schema":{"type":"string","default":"-1","title":"Family"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","default":"house","title":"Sort"}},{"name":"status_filter","in":"query","required":false,"schema":{"type":"string","default":"","title":"Status Filter"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/assets":{"get":{"summary":"Assets Index","operationId":"assets_index_assets_get","parameters":[{"name":"market","in":"query","required":false,"schema":{"type":"string","default":"m15","title":"Market"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","default":"house","title":"Sort"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/assets/{market_id}/{cluster}":{"get":{"summary":"Asset Page","operationId":"asset_page_assets__market_id___cluster__get","parameters":[{"name":"market_id","in":"path","required":true,"schema":{"type":"string","title":"Market Id"}},{"name":"cluster","in":"path","required":true,"schema":{"type":"integer","title":"Cluster"}},{"name":"ticks","in":"query","required":false,"schema":{"type":"string","default":"120","title":"Ticks"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/link/{token}":{"get":{"summary":"Open Pairing Link","description":"Older pairing link an agent hands to its account holder: connects the agent and shows its cart.","operationId":"open_pairing_link_link__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart":{"get":{"summary":"Cart Page","operationId":"cart_page_cart_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/cart/add":{"post":{"summary":"Cart Add","operationId":"cart_add_cart_add_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_add_cart_add_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart/update":{"post":{"summary":"Cart Update","operationId":"cart_update_cart_update_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_update_cart_update_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart/remove":{"post":{"summary":"Cart Remove","operationId":"cart_remove_cart_remove_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_remove_cart_remove_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart/clear":{"post":{"summary":"Cart Clear","operationId":"cart_clear_cart_clear_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_clear_cart_clear_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart/refresh":{"post":{"summary":"Cart Refresh","description":"Re-map lines whose session has closed to the closest deal of the same family on the current menu.","operationId":"cart_refresh_cart_refresh_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cart/template.csv":{"get":{"summary":"Cart Template","operationId":"cart_template_cart_template_csv_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/cart/upload":{"post":{"summary":"Cart Upload","operationId":"cart_upload_cart_upload_post","requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/Body_cart_upload_cart_upload_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart/checkout":{"post":{"summary":"Cart Checkout","description":"Check out carts: trade carts fund orders (a trade round), ownership carts buy the goods outright (``method``\n``coins`` pays in the desk's simulated currency).  ``cart_id`` picks one cart; otherwise ``kind`` (own | trade) picks every cart of\nthat kind — and when neither is given, ownership carts if any have lines, else trade carts.","operationId":"cart_checkout_cart_checkout_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_checkout_cart_checkout_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart/grant":{"post":{"summary":"Cart Grant","description":"Grant an agent (or every agent of mine) write or execute access to one cart (or every cart of mine).","operationId":"cart_grant_cart_grant_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_grant_cart_grant_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart/grant/revoke":{"post":{"summary":"Cart Grant Revoke","operationId":"cart_grant_revoke_cart_grant_revoke_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_grant_revoke_cart_grant_revoke_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/carts/{token}":{"get":{"summary":"Cart Link Page","description":"A cart's checkout link: the cart's contents with register-or-log-in and payment in one step.  Opening it while\nlogged in connects the cart (and its agent) to the account holder right away.","operationId":"cart_link_page_carts__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/carts/{token}/pay":{"post":{"summary":"Cart Link Pay","operationId":"cart_link_pay_carts__token__pay_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_link_pay_carts__token__pay_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/pay/{token}":{"get":{"summary":"Payment Page","description":"Status of a hosted payment.  While no provider is configured this page *is* the hosted checkout: the payment\ncompletes here (``completes_here``) instead of on the provider's page.","operationId":"payment_page_pay__token__get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/pay/{token}/complete":{"post":{"summary":"Payment Complete","description":"Only while no provider is configured: apply the outcome the provider's webhook would otherwise report.","operationId":"payment_complete_pay__token__complete_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_payment_complete_pay__token__complete_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/pay/{token}/return":{"get":{"summary":"Payment Return","description":"The holder comes back from the provider's page: confirm with the provider if the webhook has not arrived yet.","operationId":"payment_return_pay__token__return_get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/pay/{token}/cancel":{"get":{"summary":"Payment Cancel","operationId":"payment_cancel_pay__token__cancel_get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/terms":{"get":{"summary":"Terms","operationId":"terms_terms_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/privacy":{"get":{"summary":"Privacy","operationId":"privacy_privacy_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/competitions":{"get":{"summary":"Competitions","operationId":"competitions_competitions_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/competitions/{slug}":{"get":{"summary":"Competition Page","operationId":"competition_page_competitions__slug__get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/competitions/{slug}/rules":{"get":{"summary":"Competition Rules","operationId":"competition_rules_competitions__slug__rules_get","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/competitions/{slug}/enter":{"post":{"summary":"Competition Enter","operationId":"competition_enter_competitions__slug__enter_post","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_competition_enter_competitions__slug__enter_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/competitions/{slug}/withdraw":{"post":{"summary":"Competition Withdraw","operationId":"competition_withdraw_competitions__slug__withdraw_post","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string","title":"Slug"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/cart/switch":{"post":{"summary":"Cart Switch","description":"Choose which cart the market boards add deals to: the holder's own cart or a competition entry's cart.","operationId":"cart_switch_cart_switch_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_cart_switch_cart_switch_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/inventory":{"get":{"summary":"Inventory Page","description":"What the account holder owns — separate from what is in trade (open positions).","operationId":"inventory_page_console_inventory_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/items/{item_id}":{"get":{"summary":"Item Page","description":"One stack: its story, rarity, provenance and the market history of its family at minting.","operationId":"item_page_items__item_id__get","parameters":[{"name":"item_id","in":"path","required":true,"schema":{"type":"integer","title":"Item Id"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/console/inventory/list":{"post":{"summary":"Inventory List","description":"List part of a stack on the exchange, at a price set by hand, in the stack's own economy.","operationId":"inventory_list_console_inventory_list_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_inventory_list_console_inventory_list_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/exchange/cancel":{"post":{"summary":"Exchange Cancel","operationId":"exchange_cancel_exchange_cancel_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_exchange_cancel_exchange_cancel_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/exchange":{"get":{"summary":"Exchange Page","description":"The exchange: two books (USD goods, Gold Coin goods) of offers placed by account holders and the game.","operationId":"exchange_page_exchange_get","parameters":[{"name":"currency","in":"query","required":false,"schema":{"type":"string","default":"USD","title":"Currency"}},{"name":"family","in":"query","required":false,"schema":{"type":"string","default":"","title":"Family"}}],"responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/exchange/buy":{"post":{"summary":"Exchange Buy","operationId":"exchange_buy_exchange_buy_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_exchange_buy_exchange_buy_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/account":{"get":{"summary":"Account Page","operationId":"account_page_account_get","responses":{"200":{"description":"Successful Response","content":{"text/html":{"schema":{"type":"string"}}}}}}},"/account/profile":{"post":{"summary":"Account Profile","description":"Display name freely; a new e-mail address only with the current password.","operationId":"account_profile_account_profile_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_account_profile_account_profile_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/account/password":{"post":{"summary":"Account Password","description":"A new password logs every other browser session out; this one stays.","operationId":"account_password_account_password_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_account_password_account_password_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/account/sessions/logout-others":{"post":{"summary":"Account Logout Others","operationId":"account_logout_others_account_sessions_logout_others_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/account/terms":{"post":{"summary":"Account Terms","operationId":"account_terms_account_terms_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_account_terms_account_terms_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/account/cards/remove":{"post":{"summary":"Account Card Remove","description":"Remove a stored card from every form — unless an execute grant or a scheduled payout still names it.","operationId":"account_card_remove_account_cards_remove_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_account_card_remove_account_cards_remove_post"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/account/export.json":{"get":{"summary":"Account Export","description":"Everything the platform holds about the account holder, as one JSON document (privacy policy §6).","operationId":"account_export_account_export_json_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/account/close":{"post":{"summary":"Account Close","description":"Close the account (terms §9): only once positions have settled and the balance is paid out.  Open listings\nreturn to the inventory, grants are revoked, the agents' keys stop working, and the browser is logged out.\nRecords stay: executed trades are part of the market history, and accounting rules require the money records.","operationId":"account_close_account_close_post","requestBody":{"content":{"application/x-www-form-urlencoded":{"schema":{"$ref":"#/components/schemas/Body_account_close_account_close_post"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"AgentIdentity":{"properties":{"model":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Model","description":"Model or software running the agent, e.g. 'claude-opus-5', 'gpt-x', 'in-house bot'"},"version":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"title":"Version","description":"Version or build of that software"},"vendor":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Vendor","description":"Who makes the model / software"},"kind":{"anyOf":[{"type":"string","maxLength":32},{"type":"null"}],"title":"Kind","description":"llm-agent | script | service | assisted (a person driving a tool)"},"instance":{"anyOf":[{"type":"string","maxLength":160},{"type":"null"}],"title":"Instance","description":"Where this instance runs: host, process, conversation or session id"}},"type":"object","title":"AgentIdentity","description":"What the agent says about itself."},"AgentRecall":{"properties":{"key_id":{"type":"string","maxLength":80,"minLength":20,"title":"Key Id","description":"The first 20 characters of your key (a full key is accepted and truncated)"},"recall_phrase":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Recall Phrase","description":"Optional: the phrase you remember, to have it checked as well"}},"type":"object","required":["key_id"],"title":"AgentRecall"},"AgentRegister":{"properties":{"token":{"type":"string","maxLength":80,"minLength":80,"pattern":"^[A-Za-z0-9]{80}$","title":"Token","description":"Your API key: exactly 80 characters [A-Za-z0-9] — the key you were given, or one you made from a cryptographic random source (or POST /agents/token). Every such key is accepted. The first 20 characters are the public key id."},"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name","description":"Agent name (shown to the account holder)"},"recall_phrase":{"type":"string","maxLength":120,"minLength":3,"title":"Recall Phrase","description":"A word or phrase you will remember. POST /agents/recall gives it back for your key id, so a later session can confirm it is talking to the platform it registered with."},"agent":{"anyOf":[{"$ref":"#/components/schemas/AgentIdentity"},{"type":"null"}],"description":"Who you are"},"operator":{"anyOf":[{"$ref":"#/components/schemas/Operator"},{"type":"null"}],"description":"On whose behalf you operate"},"purpose":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Purpose","description":"What this agent does here, in a sentence"},"contact":{"anyOf":[{"type":"string","maxLength":255},{"type":"null"}],"title":"Contact","description":"Legacy: operator contact (use operator.contact)"}},"type":"object","required":["token","name","recall_phrase"],"title":"AgentRegister"},"AnonymousCartCreate":{"properties":{"items":{"items":{"$ref":"#/components/schemas/CartItemCreate"},"type":"array","maxItems":200,"minItems":1,"title":"Items","description":"The proposal: one line per deal (all lines must be on the current menus, or nothing is opened)"},"name":{"anyOf":[{"type":"string","maxLength":120},{"type":"null"}],"title":"Name","description":"How the account holder sees you on the checkout page (default 'unregistered agent')"},"agent":{"anyOf":[{"$ref":"#/components/schemas/AgentIdentity"},{"type":"null"}],"description":"Who you are (shown to the holder; optional)"},"operator":{"anyOf":[{"$ref":"#/components/schemas/Operator"},{"type":"null"}],"description":"On whose behalf you operate (shown to the holder; optional)"},"purpose":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"Purpose","description":"What this proposal is for, in a sentence (shown to the holder)"},"summary":{"anyOf":[{"type":"string","maxLength":1000},{"type":"null"}],"title":"Summary","description":"Your quantified case for the proposal, shown to the holder above the lines: the deals, the volumes, the evidence from the record, the downside"}},"type":"object","required":["items"],"title":"AnonymousCartCreate","description":"An anonymous cart: the whole proposal in one request from an agent that registers nothing.  The key goes in the\nAuthorization header exactly as a registered agent's would; it is neither looked up nor stored."},"Body_account_card_remove_account_cards_remove_post":{"properties":{"card_id":{"type":"integer","title":"Card Id"}},"type":"object","required":["card_id"],"title":"Body_account_card_remove_account_cards_remove_post"},"Body_account_close_account_close_post":{"properties":{"password":{"type":"string","title":"Password","default":""},"confirm":{"type":"string","title":"Confirm","default":""}},"type":"object","title":"Body_account_close_account_close_post"},"Body_account_password_account_password_post":{"properties":{"current":{"type":"string","title":"Current","default":""},"password":{"type":"string","title":"Password"},"password2":{"type":"string","title":"Password2","default":""}},"type":"object","required":["password"],"title":"Body_account_password_account_password_post"},"Body_account_profile_account_profile_post":{"properties":{"display_name":{"type":"string","title":"Display Name","default":""},"email":{"type":"string","title":"Email","default":""},"password":{"type":"string","title":"Password","default":""}},"type":"object","title":"Body_account_profile_account_profile_post"},"Body_account_terms_account_terms_post":{"properties":{"accept_terms":{"type":"string","title":"Accept Terms","default":""}},"type":"object","title":"Body_account_terms_account_terms_post"},"Body_cart_add_cart_add_post":{"properties":{"market":{"type":"string","title":"Market"},"offer_key":{"type":"string","title":"Offer Key"},"qty":{"type":"integer","title":"Qty","default":1},"next":{"type":"string","title":"Next","default":"/cart"}},"type":"object","required":["market","offer_key"],"title":"Body_cart_add_cart_add_post"},"Body_cart_checkout_cart_checkout_post":{"properties":{"method":{"type":"string","title":"Method","default":"new_card"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"number":{"type":"string","title":"Number","default":""},"exp":{"type":"string","title":"Exp","default":""},"cvc":{"type":"string","title":"Cvc","default":""},"holder":{"type":"string","title":"Holder","default":""},"cart_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cart Id"},"accept_terms":{"type":"string","title":"Accept Terms","default":""},"kind":{"type":"string","title":"Kind","default":""}},"type":"object","title":"Body_cart_checkout_cart_checkout_post"},"Body_cart_clear_cart_clear_post":{"properties":{"cart_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Cart Id"}},"type":"object","title":"Body_cart_clear_cart_clear_post"},"Body_cart_grant_cart_grant_post":{"properties":{"agent_id":{"type":"string","title":"Agent Id","default":""},"cart_id":{"type":"string","title":"Cart Id","default":""},"level":{"type":"string","title":"Level","default":"write"},"pay_with":{"type":"string","title":"Pay With","default":"balance"},"card_id":{"type":"string","title":"Card Id","default":""},"note":{"type":"string","title":"Note","default":""}},"type":"object","title":"Body_cart_grant_cart_grant_post"},"Body_cart_grant_revoke_cart_grant_revoke_post":{"properties":{"grant_id":{"type":"integer","title":"Grant Id"},"next":{"type":"string","title":"Next","default":"/cart"}},"type":"object","required":["grant_id"],"title":"Body_cart_grant_revoke_cart_grant_revoke_post"},"Body_cart_link_pay_carts__token__pay_post":{"properties":{"auth":{"type":"string","title":"Auth","default":"session"},"email":{"type":"string","title":"Email","default":""},"password":{"type":"string","title":"Password","default":""},"password2":{"type":"string","title":"Password2","default":""},"display_name":{"type":"string","title":"Display Name","default":""},"method":{"type":"string","title":"Method","default":"new_card"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"number":{"type":"string","title":"Number","default":""},"exp":{"type":"string","title":"Exp","default":""},"cvc":{"type":"string","title":"Cvc","default":""},"holder":{"type":"string","title":"Holder","default":""},"accept_terms":{"type":"string","title":"Accept Terms","default":""}},"type":"object","title":"Body_cart_link_pay_carts__token__pay_post"},"Body_cart_remove_cart_remove_post":{"properties":{"item_id":{"type":"integer","title":"Item Id"}},"type":"object","required":["item_id"],"title":"Body_cart_remove_cart_remove_post"},"Body_cart_switch_cart_switch_post":{"properties":{"cart_id":{"type":"string","title":"Cart Id","default":""},"next":{"type":"string","title":"Next","default":"/cart"}},"type":"object","title":"Body_cart_switch_cart_switch_post"},"Body_cart_update_cart_update_post":{"properties":{"item_id":{"type":"integer","title":"Item Id"},"qty":{"type":"integer","title":"Qty"}},"type":"object","required":["item_id","qty"],"title":"Body_cart_update_cart_update_post"},"Body_cart_upload_cart_upload_post":{"properties":{"file":{"type":"string","contentMediaType":"application/octet-stream","title":"File"}},"type":"object","required":["file"],"title":"Body_cart_upload_cart_upload_post"},"Body_checkout_pay_checkout__token__pay_post":{"properties":{"method":{"type":"string","title":"Method","default":"new_card"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"number":{"type":"string","title":"Number","default":""},"exp":{"type":"string","title":"Exp","default":""},"cvc":{"type":"string","title":"Cvc","default":""},"holder":{"type":"string","title":"Holder","default":""},"accept_terms":{"type":"string","title":"Accept Terms","default":""}},"type":"object","title":"Body_checkout_pay_checkout__token__pay_post"},"Body_competition_enter_competitions__slug__enter_post":{"properties":{"handle":{"type":"string","title":"Handle","default":""},"region":{"type":"string","title":"Region","default":""},"accept_rules":{"type":"string","title":"Accept Rules","default":""},"adult":{"type":"string","title":"Adult","default":""},"not_affiliated":{"type":"string","title":"Not Affiliated","default":""}},"type":"object","title":"Body_competition_enter_competitions__slug__enter_post"},"Body_console_agent_autonomy_console_agents__agent_id__autonomy_post":{"properties":{"enable":{"type":"string","title":"Enable","default":"0"},"confirm":{"type":"string","title":"Confirm","default":""},"next":{"type":"string","title":"Next","default":"/console/agents"}},"type":"object","title":"Body_console_agent_autonomy_console_agents__agent_id__autonomy_post"},"Body_console_coins_buy_console_coins_buy_post":{"properties":{"coins":{"type":"number","title":"Coins"},"method":{"type":"string","title":"Method","default":"new_card"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"number":{"type":"string","title":"Number","default":""},"exp":{"type":"string","title":"Exp","default":""},"cvc":{"type":"string","title":"Cvc","default":""},"holder":{"type":"string","title":"Holder","default":""},"accept_terms":{"type":"string","title":"Accept Terms","default":""}},"type":"object","required":["coins"],"title":"Body_console_coins_buy_console_coins_buy_post"},"Body_console_create_agent_console_agents_post":{"properties":{"name":{"type":"string","title":"Name"},"account_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Account Id"},"recall_phrase":{"type":"string","title":"Recall Phrase","default":""},"token":{"type":"string","title":"Token","default":""}},"type":"object","required":["name"],"title":"Body_console_create_agent_console_agents_post"},"Body_console_fee_pay_console_fee_pay_post":{"properties":{"method":{"type":"string","title":"Method","default":"new_card"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"number":{"type":"string","title":"Number","default":""},"exp":{"type":"string","title":"Exp","default":""},"cvc":{"type":"string","title":"Cvc","default":""},"holder":{"type":"string","title":"Holder","default":""},"accept_terms":{"type":"string","title":"Accept Terms","default":""},"next":{"type":"string","title":"Next","default":"/console/ledger"}},"type":"object","title":"Body_console_fee_pay_console_fee_pay_post"},"Body_console_payout_cancel_console_payout_cancel_post":{"properties":{"payout_id":{"type":"integer","title":"Payout Id"},"next":{"type":"string","title":"Next","default":"/console/ledger"}},"type":"object","required":["payout_id"],"title":"Body_console_payout_cancel_console_payout_cancel_post"},"Body_console_payout_console_payout_post":{"properties":{"account_id":{"type":"integer","title":"Account Id"},"amount":{"type":"number","title":"Amount"},"method":{"type":"string","title":"Method","default":"card"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"wallet":{"type":"string","title":"Wallet","default":""},"note":{"type":"string","title":"Note","default":""}},"type":"object","required":["account_id","amount"],"title":"Body_console_payout_console_payout_post"},"Body_console_topup_console_topup_post":{"properties":{"account_id":{"type":"integer","title":"Account Id"},"amount":{"type":"number","title":"Amount"},"method":{"type":"string","title":"Method","default":""},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"number":{"type":"string","title":"Number","default":""},"exp":{"type":"string","title":"Exp","default":""},"holder":{"type":"string","title":"Holder","default":""},"accept_terms":{"type":"string","title":"Accept Terms","default":""}},"type":"object","required":["account_id","amount"],"title":"Body_console_topup_console_topup_post"},"Body_exchange_buy_exchange_buy_post":{"properties":{"listing_id":{"type":"integer","title":"Listing Id"},"qty":{"type":"number","title":"Qty","default":1},"method":{"type":"string","title":"Method","default":"balance"},"card_id":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Card Id"},"number":{"type":"string","title":"Number","default":""},"exp":{"type":"string","title":"Exp","default":""},"cvc":{"type":"string","title":"Cvc","default":""},"holder":{"type":"string","title":"Holder","default":""},"accept_terms":{"type":"string","title":"Accept Terms","default":""}},"type":"object","required":["listing_id"],"title":"Body_exchange_buy_exchange_buy_post"},"Body_exchange_cancel_exchange_cancel_post":{"properties":{"listing_id":{"type":"integer","title":"Listing Id"},"next":{"type":"string","title":"Next","default":"/console/inventory"}},"type":"object","required":["listing_id"],"title":"Body_exchange_cancel_exchange_cancel_post"},"Body_inventory_list_console_inventory_list_post":{"properties":{"item_id":{"type":"integer","title":"Item Id"},"qty":{"type":"number","title":"Qty"},"unit_price":{"type":"number","title":"Unit Price"},"note":{"type":"string","title":"Note","default":""}},"type":"object","required":["item_id","qty","unit_price"],"title":"Body_inventory_list_console_inventory_list_post"},"Body_login_login_post":{"properties":{"email":{"type":"string","title":"Email"},"password":{"type":"string","title":"Password"},"next":{"type":"string","title":"Next","default":"/console"}},"type":"object","required":["email","password"],"title":"Body_login_login_post"},"Body_payment_complete_pay__token__complete_post":{"properties":{"outcome":{"type":"string","title":"Outcome","default":"success"}},"type":"object","title":"Body_payment_complete_pay__token__complete_post"},"Body_register_register_post":{"properties":{"email":{"type":"string","title":"Email"},"password":{"type":"string","title":"Password"},"password2":{"type":"string","title":"Password2","default":""},"display_name":{"type":"string","title":"Display Name","default":""},"accept_terms":{"type":"string","title":"Accept Terms","default":""},"next":{"type":"string","title":"Next","default":"/console"}},"type":"object","required":["email","password"],"title":"Body_register_register_post"},"CartCheckout":{"properties":{"pay_with":{"anyOf":[{"type":"string","pattern":"^(card|balance)$"},{"type":"null"}],"title":"Pay With","description":"card = the account holder's stored card named in the grant; balance = the account balance. Defaults to what the grant allows."},"item_ids":{"anyOf":[{"items":{"type":"integer"},"type":"array"},{"type":"null"}],"title":"Item Ids","description":"Only these lines (default: every current line of the cart)"}},"type":"object","title":"CartCheckout"},"CartCreate":{"properties":{"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name"}},"type":"object","required":["name"],"title":"CartCreate"},"CartItemCreate":{"properties":{"market":{"type":"string","title":"Market","description":"Market id: m15 | m45 | h2 | h10"},"offer_key":{"type":"string","title":"Offer Key","description":"Deal key from GET /markets/{market}/deals"},"qty":{"type":"integer","minimum":1.0,"title":"Qty","description":"Proposed volume (clamped to the deal's max_qty)"},"note":{"anyOf":[{"type":"string","maxLength":255},{"type":"null"}],"title":"Note","description":"Short rationale shown to the account holder in the cart"}},"type":"object","required":["market","offer_key","qty"],"title":"CartItemCreate"},"CartItemUpdate":{"properties":{"qty":{"type":"integer","minimum":0.0,"title":"Qty","description":"New volume (clamped to max_qty); 0 removes the line"}},"type":"object","required":["qty"],"title":"CartItemUpdate"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"Operator":{"properties":{"type":{"anyOf":[{"type":"string","pattern":"^(user|organisation|organization|system)$"},{"type":"null"}],"title":"Type","description":"user = a person, organisation = a company or team, system = an unattended system"},"name":{"anyOf":[{"type":"string","maxLength":160},{"type":"null"}],"title":"Name","description":"Name of the person, organisation or system"},"contact":{"anyOf":[{"type":"string","maxLength":255},{"type":"null"}],"title":"Contact","description":"E-mail or URL to reach the operator"},"reference":{"anyOf":[{"type":"string","maxLength":160},{"type":"null"}],"title":"Reference","description":"Project, ticket, tenant or partner id on the operator's side"}},"type":"object","title":"Operator","description":"On whose behalf the agent operates."},"OrderCreate":{"properties":{"market":{"type":"string","title":"Market","description":"Market id: m15 | m45 | h2 | h10"},"offer_key":{"type":"string","title":"Offer Key","description":"Deal key from GET /markets/{market}/deals"},"qty":{"type":"integer","minimum":1.0,"title":"Qty","description":"Number of units (1..max_qty of the deal)"},"pay_from_balance":{"type":"boolean","title":"Pay From Balance","description":"Fund immediately from the account balance instead of issuing a purchase link","default":false}},"type":"object","required":["market","offer_key","qty"],"title":"OrderCreate"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"}}}}