AACFlow

Kalshi

Access prediction markets and trade on Kalshi

Usage Instructions

Integrate Kalshi prediction markets into the workflow. Can get markets, market, events, event, balance, positions, orders, orderbook, trades, candlesticks, fills, series, exchange status, and place/cancel/amend trades.

Tools

kalshi_get_markets

Retrieve a list of prediction markets from Kalshi with all filtering options (V2 - full API response)

Input

ParameterTypeRequiredDescription
statusstringNoFilter by market status: "unopened", "open", "closed", or "settled"
seriesTickerstringNoFilter by series ticker (e.g., "KXBTC", "INX", "FED-RATE")
eventTickerstringNoFilter by event ticker (e.g., "KXBTC-24DEC31", "INX-25JAN03")
limitstringNoNo description
cursorstringNoNo description

Output

ParameterTypeDescription
marketsarrayArray of market objects with all API fields
tickerstringUnique market ticker identifier
event_tickerstringParent event ticker
market_typestringMarket type (binary, etc.)
titlestringMarket title/question
subtitlestringMarket subtitle
yes_sub_titlestringYes outcome subtitle
no_sub_titlestringNo outcome subtitle
open_timestringMarket open time (ISO 8601)
close_timestringMarket close time (ISO 8601)
expiration_timestringContract expiration time
statusstringMarket status (open, closed, settled, etc.)
yes_bidnumberCurrent best yes bid price in cents
yes_asknumberCurrent best yes ask price in cents
no_bidnumberCurrent best no bid price in cents
no_asknumberCurrent best no ask price in cents
last_pricenumberLast trade price in cents
previous_yes_bidnumberPrevious yes bid
previous_yes_asknumberPrevious yes ask
previous_pricenumberPrevious last price
volumenumberTotal volume (contracts traded)
volume_24hnumber24-hour trading volume
liquiditynumberMarket liquidity measure
open_interestnumberOpen interest (outstanding contracts)
resultstringSettlement result (yes, no, null)
cap_strikenumberCap strike for ranged markets
floor_strikenumberFloor strike for ranged markets
categorystringMarket category
cursorstringPagination cursor for fetching more results

kalshi_get_market

Retrieve details of a specific prediction market by ticker (V2 - full API response)

Input

ParameterTypeRequiredDescription
tickerstringYesMarket ticker identifier (e.g., "KXBTC-24DEC31", "INX-25JAN03-T4485.99")

Output

ParameterTypeDescription
marketobjectMarket object with all API fields
tickerstringMarket ticker
event_tickerstringEvent ticker
market_typestringMarket type
titlestringMarket title
subtitlestringMarket subtitle
yes_sub_titlestringYes outcome subtitle
no_sub_titlestringNo outcome subtitle
open_timestringMarket open time
close_timestringMarket close time
expected_expiration_timestringExpected expiration time
expiration_timestringExpiration time
latest_expiration_timestringLatest expiration time
settlement_timer_secondsnumberSettlement timer in seconds
statusstringMarket status
response_price_unitsstringResponse price units
notional_valuenumberNotional value
tick_sizenumberTick size
yes_bidnumberCurrent yes bid price
yes_asknumberCurrent yes ask price
no_bidnumberCurrent no bid price
no_asknumberCurrent no ask price
last_pricenumberLast trade price
previous_yes_bidnumberPrevious yes bid
previous_yes_asknumberPrevious yes ask
previous_pricenumberPrevious price
volumenumberTotal volume
volume_24hnumber24-hour volume
liquiditynumberMarket liquidity
open_interestnumberOpen interest
resultstringMarket result
cap_strikenumberCap strike
floor_strikenumberFloor strike
can_close_earlybooleanCan close early
expiration_valuestringExpiration value
categorystringMarket category
risk_limit_centsnumberRisk limit in cents
strike_typestringStrike type
rules_primarystringPrimary rules
rules_secondarystringSecondary rules
settlement_source_urlstringSettlement source URL
custom_strikeobjectCustom strike object
underlyingstringUnderlying asset
settlement_valuenumberSettlement value
cfd_contract_sizenumberCFD contract size
yes_fee_fpnumberYes fee (fixed-point)
no_fee_fpnumberNo fee (fixed-point)
last_price_fpnumberLast price (fixed-point)
yes_bid_fpnumberYes bid (fixed-point)
yes_ask_fpnumberYes ask (fixed-point)
no_bid_fpnumberNo bid (fixed-point)
no_ask_fpnumberNo ask (fixed-point)

