# Crypto Options Put/Call Ratio & Sentiment API
> The single headline gauge of how the crypto options market is positioned, computed live from Deribit's public option book — no key, nothing stored. The put/call ratio is the amount of put activity divided by call activity: a low ratio means the market is loaded with calls (bullish, greedy positioning), a high ratio means puts dominate (hedging, fear). The ratio endpoint returns, for a currency (BTC or ETH), the market-wide put/call ratio computed two ways — by open interest (the standing positioning) and by 24-hour volume (today's flow) — with the call and put totals, the spot index and a plain-language sentiment label. The expiries endpoint breaks the put/call ratio down by expiry, revealing the term structure of sentiment: whether hedging is concentrated in the near term or further out. This is the aggregate options put/call sentiment cut for crypto — distinct from the US-equity put/call API (a different market), the max-pain / open-interest positioning view, the implied-vol skew surface and the gamma-exposure APIs in the catalogue. Below roughly 0.7 is call-heavy and bullish, above 1.0 put-heavy and defensive; it is most useful read as a contrarian gauge. Currency is BTC or ETH, the two assets Deribit lists liquid options for.

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

## Pricing
- **Free** (Free) — 500 calls/Mo, 2 req/s
- **Starter** ($11/Mo) — 11,400 calls/Mo, 6 req/s
- **Pro** ($35/Mo) — 68,000 calls/Mo, 16 req/s
- **Business** ($78/Mo) — 360,000 calls/Mo, 40 req/s

## Endpoints

### Put/Call

#### `GET /v1/expiries` — Put/call ratio by expiry (term structure)

**Parameters:**
- `currency` (query, required, string) — BTC or ETH Example: `BTC`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cryptoputcall-api/v1/expiries?currency=BTC"
```

**Response:**
```json
{
    "data": {
        "note": "put/call ratio by open interest per expiry — the term structure of options sentiment. A higher ratio at near-dated expiries means hedging is concentrated short-term.",
        "count": 12,
        "source": "Deribit",
        "currency": "BTC",
        "expiries": [
            {
                "expiry": "13JUN26",
                "put_oi": 3935.3,
                "call_oi": 1668.6,
                "put_call_ratio_oi": 2.358
            },
            {
                "expiry": "14JUN26",
                "put_oi": 1244.8,
                "call_oi": 603.2,
                "put_call_ratio_oi": 2.064
            },
            {
                "expiry": "15JUN26",
                "put_oi": 600.7,
                "call_oi": 786.8,
                "put_call_ratio_oi": 0.763
            },
            {
                "expiry": "16JUN26",
                "put_oi": 59.2,
                "call_oi": 7,
                "put_call_ratio_oi": 8.457
            },
            {
                "expiry": "19JUN26",
                "put_oi": 9750.8,
                "call_oi": 14694.3,
                "put_call_ratio_oi": 0.664
            },
            {
                "expiry": "26JUN26",
                "put_oi": 66834.5,
                "call_oi": 85503.9,
                "put_call_ratio_oi": 0.782
            },
            {
                "expiry": "3JUL26",
                "put_oi": 930.7,
                "call_oi": 1290.4,
                "pu
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/ratio` — Market-wide put/call ratio & sentiment

**Parameters:**
- `currency` (query, required, string) — BTC or ETH Example: `BTC`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cryptoputcall-api/v1/ratio?currency=BTC"
```

**Response:**
```json
{
    "data": {
        "note": "put/call ratio = put activity / call activity. By open interest it reflects standing positioning; by 24h volume it reflects today's flow. Below ~0.7 is call-heavy (bullish positioning); above ~1.0 is put-heavy (hedging/fear). A contrarian sentiment gauge.",
        "put_oi": 161395.5,
        "source": "Deribit",
        "call_oi": 262522.9,
        "currency": "BTC",
        "total_oi": 423918.4,
        "sentiment_oi": "bullish (calls dominate)",
        "put_volume_24h": 11535,
        "sentiment_flow": "bullish (calls dominate)",
        "call_volume_24h": 17732.1,
        "underlying_price": 64914.5,
        "put_call_ratio_oi": 0.615,
        "put_call_ratio_volume": 0.651
    },
    "meta": {
        "timestamp": "2026-06-12T10:35:38.562Z",
        "request_id": "c8c18eb3-0e13-4b69-8e7d-27a3de398aa3"
    },
    "status": "ok",
    "message": "Ratio retrieved successfully",
    "success": true
}
```

### Meta

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

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

**Response:**
```json
{
    "data": {
        "note": "currency is BTC or ETH. The ratio is computed across all listed options. Below ~0.7 is call-heavy/bullish positioning, above ~1.0 put-heavy/hedging. Read fresh per call, nothing cached.",
        "source": "Deribit public API (deribit.com/api/v2/public, live)",
        "service": "cryptoputcall-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/ratio": "Market-wide put/call ratio by OI and by 24h volume with sentiment (currency=BTC).",
            "GET /v1/expiries": "Put/call ratio by expiry — the sentiment term structure (currency=BTC)."
        },
        "currencies": [
            "BTC",
            "ETH"
        ],
        "description": "Crypto options put/call ratio and sentiment, computed live from Deribit's public option book (no key, nothing stored). ratio returns BTC's or ETH's market-wide put/call ratio by open interest (standing positioning) and by 24-hour volume (today's flow), with call/put totals, the spot index and a sentiment label. expiries breaks the ratio down by expiry — the term structure of sentiment. The aggregate options put/call sentiment cut for crypto — distinct from the US-equity put/call API, the max-pain / open-interest view, the IV skew surface and the gamma-exposure APIs.",
        "upstream_status": "ok",
        "btc_put_call_ratio_oi": 0.615
    },
    "meta": {
        "timestamp": "2026-06-12T10:35:38.741Z",
        "request_id": "d584cfc5-8d1f-4945-bd71
…(truncated, see openapi.json for full schema)
```


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