---
title: "Create Market In Multivariate Event Collection"
method: POST
path: "/multivariate_event_collections/{collection_ticker}"
tags: ["multivariate"]
---

# Create Market In Multivariate Event Collection

`POST /multivariate_event_collections/{collection_ticker}`

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.

## Path parameters

- `collection_ticker` string, required

## Request body

- CreateMarketInMultivariateEventCollectionRequest
  - `selected_markets` TickerPair[], required — List of selected markets that act as parameters to determine which market is created.
    - `market_ticker` string, required — Market ticker identifier.
    - `event_ticker` string, required — Event ticker identifier.
    - `side` 'yes' | 'no', required — Side of the market (yes or no).
  - `with_market_payload` boolean — Whether to include the market payload in the response.

## Response `200`

Market created successfully

- CreateMarketInMultivariateEventCollectionResponse
  - `event_ticker` string, required — Event ticker for the created market.
  - `market_ticker` string, required — Market ticker for the created market.
  - `market` Market
    - `ticker` string, required
    - `event_ticker` string, required
    - `market_type` 'binary' | 'scalar', required — Identifies the type of market
    - `title` string
    - `subtitle` string
    - `yes_sub_title` string, required — Shortened title for the yes side of this market
    - `no_sub_title` string, required — Shortened title for the no side of this market
    - `created_time` string, date-time, required
    - `updated_time` string, date-time, required — Time of the last non-trading metadata update.
    - `open_time` string, date-time, required
    - `close_time` string, date-time, required
    - `expected_expiration_time` string, date-time, nullable — Time when this market is expected to expire
    - `expiration_time` string, date-time
    - `latest_expiration_time` string, date-time, required — Latest possible time for this market to expire
    - `settlement_timer_seconds` integer, required — The amount of time after determination that the market settles
    - `status` 'initialized' | 'inactive' | 'active' | 'closed' | 'determined' | 'disputed' | 'amended' | 'finalized', required — The current status of the market in its lifecycle.
    - `yes_bid_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `yes_bid_size_fp` string, required — Fixed-point contract count string (2 decimals, e.g., "10.00"; referred to as "fp" in field names). Requests accept 0-2 decimal places (e.g., "10", "10.0", "10.00"); responses always emit 2 decimals. Fractional contract values (e.g., "2.50") are supported; the minimum granularity is 0.01 contracts.
    - `yes_ask_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `yes_ask_size_fp` string, required — Fixed-point contract count string (2 decimals, e.g., "10.00"; referred to as "fp" in field names). Requests accept 0-2 decimal places (e.g., "10", "10.0", "10.00"); responses always emit 2 decimals. Fractional contract values (e.g., "2.50") are supported; the minimum granularity is 0.01 contracts.
    - `no_bid_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `no_ask_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `last_price_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `volume_fp` string, required — Fixed-point contract count string (2 decimals, e.g., "10.00"; referred to as "fp" in field names). Requests accept 0-2 decimal places (e.g., "10", "10.0", "10.00"); responses always emit 2 decimals. Fractional contract values (e.g., "2.50") are supported; the minimum granularity is 0.01 contracts.
    - `volume_24h_fp` string, required — Fixed-point contract count string (2 decimals, e.g., "10.00"; referred to as "fp" in field names). Requests accept 0-2 decimal places (e.g., "10", "10.0", "10.00"); responses always emit 2 decimals. Fractional contract values (e.g., "2.50") are supported; the minimum granularity is 0.01 contracts.
    - `result` 'yes' | 'no' | 'scalar' | '', required
    - `can_close_early` boolean, required
    - `open_interest_fp` string, required — Fixed-point contract count string (2 decimals, e.g., "10.00"; referred to as "fp" in field names). Requests accept 0-2 decimal places (e.g., "10", "10.0", "10.00"); responses always emit 2 decimals. Fractional contract values (e.g., "2.50") are supported; the minimum granularity is 0.01 contracts.
    - `notional_value_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `previous_yes_bid_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `previous_yes_ask_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `previous_price_dollars` string, required — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `liquidity_dollars` string — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `settlement_value_dollars` string — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `settlement_ts` string, date-time, nullable — Timestamp when the market was settled. Only filled for settled markets
    - `expiration_value` string, required — The value that was considered for the settlement
    - `occurrence_datetime` string, date-time, nullable — The recorded datetime when the underlying event occurred, if available
    - `fee_waiver_expiration_time` string, date-time, nullable — Time when this market's fee waiver expires
    - `early_close_condition` string, nullable — The condition under which the market can close early
    - `strike_type` 'greater' | 'greater_or_equal' | 'less' | 'less_or_equal' | 'between' | 'functional' | 'custom' | 'structured' — Strike type defines how the market strike is defined and evaluated
    - `floor_strike` number, double, nullable — Minimum expiration value that leads to a YES settlement
    - `cap_strike` number, double, nullable — Maximum expiration value that leads to a YES settlement
    - `functional_strike` string, nullable — Mapping from expiration values to settlement values
    - `custom_strike` object, nullable — Expiration value for each target that leads to a YES settlement
    - `rules_primary` string, required — A plain language description of the most important market terms
    - `rules_secondary` string, required — A plain language description of secondary market terms
    - `mve_collection_ticker` string — The ticker of the multivariate event collection
    - `mve_selected_legs` MveSelectedLeg[]
      - `event_ticker` string — Unique identifier for the selected event
      - `market_ticker` string — Unique identifier for the selected market
      - `side` string — The side of the selected market
      - `yes_settlement_value_dollars` string — Fixed-point US dollar string. Most request fields accept 2-4 decimal places (e.g., "0.56", "0.5600"); responses emit up to 6. Valid quote intervals for a given market are constrained by that market's price level structure.
    - `primary_participant_key` string, nullable
    - `price_level_structure` string, required — Price level structure for this market, defining price ranges and tick sizes
    - `price_ranges` PriceRange[], required — Valid price ranges for orders on this market
      - `start` string, required — Starting price for this range in dollars
      - `end` string, required — Ending price for this range in dollars
      - `step` string, required — Price step/tick size for this range in dollars
    - `is_provisional` boolean — If true, the market may be removed after determination if there is no activity on it
    - `exchange_index` integer — Identifier for an exchange shard.

## Other responses

- `400` — Bad request - invalid input
- `401` — Unauthorized - authentication required
- `429` — Rate limit exceeded. The default cost is 10 tokens per request. Use GET /trade-api/v2/account/endpoint_costs to list non-default endpoint costs.
- `500` — Internal server error

---

[API](https://skmtc.net/kalshi/apis/kalshi-trade-api-manual-endpoints.md) · [All operations](https://skmtc.net/kalshi/apis/kalshi-trade-api-manual-endpoints/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kalshi/kalshi-trade-api-manual-endpoints/revisions/6aec27d55fba/schema)
