---
title: "Get a Kalshi market"
method: GET
path: "/v1/kalshi/market"
tags: ["Kalshi"]
---

# Get a Kalshi market

`GET /v1/kalshi/market`

## Request

- Base URL: `https://api.scrapeatlas.com`
- URL: `https://api.scrapeatlas.com/v1/kalshi/market`
- Auth: API key in header `x-api-key`

Get one Kalshi market by ticker: the question, Yes and No bid and ask, last price, volume, open interest, rules, strike and settlement result. Settled markets that Kalshi has moved to its archive are returned with archived true. A kalshi.com event link also works when its event has one market. Each successful request costs 1 account credit, including partial results. Failed requests cost 0 credits.

## Query parameters

- `ticker` string
- `url` string

## Response `200`

Inspect the response status and failure or coverage fields.

- union
  - object
    - `requestId` string, uuid, required
    - `accounting` object, required
      - `upstreamRequests` integer, required
      - `responseBytes` integer, required
      - `durationMs` number, required
    - `success` true, required
    - `status` 'success' | 'partial', required
    - `sourceUrl` string, uri, required
    - `fetchedAt` string, date-time, required
    - `coverage` object, required
      - `source` 'public_api', required
      - `complete` boolean, required
      - `warnings` string[], required
    - `market` object, required
      - `ticker` string, required
      - `event_ticker` string, required
      - `market_type` string, required
      - `title` string
      - `subtitle` string
      - `yes_sub_title` string, required
      - `no_sub_title` string, required
      - `created_time` string, required
      - `updated_time` string, required
      - `open_time` string, required
      - `close_time` string, required
      - `expected_expiration_time` string, nullable
      - `expiration_time` string
      - `latest_expiration_time` string, required
      - `settlement_timer_seconds` integer, required
      - `status` string, required
      - `yes_bid_dollars` string, required
      - `yes_bid_size_fp` string, required
      - `yes_ask_dollars` string, required
      - `yes_ask_size_fp` string, required
      - `no_bid_dollars` string, required
      - `no_ask_dollars` string, required
      - `last_price_dollars` string, required
      - `volume_fp` string, required
      - `volume_24h_fp` string, required
      - `result` string, required
      - `can_close_early` boolean, required
      - `open_interest_fp` string, required
      - `notional_value_dollars` string, required
      - `previous_yes_bid_dollars` string, required
      - `previous_yes_ask_dollars` string, required
      - `previous_price_dollars` string, required
      - `settlement_value_dollars` string, nullable
      - `settlement_ts` string, nullable
      - `settlement_bounds_type` string
      - `settlement_floor_dollars` string, nullable
      - `expiration_value` string, required
      - `occurrence_datetime` string, nullable
      - `fee_waiver_expiration_time` string, nullable
      - `early_close_condition` string, nullable
      - `strike_type` string
      - `floor_strike` number, nullable
      - `cap_strike` number, nullable
      - `functional_strike` string, nullable
      - `custom_strike` object, nullable
      - `rules_primary` string, required
      - `rules_secondary` string, required
      - `mve_collection_ticker` string
      - `mve_selected_legs` object[]
        - `event_ticker` string
        - `market_ticker` string
        - `side` string
      - `primary_participant_key` string, nullable
      - `price_level_structure` string, required
      - `price_ranges` object[], required
        - `start` string, required
        - `end` string, required
        - `step` string, required
      - `is_provisional` boolean
      - `exchange_index` integer
    - `archived` boolean, required
  - object
    - `requestId` string, uuid, required
    - `accounting` object, required
      - `upstreamRequests` integer, required
      - `responseBytes` integer, required
      - `durationMs` number, required
    - `success` false, required
    - `status` 'failed' | 'challenged', required
    - `failure` object, required
      - `code` 'invalid_request' | 'unauthorized' | 'not_found' | 'upstream_challenged' | 'upstream_rate_limited' | 'upstream_error' | 'unsupported_page' | 'response_too_large' | 'unsafe_redirect' | 'request_limit' | 'timeout' | 'busy' | 'payload_too_complex', required
      - `message` string, required

## Other responses

- `400`: Request could not complete; inspect error or failure.code.
- `401`: Request could not complete; inspect error or failure.code.
- `402`: Request could not complete; inspect error or failure.code.
- `403`: Request could not complete; inspect error or failure.code.
- `404`: Request could not complete; inspect error or failure.code.
- `408`: Request could not complete; inspect error or failure.code.
- `413`: Request could not complete; inspect error or failure.code.
- `429`: Request could not complete; inspect error or failure.code.
- `500`: Request could not complete; inspect error or failure.code.
- `502`: Request could not complete; inspect error or failure.code.
- `503`: Request could not complete; inspect error or failure.code.
- `504`: Request could not complete; inspect error or failure.code.

---

[API](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api.md) · [All operations](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api/revisions/9ba049316894?raw)