kalshi_get_events

Retrieve a list of events from Kalshi with optional filtering (V2 - exact API response)

Input

ParameterTypeRequiredDescription
statusstringNoFilter by event status: "open", "closed", or "settled"
seriesTickerstringNoFilter by series ticker (e.g., "KXBTC", "INX", "FED-RATE")
withNestedMarketsstringNoInclude nested markets in response: "true" or "false"
limitstringNoNo description
cursorstringNoNo description

Output

ParameterTypeDescription
eventsarrayArray of event objects
event_tickerstringUnique event ticker identifier
series_tickerstringParent series ticker
titlestringEvent title
sub_titlestringEvent subtitle
mutually_exclusivebooleanWhether markets are mutually exclusive
categorystringEvent category
strike_datestringStrike/settlement date
statusstringEvent status
milestonesarrayArray of milestone objects (if requested)
event_tickerstringEvent ticker
milestone_typestringMilestone type
milestone_datestringMilestone date
milestone_titlestringMilestone title
cursorstringPagination cursor for fetching more results

kalshi_get_event

Retrieve details of a specific event by ticker (V2 - exact API response)

Input

ParameterTypeRequiredDescription
eventTickerstringYesEvent ticker identifier (e.g., "KXBTC-24DEC31", "INX-25JAN03")
withNestedMarketsstringNoNo description

Output

ParameterTypeDescription
eventobjectEvent object with full details matching Kalshi API response
event_tickerstringEvent ticker
series_tickerstringSeries ticker
titlestringEvent title
sub_titlestringEvent subtitle
mutually_exclusivebooleanMutually exclusive markets
categorystringEvent category
collateral_return_typestringCollateral return type
strike_datestringStrike date
strike_periodstringStrike period
available_on_brokersbooleanAvailable on brokers
product_metadataobjectProduct metadata
marketsarrayNested markets (if requested)

kalshi_get_balance

Retrieve your account balance and portfolio value from Kalshi (V2 - exact API response)

Input

ParameterTypeRequiredDescription
keyIdstringYesNo description
privateKeystringYesNo description

Output

ParameterTypeDescription
balancenumberAccount balance in cents
portfolio_valuenumberPortfolio value in cents
updated_tsnumberUnix timestamp of last update (milliseconds)

kalshi_get_positions

Retrieve your open positions from Kalshi (V2 - exact API response)

Input

ParameterTypeRequiredDescription
keyIdstringYesNo description
privateKeystringYesNo description
tickerstringNoFilter by market ticker (e.g., "KXBTC-24DEC31")
eventTickerstringNoFilter by event ticker, max 10 comma-separated (e.g., "KXBTC-24DEC31,INX-25JAN03")
settlementStatusstringNoFilter by settlement status: "all", "unsettled", or "settled" (default: "unsettled")
limitstringNoNo description
cursorstringNoNo description

Output

ParameterTypeDescription
market_positionsarrayArray of market position objects
tickerstringMarket ticker
event_tickerstringEvent ticker
event_titlestringEvent title
market_titlestringMarket title
positionnumberNet position (positive=yes, negative=no)
market_exposurenumberMaximum potential loss in cents
realized_pnlnumberRealized profit/loss in cents
total_tradednumberTotal contracts traded
resting_orders_countnumberNumber of resting orders
fees_paidnumberTotal fees paid in cents
event_positionsarrayArray of event position objects
event_tickerstringEvent ticker
event_exposurenumberEvent-level exposure in cents
realized_pnlnumberRealized P&L in cents
total_costnumberTotal cost basis in cents
cursorstringPagination cursor for fetching more results

