Skip to content

Smarkets cancel-all-orders (DELETE /v3/orders/) not implemented in core or either SDK #1603

Description

@realfishsam

Gap

Smarkets's spec defines a bulk cancel-all-orders operation (optionally filtered by market_id), but SmarketsExchange only wires the singular cancel_order — there's no bulk-cancel method in core, so neither SDK can expose it. This is the same gap pattern already filed for other venues (#1135 Polymarket cancelAllOrders/cancelMarketOrders, #1237 Limitless cancelOrderBatch), but has never been filed for Smarkets, and issue #1246 (which covers Smarkets's account/activity/market-data gaps) does not include it.

Core

  • core/src/exchanges/smarkets/api.ts:7873cancel_orders operationId, DELETE /v3/orders/, summary "Cancel all orders", accepts optional market_id filter.
  • core/src/exchanges/smarkets/index.ts:343-348 — only wires the singular cancel_order via fetcher.ts; confirmed via full read of fetcher.ts/index.ts that no bulk-cancel method exists, and normalizer.ts has no related normalization logic.

TypeScript SDK

Missing — no corresponding method on the Smarkets class in sdks/typescript/pmxt/client.ts.

Python SDK

Missing — no corresponding method on the Smarkets class in sdks/python/pmxt/_exchanges.py.

Evidence

core/src/exchanges/smarkets/api.ts:7873 defines cancel_orders; full read of index.ts/fetcher.ts confirms only cancel_order (singular) is ever called.

Impact

Users must cancel Smarkets orders one at a time through pmxt, even though the venue supports bulk cancellation (optionally scoped to a single market) — a meaningfully slower and more error-prone workflow when clearing many open orders.


Found by automated Core-to-SDK surface coverage audit

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions