multivariate
Multivariate event collection endpoints
Introduction
Manually defined OpenAPI spec for endpoints being migrated to spec-first approach
Accept Quote
Endpoint for accepting a quote. This will require the quoter to confirm
Amend Order
Endpoint for amending the max number of fillable contracts and/or price in an existing order. Max fillable contracts is `remaining_count` + `fill_count`.
api-keys
api-keys
Transfer Between Subaccounts
Transfers funds between the authenticated user's subaccounts. Use 0 for the primary account, or 1-32 for numbered subaccounts.
Batch Cancel Orders
Endpoint for cancelling up to 20 orders at once.
Batch Create Orders
Endpoint for submitting a batch of orders. Each order in the batch is counted against the total rate limit for order operations. Consequently, the size of the batch is capped by the current per-second rate-limit configuration applicable to the user. At the moment of writing, the limit is 20 orders per batch.
Batch Get Market Candlesticks
Endpoint for retrieving candlestick data for multiple markets.
Cancel Order
Endpoint for canceling orders. The value for the orderId should match the id field of the order you want to decrease. Commonly, DELETE-type endpoints return 204 status with no body content on success. But we can't completely delete the order, as it may be partially filled already. Instead, the DeleteOrder endpoint reduce the order completely, essentially zeroing the remaining resting contracts on it. The zeroed order is returned on the response payload as a form of validation for the client.
communications
communications
Confirm Quote
Endpoint for confirming a quote. This will start a timer for order execution
Create API Key
Endpoint for creating a new API key with a user-provided public key. This endpoint allows users with Premier or Market Maker API usage levels to create API keys by providing their own RSA public key. The platform will use this public key to verify signatures on API requests.
Create Market In Multivariate Event Collection
Endpoint for creating an individual market in a multivariate event collection. This endpoint must be hit at least once before trading or looking up a market. Users are limited to 5000 creations per week.
Create Order Group
Creates a new order group with a contracts limit measured over a rolling 15-second window. When the limit is hit, all orders in the group are cancelled and no new orders can be placed until reset.
Create Order
Endpoint for submitting orders in a market. Each user is limited to 200 000 open orders at a time.
Create Quote
Endpoint for creating a quote in response to an RFQ
Create RFQ
Endpoint for creating a new RFQ. You can have a maximum of 100 open RFQs at a time.
Create Subaccount
Creates a new subaccount for the authenticated user. Subaccounts are numbered sequentially starting from 1. Maximum 32 subaccounts per user.
Decrease Order
Endpoint for decreasing the number of contracts in an existing order. This is the only kind of edit available on order quantity. Cancelling an order is equivalent to decreasing an order amount to zero.
Delete API Key
Endpoint for deleting an existing API key. This endpoint permanently deletes an API key. Once deleted, the key can no longer be used for authentication. This action cannot be undone.
Delete Order Group
Deletes an order group and cancels all orders within it. This permanently removes the group.
Delete Quote
Endpoint for deleting a quote, which means it can no longer be accepted.
Delete RFQ
Endpoint for deleting an RFQ by ID
events
events
exchange
exchange
fcm
fcm
Generate API Key
Endpoint for generating a new API key with an automatically created key pair. This endpoint generates both a public and private RSA key pair. The public key is stored on the platform, while the private key is returned to the user and must be stored securely. The private key cannot be retrieved again.
Get Account API Limits
Endpoint to retrieve the API tier limits associated with the authenticated user.
Get API Keys
Endpoint for retrieving all API keys associated with the authenticated user. API keys allow programmatic access to the platform without requiring username/password authentication. Each key has a unique identifier and name.
Get Balance
Endpoint for getting the balance and portfolio value of a member. Both values are returned in cents.
Get Communications ID
Endpoint for getting the communications ID of the logged-in user.
Get Event Forecast Percentile History
Endpoint for getting the historical raw and formatted forecast numbers for an event at specific percentiles.
Get Event Metadata
Endpoint for getting metadata about an event by its ticker. Returns only the metadata information for an event.
Get Event
Endpoint for getting data about an event by its ticker. An event represents a real-world occurrence that can be traded on, such as an election, sports game, or economic indicator release.
Get Events
Get all events. This endpoint excludes multivariate events.
Get Exchange Announcements
Endpoint for getting all exchange-wide announcements.
Get Exchange Schedule
Endpoint for getting the exchange schedule.
Get Exchange Status
Endpoint for getting the exchange status.
Get FCM Orders
Endpoint for FCM members to get orders filtered by subtrader ID.
Get FCM Positions
Endpoint for FCM members to get market positions filtered by subtrader ID.
Get Historical Fills
Endpoint for getting all historical fills for the member. A fill is when a trade you have is matched.
Get Fills
Endpoint for getting all fills for the member. A fill is when a trade you have is matched.
Get Filters for Sports
Retrieve available filters organized by sport.
Get Game Stats
Get play-by-play game statistics for a specific milestone. Supported sports: Pro Football, College Football, Pro Basketball, College Men's Basketball, College Women's Basketball, WNBA, Soccer, Pro Hockey, and Pro Baseball. Returns null for unsupported milestone types or milestones without a Sportradar ID.
Get Historical Cutoff Timestamps
Returns the cutoff timestamps that define the boundary between **live** and **historical** data.
Get Historical Market
Endpoint for getting data about a specific market by its ticker from the historical database.
Get Historical Markets
Endpoint for getting markets that have been archived to the historical database. Filters are mutually exclusive.
Get Historical Orders
Endpoint for getting orders that have been archived to the historical database.
Get Incentives
List incentives with optional filters. Incentives are rewards programs for trading activity on specific markets.
Get Live Data
Get live data for a specific milestone.
Get Live Data (with type)
Get live data for a specific milestone. This is the legacy endpoint that requires a type path parameter. Prefer using `/live_data/milestone/{milestone_id}` instead.
Get Multiple Live Data
Get live data for multiple milestones
Get Event Candlesticks
End-point for returning aggregated data across all markets corresponding to an event.
Get Historical Market Candlesticks
Endpoint for fetching historical candlestick data for markets that have been archived from the live data set. Time period length of each candlestick in minutes. Valid values: 1 (1 minute), 60 (1 hour), 1440 (1 day).
Get Market Candlesticks
Time period length of each candlestick in minutes. Valid values: 1 (1 minute), 60 (1 hour), 1440 (1 day).
Get Market Orderbook
Endpoint for getting the current order book for a specific market. The order book shows all active bid orders for both yes and no sides of a binary market. It returns yes bids and no bids only (no asks are returned). This is because in binary markets, a bid for yes at price X is equivalent to an ask for no at price (100-X). For example, a yes bid at 7ยข is the same as a no ask at 93ยข, with identical contract sizes. Each side shows price levels with their corresponding quantities and order counts, organized from best to worst prices.
Get Multiple Market Orderbooks
Endpoint for getting the current order books for multiple markets in a single request. The order book shows all active bid orders for both yes and no sides of a binary market. It returns yes bids and no bids only (no asks are returned). This is because in binary markets, a bid for yes at price X is equivalent to an ask for no at price (100-X). For example, a yes bid at 7ยข is the same as a no ask at 93ยข, with identical contract sizes. Each side shows price levels with their corresponding quantities and order counts, organized from best to worst prices. Returns one orderbook per requested market ticker.
Get Market
Endpoint for getting data about a specific market by its ticker. A market represents a specific binary outcome within an event that users can trade on (e.g., 'Will candidate X win?'). Markets have yes/no positions, current prices, volume, and settlement rules.
Get Markets
Filter by market status. Possible values: `unopened`, `open`, `closed`, `settled`. Leave empty to return markets with any status.
Get Milestone
Endpoint for getting data about a specific milestone by its ID.
Get Milestones
Minimum start date to filter milestones. Format: RFC3339 timestamp
Get Multivariate Event Collection Lookup History
Endpoint for retrieving which markets in an event collection were recently looked up.
Get Multivariate Event Collection
Endpoint for getting data about a multivariate event collection by its ticker.
Get Multivariate Event Collections
Endpoint for getting data about multivariate event collections.
Get Multivariate Events
Retrieve multivariate (combo) events. These are dynamically created events from multivariate event collections. Supports filtering by series and collection ticker.
Get Order Group
Retrieves details for a single order group including all order IDs and auto-cancel status.
Get Order Groups
Retrieves all order groups for the authenticated user.
Get Order Queue Position
Endpoint for getting an order's queue position in the order book. This represents the amount of orders that need to be matched before this order receives a partial or full match. Queue position is determined using a price-time priority.
Get Queue Positions for Orders
Endpoint for getting queue positions for all resting orders. Queue position represents the number of contracts that need to be matched before an order receives a partial or full match, determined using price-time priority.
Get Order
Endpoint for getting a single order.
Get Orders
Restricts the response to orders that have a certain status: resting, canceled, or executed.
Get Total Resting Order Value
Endpoint for getting the total value, in cents, of resting orders. This endpoint is only intended for use by FCM members (rare). Note: If you're uncertain about this endpoint, it likely does not apply to you.
Get Positions
Restricts the positions to those with any of following fields with non-zero values, as a comma separated list. The following values are accepted: position, total_traded
Get Quote
Endpoint for getting a particular quote
Get Quotes
Endpoint for getting quotes
Get RFQs
Endpoint for getting RFQs
Get RFQ
Endpoint for getting a single RFQ by id
Get Series Fee Changes
Get Series Fee Changes
Get Series List
Endpoint for getting data about multiple series with specified filters. A series represents a template for recurring events that follow the same format and rules (e.g., 'Monthly Jobs Report', 'Weekly Initial Jobless Claims', 'Daily Weather in NYC'). This endpoint allows you to browse and discover available series templates by category.
Get Series
Endpoint for getting data about a specific series by its ticker. A series represents a template for recurring events that follow the same format and rules (e.g., 'Monthly Jobs Report', 'Weekly Initial Jobless Claims', 'Daily Weather in NYC'). Series define the structure, settlement sources, and metadata that will be applied to each recurring event instance within that series.
Get Settlements
Endpoint for getting the member's settlements historical track.
Get Structured Target
Endpoint for getting data about a specific structured target by its ID.
Get Structured Targets
Page size (min: 1, max: 2000)
Get All Subaccount Balances
Gets balances for all subaccounts including the primary account.
Get Subaccount Netting
Gets the netting enabled settings for all subaccounts.
Get Subaccount Transfers
Gets a paginated list of all transfers between subaccounts for the authenticated user.
Get Tags for Series Categories
Retrieve tags organized by series categories.
Get Historical Trades
Endpoint for getting all historical trades for all markets. Trades that were filled before the historical cutoff are available via this endpoint. See [Historical Data](https://kalshi.com/docs/getting_started/historical_data) for details.
Get Trades
Endpoint for getting all trades for all markets. A trade represents a completed transaction between two users on a specific market. Each trade includes the market ticker, price, quantity, and timestamp information. This endpoint returns a paginated response. Use the 'limit' parameter to control page size (1-1000, defaults to 100). The response includes a 'cursor' field - pass this value in the 'cursor' parameter of your next request to get the next page. An empty cursor indicates no more pages are available.
Get User Data Timestamp
There is typically a short delay before exchange events are reflected in the API endpoints. Whenever possible, combine API responses to PUT/POST/DELETE requests with websocket data to obtain the most accurate view of the exchange state. This endpoint provides an approximate indication of when the data from the following endpoints was last validated: GetBalance, GetOrder(s), GetFills, GetPositions
incentive-programs
incentive-programs
live-data
live-data
Lookup Tickers For Market In Multivariate Event Collection
Endpoint for looking up an individual market in a multivariate event collection. If CreateMarketInMultivariateEventCollection has never been hit with that variable combination before, this will return a 404.
milestone
milestone
multivariate
multivariate
order-groups
order-groups
orders
orders
portfolio
portfolio
Reset Order Group
Resets the order group's matched contracts counter to zero, allowing new orders to be placed again after the limit was hit.
search
search
structured-targets
structured-targets
Trigger Order Group
Triggers the order group, canceling all orders in the group and preventing new orders until the group is reset.
Update Order Group Limit
Updates the order group contracts limit (rolling 15-second window). If the updated limit would immediately trigger the group, all orders in the group are canceled and the group is triggered.
Update Subaccount Netting
Updates the netting enabled setting for a specific subaccount. Use 0 for the primary account, or 1-32 for numbered subaccounts.