kalshi_get_orders

Retrieve your orders from Kalshi with optional filtering (V2 with full API response)

Input

ParameterTypeRequiredDescription
keyIdstringYesNo description
privateKeystringYesNo description
tickerstringNoFilter by market ticker (e.g., "KXBTC-24DEC31")
eventTickerstringNoFilter by event ticker, max 10 comma-separated (e.g., "KXBTC-24DEC31,INX-25JAN03")
statusstringNoFilter by order status: "resting", "canceled", or "executed"
limitstringNoNo description
cursorstringNoNo description

Output

ParameterTypeDescription
ordersarrayArray of order objects with full API response fields
order_idstringUnique order identifier
user_idstringUser ID
client_order_idstringClient-provided order ID
tickerstringMarket ticker
sidestringOrder side (yes/no)
actionstringOrder action (buy/sell)
typestringOrder type (limit/market)
statusstringOrder status (resting, canceled, executed)
yes_pricenumberYes price in cents
no_pricenumberNo price in cents
fill_countnumberNumber of contracts filled
remaining_countnumberRemaining contracts to fill
initial_countnumberInitial order size
taker_feesnumberTaker fees paid in cents
maker_feesnumberMaker fees paid in cents
created_timestringOrder creation time (ISO 8601)
expiration_timestringOrder expiration time
last_update_timestringLast order update time
cursorstringPagination cursor for fetching more results

kalshi_get_order

Retrieve details of a specific order by ID from Kalshi (V2 with full API response)

Input

ParameterTypeRequiredDescription
keyIdstringYesNo description
privateKeystringYesNo description
orderIdstringYesOrder ID to retrieve (e.g., "abc123-def456-ghi789")

Output

ParameterTypeDescription
orderobjectOrder object with full API response fields
order_idstringOrder ID
user_idstringUser ID
client_order_idstringClient order ID
tickerstringMarket ticker
sidestringOrder side (yes/no)
actionstringAction (buy/sell)
typestringOrder type (limit/market)
statusstringOrder status (resting/canceled/executed)
yes_pricenumberYes price in cents
no_pricenumberNo price in cents
yes_price_dollarsstringYes price in dollars
no_price_dollarsstringNo price in dollars
fill_countnumberFilled contract count
fill_count_fpstringFilled count (fixed-point)
remaining_countnumberRemaining contracts
remaining_count_fpstringRemaining count (fixed-point)
initial_countnumberInitial contract count
initial_count_fpstringInitial count (fixed-point)
taker_feesnumberTaker fees in cents
maker_feesnumberMaker fees in cents
taker_fees_dollarsstringTaker fees in dollars
maker_fees_dollarsstringMaker fees in dollars
taker_fill_costnumberTaker fill cost in cents
maker_fill_costnumberMaker fill cost in cents
taker_fill_cost_dollarsstringTaker fill cost in dollars
maker_fill_cost_dollarsstringMaker fill cost in dollars
queue_positionnumberQueue position (deprecated)
expiration_timestringOrder expiration time
created_timestringOrder creation time
last_update_timestringLast update time
self_trade_prevention_typestringSelf-trade prevention type
order_group_idstringOrder group ID
cancel_order_on_pausebooleanCancel on market pause

kalshi_get_orderbook

Retrieve the orderbook (yes and no bids) for a specific market (V2 - includes depth and fp fields)

Input

ParameterTypeRequiredDescription
tickerstringYesMarket ticker identifier (e.g., "KXBTC-24DEC31", "INX-25JAN03-T4485.99")

Output

