Kalshi splits trading across multiple matching engines to scale capacity.
Exchange instances correspond to specific categories (e.g. “crypto” or “combos”).
Kalshi plans to add shards incrementally to maintain a healthy balance of traffic.
Kalshi’s collateralization checks run within the matching engine. Programmatic traders normally need to fund the relevant exchange shard before placing an order. FCM members can instead enable automatic collateral transfers on eligible FIX sessions.Funding Overview
Manual transfers are also available through the Kalshi UI.
Get Balance provides a breakdown of account balances across exchange indexes.
Automatic Order Transfers on the App and WebSince the exchange sharding rollout, orders placed through the Kalshi App and Web
automatically transfer capital between exchange shards as needed to fund the order.
Market makers can disable this feature on the
Exchange Indexes settings page.Subaccounts Overview
To fund a subaccount on a new exchange instance, first transfer user-level funds to the desired exchange instance.
Next, use Create Subaccount with the exchange_index parameter to provision the subaccount on the new instance.
Then, use Transfer Between Subaccounts with the exchange_index parameter to transfer funds from the primary account to the subaccount on that instance.
Get All Subaccount Balances provides a breakdown of subaccount balances for each (exchange_index, subaccount) pair.
Auto-Rebalancing
Users may opt in to automatic rebalancing between exchange shards.
The customer supplies a target balance allocation as a percentage of their balance across exchange shards. For example, {Default: 80, Combos: 20}.
Every 10 seconds, Kalshi computes the customer’s balance on each exchange shard as its account balance minus the value of its resting orders.
If the balance has drifted from the target allocation, Kalshi executes an intra-exchange account transfer on the customer’s behalf to restore the target allocation.
Target balance allocations can be configured through the REST API and the clearing portal.
ExDestination<100> is available on a per-message basis for event-contract sessions.
If ExDestination<100> >= 0, routes directly to the target exchange.
If ExDestination<100> is -1, auto-routes using the required market ticker in Symbol<55>.
If ExDestination<100> is omitted and Symbol<55> is provided, auto-routes using Symbol<55>.
Sessions with UseCapReservation<21032> or automatic collateral transfers (AutoTransfer<21035>) enabled must omit ExDestination<100> or use -1 for new orders and replacements.Margined FIX sessions always route to exchange index 0.
All child markets of an event will live on the same exchange instance.
There is currently no plan to migrate any live market to a new exchange instance.
Single REST order writes that explicitly target a nonzero shard are rate-limited against that shard’s Write budget. Auto-routed single REST order writes are billed to the unscoped Write bucket and every nonzero shard’s Write bucket. REST batch writes and explicit shard 0 writes use only the unscoped Write budget. See Rate Limits and Tiers.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"API Documentation","colors":{"primary":"#00B67A","light":"#00DD94","dark":"#00B67A"},"logo":{"light":"https://mintcdn.com/kalshi-b198743e/koRHzlv9fsyF-jSm/logo-light.svg?fit=max\u0026auto=format\u0026n=koRHzlv9fsyF-jSm\u0026q=85\u0026s=bac849e081bbb1881bb945ea3e0464a8","dark":"https://mintcdn.com/kalshi-b198743e/koRHzlv9fsyF-jSm/logo-dark.svg?fit=max\u0026auto=format\u0026n=koRHzlv9fsyF-jSm\u0026q=85\u0026s=a4da341dfa9fb72cf3f2e94566447d0a"},"favicon":"https://mintcdn.com/kalshi-b198743e/koRHzlv9fsyF-jSm/favicon.png?fit=max\u0026auto=format\u0026n=koRHzlv9fsyF-jSm\u0026q=85\u0026s=292b09f2d750fdddf9861e6d016116dd","api":{"playground":{}},"thumbnails":{"appearance":"dark","background":"https://mintcdn.com/kalshi-b198743e/koRHzlv9fsyF-jSm/images/og-background.png?fit=max\u0026auto=format\u0026n=koRHzlv9fsyF-jSm\u0026q=85\u0026s=345c6286bc1878240df49e1dabe7a10f"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"kalshi-b198743e","hasAudioNarration":false,"actualSubdomain":"kalshi-b198743e","customDomains":["docs.kalshi.com"],"gitSource":{"type":"github","owner":"kalshi","repo":"exchange-infra","deployBranch":"dev","contentDirectory":"mintlify","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae3756b890fbf4d00686915","collectionId":"ed453434-58db-4f36-b826-4168238d5fb0","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae3756b890fbf4d00686915"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae3bb61f7d4b69ad614b8b0","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"REST","count":202},{"language":"default","tag":"Predictions APIs","count":148},{"language":"default","tag":"Perps APIs","count":101},{"language":"default","tag":"clearing-members","count":28},{"language":"default","tag":"WebSockets","count":25},{"language":"default","tag":"portfolio","count":25},{"language":"default","tag":"Concepts","count":21},{"language":"default","tag":"FIX","count":20},{"language":"default","tag":"communications","count":18},{"language":"default","tag":"orders","count":18}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":"#navigation-items li[id=\"/changelog\"],.dark .docs-home-hero-bg-light{display:none}.docs-home-hero{position:relative;width:100%;height:24rem;overflow:hidden;margin-top:-1px;display:flex;align-items:center;justify-content:center}.docs-home-hero-bg{position:absolute;inset:0;height:24rem;background-size:100%;background-position:center;background-repeat:no-repeat}.docs-home-hero-bg-light{background-image:url(https://mintlify-assets.b-cdn.net/kalshi-bg.svg)}.docs-home-hero-bg-dark{display:none;background-image:url(https://mintlify-assets.b-cdn.net/kalshi-dark-bg.svg)}.dark .docs-home-hero-bg-dark{display:block}.docs-home-hero-content{position:absolute;width:min(45rem,calc(100% - 2rem));padding:0 1rem;text-align:center;color:#000}.dark .docs-home-hero-content{color:#fff}.docs-home-hero-title{margin:0;font-family:Inter,sans-serif;font-size:36px;font-weight:500;line-height:44px}.docs-home-hero-subtitle{margin-top:1rem;font-size:18px;font-weight:400;opacity:.6}.docs-home-hero-agreement{margin-top:.75rem;font-size:14px;font-weight:400}.docs-home-hero-agreement span{opacity:.6}.docs-home-hero-link{color:#00b67a;text-decoration:underline}html.dark .docs-home-hero-link{color:#00dd94}.docs-home-content{max-width:70rem;margin:4rem auto 8rem;padding:0 1.25rem}.docs-home-section-title{margin-top:3.25rem;margin-bottom:1.25rem;font-size:1.75rem;font-weight:650;line-height:2.25rem}.docs-home-section-title:first-child{margin-top:0}"}],"page":{"pagePath":"getting_started/exchange_sharding","slug":"/getting_started/exchange_sharding","pageMetadata":{"title":"Exchange Sharding","description":"Exchange sharding in the Predictions API","href":"/getting_started/exchange_sharding"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Exchange sharding in the Predictions API\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,em:`em`,li:`li`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Table,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`overview`,children:`Overview`}),`\n`,_jsx(_components.p,{children:`Kalshi splits trading across multiple matching engines to scale capacity.\nExchange instances correspond to specific categories (e.g. “crypto” or “combos”).\nKalshi plans to add shards incrementally to maintain a healthy balance of traffic.`}),`\n`,_jsx(Heading,{level:`2`,id:`balance-management`,children:`Balance Management`}),`\n`,_jsxs(_components.p,{children:[`Kalshi’s collateralization checks run within the matching engine. Programmatic traders normally need to fund the relevant exchange shard before placing an order. FCM members can instead enable `,_jsx(_components.a,{href:`/fix/authentication#optional-fields`,children:`automatic collateral transfers on eligible FIX sessions`}),`.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Funding Overview`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Account transfers can be made through the `,_jsx(_components.a,{href:`/api-reference/portfolio/intra-account-transfer`,children:`Intra Account Transfer API`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Manual transfers are also available through the `,_jsx(_components.a,{href:`https://kalshi.com/account/exchange-indexes`,children:`Kalshi UI`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/api-reference/portfolio/get-balance`,children:`Get Balance`}),` provides a breakdown of account balances across exchange indexes.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Automatic Order Transfers on the App and Web`})}),`\n`,_jsxs(_components.p,{children:[`Since the exchange sharding rollout, orders placed through the Kalshi App and Web\nautomatically transfer capital between exchange shards as needed to fund the order.\nMarket makers can disable this feature on the\n`,_jsx(_components.a,{href:`https://kalshi.com/account/exchange-indexes`,children:`Exchange Indexes settings page`}),`.`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Subaccounts Overview`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`To fund a subaccount on a new exchange instance, first transfer user-level funds to the desired exchange instance.`}),`\n`,_jsxs(_components.li,{children:[`Next, use `,_jsx(_components.a,{href:`/api-reference/portfolio/create-subaccount`,children:`Create Subaccount`}),` with the `,_jsx(_components.code,{children:`exchange_index`}),` parameter to provision the subaccount on the new instance.`]}),`\n`,_jsxs(_components.li,{children:[`Then, use `,_jsx(_components.a,{href:`/api-reference/portfolio/transfer-between-subaccounts`,children:`Transfer Between Subaccounts`}),` with the `,_jsx(_components.code,{children:`exchange_index`}),` parameter to transfer funds from the primary account to the subaccount on that instance.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`/api-reference/portfolio/get-all-subaccount-balances`,children:`Get All Subaccount Balances`}),` provides a breakdown of subaccount balances for each `,_jsx(_components.code,{children:`(exchange_index, subaccount)`}),` pair.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.strong,{children:`Auto-Rebalancing`})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Users may opt in to automatic rebalancing between exchange shards.`}),`\n`,_jsxs(_components.li,{children:[`The customer supplies a target balance allocation as a percentage of their balance across exchange shards. For example, `,_jsx(_components.code,{children:`{Default: 80, Combos: 20}`}),`.`]}),`\n`,_jsx(_components.li,{children:`Every 10 seconds, Kalshi computes the customer’s balance on each exchange shard as its account balance minus the value of its resting orders.`}),`\n`,_jsx(_components.li,{children:`If the balance has drifted from the target allocation, Kalshi executes an intra-exchange account transfer on the customer’s behalf to restore the target allocation.`}),`\n`,_jsxs(_components.li,{children:[`Target balance allocations can be configured through the `,_jsx(_components.a,{href:`/api-reference/portfolio/set-target-balance-allocation`,children:`REST API`}),` and the clearing portal.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`order-routing`,children:`Order routing`}),`\n`,_jsx(Heading,{level:`3`,id:`market-data`,children:`Market Data`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`The `,_jsx(_components.code,{children:`exchange_index`}),` field is provided on `,_jsx(_components.a,{href:`/api-reference/market/get-markets`,children:_jsx(_components.code,{children:`GET /markets`})}),`, `,_jsx(_components.a,{href:`/api-reference/events/get-events`,children:_jsx(_components.code,{children:`GET /events`})}),`, and via the `,_jsx(_components.a,{href:`/websockets/market-and-event-lifecycle`,children:`market and event lifecycle WebSocket streams`}),` for newly created events and markets.`]}),`\n`,_jsxs(_components.li,{children:[`Market ticker formats are unaffected by exchange sharding. The `,_jsx(_components.code,{children:`exchange_index`}),` field is the authoritative source of truth.`]}),`\n`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Auto-routing requires the market ticker: provide `,_jsx(_components.code,{children:`market_ticker`}),` for API2 or `,_jsx(_components.code,{children:`Symbol\u003c55>`}),` for FIX. An order ID alone cannot identify the exchange shard.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`api2`,children:`API2`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.code,{children:`exchange_index`}),` query parameter is available on a per-endpoint basis.`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.code,{children:`exchange_index >= 0`}),`, routes directly to the target exchange.`]}),`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.code,{children:`exchange_index`}),` is `,_jsx(_components.code,{children:`-1`}),`, auto-routes using the required `,_jsx(_components.code,{children:`market_ticker`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.code,{children:`exchange_index`}),` is omitted and `,_jsx(_components.code,{children:`market_ticker`}),` is provided, auto-routes using `,_jsx(_components.code,{children:`market_ticker`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Otherwise, defaults to exchange index `,_jsx(_components.code,{children:`0`}),`.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`fix`,children:`FIX`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.a,{href:`/fix/order-entry`,children:_jsx(_components.code,{children:`ExDestination\u003c100>`})}),` is available on a per-message basis for event-contract sessions.`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.code,{children:`ExDestination\u003c100> >= 0`}),`, routes directly to the target exchange.`]}),`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.code,{children:`ExDestination\u003c100>`}),` is `,_jsx(_components.code,{children:`-1`}),`, auto-routes using the required market ticker in `,_jsx(_components.code,{children:`Symbol\u003c55>`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`If `,_jsx(_components.code,{children:`ExDestination\u003c100>`}),` is omitted and `,_jsx(_components.code,{children:`Symbol\u003c55>`}),` is provided, auto-routes using `,_jsx(_components.code,{children:`Symbol\u003c55>`}),`.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Sessions with `,_jsx(_components.code,{children:`UseCapReservation\u003c21032>`}),` or `,_jsxs(_components.a,{href:`/fix/authentication#optional-fields`,children:[`automatic collateral transfers (`,_jsx(_components.code,{children:`AutoTransfer\u003c21035>`}),`)`]}),` enabled must omit `,_jsx(_components.code,{children:`ExDestination\u003c100>`}),` or use `,_jsx(_components.code,{children:`-1`}),` for new orders and replacements.`]}),`\n`,_jsxs(_components.p,{children:[`Margined FIX sessions always route to exchange index `,_jsx(_components.code,{children:`0`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`series-shard-assignments`,children:`Series Shard Assignments`}),`\n`,_jsx(_components.p,{children:`The following assignments determine the shard where new events are created. Shard 0 is the catch-all for all categories and tags not listed below.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Shard index`}),_jsx(_components.th,{children:`Category`}),_jsx(_components.th,{children:`Tags`}),_jsx(_components.th,{children:`Series list`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`0`}),_jsx(_components.td,{children:_jsx(_components.em,{children:`All other categories`})}),_jsx(_components.td,{children:_jsx(_components.em,{children:`All other tags`})}),_jsx(_components.td,{children:`—`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`1`}),_jsx(_components.td,{children:`Exotics (Combos)`}),_jsx(_components.td,{children:`—`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://api.elections.kalshi.com/trade-api/v2/series?category=Exotics`,children:_jsx(_components.code,{children:`GET /series?category=Exotics`})})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`2`}),_jsx(_components.td,{children:`Crypto`}),_jsx(_components.td,{children:`—`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://api.elections.kalshi.com/trade-api/v2/series?category=Crypto`,children:_jsx(_components.code,{children:`GET /series?category=Crypto`})})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`2`}),_jsx(_components.td,{children:`Commodities`}),_jsx(_components.td,{children:`—`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://api.elections.kalshi.com/trade-api/v2/series?category=Commodities`,children:_jsx(_components.code,{children:`GET /series?category=Commodities`})})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{\"data-numeric\":`true`,children:`3`}),_jsx(_components.td,{children:`Sports`}),_jsx(_components.td,{children:`Tennis, Baseball, Basketball`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`https://api.elections.kalshi.com/trade-api/v2/series?category=Sports\u0026tags=Tennis%2CBaseball%2CBasketball`,children:_jsx(_components.code,{children:`GET /series?category=Sports\u0026tags=Tennis,Baseball,Basketball`})})})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`faq`,children:`FAQ`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`All child markets of an event will live on the same exchange instance.`}),`\n`,_jsx(_components.li,{children:`There is currently no plan to migrate any live market to a new exchange instance.`}),`\n`,_jsxs(_components.li,{children:[`Single REST order writes that explicitly target a nonzero shard are rate-limited against that shard’s Write budget. Auto-routed single REST order writes are billed to the unscoped Write bucket and every nonzero shard’s Write bucket. REST batch writes and explicit shard 0 writes use only the unscoped Write budget. See `,_jsx(_components.a,{href:`/getting_started/rate_limits#sharded-exchanges-have-per-shard-write-budgets`,children:`Rate Limits and Tiers`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Providing `,_jsx(_components.code,{children:`ExDestination`}),` / `,_jsx(_components.code,{children:`exchange_index`}),` is unnecessary for all RFQ operations, including FIX `,_jsxs(_components.a,{href:`/fix/rfq-messages`,children:[_jsx(_components.code,{children:`QuoteRequest`}),` (`,_jsx(_components.code,{children:`35=R`}),`), `,_jsx(_components.code,{children:`Quote`}),` (`,_jsx(_components.code,{children:`35=S`}),`), and `,_jsx(_components.code,{children:`AcceptQuote`}),` (`,_jsx(_components.code,{children:`35=UA`}),`)`]}),`, which are routed internally by Kalshi.`]}),`\n`,_jsxs(_components.li,{children:[`When trading via FIX, both `,_jsx(_components.code,{children:`MassCancelRequest`}),` and `,_jsx(_components.code,{children:`CancelOrdersOnDisconnect`}),` will target all exchange shards for the FIX session.`]}),`\n`,_jsx(_components.li,{children:`Automatic routing will incur an additional latency cost.`}),`\n`,_jsx(_components.li,{children:`Subaccount balances are local to a specific exchange instance.`}),`\n`,_jsx(_components.li,{children:`Order groups do not function across exchange instances.`}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`https://demo-api.kalshi.co/trade-api/v2/multivariate_event_collections/KXMVECROSSCATEGORY-SHARD1-R`,children:_jsx(_components.code,{children:`KXMVECROSSCATEGORY-SHARD1-R`})}),` is live in demo for testing.`]}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Exchange Sharding","description":"Exchange sharding in the Predictions API","href":"/getting_started/exchange_sharding"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Overview","slug":"overview","depth":2,"children":[]},{"title":"Balance Management","slug":"balance-management","depth":2,"children":[]},{"title":"Order routing","slug":"order-routing","depth":2,"children":[{"title":"Market Data","slug":"market-data","depth":3,"children":[]},{"title":"API2","slug":"api2","depth":3,"children":[]},{"title":"FIX","slug":"fix","depth":3,"children":[]}]},{"title":"Series Shard Assignments","slug":"series-shard-assignments","depth":2,"children":[]},{"title":"FAQ","slug":"faq","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"kalshi-b198743e","siteName":"API Documentation","title":"Exchange Sharding - API Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-13T20:31:35.342Z","originalFileLocation":"getting_started/exchange_sharding.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Exchange sharding in the Predictions API\">\u003cmeta data-mint-head name=\"application-name\" content=\"API Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Exchange Sharding - API Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Exchange sharding in the Predictions API\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"API Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.kalshi.com/getting_started/exchange_sharding\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://kalshi-b198743e.mintlify.app/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Exchange+Sharding\u0026amp;description=Exchange+sharding+in+the+Predictions+API\u0026amp;theme=59554236caa76c2d4ca00cb1\u0026amp;signature=35a456e7a59171484828703ffc3921f84b3095d514a4919200293d80b587e717\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Exchange Sharding - API Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Exchange sharding in the Predictions API\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://kalshi-b198743e.mintlify.app/_mintlify/api/og/v2?division=Documentation\u0026amp;title=Exchange+Sharding\u0026amp;description=Exchange+sharding+in+the+Predictions+API\u0026amp;theme=59554236caa76c2d4ca00cb1\u0026amp;signature=35a456e7a59171484828703ffc3921f84b3095d514a4919200293d80b587e717\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/kalshi-b198743e/_UdUeym1J95PnKJ_/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"API Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#00B67A\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.kalshi.com/getting_started/exchange_sharding\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/getting_started/exchange_sharding.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.kalshi.com/#organization\",\"name\":\"API Documentation\",\"url\":\"https://docs.kalshi.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/kalshi-b198743e/koRHzlv9fsyF-jSm/logo-light.svg?fit=max\u0026auto=format\u0026n=koRHzlv9fsyF-jSm\u0026q=85\u0026s=bac849e081bbb1881bb945ea3e0464a8\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.kalshi.com#website\",\"name\":\"API Documentation\",\"url\":\"https://docs.kalshi.com\",\"publisher\":{\"@id\":\"https://docs.kalshi.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.kalshi.com/getting_started/exchange_sharding#webpage\",\"url\":\"https://docs.kalshi.com/getting_started/exchange_sharding\",\"name\":\"Exchange Sharding\",\"description\":\"Exchange sharding in the Predictions API\",\"dateModified\":\"2026-10-13T20:31:35.342Z\",\"isPartOf\":{\"@id\":\"https://docs.kalshi.com#website\"}},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.kalshi.com/getting_started/exchange_sharding#article\",\"headline\":\"Exchange Sharding\",\"name\":\"Exchange Sharding\",\"description\":\"Exchange sharding in the Predictions API\",\"url\":\"https://docs.kalshi.com/getting_started/exchange_sharding\",\"mainEntityOfPage\":{\"@id\":\"https://docs.kalshi.com/getting_started/exchange_sharding#webpage\"},\"dateModified\":\"2026-10-13T20:31:35.342Z\",\"publisher\":{\"@id\":\"https://docs.kalshi.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.kalshi.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"API Documentation\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"API Documentation","nav":{"global":null,"tabs":[{"tab":"Welcome","pages":[{"title":"Welcome","href":"/welcome"}]},{"tab":"Quick Start","pages":[{"title":"Quick Start","href":"/getting_started/api_environments"}]},{"tab":"Concepts","pages":[{"title":"Making Your First Request","href":"/getting_started/making_your_first_request"},{"title":"Test In The Demo Environment","href":"/getting_started/demo_env"},{"title":"API Keys","href":"/getting_started/api_keys"},{"title":"Rate Limits and Tiers","href":"/getting_started/rate_limits"},{"title":"Understanding Pagination","href":"/getting_started/pagination"},{"title":"Orderbook Responses","href":"/getting_started/orderbook_responses"},{"title":"Order direction (outcome_side and book_side)","href":"/getting_started/order_direction"},{"title":"Order Groups","href":"/getting_started/order_groups"},{"title":"Subaccounts","href":"/getting_started/subaccounts"},{"title":"Sub-users vs. Subaccounts","href":"/getting_started/sub_users_vs_subaccounts"},{"title":"Fixed-Point Representation","href":"/getting_started/fixed_point_migration"},{"title":"Fee Rounding","href":"/getting_started/fee_rounding"},{"title":"Historical Data","href":"/getting_started/historical_data"},{"title":"Targets \u0026 Milestones","href":"/getting_started/targets_and_milestones"},{"title":"Market Lifecycle","href":"/getting_started/market_lifecycle"},{"title":"Maintenance and Pauses","href":"/getting_started/maintenance_and_pauses"},{"title":"Market Settlement","href":"/getting_started/market_settlement"},{"title":"Settlement Bounds","href":"/getting_started/settlement_bounds"},{"title":"Request for Quote (RFQ)","description":"How the Kalshi RFQ system works","href":"/getting_started/rfqs"},{"title":"Exchange Sharding","href":"/getting_started/exchange_sharding"},{"title":"Kalshi Glossary","description":"Core terminology used in the Kalshi exchange","href":"/getting_started/terms"}]},{"tab":"Predictions APIs","pages":[{"title":"Predictions APIs","href":"/cfbenchmarks/rest-passthrough"}]},{"tab":"Perps APIs","pages":[{"title":"Perps APIs","href":"/margin"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"title":"Exchange Sharding - API Documentation","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":[],"chunks":[]}