kalshi-cpp 0.6.2
C++23 client for Kalshi's Predictions API
Loading...
Searching...
No Matches
api.hpp
Go to the documentation of this file.
1// Generated by tools/codegen/generate.py from spec/openapi.yaml. Do not edit.
2#pragma once
3
6
7#include "kalshi/error.hpp"
9#include "kalshi/models.hpp"
10#include "kalshi/rate_limit.hpp"
11
12#include <memory>
13#include <string_view>
14
15namespace kalshi {
16
26public:
28 explicit KalshiClient(HttpClient client);
30 explicit KalshiClient(std::shared_ptr<const HttpTransport> transport);
32
34 KalshiClient& operator=(KalshiClient&&) noexcept;
35 KalshiClient(const KalshiClient&) = delete;
36 KalshiClient& operator=(const KalshiClient&) = delete;
37
38 [[nodiscard]] const HttpTransport& transport() const noexcept;
39
40 // ----- account -----------------------------------------------------------
41
45
49
52 [[nodiscard]] Result<std::vector<AccountApiUsageLevelVolumeProgress>>
54
58
59 // ----- api-keys ----------------------------------------------------------
60
63 [[nodiscard]] Result<GetApiKeysResponse> get_api_keys(const GetApiKeysParams& params = {});
64
68
73
76 [[nodiscard]] Result<void> delete_api_key(std::string_view api_key);
77
78 // ----- communications ----------------------------------------------------
79
83
88
92
95 [[nodiscard]] Result<void>
96 accept_block_trade_proposal(std::string_view block_trade_proposal_id,
98
101 [[nodiscard]] Result<GetRFQsResponse> get_rfqs(const GetRfqsParams& params = {});
102
106
109 [[nodiscard]] Result<RFQ> get_rfq(std::string_view rfq_id);
110
113 [[nodiscard]] Result<void> delete_rfq(std::string_view rfq_id);
114
117 [[nodiscard]] Result<Quote> get_rfq_quote(std::string_view rfq_id, std::string_view quote_id);
118
121 [[nodiscard]] Result<void> delete_rfq_quote(std::string_view rfq_id, std::string_view quote_id);
122
125 [[nodiscard]] Result<void> accept_rfq_quote(std::string_view rfq_id, std::string_view quote_id,
126 const AcceptQuoteRequest& body);
127
130 [[nodiscard]] Result<void> confirm_rfq_quote(std::string_view rfq_id,
131 std::string_view quote_id);
132
135 [[nodiscard]] Result<GetQuotesResponse> get_quotes(const GetQuotesParams& params = {});
136
140
143 [[deprecated("deprecated by Kalshi")]] [[nodiscard]] Result<Quote>
144 get_quote(std::string_view quote_id);
145
148 [[deprecated("deprecated by Kalshi")]] [[nodiscard]] Result<void>
149 delete_quote(std::string_view quote_id);
150
153 [[deprecated("deprecated by Kalshi")]] [[nodiscard]] Result<void>
154 accept_quote(std::string_view quote_id, const AcceptQuoteRequest& body);
155
158 [[deprecated("deprecated by Kalshi")]] [[nodiscard]] Result<void>
159 confirm_quote(std::string_view quote_id);
160
161 // ----- events ------------------------------------------------------------
162
166 get_market_candlesticks_by_event(std::string_view series_ticker, std::string_view ticker,
168
171 [[nodiscard]] Result<GetEventsResponse> get_events(const GetEventsParams& params = {});
172
177
182
185 [[nodiscard]] Result<GetEventResponse> get_event(std::string_view event_ticker,
186 const GetEventParams& params = {});
187
191 get_event_metadata(std::string_view event_ticker);
192
196 get_event_forecast_percentiles_history(std::string_view series_ticker, std::string_view ticker,
198
199 // ----- exchange ----------------------------------------------------------
200
204
209
213
217
218 // ----- fcm ---------------------------------------------------------------
219
223
227
231
235
240
243 [[nodiscard]] Result<void>
245
248 [[nodiscard]] Result<void>
250
255
260
263 [[nodiscard]] Result<GetPositionsResponse>
265
266 // ----- historical --------------------------------------------------------
267
271
275 get_market_candlesticks_historical(std::string_view ticker,
277
280 [[nodiscard]] Result<GetFillsResponse>
282
285 [[nodiscard]] Result<GetOrdersResponse>
287
290 [[nodiscard]] Result<GetPositionsResponse>
292
295 [[nodiscard]] Result<GetTradesResponse>
297
300 [[nodiscard]] Result<GetMarketsResponse>
302
305 [[nodiscard]] Result<Market> get_historical_market(std::string_view ticker);
306
307 // ----- incentive-programs ------------------------------------------------
308
313
314 // ----- live-data ---------------------------------------------------------
315
318 [[nodiscard]] Result<LiveData>
319 get_live_data_by_milestone(std::string_view milestone_id,
320 const GetLiveDataByMilestoneParams& params = {});
321
324 [[nodiscard]] Result<LiveData> get_live_data(std::string_view type,
325 std::string_view milestone_id,
326 const GetLiveDataParams& params = {});
327
331
334 [[nodiscard]] Result<std::optional<PlayByPlay>> get_game_stats(std::string_view milestone_id);
335
338 [[nodiscard]] Result<EventLiveData>
339 get_event_live_data(std::string_view event_ticker, const GetEventLiveDataParams& params = {});
340
344 get_weather_index(std::string_view city, const GetWeatherIndexParams& params = {});
345
349 get_weather_index_calibrations(std::string_view city);
350
351 // ----- market ------------------------------------------------------------
352
356 get_market_candlesticks(std::string_view series_ticker, std::string_view ticker,
357 const GetMarketCandlesticksParams& params);
358
361 [[nodiscard]] Result<GetTradesResponse> get_trades(const GetTradesParams& params = {});
362
365 [[nodiscard]] Result<OrderbookCountFp>
366 get_market_orderbook(std::string_view ticker, const GetMarketOrderbookParams& params = {});
367
372
375 [[nodiscard]] Result<Series> get_series(std::string_view series_ticker,
376 const GetSeriesParams& params = {});
377
380 [[nodiscard]] Result<std::vector<Series>>
382
385 [[nodiscard]] Result<GetMarketsResponse> get_markets(const GetMarketsParams& params = {});
386
389 [[nodiscard]] Result<Market> get_market(std::string_view ticker);
390
395
396 // ----- milestone ---------------------------------------------------------
397
400 [[nodiscard]] Result<Milestone> get_milestone(std::string_view milestone_id);
401
405
406 // ----- multivariate ------------------------------------------------------
407
411 get_multivariate_event_collection(std::string_view collection_ticker);
412
417 std::string_view collection_ticker,
419
424
425 // ----- order-groups ------------------------------------------------------
426
431
436
440 get_order_group(std::string_view order_group_id, const GetOrderGroupParams& params = {});
441
444 [[nodiscard]] Result<void> delete_order_group(std::string_view order_group_id,
445 const DeleteOrderGroupParams& params = {});
446
449 [[nodiscard]] Result<void> reset_order_group(std::string_view order_group_id,
450 const ResetOrderGroupParams& params = {});
451
454 [[nodiscard]] Result<void> trigger_order_group(std::string_view order_group_id,
455 const TriggerOrderGroupParams& params = {});
456
459 [[nodiscard]] Result<void>
460 update_order_group_limit(std::string_view order_group_id,
462 const UpdateOrderGroupLimitParams& params = {});
463
464 // ----- orders ------------------------------------------------------------
465
468 [[nodiscard]] Result<GetOrdersResponse> get_orders(const GetOrdersParams& params = {});
469
472 [[nodiscard]] Result<Order> get_order(std::string_view order_id);
473
478
481 [[nodiscard]] Result<FixedPointCount> get_order_queue_position(std::string_view order_id);
482
486
489 [[nodiscard]] Result<void> cancel_all_orders(const CancelAllOrdersParams& params = {});
490
495
500
503 [[nodiscard]] Result<CancelOrderV2Response> cancel_order(std::string_view order_id,
504 const CancelOrderParams& params = {});
505
508 [[nodiscard]] Result<AmendOrderV2Response> amend_order(std::string_view order_id,
509 const AmendOrderV2Request& body,
510 const AmendOrderParams& params = {});
511
515 decrease_order(std::string_view order_id, const DecreaseOrderV2Request& body,
516 const DecreaseOrderParams& params = {});
517
518 // ----- portfolio ---------------------------------------------------------
519
522 [[nodiscard]] Result<GetBalanceResponse> get_balance(const GetBalanceParams& params = {});
523
526 [[nodiscard]] Result<std::string>
528
533 const GetIntraExchangeInstanceTransfersParams& params = {});
534
538 get_intra_exchange_instance_transfer(std::string_view transfer_id);
539
543
546 [[nodiscard]] Result<void>
548
552
557
561
564 [[nodiscard]] Result<void>
566
570
575
579
584
589
592 [[nodiscard]] Result<GetFillsResponse> get_fills(const GetFillsParams& params = {});
593
597
600 [[nodiscard]] Result<void>
602
603 // ----- search ------------------------------------------------------------
604
609
613
614 // ----- structured-targets ------------------------------------------------
615
620
624 get_structured_target(std::string_view structured_target_id);
625
626private:
627 struct Impl;
628 std::unique_ptr<Impl> impl_;
629};
630
635
636} // namespace kalshi
libcurl transport.
Definition http_client.hpp:93
Request boundary used by KalshiClient.
Definition http_client.hpp:62
Client for the Kalshi Predictions REST API.
Definition api.hpp:25
Result< std::vector< AccountApiUsageLevelVolumeProgress > > get_account_api_usage_level_volume_progress()
Get Account API Usage Level Volume Progress GET /account/api_usage_level/volume_progress
Result< std::string > propose_block_trade(const ProposeBlockTradeRequest &body)
Propose Block Trade POST /communications/block-trade-proposals
Result< Quote > get_quote(std::string_view quote_id)
Get Quote GET /communications/quotes/{quote_id}
Result< void > apply_subaccount_transfer(const ApplySubaccountTransferRequest &body)
Transfer Between Subaccounts POST /portfolio/subaccounts/transfer
Result< void > delete_order_group(std::string_view order_group_id, const DeleteOrderGroupParams &params={})
Delete Order Group DELETE /portfolio/order_groups/{order_group_id}
KalshiClient(KalshiClient &&) noexcept
Result< Milestone > get_milestone(std::string_view milestone_id)
Get Milestone GET /milestones/{milestone_id}
Result< void > confirm_quote(std::string_view quote_id)
Confirm Quote PUT /communications/quotes/{quote_id}/confirm
Result< std::vector< FCMSubtrader > > get_fcm_subtraders()
List FCM Subtraders GET /fcm/subtraders
Result< std::string > get_communications_id()
Get Communications ID GET /communications/id
Result< GetOrdersResponse > get_orders(const GetOrdersParams &params={})
Get Orders GET /portfolio/orders
Result< CreateMarketInMultivariateEventCollectionResponse > create_market_in_multivariate_event_collection(std::string_view collection_ticker, const CreateMarketInMultivariateEventCollectionRequest &body)
Create Market In Multivariate Event Collection POST /multivariate_event_collections/{collection_ticke...
Result< void > update_order_group_limit(std::string_view order_group_id, const UpdateOrderGroupLimitRequest &body, const UpdateOrderGroupLimitParams &params={})
Update Order Group Limit PUT /portfolio/order_groups/{order_group_id}/limit
Result< std::vector< MarketCandlesticksResponse > > batch_get_market_candlesticks(const BatchGetMarketCandlesticksParams &params)
Batch Get Market Candlesticks GET /markets/candlesticks
Result< std::optional< PlayByPlay > > get_game_stats(std::string_view milestone_id)
Get Game Stats GET /live_data/milestone/{milestone_id}/game_stats
Result< GetStructuredTargetsResponse > get_structured_targets(const GetStructuredTargetsParams &params={})
Get Structured Targets GET /structured_targets
Result< GetBlockTradeProposalsResponse > get_block_trade_proposals(const GetBlockTradeProposalsParams &params={})
Get Block Trade Proposals GET /communications/block-trade-proposals
Result< CreateOrderGroupResponse > create_order_group(const CreateOrderGroupRequest &body)
Create Order Group POST /portfolio/order_groups/create
const HttpTransport & transport() const noexcept
Result< std::vector< MarketOrderbookFp > > get_market_orderbooks(const GetMarketOrderbooksParams &params)
Get Multiple Market Orderbooks GET /markets/orderbooks
Result< GetPositionsResponse > get_fcm_positions(const GetFcmPositionsParams &params={})
Get FCM Positions GET /fcm/positions
Result< void > update_subaccount_netting(const UpdateSubaccountNettingRequest &body)
Update Subaccount Netting PUT /portfolio/subaccounts/netting
Result< GetBalanceResponse > get_balance(const GetBalanceParams &params={})
Get Balance GET /portfolio/balance
Result< void > update_fcm_event_contract_daily_cap(const UpdateFCMEventContractDailyCapRequest &body)
Update FCM Subtrader Event Contract Daily Cap PUT /fcm/subtraders/event_contract_daily_cap
Result< GetDepositsResponse > get_deposits(const GetDepositsParams &params={})
Get Deposits GET /portfolio/deposits
Result< GetFcmFillsResponse > get_fcm_fills(const GetFcmFillsParams &params={})
Get FCM Fills GET /fcm/fills
Result< GetFillsResponse > get_fills_historical(const GetFillsHistoricalParams &params={})
Get Historical Fills GET /historical/fills
Result< void > reset_order_group(std::string_view order_group_id, const ResetOrderGroupParams &params={})
Reset Order Group PUT /portfolio/order_groups/{order_group_id}/reset
Result< GetTargetBalanceAllocationResponse > get_target_balance_allocation()
Get Target Balance Allocation GET /portfolio/target_balance_allocation
Result< GetPortfolioRestingOrderTotalValueResponse > get_portfolio_resting_order_total_value()
Get Total Resting Order Value GET /portfolio/summary/total_resting_order_value
Result< IntraExchangeInstanceTransfer > get_intra_exchange_instance_transfer(std::string_view transfer_id)
Get Intra Account Transfer GET /portfolio/intra_exchange_instance_transfers/{transfer_id}
Result< std::vector< std::string > > update_fcm_subtrader_blocked_categories(const UpdateFCMSubtraderBlockedCategoriesRequest &body)
Update FCM Subtrader Blocked Categories PUT /fcm/subtraders/blocked_categories
Result< std::vector< BatchCancelOrdersV2ResponseOrdersItem > > batch_cancel_orders(const BatchCancelOrdersV2Request &body)
Batch Cancel Orders DELETE /portfolio/events/orders/batched
Result< RFQ > get_rfq(std::string_view rfq_id)
Get RFQ GET /communications/rfqs/{rfq_id}
Result< std::string > intra_exchange_instance_transfer(const IntraExchangeInstanceTransferRequest &body)
Intra Account Transfer POST /portfolio/intra_exchange_instance_transfer
Result< GetMilestonesResponse > get_milestones(const GetMilestonesParams &params)
Get Milestones GET /milestones
Result< Schedule > get_exchange_schedule()
Get Exchange Schedule GET /exchange/schedule
KalshiClient(std::shared_ptr< const HttpTransport > transport)
Uses any transport, such as RetryingTransport or a test double.
Result< GetAccountEndpointCostsResponse > get_account_endpoint_costs()
List Non-Default Endpoint Costs GET /account/endpoint_costs
Result< AmendOrderV2Response > amend_order(std::string_view order_id, const AmendOrderV2Request &body, const AmendOrderParams &params={})
Amend Order POST /portfolio/events/orders/{order_id}/amend
Result< GetEventMetadataResponse > get_event_metadata(std::string_view event_ticker)
Get Event Metadata GET /events/{event_ticker}/metadata
Result< GetIntraExchangeInstanceTransfersResponse > get_intra_exchange_instance_transfers(const GetIntraExchangeInstanceTransfersParams &params={})
Get Intra Account Transfers GET /portfolio/intra_exchange_instance_transfers
Result< Quote > get_rfq_quote(std::string_view rfq_id, std::string_view quote_id)
Get RFQ Quote GET /communications/rfqs/{rfq_id}/quotes/{quote_id}
Result< GetWeatherIndexCalibrationsResponse > get_weather_index_calibrations(std::string_view city)
Get Weather Index Calibrations GET /live_data/weather/{city}/calibrations
Result< GetMarketsResponse > get_markets(const GetMarketsParams &params={})
Get Markets GET /markets
Result< std::vector< SubaccountBalance > > get_subaccount_balances()
Get All Subaccount Balances GET /portfolio/subaccounts/balances
Result< GetEventCandlesticksResponse > get_market_candlesticks_by_event(std::string_view series_ticker, std::string_view ticker, const GetMarketCandlesticksByEventParams &params)
Get Event Candlesticks GET /series/{series_ticker}/events/{ticker}/candlesticks
Result< LiveData > get_live_data_by_milestone(std::string_view milestone_id, const GetLiveDataByMilestoneParams &params={})
Get Live Data GET /live_data/milestone/{milestone_id}
Result< GetTradesResponse > get_trades_historical(const GetTradesHistoricalParams &params={})
Get Historical Trades GET /historical/trades
Result< GetOrdersResponse > get_historical_orders(const GetHistoricalOrdersParams &params={})
Get Historical Orders GET /historical/orders
Result< GetApiKeysResponse > get_api_keys(const GetApiKeysParams &params={})
Get API Keys GET /api_keys
Result< void > upgrade_account_api_usage_level()
Upgrade Account API Usage Level POST /account/api_usage_level/upgrade
Result< GetFillsResponse > get_fills(const GetFillsParams &params={})
Get Fills GET /portfolio/fills
Result< Market > get_market(std::string_view ticker)
Get Market GET /markets/{ticker}
Result< Market > get_historical_market(std::string_view ticker)
Get Historical Market GET /historical/markets/{ticker}
Result< GetPositionsResponse > get_historical_positions(const GetHistoricalPositionsParams &params={})
Get Historical Positions GET /historical/positions
Result< std::vector< Series > > get_series_list(const GetSeriesListParams &params={})
Get Series List GET /series
Result< GetOrderGroupResponse > get_order_group(std::string_view order_group_id, const GetOrderGroupParams &params={})
Get Order Group GET /portfolio/order_groups/{order_group_id}
Result< GetPositionsResponse > get_positions(const GetPositionsParams &params={})
Get Positions GET /portfolio/positions
Result< void > set_target_balance_allocation(const SetTargetBalanceAllocationRequest &body)
Set Target Balance Allocation POST /portfolio/target_balance_allocation
Result< void > delete_rfq(std::string_view rfq_id)
Delete RFQ DELETE /communications/rfqs/{rfq_id}
Result< void > accept_rfq_quote(std::string_view rfq_id, std::string_view quote_id, const AcceptQuoteRequest &body)
Accept RFQ Quote PUT /communications/rfqs/{rfq_id}/quotes/{quote_id}/accept
Result< GetFCMEventContractDailyCapResponse > get_fcm_event_contract_daily_cap(const GetFcmEventContractDailyCapParams &params={})
Get FCM Subtrader Event Contract Daily Cap GET /fcm/subtraders/event_contract_daily_cap
Result< void > delete_rfq_quote(std::string_view rfq_id, std::string_view quote_id)
Delete RFQ Quote DELETE /communications/rfqs/{rfq_id}/quotes/{quote_id}
Result< void > confirm_rfq_quote(std::string_view rfq_id, std::string_view quote_id)
Confirm RFQ Quote PUT /communications/rfqs/{rfq_id}/quotes/{quote_id}/confirm
Result< void > delete_fcm_event_contract_daily_cap(const DeleteFcmEventContractDailyCapParams &params)
Delete FCM Subtrader Event Contract Daily Cap DELETE /fcm/subtraders/event_contract_daily_cap
Result< GetMarketCandlesticksHistoricalResponse > get_market_candlesticks_historical(std::string_view ticker, const GetMarketCandlesticksHistoricalParams &params)
Get Historical Market Candlesticks GET /historical/markets/{ticker}/candlesticks
Result< DecreaseOrderV2Response > decrease_order(std::string_view order_id, const DecreaseOrderV2Request &body, const DecreaseOrderParams &params={})
Decrease Order POST /portfolio/events/orders/{order_id}/decrease
Result< GetSubaccountTransfersResponse > get_subaccount_transfers(const GetSubaccountTransfersParams &params={})
Get Subaccount Transfers GET /portfolio/subaccounts/transfers
Result< std::string > get_user_data_timestamp()
Get User Data Timestamp GET /exchange/user_data_timestamp
Result< std::vector< std::string > > get_fcm_subtrader_blocked_categories(const GetFcmSubtraderBlockedCategoriesParams &params)
Get FCM Subtrader Blocked Categories GET /fcm/subtraders/blocked_categories
Result< std::optional< std::vector< OrderGroup > > > get_order_groups(const GetOrderGroupsParams &params={})
Get Order Groups GET /portfolio/order_groups
Result< GetFiltersBySportsResponse > get_filters_for_sports()
Get Filters for Sports GET /search/filters_by_sport
Result< std::int64_t > create_subaccount(const CreateSubaccountRequest &body)
Create Subaccount POST /portfolio/subaccounts
Result< GetEventFeeChangesResponse > get_event_fee_changes(const GetEventFeeChangesParams &params={})
Get Event Fee Changes GET /events/fee_changes
Result< GetQuotesResponse > get_quotes(const GetQuotesParams &params={})
Get Quotes GET /communications/quotes
Result< OrderbookCountFp > get_market_orderbook(std::string_view ticker, const GetMarketOrderbookParams &params={})
Get Market Orderbook GET /markets/{ticker}/orderbook
Result< std::optional< StructuredTarget > > get_structured_target(std::string_view structured_target_id)
Get Structured Target GET /structured_targets/{structured_target_id}
Result< void > delete_quote(std::string_view quote_id)
Delete Quote DELETE /communications/quotes/{quote_id}
Result< std::string > create_quote(const CreateQuoteRequest &body)
Create Quote POST /communications/quotes
Result< CreateApiKeyResponse > create_api_key(const CreateApiKeyRequest &body)
Create API Key POST /api_keys
Result< void > cancel_all_orders(const CancelAllOrdersParams &params={})
Cancel All Orders DELETE /portfolio/events/orders
Result< GetTradesResponse > get_trades(const GetTradesParams &params={})
Get Trades GET /markets/trades
Result< MultivariateEventCollection > get_multivariate_event_collection(std::string_view collection_ticker)
Get Multivariate Event Collection GET /multivariate_event_collections/{collection_ticker}
Result< GetOrdersResponse > get_fcm_orders(const GetFcmOrdersParams &params={})
Get FCM Orders GET /fcm/orders
Result< GetEventResponse > get_event(std::string_view event_ticker, const GetEventParams &params={})
Get Event GET /events/{event_ticker}
Result< std::vector< OrderQueuePosition > > get_order_queue_positions(const GetOrderQueuePositionsParams &params={})
Get Queue Positions for Orders GET /portfolio/orders/queue_positions
Result< void > trigger_order_group(std::string_view order_group_id, const TriggerOrderGroupParams &params={})
Trigger Order Group PUT /portfolio/order_groups/{order_group_id}/trigger
Result< std::vector< BatchCreateOrdersV2ResponseOrdersItem > > batch_create_orders(const BatchCreateOrdersV2Request &body)
Batch Create Orders POST /portfolio/events/orders/batched
Result< std::vector< SubaccountNettingConfig > > get_subaccount_netting()
Get Subaccount Netting GET /portfolio/subaccounts/netting
Result< void > accept_quote(std::string_view quote_id, const AcceptQuoteRequest &body)
Accept Quote PUT /communications/quotes/{quote_id}/accept
Result< GetMarketsResponse > get_historical_markets(const GetHistoricalMarketsParams &params={})
Get Historical Markets GET /historical/markets
Result< Order > get_order(std::string_view order_id)
Get Order GET /portfolio/orders/{order_id}
Result< ExchangeStatus > get_exchange_status()
Get Exchange Status GET /exchange/status
Result< LiveData > get_live_data(std::string_view type, std::string_view milestone_id, const GetLiveDataParams &params={})
Get Live Data (with type) GET /live_data/{type}/milestone/{milestone_id}
Result< std::string > create_rfq(const CreateRFQRequest &body)
Create RFQ POST /communications/rfqs
Result< void > accept_block_trade_proposal(std::string_view block_trade_proposal_id, const AcceptBlockTradeProposalRequest &body)
Accept Block Trade Proposal POST /communications/block-trade-proposals/{block_trade_proposal_id}/acce...
Result< FixedPointCount > get_order_queue_position(std::string_view order_id)
Get Order Queue Position GET /portfolio/orders/{order_id}/queue_position
Result< GetMultivariateEventsResponse > get_multivariate_events(const GetMultivariateEventsParams &params={})
Get Multivariate Events GET /events/multivariate
Result< Series > get_series(std::string_view series_ticker, const GetSeriesParams &params={})
Get Series GET /series/{series_ticker}
Result< GenerateApiKeyResponse > generate_api_key(const GenerateApiKeyRequest &body)
Generate API Key POST /api_keys/generate
Result< GetRFQsResponse > get_rfqs(const GetRfqsParams &params={})
Get RFQs GET /communications/rfqs
Result< GetWithdrawalsResponse > get_withdrawals(const GetWithdrawalsParams &params={})
Get Withdrawals GET /portfolio/withdrawals
Result< GetMultivariateEventCollectionsResponse > get_multivariate_event_collections(const GetMultivariateEventCollectionsParams &params={})
Get Multivariate Event Collections GET /multivariate_event_collections
Result< std::vector< LiveData > > get_live_datas(const GetLiveDatasParams &params)
Get Multiple Live Data GET /live_data/batch
Result< GetSettlementsResponse > get_settlements(const GetSettlementsParams &params={})
Get Settlements GET /portfolio/settlements
Result< GetWeatherIndexResponse > get_weather_index(std::string_view city, const GetWeatherIndexParams &params={})
Get Weather Index GET /live_data/weather/{city}
Result< std::string > create_fcm_subtrader(const CreateFCMSubtraderRequest &body)
Create FCM Subtrader POST /fcm/subtraders
Result< GetEventsResponse > get_events(const GetEventsParams &params={})
Get Events GET /events
Result< GetIncentiveProgramsResponse > get_incentive_programs(const GetIncentiveProgramsParams &params={})
Get Incentives GET /incentive_programs
Result< std::vector< SeriesFeeChange > > get_series_fee_changes(const GetSeriesFeeChangesParams &params={})
Get Series Fee Changes GET /series/fee_changes
KalshiClient(HttpClient client)
Uses a libcurl client. It signs requests when constructed with a Signer.
Result< void > delete_api_key(std::string_view api_key)
Delete API Key DELETE /api_keys/{api_key}
Result< std::vector< ForecastPercentilesPoint > > get_event_forecast_percentiles_history(std::string_view series_ticker, std::string_view ticker, const GetEventForecastPercentilesHistoryParams &params)
Get Event Forecast Percentile History GET /series/{series_ticker}/events/{ticker}/forecast_percentile...
Result< GetAccountApiLimitsResponse > get_account_api_limits()
Get Account API Limits GET /account/limits
Result< EventLiveData > get_event_live_data(std::string_view event_ticker, const GetEventLiveDataParams &params={})
Get Event Live Data GET /live_data/events/{event_ticker}
Result< GetHistoricalCutoffResponse > get_historical_cutoff()
Get Historical Cutoff Timestamps GET /historical/cutoff
Result< CancelOrderV2Response > cancel_order(std::string_view order_id, const CancelOrderParams &params={})
Cancel Order DELETE /portfolio/events/orders/{order_id}
Result< GetMarketCandlesticksResponse > get_market_candlesticks(std::string_view series_ticker, std::string_view ticker, const GetMarketCandlesticksParams &params)
Get Market Candlesticks GET /series/{series_ticker}/markets/{ticker}/candlesticks
Result< std::map< std::string, std::vector< std::string > > > get_tags_for_series_categories()
Get Tags for Series Categories GET /search/tags_by_categories
Result< CreateOrderV2Response > create_order(const CreateOrderV2Request &body)
Create Order POST /portfolio/events/orders
Definition api.hpp:15
std::expected< T, Error > Result
Result type for SDK operations.
Definition error.hpp:50
RateLimitConfig rate_limit_config(const GetAccountApiLimitsResponse &limits, const GetAccountEndpointCostsResponse &costs)
Builds a RateLimitedTransport config from get_account_api_limits() and get_account_endpoint_costs().
Definition models.hpp:811
Query parameters for amend_order.
Definition models.hpp:832
Definition models.hpp:922
Definition models.hpp:1062
Definition models.hpp:1161
Query parameters for batch_get_market_candlesticks.
Definition models.hpp:1186
Query parameters for cancel_all_orders.
Definition models.hpp:1326
Query parameters for cancel_order.
Definition models.hpp:1332
Definition models.hpp:1351
Definition models.hpp:1373
Definition models.hpp:1524
Definition models.hpp:1134
Definition models.hpp:1565
Definition models.hpp:1586
Definition models.hpp:1616
Query parameters for decrease_order.
Definition models.hpp:1634
Definition models.hpp:1639
Query parameters for delete_fcm_event_contract_daily_cap.
Definition models.hpp:1660
Query parameters for delete_order_group.
Definition models.hpp:1666
Definition models.hpp:1912
Definition models.hpp:1937
Definition models.hpp:1955
Query parameters for get_api_keys.
Definition models.hpp:1963
Definition models.hpp:1968
Query parameters for get_balance.
Definition models.hpp:1977
Query parameters for get_block_trade_proposals.
Definition models.hpp:2005
Query parameters for get_deposits.
Definition models.hpp:2029
Query parameters for get_event_fee_changes.
Definition models.hpp:2052
Query parameters for get_event_forecast_percentiles_history.
Definition models.hpp:2067
Query parameters for get_event_live_data.
Definition models.hpp:2084
Query parameters for get_event.
Definition models.hpp:2118
Query parameters for get_events.
Definition models.hpp:2131
Query parameters for get_fcm_event_contract_daily_cap.
Definition models.hpp:2246
Query parameters for get_fcm_fills.
Definition models.hpp:2252
Query parameters for get_fcm_orders.
Definition models.hpp:2267
Query parameters for get_fcm_positions.
Definition models.hpp:2289
Query parameters for get_fcm_subtrader_blocked_categories.
Definition models.hpp:2308
Query parameters for get_fills_historical.
Definition models.hpp:2314
Query parameters for get_fills.
Definition models.hpp:2330
Query parameters for get_historical_markets.
Definition models.hpp:2398
Query parameters for get_historical_orders.
Definition models.hpp:2414
Query parameters for get_historical_positions.
Definition models.hpp:2430
Query parameters for get_incentive_programs.
Definition models.hpp:2444
Query parameters for get_intra_exchange_instance_transfers.
Definition models.hpp:2513
Query parameters for get_live_data_by_milestone.
Definition models.hpp:2527
Query parameters for get_live_data.
Definition models.hpp:2533
Query parameters for get_live_datas.
Definition models.hpp:2552
Query parameters for get_market_candlesticks_by_event.
Definition models.hpp:2564
Query parameters for get_market_candlesticks_historical.
Definition models.hpp:2574
Query parameters for get_market_candlesticks.
Definition models.hpp:2626
Query parameters for get_market_orderbook.
Definition models.hpp:2645
Query parameters for get_market_orderbooks.
Definition models.hpp:2663
Query parameters for get_markets.
Definition models.hpp:2682
Query parameters for get_milestones.
Definition models.hpp:2726
Query parameters for get_multivariate_event_collections.
Definition models.hpp:2796
Query parameters for get_multivariate_events.
Definition models.hpp:2817
Query parameters for get_order_group.
Definition models.hpp:2838
Query parameters for get_order_groups.
Definition models.hpp:2855
Query parameters for get_order_queue_positions.
Definition models.hpp:2881
Query parameters for get_orders.
Definition models.hpp:2909
Query parameters for get_positions.
Definition models.hpp:2944
Query parameters for get_quotes.
Definition models.hpp:3058
Query parameters for get_rfqs.
Definition models.hpp:3141
Query parameters for get_series_fee_changes.
Definition models.hpp:3160
Query parameters for get_series_list.
Definition models.hpp:3183
Query parameters for get_series.
Definition models.hpp:3237
Query parameters for get_settlements.
Definition models.hpp:3247
Query parameters for get_structured_targets.
Definition models.hpp:3319
Query parameters for get_subaccount_transfers.
Definition models.hpp:3367
Query parameters for get_trades_historical.
Definition models.hpp:3413
Query parameters for get_trades.
Definition models.hpp:3429
Query parameters for get_weather_index.
Definition models.hpp:3522
Query parameters for get_withdrawals.
Definition models.hpp:3583
Definition models.hpp:3638
Defaults match Kalshi's Basic tier.
Definition rate_limit.hpp:69
Query parameters for reset_order_group.
Definition models.hpp:3670
Query parameters for trigger_order_group.
Definition models.hpp:3691
Query parameters for update_order_group_limit.
Definition models.hpp:3719
Definition models.hpp:3726
Definition models.hpp:3735