Kalshi logo

Kalshi

Kalshi is a CFTC-regulated US exchange for binary event contracts on real-world outcomes - elections, economics, weather, sports, and more. The platform exposes a public REST trading API and WebSocket streams for market data, orders, positions, and portfolio actions, with a published OpenAPI 3 specification and AsyncAPI definition for the streaming surface. A demo environment mirrors production for safe development. Official Python and community SDKs are provided.

7 APIs 0 Features
Prediction MarketsEvent ContractsExchangeCFTCTradingMarkets

Kalshi publishes 5 APIs on the APIs.io network, including Trade API (REST), Trade API (external-api host), WebSocket Streaming API, and 2 more. Tagged areas include Prediction Markets, Event Contracts, Exchange, CFTC, and Trading.

Kalshi’s developer surface includes documentation, API reference, GitHub presence, and 4 more developer resources.

APIs

Kalshi Trade API (REST)

Public REST API for trading on Kalshi - browse markets, events, and series, place and cancel orders, manage portfolio and positions, fund and withdraw, and pull historical trade...

Kalshi Trade API (external-api host)

Alternate production host for the Kalshi Trade API, used by external integrators. Same API surface and authentication as the primary host.

Kalshi Trade API (Demo)

Demo / sandbox environment for the Kalshi Trade API - mirrors production semantics with simulated balances and markets for safe development and automated testing.

Kalshi WebSocket Streaming API

Real-time streaming feed for market data, order book updates, fills, and portfolio events on Kalshi. Documented as an AsyncAPI spec alongside the OpenAPI REST surface.

Kalshi OpenAPI Specification

Machine-readable OpenAPI 3 description of the Kalshi Trade REST API. Suitable for generating clients, mocks, and contract tests.

Kalshi AsyncAPI Specification

Machine-readable AsyncAPI description of the Kalshi WebSocket streaming API. Suitable for generating async clients and documenting message schemas.

Kalshi Python Starter Kit

Official Python starter / SDK published by Kalshi for connecting to the Trade REST API and WebSocket streams. Includes request signing, authentication helpers, and example tradi...

Resources

🔗
Website
Website
🔗
Documentation
Documentation
🔗
API Reference
API Reference
🔗
Help
Help
👥
GitHub
GitHub
🔗
Developer Agreement
Developer Agreement
🔗
LinkedIn
LinkedIn

Sources

Raw ↑
aid: kalshi
url: https://raw.githubusercontent.com/api-evangelist/kalshi/refs/heads/main/apis.yml
name: Kalshi
kind: company
description: >-
  Kalshi is a CFTC-regulated US exchange for binary event contracts on
  real-world outcomes - elections, economics, weather, sports, and more. The
  platform exposes a public REST trading API and WebSocket streams for market
  data, orders, positions, and portfolio actions, with a published OpenAPI 3
  specification and AsyncAPI definition for the streaming surface. A demo
  environment mirrors production for safe development. Official Python and
  community SDKs are provided.
image: https://kinlane-productions.s3.amazonaws.com/apis-json/apis-json-logo.jpg
tags:
  - Prediction Markets
  - Event Contracts
  - Exchange
  - CFTC
  - Trading
  - Markets
