# Crypto Candlestick Pattern Detector API
> Which reversal and continuation candlestick patterns have just printed on a coin, and which coins across the market are flashing one right now, detected live from Binance candles — no key, nothing stored. Candlestick patterns are the oldest price-action signals there are: a hammer at the bottom of a move, a bearish engulfing at the top, a doji marking indecision. The detect endpoint fetches a pair's recent candles and returns the patterns found on the latest ones — each with its name, whether it is bullish, bearish or neutral, the candle it formed on and a short meaning — plus the latest OHLC. The screener endpoint scans a basket of coins and surfaces the ones whose most recent completed candle just formed a bullish or bearish reversal pattern, so you can find fresh setups across the market in one call. The symbols endpoint lists tradable pairs. This is the coin-native candlestick-pattern screener cut for crypto — it fetches the live data itself, distinct from the generic pattern-recognition calculator (which you feed your own OHLC), the Donchian breakout, the momentum and the volume-profile APIs in the catalogue. Detected patterns include hammer, shooting star, bullish/bearish engulfing, doji, marubozu and morning/evening star. Pairs are Binance symbols (BTCUSDT) or a coin=BTC&quote=USDT form; interval is 1h/4h/1d/1w.

## 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/cryptopatterns-api/..."
```

## Pricing
- **Free** (Free) — 450 calls/Mo, 2 req/s
- **Starter** ($10/Mo) — 13,200 calls/Mo, 6 req/s
- **Pro** ($34/Mo) — 73,000 calls/Mo, 16 req/s
- **Business** ($79/Mo) — 375,000 calls/Mo, 40 req/s

## Endpoints

### Patterns

#### `GET /v1/detect` — Candlestick patterns on a pair's latest candles

**Parameters:**
- `symbol` (query, required, string) — Binance pair Example: `BTCUSDT`
- `interval` (query, optional, string) — 1h, 4h, 1d or 1w (default 1d) Example: `1d`
- `lookback` (query, optional, string) — Candles to scan (1-30, default 5) Example: `10`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cryptopatterns-api/v1/detect?symbol=BTCUSDT&interval=1d&lookback=10"
```

**Response:**
```json
{
    "data": {
        "coin": "BTC",
        "note": "Patterns completing on the last 10 candles, newest last. bias bullish/bearish/neutral. Candlestick signals are most reliable in the context of the prevailing trend; descriptive, not a forecast.",
        "source": "Binance",
        "symbol": "BTCUSDT",
        "interval": "1d",
        "detections": [
            {
                "bias": "neutral",
                "candle": {
                    "low": 61383.56,
                    "high": 64764.32,
                    "open": 64142.75,
                    "time": 1780531200000,
                    "close": 63885.99
                },
                "meaning": "indecision; a balance between buyers and sellers",
                "pattern": "doji"
            },
            {
                "bias": "neutral",
                "candle": {
                    "low": 59500,
                    "high": 61530.05,
                    "open": 61056.47,
                    "time": 1780704000000,
                    "close": 60884.62
                },
                "meaning": "indecision; a balance between buyers and sellers",
                "pattern": "doji"
            },
            {
                "bias": "bullish",
                "candle": {
                    "low": 60746,
                    "high": 64234.68,
                    "open": 60884.62,
                    "time": 1780790400000,
                    "close": 63332.01
                },
                "mea
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/screener` — Scan a basket for fresh pattern signals