ParameterTypeDescription
orderbookobjectOrderbook with yes/no bids (legacy integer counts)
yesarrayYes side bids as tuples [price_cents, count]
noarrayNo side bids as tuples [price_cents, count]
yes_dollarsarrayYes side bids as tuples [dollars_string, count]
no_dollarsarrayNo side bids as tuples [dollars_string, count]
orderbook_fpobjectOrderbook with fixed-point counts (preferred)
yes_dollarsarrayYes side bids as tuples [dollars_string, fp_count_string]
no_dollarsarrayNo side bids as tuples [dollars_string, fp_count_string]

kalshi_get_trades

Retrieve recent trades with additional filtering options (V2 - includes trade_id and count_fp)

Input

ParameterTypeRequiredDescription
limitstringNoNo description
cursorstringNoNo description

Output

ParameterTypeDescription
tradesarrayArray of trade objects with trade_id and count_fp
tickerstringMarket ticker
yes_pricenumberTrade price for yes in cents
no_pricenumberTrade price for no in cents
countnumberNumber of contracts traded
taker_sidestringTaker side (yes/no)
created_timestringTrade time (ISO 8601)
cursorstringPagination cursor for fetching more results

kalshi_get_candlesticks

Retrieve OHLC candlestick data for a specific market (V2 - full API response)

Input

ParameterTypeRequiredDescription
seriesTickerstringYesSeries ticker identifier (e.g., "KXBTC", "INX", "FED-RATE")
tickerstringYesMarket ticker identifier (e.g., "KXBTC-24DEC31", "INX-25JAN03-T4485.99")
startTsnumberYesNo description
endTsnumberYesNo description
periodIntervalnumberYesNo description

Output

ParameterTypeDescription
tickerstringMarket ticker
candlesticksarrayArray of OHLC candlestick data with nested bid/ask/price objects

kalshi_get_fills

Retrieve your portfolio

Input

ParameterTypeRequiredDescription
keyIdstringYesNo description
privateKeystringYesNo description
tickerstringNoFilter by market ticker (e.g., "KXBTC-24DEC31")
orderIdstringNoFilter by order ID (e.g., "abc123-def456-ghi789")
minTsnumberNoNo description
maxTsnumberNoNo description
limitstringNoNo description
cursorstringNoNo description

Output

ParameterTypeDescription
fillsarrayArray of fill/trade objects with all API fields
trade_idstringUnique trade identifier
order_idstringAssociated order ID
tickerstringMarket ticker
sidestringTrade side (yes/no)
actionstringTrade action (buy/sell)
countnumberNumber of contracts
yes_pricenumberYes price in cents
no_pricenumberNo price in cents
is_takerbooleanWhether this was a taker trade
created_timestringTrade execution time (ISO 8601)
cursorstringPagination cursor for fetching more results

kalshi_get_series_by_ticker

Retrieve details of a specific market series by ticker (V2 - exact API response)

Input

ParameterTypeRequiredDescription
seriesTickerstringYesSeries ticker identifier (e.g., "KXBTC", "INX", "FED-RATE")

Output

ParameterTypeDescription
seriesobjectSeries object with full details matching Kalshi API response
tickerstringSeries ticker
titlestringSeries title
frequencystringEvent frequency
categorystringSeries category
tagsarraySeries tags
settlement_sourcesarraySettlement sources
contract_urlstringContract URL
contract_terms_urlstringContract terms URL
fee_typestringFee type
fee_multipliernumberFee multiplier
additional_prohibitionsarrayAdditional prohibitions
product_metadataobjectProduct metadata
volumenumberSeries volume
volume_fpnumberVolume (fixed-point)

kalshi_get_exchange_status

Retrieve the current status of the Kalshi exchange (V2 - exact API response)

Input

ParameterTypeRequiredDescription

Output

ParameterTypeDescription
exchange_activebooleanWhether the exchange is active
trading_activebooleanWhether trading is active
exchange_estimated_resume_timestringEstimated time when exchange will resume (if inactive)

kalshi_create_order

Create a new order on a Kalshi prediction market (V2 with full API response)

Input

ParameterTypeRequiredDescription
keyIdstringYesNo description
privateKeystringYesNo description
tickerstringYesMarket ticker identifier (e.g., "KXBTC-24DEC31", "INX-25JAN03-T4485.99")
sidestringYesSide of the order: "yes" or "no"
actionstringYesAction type: "buy" or "sell"
countstringYesNumber of contracts to trade (e.g., "10", "100")
typestringNoOrder type: "limit" or "market" (default: "limit")
yesPricestringNoNo description
noPricestringNoNo description
yesPriceDollarsstringNoYes price in dollars (e.g., "0.56")
noPriceDollarsstringNoNo price in dollars (e.g., "0.56")
clientOrderIdstringNoNo description
expirationTsstringNoNo description
timeInForcestringNoTime in force: 'fill_or_kill', 'good_till_canceled', 'immediate_or_cancel'
buyMaxCoststringNoNo description
postOnlystringNoSet to 'true' for maker-only orders
reduceOnlystringNoSet to 'true' for position reduction only
selfTradePreventionTypestringNoSelf-trade prevention: 'taker_at_cross' or 'maker'
orderGroupIdstringNoNo description

Output

ParameterTypeDescription
orderobjectThe created order object with full API response fields
order_idstringOrder ID
user_idstringUser ID
client_order_idstringClient order ID
tickerstringMarket ticker
sidestringOrder side (yes/no)
actionstringAction (buy/sell)
typestringOrder type (limit/market)
statusstringOrder status (resting/canceled/executed)
yes_pricenumberYes price in cents
no_pricenumberNo price in cents
yes_price_dollarsstringYes price in dollars
no_price_dollarsstringNo price in dollars
fill_countnumberFilled contract count
fill_count_fpstringFilled count (fixed-point)
remaining_countnumberRemaining contracts
remaining_count_fpstringRemaining count (fixed-point)
initial_countnumberInitial contract count
initial_count_fpstringInitial count (fixed-point)
taker_feesnumberTaker fees in cents
maker_feesnumberMaker fees in cents
taker_fees_dollarsstringTaker fees in dollars
maker_fees_dollarsstringMaker fees in dollars
taker_fill_costnumberTaker fill cost in cents
maker_fill_costnumberMaker fill cost in cents
taker_fill_cost_dollarsstringTaker fill cost in dollars
maker_fill_cost_dollarsstringMaker fill cost in dollars
queue_positionnumberQueue position (deprecated)
expiration_timestringOrder expiration time
created_timestringOrder creation time
last_update_timestringLast update time
self_trade_prevention_typestringSelf-trade prevention type
order_group_idstringOrder group ID
cancel_order_on_pausebooleanCancel on market pause

kalshi_cancel_order

Cancel an existing order on Kalshi (V2 with full API response)

Input

ParameterTypeRequiredDescription
keyIdstringYesNo description
privateKeystringYesNo description
orderIdstringYesOrder ID to cancel (e.g., "abc123-def456-ghi789")

Output

ParameterTypeDescription
orderobjectThe canceled order object with full API response fields
order_idstringOrder ID
user_idstringUser ID
client_order_idstringClient order ID
tickerstringMarket ticker
sidestringOrder side (yes/no)
actionstringAction (buy/sell)
typestringOrder type (limit/market)
statusstringOrder status (resting/canceled/executed)
yes_pricenumberYes price in cents
no_pricenumberNo price in cents
yes_price_dollarsstringYes price in dollars
no_price_dollarsstringNo price in dollars
fill_countnumberFilled contract count
fill_count_fpstringFilled count (fixed-point)
remaining_countnumberRemaining contracts
remaining_count_fpstringRemaining count (fixed-point)
initial_countnumberInitial contract count
initial_count_fpstringInitial count (fixed-point)
taker_feesnumberTaker fees in cents
maker_feesnumberMaker fees in cents
taker_fees_dollarsstringTaker fees in dollars
maker_fees_dollarsstringMaker fees in dollars
taker_fill_costnumberTaker fill cost in cents
maker_fill_costnumberMaker fill cost in cents
taker_fill_cost_dollarsstringTaker fill cost in dollars
maker_fill_cost_dollarsstringMaker fill cost in dollars
queue_positionnumberQueue position (deprecated)
expiration_timestringOrder expiration time
created_timestringOrder creation time
last_update_timestringLast update time
self_trade_prevention_typestringSelf-trade prevention type
order_group_idstringOrder group ID
cancel_order_on_pausebooleanCancel on market pause
reduced_bynumberNumber of contracts canceled
reduced_by_fpstringNumber of contracts canceled in fixed-point format

