bingx-coinm-market

BingX Coin-M (CSwap) Market Data

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "bingx-coinm-market" with this command: npx skills add bingx-api/api-ai-skills/bingx-api-api-ai-skills-bingx-coinm-market

BingX Coin-M (CSwap) Market Data

Public market data for BingX Coin-M inverse perpetual futures. No HMAC signature required, but a timestamp query parameter is required for all endpoints.

Coin-M contracts are coin-margined (settled in the base asset, e.g., BTC). Symbol format is BASE-USD (e.g., BTC-USD , ETH-USD ).

Quick Reference

Endpoint Method Description Required Optional Authentication

/openApi/cswap/v1/market/contracts

GET Contract specifications None None No

/openApi/cswap/v1/market/depth

GET Order book bids & asks symbol None No

/openApi/cswap/v1/market/klines

GET OHLCV candlestick data symbol, interval startTime, endTime, limit No

/openApi/cswap/v1/market/premiumIndex

GET Mark price & current funding rate None symbol No

/openApi/cswap/v1/market/openInterest

GET Total open interest symbol None No

/openApi/cswap/v1/market/ticker

GET 24h price change statistics None symbol No

Parameters

Common Parameters

  • symbol: Trading pair in BASE-USD format (e.g., BTC-USD , ETH-USD ). Note: Coin-M uses USD , not USDT .

  • limit: Number of results to return. Default and max vary per endpoint.

  • startTime: Start timestamp in milliseconds (e.g., 1735693200000 )

  • endTime: End timestamp in milliseconds (e.g., 1735693200000 )

  • interval: Kline/candlestick interval (see Enums below)

Enums

  • interval: 1m | 3m | 5m | 15m | 30m | 1h | 2h | 4h | 6h | 12h | 1d | 3d | 1w | 1M

Parameter Validation Rules

  • symbol: Must match ^[A-Z0-9]+-USD$ ; max 20 characters (e.g., BTC-USD ). Coin-M uses USD , not USDT

  • limit: Positive integer; default and max vary per endpoint

  • startTime / endTime: Unix timestamps in milliseconds; endTime must be ≥ startTime

  • interval: Must exactly match one of the enum values above

Quick Start

Base URLs: see references/base-urls.md

TypeScript helper:

CONSTRAINT: You MUST copy the coinmMarket function below verbatim when generating code. Do NOT rewrite the request or JSON parsing logic. Only modify: (1) BASE_URLS entries for custom environments, (2) business parameters passed to coinmMarket .

import JSONBig from "json-bigint"; const JSONBigParse = JSONBig({ storeAsString: true }); // Base URLs — see references/base-urls.md for all environments // Domain priority: .com is mandatory primary; .pro is fallback for network/timeout errors ONLY. const BASE_URLS = ["https://open-api.bingx.com", "https://open-api.bingx.pro"];

function isNetworkOrTimeout(e: unknown): boolean { if (e instanceof TypeError) return true; if (e instanceof DOMException && e.name === "AbortError") return true; if (e instanceof Error && e.name === "TimeoutError") return true; return false; }

async function coinmMarket( path: string, params: Record<string, string | number> = {} ): Promise<unknown> { const query = new URLSearchParams( Object.entries(params).map(([k, v]) => [k, String(v)]) ).toString(); for (const base of BASE_URLS) { try { const url = ${base}${path}${query ? ?${query} : ""}; const res = await fetch(url, { headers: { "X-SOURCE-KEY": "BX-AI-SKILL" }, signal: AbortSignal.timeout(10000), }); const json = JSONBigParse.parse(await res.text()); if (json.code !== 0) throw new Error(BingX error ${json.code}: ${json.msg}); return json.data; } catch (e) { if (!isNetworkOrTimeout(e) || base === BASE_URLS[BASE_URLS.length - 1]) throw e; } } }

Code Usage Rules

  • MUST copy coinmMarket verbatim -- do not simplify or rewrite

  • MUST use json-bigint (JSONBigParse.parse ) for response parsing -- not JSON.parse

  • MUST include X-SOURCE-KEY: BX-AI-SKILL header on every request

  • MUST NOT remove the domain fallback loop or isNetworkOrTimeout check

Common Calls

24h ticker price for BTC-USD:

const ticker = await coinmMarket("/openApi/cswap/v1/market/ticker", { symbol: "BTC-USD", }); // ticker.lastPrice, ticker.priceChangePercent, ticker.volume

Order book depth for BTC-USD:

const depth = await coinmMarket("/openApi/cswap/v1/market/depth", { symbol: "BTC-USD", }); // depth.bids: [price, qty][], depth.asks: [price, qty][]

1-hour klines (last 100 candles):

const klines = await coinmMarket("/openApi/cswap/v1/market/klines", { symbol: "BTC-USD", interval: "1h", limit: 100, }); // Each item: [openTime, open, high, low, close, volume, closeTime]

Mark price & current funding rate:

const premium = await coinmMarket("/openApi/cswap/v1/market/premiumIndex", { symbol: "BTC-USD", }); // premium.markPrice, premium.lastFundingRate, premium.nextFundingTime

Open interest:

const oi = await coinmMarket("/openApi/cswap/v1/market/openInterest", { symbol: "BTC-USD", }); // oi.openInterest, oi.symbol, oi.time

All contract specifications:

const contracts = await coinmMarket("/openApi/cswap/v1/market/contracts"); // Array of contract objects: symbol, pricePrecision, minTickSize, minTradeValue, status

Additional Resources

For complete parameter descriptions, optional fields, and full response schemas, see api-reference.md.

Agent Interaction Rules

cswap-market provides public read-only market data. No HMAC signature required (only timestamp parameter needed), no CONFIRM needed. The interaction goal is to collect query parameters.

Note: Coin-M contract trading pair format is BASE-USD (e.g. BTC-USD ), not BASE-USDT .

Operation Identification

When the user's request is vague (e.g. "check Coin-M market" or "look at BTC inverse contract"), first identify what type of data they want to query:

Please select the market data type:

  • Price / 24h change — ticker

  • Order book depth — depth

  • K-lines / Candlesticks — klines

  • Mark price / Funding rate — premiumIndex

  • Open interest — openInterest

  • Contract specification list — contracts

When symbol is missing

Applicable endpoints: depth, klines, openInterest

Please select a trading pair (or type another):

  • BTC-USD

  • ETH-USD

  • BNB-USD

  • Other (enter manually, format: BASE-USD)

If the trading pair can be inferred from context (e.g. "BTC K-lines today" or "Ethereum inverse contract funding rate"), infer it automatically without asking again.

When interval is missing (klines endpoint only)

Please select a K-line interval:

  • 1m (1 minute)

  • 5m (5 minutes)

  • 15m (15 minutes)

  • 1h (1 hour)

  • 4h (4 hours)

  • 1d (daily)

  • 1w (weekly)

limit handling

  • klines: default 100, no need to ask — inform the user "returning the most recent 100 K-lines by default"

Endpoints where symbol is optional

symbol is optional for ticker and premiumIndex. If the user does not specify, query all contracts and inform the user; if a trading pair is specified, query only that pair.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

bingx-swap-account

No summary provided by upstream source.

Repository SourceNeeds Review
General

bingx-swap-trade

No summary provided by upstream source.

Repository SourceNeeds Review
General

bingx-spot-market

No summary provided by upstream source.

Repository SourceNeeds Review
General

bingx-fund-account

No summary provided by upstream source.

Repository SourceNeeds Review