created: '2026-05-23'
modified: '2026-05-23'
specificationVersion: '0.19'
apis:
  - aid: kalshi:trade-api
    name: Kalshi Trade API (REST)
    description: >-
      Public REST API for trading on Kalshi - browse markets, events, and
      series, place and cancel orders, manage portfolio and positions, fund and
      withdraw, and pull historical trades. Authenticated with API keys and
      Ed25519 request signatures.
    humanURL: https://docs.kalshi.com/api-reference
    baseURL: https://api.elections.kalshi.com/trade-api/v2
    tags:
      - REST
      - Trading
      - Markets
      - Orders
    properties:
      - type: Documentation
        url: https://docs.kalshi.com/api-reference
      - type: OpenAPI
        url: https://docs.kalshi.com/openapi.yaml
  - aid: kalshi:trade-api-external
    name: Kalshi Trade API (external-api host)
    description: >-
      Alternate production host for the Kalshi Trade API, used by external
      integrators. Same API surface and authentication as the primary host.
    humanURL: https://docs.kalshi.com/api-reference
    baseURL: https://external-api.kalshi.com/trade-api/v2
    tags:
      - REST
      - Trading
      - External
    properties:
      - type: Documentation
        url: https://docs.kalshi.com/api-reference
      - type: OpenAPI
        url: https://docs.kalshi.com/openapi.yaml
  - aid: kalshi:trade-api-demo
    name: Kalshi Trade API (Demo)
    description: >-
      Demo / sandbox environment for the Kalshi Trade API - mirrors production
      semantics with simulated balances and markets for safe development and
      automated testing.
    humanURL: https://docs.kalshi.com/api-reference
    baseURL: https://demo-api.kalshi.co/trade-api/v2
    tags:
      - REST
      - Demo
      - Sandbox
      - Testing
    properties:
      - type: Documentation
        url: https://docs.kalshi.com/api-reference
  - aid: kalshi:websocket
    name: Kalshi WebSocket Streaming API
    description: >-
      Real-time streaming feed for market data, order book updates, fills, and
      portfolio events on Kalshi. Documented as an AsyncAPI spec alongside the
      OpenAPI REST surface.
    humanURL: https://docs.kalshi.com/api-reference
    baseURL: wss://api.elections.kalshi.com/trade-api/ws/v2
    tags:
      - WebSocket
      - Streaming
      - Market Data
    properties:
      - type: Documentation
        url: https://docs.kalshi.com/api-reference
      - type: AsyncAPI
        url: https://docs.kalshi.com/asyncapi.yaml
  - aid: kalshi:openapi
    name: Kalshi OpenAPI Specification
    description: >-
      Machine-readable OpenAPI 3 description of the Kalshi Trade REST API.
      Suitable for generating clients, mocks, and contract tests.
    humanURL: https://docs.kalshi.com/
    baseURL: https://docs.kalshi.com/openapi.yaml
    tags:
      - OpenAPI
      - Specification
    properties:
      - type: OpenAPI
        url: https://docs.kalshi.com/openapi.yaml
  - aid: kalshi:asyncapi
    name: Kalshi AsyncAPI Specification
    description: >-
      Machine-readable AsyncAPI description of the Kalshi WebSocket streaming
      API. Suitable for generating async clients and documenting message
      schemas.
    humanURL: https://docs.kalshi.com/
    baseURL: https://docs.kalshi.com/asyncapi.yaml
    tags:
      - AsyncAPI
      - Specification
      - WebSocket
    properties:
      - type: AsyncAPI
        url: https://docs.kalshi.com/asyncapi.yaml
  - aid: kalshi:python-starter
    name: Kalshi Python Starter Kit
    description: >-
      Official Python starter / SDK published by Kalshi for connecting to the
      Trade REST API and WebSocket streams. Includes request signing,
      authentication helpers, and example trading flows.
    humanURL: https://github.com/Kalshi/kalshi-starter-code-python
    baseURL: https://github.com/Kalshi/kalshi-starter-code-python
    tags:
      - SDK
      - Python
      - Starter
    properties:
      - type: Repository
        url: https://github.com/Kalshi/kalshi-starter-code-python
common:
  - type: Website
    url: https://kalshi.com/
  - type: Documentation
    url: https://docs.kalshi.com/
  - type: API Reference
    url: https://docs.kalshi.com/api-reference
  - type: Help
    url: https://help.kalshi.com/
  - type: GitHub
    url: https://github.com/Kalshi
  - type: Developer Agreement
    url: https://kalshi.com/developer-agreement
  - type: LinkedIn
    url: https://www.linkedin.com/company/kalshi/
maintainers:
  - FN: Kin Lane
    email: [email protected]