@@ -6,29 +6,29 @@ pub use websocket::WebSocketClient;
66
77use crate :: {
88 api:: {
9- api_keys, communications, events, exchange, fcm, incentive_programs, live_data, markets ,
10- milestones, multivariate, order_groups, orders, portfolio, search, series,
9+ account , api_keys, communications, events, exchange, fcm, incentive_programs, live_data,
10+ markets , milestones, multivariate, order_groups, orders, portfolio, search, series,
1111 structured_targets, subaccounts,
1212 } ,
1313 auth:: KalshiConfig ,
1414 error:: Result ,
1515 models:: {
1616 AcceptQuoteRequest , AmendOrderRequest , AmendOrderResponse , ApiKeysResponse ,
17- BalanceResponse , BatchCancelOrdersRequest , BatchCancelOrdersResponse ,
18- BatchCandlesticksResponse , BatchCreateOrdersRequest , BatchCreateOrdersResponse ,
19- BatchLiveDataResponse , CancelOrderResponse , CandlesticksResponse , CommunicationsIdResponse ,
20- CreateApiKeyRequest , CreateApiKeyResponse , CreateMarketInCollectionRequest ,
21- CreateMarketInCollectionResponse , CreateOrderGroupRequest , CreateOrderGroupResponse ,
22- CreateOrderRequest , CreateQuoteRequest , CreateRfqRequest , CreateSubaccountRequest ,
23- CreateSubaccountResponse , DecreaseOrderRequest , DeleteApiKeyResponse ,
24- EventCandlesticksResponse , EventForecastPercentileHistoryResponse , EventMetadataResponse ,
25- EventResponse , EventsResponse , ExchangeAnnouncementsResponse , ExchangeScheduleResponse ,
26- ExchangeStatusResponse , FeeChangesResponse , FillsResponse , FiltersBySportResponse ,
27- GenerateApiKeyRequest , GenerateApiKeyResponse , GetBatchCandlesticksParams ,
28- GetBatchLiveDataParams , GetCandlesticksParams , GetEventCandlesticksParams ,
29- GetEventForecastPercentileHistoryParams , GetEventParams , GetEventsParams ,
30- GetFcmOrdersParams , GetFcmPositionsParams , GetFeeChangesParams , GetFillsParams ,
31- GetLookupHistoryParams , GetMarketsParams , GetMilestonesParams ,
17+ ApiTierLimitsResponse , BalanceResponse , BatchCancelOrdersRequest ,
18+ BatchCancelOrdersResponse , BatchCandlesticksResponse , BatchCreateOrdersRequest ,
19+ BatchCreateOrdersResponse , BatchLiveDataResponse , CancelOrderResponse ,
20+ CandlesticksResponse , CommunicationsIdResponse , CreateApiKeyRequest , CreateApiKeyResponse ,
21+ CreateMarketInCollectionRequest , CreateMarketInCollectionResponse , CreateOrderGroupRequest ,
22+ CreateOrderGroupResponse , CreateOrderRequest , CreateQuoteRequest , CreateRfqRequest ,
23+ CreateSubaccountRequest , CreateSubaccountResponse , DecreaseOrderRequest ,
24+ DeleteApiKeyResponse , EventCandlesticksResponse , EventForecastPercentileHistoryResponse ,
25+ EventMetadataResponse , EventResponse , EventsResponse , ExchangeAnnouncementsResponse ,
26+ ExchangeScheduleResponse , ExchangeStatusResponse , FeeChangesResponse , FillsResponse ,
27+ FiltersBySportResponse , GenerateApiKeyRequest , GenerateApiKeyResponse ,
28+ GetBatchCandlesticksParams , GetBatchLiveDataParams , GetCandlesticksParams ,
29+ GetEventCandlesticksParams , GetEventForecastPercentileHistoryParams , GetEventParams ,
30+ GetEventsParams , GetFcmOrdersParams , GetFcmPositionsParams , GetFeeChangesParams ,
31+ GetFillsParams , GetLookupHistoryParams , GetMarketsParams , GetMilestonesParams ,
3232 GetMultivariateCollectionsParams , GetMultivariateEventsParams , GetOrderGroupResponse ,
3333 GetOrderGroupsParams , GetOrderbookParams , GetOrdersParams , GetPositionsParams ,
3434 GetQueuePositionsParams , GetQuoteResponse , GetRfqResponse , GetSettlementsParams ,
@@ -43,7 +43,7 @@ use crate::{
4343 SettlementsResponse , StructuredTargetResponse , StructuredTargetsResponse ,
4444 SubaccountBalancesResponse , SubaccountTransfersResponse , TagsByCategoriesResponse ,
4545 TradesResponse , TransferBetweenSubaccountsRequest , TransferResponse ,
46- UserDataTimestampResponse ,
46+ UpdateOrderGroupLimitRequest , UserDataTimestampResponse ,
4747 } ,
4848} ;
4949
@@ -1085,6 +1085,71 @@ impl KalshiClient {
10851085 order_groups:: reset_order_group ( & self . http , order_group_id) . await
10861086 }
10871087
1088+ /// Trigger an order group.
1089+ ///
1090+ /// Triggers the order group, cancelling all orders within it as if the
1091+ /// contracts limit had been hit.
1092+ ///
1093+ /// # Arguments
1094+ ///
1095+ /// * `order_group_id` - The ID of the order group to trigger
1096+ ///
1097+ /// # Example
1098+ ///
1099+ /// ```ignore
1100+ /// client.trigger_order_group("og_123").await?;
1101+ /// println!("Triggered order group");
1102+ /// ```
1103+ pub async fn trigger_order_group ( & self , order_group_id : & str ) -> Result < ( ) > {
1104+ order_groups:: trigger_order_group ( & self . http , order_group_id) . await
1105+ }
1106+
1107+ /// Update the contracts limit for an order group.
1108+ ///
1109+ /// Changes the maximum number of contracts that can be matched within
1110+ /// this group before auto-cancel is triggered.
1111+ ///
1112+ /// # Arguments
1113+ ///
1114+ /// * `order_group_id` - The ID of the order group to update
1115+ /// * `request` - The new contracts limit
1116+ ///
1117+ /// # Example
1118+ ///
1119+ /// ```ignore
1120+ /// use kalshi_trade_rs::UpdateOrderGroupLimitRequest;
1121+ ///
1122+ /// let request = UpdateOrderGroupLimitRequest::new(200);
1123+ /// client.update_order_group_limit("og_123", request).await?;
1124+ /// println!("Updated order group limit");
1125+ /// ```
1126+ pub async fn update_order_group_limit (
1127+ & self ,
1128+ order_group_id : & str ,
1129+ request : UpdateOrderGroupLimitRequest ,
1130+ ) -> Result < ( ) > {
1131+ order_groups:: update_order_group_limit ( & self . http , order_group_id, request) . await
1132+ }
1133+
1134+ // =========================================================================
1135+ // Account API
1136+ // =========================================================================
1137+
1138+ /// Get API tier and rate limits.
1139+ ///
1140+ /// Returns the user's API tier and associated rate limits.
1141+ ///
1142+ /// # Example
1143+ ///
1144+ /// ```ignore
1145+ /// let limits = client.get_api_limits().await?;
1146+ /// println!("Tier: {}", limits.usage_tier);
1147+ /// println!("Read limit: {}", limits.read_limit);
1148+ /// ```
1149+ pub async fn get_api_limits ( & self ) -> Result < ApiTierLimitsResponse > {
1150+ account:: get_api_limits ( & self . http ) . await
1151+ }
1152+
10881153 // =========================================================================
10891154 // Candlesticks API
10901155 // =========================================================================
0 commit comments