秋田预测市场 · Discord 审计

API批量取消订单的实际限制与文档冲突

2026-07-01 · Kalshi · 13 条相关讨论

May 2026-06-30 20:23:17

have same, did u solve it?

have same, did u solve it?

Melon 2026-06-30 20:36:58

Despite the documentation saying that the batch sizes scales with write budget, my batch cancels are rejected with `code=too_many_orders_in_batch` whenever there are more than 20 orders in a batch. Batch Cancel Orders (V2) > Endpoint for cancelling a batch of event-market orders using the V2 response shape. The maximum batch size scales with your tier’s write budget — see Rate Limits and Tiers.

Despite the documentation saying that the batch sizes scales with write budget, my batch cancels are rejected with `code=too_many_orders_in_batch` whenever there are more than 20 orders in a batch. Batch Cancel Orders (V2) > Endpoint for cancelling a batch of event-market orders using the V2 response shape. The maximum batch size scales with your tier’s write budget — see Rate Limits and Tiers.

betaclone 2026-06-30 21:58:38

Seems pretty straightforward to me. Your rate tier gives you a write budget and that's how many orders you can send in a batch. Now if it is limiting orders below that limit which it sounds like it does then that'd a different issue entirely, but the language in the doc is clear

Seems pretty straightforward to me. Your rate tier gives you a write budget and that's how many orders you can send in a batch. Now if it is limiting orders below that limit which it sounds like it does then that'd a different issue entirely, but the language in the doc is clear

Timboslice003 2026-06-30 22:15:50

If you scroll back in this channel to June 19th or so there was a lot of talk on this issue

If you scroll back in this channel to June 19th or so there was a lot of talk on this issue

Bumbling Bayesian 2026-06-30 22:19:10

A batch always takes one second? Still not clear to me. What token per second limit would result in 21 orders returning `too_many_orders_in_batch`?

A batch always takes one second? Still not clear to me. What token per second limit would result in 21 orders returning `too_many_orders_in_batch`?

Bumbling Bayesian 2026-06-30 22:28:42

https://docs.kalshi.com/getting_started/rate_limits currently has: ``` Tier |Read budget|Write budget ---------|-----------|------------ |Basic |200 |100 |Advanced|300 |300 |Expert |600 |600 ``` Batch create/cancel would be write operations. Batch create would be 10 tokens per order, right? Batch cancel would be 2 tokens per order? I don't see how one gets to 20 orders being the max.

https://docs.kalshi.com/getting_started/rate_limits currently has: ``` Tier |Read budget|Write budget ---------|-----------|------------ |Basic |200 |100 |Advanced|300 |300 |Expert |600 |600 ``` Batch create/cancel would be write operations. Batch create would be 10 tokens per order, right? Batch cancel would be 2 tokens per order? I don't see how one gets to 20 orders being the max.

Bumbling Bayesian 2026-06-30 22:45:23

If the intent is "remove the seconds from 'write budget'", that might make sense, but doesn't seem to correspond to what some users report.

If the intent is "remove the seconds from 'write budget'", that might make sense, but doesn't seem to correspond to what some users report.

Bumbling Bayesian 2026-07-01 06:07:40

<@1294044400065839177> Can you clarify what is meant by the "The maximum batch size scales with your tier’s write budget" for batch cancel orders? I find that if I set my maximum number of orders per batch to `write.refillRate / tokenCost` (where `tokenCost` is 2 for delete), I get a `too_many_orders_in_batch` error. If I set it to `write.refillRate / 10` (substituting the default token cost), I do not get that error. Does Batch Cancel not use the token cost for calculating the maximum number of orders per batch?

<@1294044400065839177> Can you clarify what is meant by the "The maximum batch size scales with your tier’s write budget" for batch cancel orders? I find that if I set my maximum number of orders per batch to `write.refillRate / tokenCost` (where `tokenCost` is 2 for delete), I get a `too_many_orders_in_batch` error. If I set it to `write.refillRate / 10` (substituting the default token cost), I do not get that error. Does Batch Cancel not use the token cost for calculating the maximum number of orders per batch?

james 2026-07-01 07:12:52

the upper cap is still 30 I believe, even if you have sufficient rate limit tokens

the upper cap is still 30 I believe, even if you have sufficient rate limit tokens

james 2026-07-01 07:13:24

but broadly speaking I would recommend to everyone to use regular create order rather than batch

but broadly speaking I would recommend to everyone to use regular create order rather than batch

betaclone 2026-07-01 12:37:43

There is apparently a server side load to batch orders they don't want to deal with and it's probably best to start removing that functionality now

There is apparently a server side load to batch orders they don't want to deal with and it's probably best to start removing that functionality now

betaclone 2026-07-01 12:38:53

Seems like the only practical implication is order serialization. Haven't seen any remedy to that yet but also seems like a bit of an edge case

Seems like the only practical implication is order serialization. Haven't seen any remedy to that yet but also seems like a bit of an edge case

betaclone 2026-07-01 12:39:35

Not an insignificant one but still an edge case

Not an insignificant one but still an edge case