# BlackForge Crypto Market Data Series

> BlackForge Crypto Market Data Series is a paid API for AI agents from api.blackforge.so, paid per call via x402, $0.005/call, status unknown (last checked 2026-10-31).

Fetches time-series crypto market data (OHLCV and advanced metrics) for a given exchange, symbol, interval, and date range with up to 90-day lookback.

## Facts

- Endpoint: GET https://api.blackforge.so/v1/series?utm_source=zero.xyz
- Price: $0.005/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-31
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/blackforge-crypto-market-data-series-d5012381
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_DfR30qbCb-WdV2x1_dQzv

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability blackforge-crypto-market-data-series-d5012381
```

Example prompt: Pull the downDepth5 metric for BTCUSDT on Binance at 1-hour intervals from 2024-01-01T00:00Z to 2024-03-31T23:59Z so I can analyze liquidity depth trends over Q1.

## When to prefer this

Choose this endpoint when you need structured, time-bucketed crypto market metrics (including advanced columns beyond simple OHLCV) from major spot exchanges with quality flags. It is best suited for backtesting, quant research, liquidity analysis, and dashboard building where a 90-day lookback and multi-exchange coverage are sufficient. Prefer it over generic data aggregators when you need per-metric granularity with data quality indicators and a pay-per-use model via x402.

## Known failure modes

- Missing or invalid required query parameters (exchange, symbol, metric, from, to, interval) returns a 400 error
- Requested date range exceeds 90-day lookback limit
- Symbol not available on the specified exchange
- Metric key not found in catalog (must be validated via GET /v1/catalog first)
- Insufficient payment or x402 payment failure returns 402
- Requesting very fine intervals (e.g. 1m) over a wide range may produce more than 100 rows, increasing billable cost
- Malformed ISO 8601 datetime strings in from/to parameters

## How this service works

BlackForge crypto market data from the major spot exchanges: every column, 1-minute to daily buckets, 90-day lookback. Covers 100 billable rows; finer buckets and premium columns count as more than one row each.

## Output

Returns a JSON object containing the exchange name, symbol, metric name, and an array of time-series data points. Each point includes a Unix millisecond timestamp, a numeric metric value, and two quality flags (quality and qualityAll) indicating data reliability.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "exchange",
      "symbol",
      "metric",
      "from",
      "to",
      "interval"
     ],
     "properties": {
      "to": {
       "type": "string",
       "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(:\\d{2}(\\.\\d+)?)?(Z|[+-]\\d{2}:\\d{2})$",
       "description": "End of the range, ISO 8601."
      },
      "from": {
       "type": "string",
       "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(:\\d{2}(\\.\\d+)?)?(Z|[+-]\\d{2}:\\d{2})$",
       "description": "Start of the range, ISO 8601."
      },
      "metric": {
       "type": "string",
       "description": "One metric key from GET /v1/catalog."
      },
      "symbol": {
       "type": "string",
       "description": "Pair symbol, base then quote with no separator, such as BTCUSDT."
      },
      "exchange": {
       "enum": [
        "binance",
        "bitget",
        "bybit",
        "coinbase",
        "gate",
        "kraken",
        "kucoin",
        "mexc",
        "okx"
       ],
       "type": "string",
       "description": "Spot exchange the pair trades on."
      },
      "interval": {
       "enum": [
        "1m",
        "5m",
        "1h",
        "1d"
       ],
       "type": "string",
       "description": "Bucket size of each point."
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "metric": "downDepth5",
  "points": [
   {
    "ts": 1793145600000,
    "value": 47120334.1,
    "quality": 0,
    "qualityAll": 0
   },
   {
    "ts": 1793149200000,
    "value": 48211034.2,
    "quality": 0,
    "qualityAll": 0
   },
   {
    "ts": 1793152800000,
    "value": 46988120.7,
    "quality": 0,
    "qualityAll": 0
   }
  ],
  "symbol": "BTCUSDT",
  "exchange": "binance"
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/blackforge-crypto-market-data-series-d5012381/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.blackforge.so](https://www.zero.xyz/host/api.blackforge.so/llms.txt)