**Parameters:**
- `coins` (query, optional, string) — Comma list of coins (default liquid majors) Example: `BTC,ETH,SOL,DOGE,XRP`
- `interval` (query, optional, string) — 1h, 4h, 1d or 1w (default 1d) Example: `1d`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cryptopatterns-api/v1/screener?coins=BTC%2CETH%2CSOL%2CDOGE%2CXRP&interval=1d"
```

**Response:**
```json
{
    "data": {
        "note": "Coins whose most recent completed 1d candle just formed a candlestick pattern. Default basket is the liquid majors; pass coins=BTC,ETH,... to customise.",
        "source": "Binance",
        "bearish": [],
        "bullish": [],
        "neutral": [
            {
                "bias": "neutral",
                "coin": "BTC",
                "close": 63717.89,
                "pattern": "doji"
            },
            {
                "bias": "neutral",
                "coin": "ETH",
                "close": 1676.21,
                "pattern": "doji"
            },
            {
                "bias": "neutral",
                "coin": "SOL",
                "close": 66.85,
                "pattern": "doji"
            },
            {
                "bias": "neutral",
                "coin": "XRP",
                "close": 1.1438,
                "pattern": "doji"
            }
        ],
        "scanned": 5,
        "signals": 4,
        "interval": "1d"
    },
    "meta": {
        "timestamp": "2026-06-12T10:35:43.044Z",
        "request_id": "243dcf02-348b-468d-b192-7da1e0621ceb"
    },
    "status": "ok",
    "message": "Screener retrieved successfully",
    "success": true
}
```

#### `GET /v1/symbols` — Tradable Binance pairs

**Parameters:**
- `quote` (query, optional, string) — Filter by quote asset Example: `USDT`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cryptopatterns-api/v1/symbols?quote=USDT"
```

**Response:**
```json
{
    "data": {
        "count": 435,
        "quote": "USDT",
        "source": "Binance",
        "symbols": [
            "0GUSDT",
            "1000CATUSDT",
            "1000CHEEMSUSDT",
            "1000SATSUSDT",
            "1INCHUSDT",
            "1MBABYDOGEUSDT",
            "2ZUSDT",
            "AAVEUSDT",
            "ACEUSDT",
            "ACHUSDT",
            "ACMUSDT",
            "ACTUSDT",
            "ACXUSDT",
            "ADAUSDT",
            "ADXUSDT",
            "AEURUSDT",
            "AEVOUSDT",
            "AGLDUSDT",
            "AIGENSYNUSDT",
            "AIUSDT",
            "AIXBTUSDT",
            "ALCXUSDT",
            "ALGOUSDT",
            "ALICEUSDT",
            "ALLOUSDT",
            "ALPINEUSDT",
            "ALTUSDT",
            "AMPUSDT",
            "ANIMEUSDT",
            "ANKRUSDT",
            "APEUSDT",
            "API3USDT",
            "APTUSDT",
            "ARBUSDT",
            "ARDRUSDT",
            "ARKMUSDT",
            "ARKUSDT",
            "ARPAUSDT",
            "ARUSDT",
            "ASRUSDT",
            "ASTERUSDT",
            "ASTRUSDT",
            "ATMUSDT",
            "ATOMUSDT",
            "ATUSDT",
            "AUCTIONUSDT",
            "AUDIOUSDT",
            "AUSDT",
            "AVAUSDT",
            "AVAXUSDT",
            "AVNTUSDT",
            "AWEUSDT",
            "AXLUSDT",
            "AXSUSDT",
            "BABYUSDT",
            "BANANAS31USDT",
            "BANANAUSDT",
          
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Spec

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

**Response:**
```json
{
    "data": {
        "note": "symbol is a Binance pair (BTCUSDT) or coin=BTC&quote=USDT. interval is 1h/4h/1d/1w (default 1d). detect lookback is 1-30 candles (default 5). screener takes coins=BTC,ETH,... (default majors, max 25). Read fresh per call; only the tradable-symbol list is cached hourly.",
        "source": "Binance public REST (api.binance.com/api/v3/klines, live)",
        "service": "cryptopatterns-api",
        "patterns": [
            "doji",
            "hammer",
            "shooting_star",
            "bullish_engulfing",
            "bearish_engulfing",
            "bullish_marubozu",
            "bearish_marubozu",
            "morning_star",
            "evening_star"
        ],
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/detect": "Patterns on a pair's latest candles with bias & meaning (symbol=BTCUSDT, interval=1d, lookback=5).",
            "GET /v1/symbols": "Tradable Binance pairs, optionally filtered by quote (quote=USDT).",
            "GET /v1/screener": "Scan a basket for coins flashing a pattern on the latest candle (coins=BTC,ETH,SOL, interval=1d)."
        },
        "description": "Crypto candlestick pattern detector — which reversal/continuation patterns just printed on a coin and which coins are flashing one now, detected live from Binance candles (no key, nothing stored). detect returns the patterns found on a pair's latest candles (hammer, shooting star, engulfing, doji, marubozu, mornin
…(truncated, see openapi.json for full schema)
```


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