kalshi_amend_order

Modify the price or quantity of an existing order on Kalshi (V2 with full API response)

Input

ParameterTypeRequiredDescription
keyIdstringYesNo description
privateKeystringYesNo description
orderIdstringYesOrder ID to amend (e.g., "abc123-def456-ghi789")
tickerstringYesMarket ticker identifier (e.g., "KXBTC-24DEC31", "INX-25JAN03-T4485.99")
sidestringYesSide of the order: "yes" or "no"
actionstringYesAction type: "buy" or "sell"
clientOrderIdstringYesNo description
updatedClientOrderIdstringYesNo description
countstringNoUpdated quantity for the order (e.g., "10", "100")
yesPricestringNoNo description
noPricestringNoNo description
yesPriceDollarsstringNoUpdated yes price in dollars (e.g., "0.56")
noPriceDollarsstringNoUpdated no price in dollars (e.g., "0.56")

Output

ParameterTypeDescription
old_orderobjectThe original order object before amendment
order_idstringOrder ID
user_idstringUser ID
tickerstringMarket ticker
event_tickerstringEvent ticker
statusstringOrder status
sidestringOrder side (yes/no)
typestringOrder type (limit/market)
yes_pricenumberYes price in cents
no_pricenumberNo price in cents
actionstringAction (buy/sell)
countnumberNumber of contracts
remaining_countnumberRemaining contracts
created_timestringOrder creation time
expiration_timestringOrder expiration time
order_group_idstringOrder group ID
client_order_idstringClient order ID
place_countnumberPlace count
decrease_countnumberDecrease count
queue_positionnumberQueue position
maker_fill_countnumberMaker fill count
taker_fill_countnumberTaker fill count
maker_feesnumberMaker fees
taker_feesnumberTaker fees
last_update_timestringLast update time
take_profit_order_idstringTake profit order ID
stop_loss_order_idstringStop loss order ID
amend_countnumberAmend count
amend_taker_fill_countnumberAmend taker fill count
orderobjectThe amended order object with full API response fields
order_idstringOrder ID
user_idstringUser ID
tickerstringMarket ticker
event_tickerstringEvent ticker
statusstringOrder status
sidestringOrder side (yes/no)
typestringOrder type (limit/market)
yes_pricenumberYes price in cents
no_pricenumberNo price in cents
actionstringAction (buy/sell)
countnumberNumber of contracts
remaining_countnumberRemaining contracts
created_timestringOrder creation time
expiration_timestringOrder expiration time
order_group_idstringOrder group ID
client_order_idstringClient order ID
place_countnumberPlace count
decrease_countnumberDecrease count
queue_positionnumberQueue position
maker_fill_countnumberMaker fill count
taker_fill_countnumberTaker fill count
maker_feesnumberMaker fees
taker_feesnumberTaker fees
last_update_timestringLast update time
take_profit_order_idstringTake profit order ID
stop_loss_order_idstringStop loss order ID
amend_countnumberAmend count
amend_taker_fill_countnumberAmend taker fill count

On this page

Start building today
Trusted by over 100,000 builders.
The SaaS platform to build AI agents and run your agentic workforce.
Get started