# bitFlyer API
> Live spot market data from bitFlyer, one of Japan's largest and longest-running crypto exchanges — served straight from its public API, no key, nothing cached. Get a product's last traded price, best bid/ask, 24h volume and order-book depth (in Japanese yen); read the live order book with the mid price and top bids and asks; and list bitFlyer's spot and FX products. A distinct Japanese venue with yen pricing, separate from other exchange feeds. Products are BASE_QUOTE (e.g. BTC_JPY).

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/bitflyer-api/..."
```

## Pricing
- **Free** (Free) — 3,400 calls/Mo, 2 req/s
- **Starter** ($9/Mo) — 77,000 calls/Mo, 6 req/s
- **Pro** ($24/Mo) — 408,000 calls/Mo, 15 req/s
- **Business** ($56/Mo) — 2,540,000 calls/Mo, 40 req/s

## Endpoints

### bitFlyer

#### `GET /v1/board` — Live order book — mid price and top bids/asks

**Parameters:**
- `product` (query, required, string) — Product BASE_QUOTE Example: `BTC_JPY`
- `limit` (query, optional, string) — Levels per side 1-100 (default 20) Example: `20`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/bitflyer-api/v1/board?product=BTC_JPY&limit=20"
```

**Response:**
```json
{
    "data": {
        "asks": [
            {
                "size": 0.3401,
                "price": 9864674
            },
            {
                "size": 0.2113,
                "price": 9865712
            },
            {
                "size": 0.02,
                "price": 9866240
            },
            {
                "size": 0.25380877,
                "price": 9866241
            },
            {
                "size": 0.02,
                "price": 9866398
            },
            {
                "size": 0.6544,
                "price": 9866703
            },
            {
                "size": 0.02,
                "price": 9867792
            },
            {
                "size": 0.052488,
                "price": 9867793
            },
            {
                "size": 0.0864981,
                "price": 9867995
            },
            {
                "size": 0.02665051,
                "price": 9868384
            },
            {
                "size": 0.0050187,
                "price": 9868691
            },
            {
                "size": 1.35369856,
                "price": 9869180
            },
            {
                "size": 0.6648,
                "price": 9869181
            },
            {
                "size": 0.6,
                "price": 9870348
            },
            {
                "size": 0.7686,
                "price": 9871659
            },
            {
                "size": 1.18988
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/markets` — List spot and FX products

**Parameters:**
- `type` (query, optional, string) — Filter by market type: Spot or FX (omit for all) Example: `Spot`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/bitflyer-api/v1/markets?type=Spot"
```

**Response:**
```json
{
    "data": {
        "count": 8,
        "source": "bitFlyer",
        "markets": [
            {
                "base": "BTC",
                "quote": "JPY",
                "product": "BTC_JPY",
                "market_type": "Spot"
            },
            {
                "base": "XRP",
                "quote": "JPY",
                "product": "XRP_JPY",
                "market_type": "Spot"
            },
            {
                "base": "ETH",
                "quote": "JPY",
                "product": "ETH_JPY",
                "market_type": "Spot"
            },
            {
                "base": "XLM",
                "quote": "JPY",
                "product": "XLM_JPY",
                "market_type": "Spot"
            },
            {
                "base": "MONA",
                "quote": "JPY",
                "product": "MONA_JPY",
                "market_type": "Spot"
            },
            {
                "base": "ELF",
                "quote": "JPY",
                "product": "ELF_JPY",
                "market_type": "Spot"
            },
            {
                "base": "ETH",
                "quote": "BTC",
                "product": "ETH_BTC",
                "market_type": "Spot"
            },
            {
                "base": "BCH",
                "quote": "BTC",
                "product": "BCH_BTC",
                "market_type": "Spot"
            }
        ]
    },
    "meta": {
        "timestamp": "2026-06-10T22:5
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/meta` — Service metadata and endpoint list

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/bitflyer-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "Products are BASE_QUOTE (e.g. BTC_JPY). ltp = last traded price; volume_by_product excludes derivatives.",
        "source": "bitFlyer API (api.bitflyer.com, live)",
        "service": "bitflyer-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/board": "Live order book — mid price and top bids/asks (product=BTC_JPY, limit=20).",
            "GET /v1/ticker": "Ticker for one product (product=BTC_JPY or symbol=BTC&quote=JPY).",
            "GET /v1/markets": "List spot and FX products (type=Spot|FX optional)."
        },
        "description": "Live spot market data from bitFlyer, one of Japan's largest and longest-running crypto exchanges. The ticker endpoint returns a product's last traded price, best bid/ask, 24h volume and order-book depth (in Japanese yen); the board endpoint returns the live order book with mid price and top bids and asks; the markets endpoint lists spot and FX products. Live, no key, nothing stored. A distinct Japanese venue with yen pricing, separate from other exchange feeds.",
        "product_count": 9,
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-10T22:56:08.438Z",
        "request_id": "59582b1b-8c90-4463-9eb6-5399a3451226"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```

#### `GET /v1/ticker` — Ticker for one product

**Parameters:**
- `product` (query, required, string) — Product BASE_QUOTE (or use symbol & quote) Example: `BTC_JPY`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/bitflyer-api/v1/ticker?product=BTC_JPY"
```

**Response:**
```json
{
    "data": {
        "base": "BTC",
        "last": 9870024,
        "quote": "JPY",
        "state": "RUNNING",
        "source": "bitFlyer",
        "spread": 8342,
        "product": "BTC_JPY",
        "best_ask": 9864674,
        "best_bid": 9856332,
        "timestamp": "2026-06-10T22:56:07.633",
        "volume_24h": 1764.60697222,
        "best_ask_size": 0.3401,
        "best_bid_size": 0.0836242,
        "total_ask_depth": 139.25159988,
        "total_bid_depth": 175.37199496,
        "volume_by_product_24h": 353.70942959
    },
    "meta": {
        "timestamp": "2026-06-10T22:56:08.802Z",
        "request_id": "1bf02b01-c24f-48a4-9a22-b7c3c22847bb"
    },
    "status": "ok",
    "message": "Ticker retrieved successfully",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/bitflyer-api
OpenAPI spec: https://www.oanor.com/api/bitflyer-api/openapi.json
