> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sleuthintel.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Sleuth Intel REST API — Complete Endpoint Reference

> Parameters, response fields, and copy-paste examples for every Sleuth Intel endpoint — signals, prediction markets, wallets, AI chat, and more.

The Sleuth Intel REST API exposes 15 endpoints across five functional areas. Every request requires an `Authorization: Bearer YOUR_API_KEY` header. Base URL: `https://api.sleuthintel.io/v1`.

***

### GET /feed

Retrieve a real-time signal feed aggregating on-chain events, prediction market activity, and Crypto Twitter sentiment into a single ranked stream.

<ParamField query="limit" default="50" type="integer">
  Maximum number of signals to return per request.
</ParamField>

<ParamField query="type" type="string">
  Filter by signal type. Accepted values: `wallet`, `market`, `signal`, `social`. Omit to return all types.
</ParamField>

<ParamField query="since" type="string">
  ISO 8601 timestamp. Only return signals created after this time (e.g. `2025-01-01T00:00:00Z`).
</ParamField>

<CodeGroup>
  ```bash curl theme={null}
  curl "https://api.sleuthintel.io/v1/feed?limit=10&type=wallet" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json Example Response theme={null}
[
  {
    "id": "sig_01hx9z3k2pqr",
    "type": "wallet",
    "entity": "0xabc...123",
    "summary": "Smart wallet accumulated 420,000 SOL in the last 6 hours.",
    "timestamp": "2025-06-10T14:32:00Z",
    "tier_required": "pro"
  },
  {
    "id": "sig_01hx9z4m8wst",
    "type": "social",
    "entity": "BTC",
    "summary": "Bitcoin mindshare spiked 12% in the last hour on CT.",
    "timestamp": "2025-06-10T14:28:00Z",
    "tier_required": "starter"
  }
]
```

<ResponseField name="id" type="string">
  Unique signal identifier.
</ResponseField>

<ResponseField name="type" type="string">
  Signal category: `wallet`, `market`, `signal`, or `social`.
</ResponseField>

<ResponseField name="entity" type="string">
  The asset, wallet address, or market associated with this signal.
</ResponseField>

<ResponseField name="summary" type="string">
  Human-readable summary of the signal event.
</ResponseField>

<ResponseField name="timestamp" type="string">
  ISO 8601 timestamp of when the signal was generated.
</ResponseField>

<ResponseField name="tier_required" type="string">
  Minimum subscription tier required to view full signal detail.
</ResponseField>

***

### GET /signals

Retrieve narrative momentum and mindshare data for tracked assets. Use this endpoint to identify which assets are gaining or losing attention and how sentiment is shifting.

<ParamField query="assets" type="string">
  Comma-separated list of asset symbols to filter results (e.g. `BTC,ETH,SOL`). Omit to return all tracked assets.
</ParamField>

<ParamField query="range" default="30d" type="string">
  Lookback window. Accepted values: `7d`, `30d`.
</ParamField>

<CodeGroup>
  ```bash curl theme={null}
  curl "https://api.sleuthintel.io/v1/signals?assets=BTC,ETH,SOL&range=7d" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json Example Response theme={null}
[
  {
    "symbol": "SOL",
    "mindshare_pct": 18.4,
    "mindshare_delta": 3.2,
    "sentiment": "bullish",
    "rank": 1
  },
  {
    "symbol": "BTC",
    "mindshare_pct": 14.1,
    "mindshare_delta": -0.8,
    "sentiment": "neutral",
    "rank": 2
  },
  {
    "symbol": "ETH",
    "mindshare_pct": 9.7,
    "mindshare_delta": 1.1,
    "sentiment": "bullish",
    "rank": 3
  }
]
```

<ResponseField name="symbol" type="string">
  Asset ticker symbol.
</ResponseField>

<ResponseField name="mindshare_pct" type="number">
  Percentage of total narrative attention captured by this asset.
</ResponseField>

<ResponseField name="mindshare_delta" type="number">
  Change in mindshare percentage over the selected range. Positive values indicate growing attention.
</ResponseField>

<ResponseField name="sentiment" type="string">
  Aggregated sentiment: `bullish`, `neutral`, or `bearish`.
</ResponseField>

<ResponseField name="rank" type="integer">
  Asset rank by mindshare within the selected range.
</ResponseField>

***

### GET /pm-markets

Fetch prediction market odds, volume, and flow data across supported platforms. Use this endpoint to scan open markets, compare pricing across venues, and spot volume anomalies.

<ParamField query="platform" default="all" type="string">
  Filter by prediction market platform. Accepted values: `all`, `rothera`, `polymarket`, `kalshi`.
</ParamField>

<ParamField query="status" default="open" type="string">
  Filter by market status. Accepted values: `open`, `closed`, `all`.
</ParamField>

<ParamField query="limit" type="integer">
  Maximum number of markets to return.
</ParamField>

<CodeGroup>
  ```bash curl theme={null}
  curl "https://api.sleuthintel.io/v1/pm-markets?platform=polymarket&status=open&limit=5" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json Example Response theme={null}
[
  {
    "id": "mkt_poly_88123",
    "question": "Will BTC close above $120,000 on July 4, 2025?",
    "yes_price": 0.42,
    "no_price": 0.58,
    "volume_24h": 284500,
    "platform": "polymarket"
  },
  {
    "id": "mkt_poly_88204",
    "question": "Will the Fed cut rates in September 2025?",
    "yes_price": 0.67,
    "no_price": 0.33,
    "volume_24h": 1020000,
    "platform": "polymarket"
  }
]
```

<ResponseField name="id" type="string">
  Unique market identifier.
</ResponseField>

<ResponseField name="question" type="string">
  The market resolution question.
</ResponseField>

<ResponseField name="yes_price" type="number">
  Current implied probability of YES (0–1).
</ResponseField>

<ResponseField name="no_price" type="number">
  Current implied probability of NO (0–1).
</ResponseField>

<ResponseField name="volume_24h" type="number">
  Total trading volume in USD over the last 24 hours.
</ResponseField>

<ResponseField name="platform" type="string">
  Platform where the market is listed.
</ResponseField>

***

### GET /pm-traders

Retrieve the prediction market trader leaderboard. Sort by profit, win rate, or closing line value (CLV) to surface the sharpest traders on the platform.

<ParamField query="sort" default="clv" type="string">
  Sort field. Accepted values: `pnl`, `win_rate`, `clv`.
</ParamField>

<ParamField query="range" default="30d" type="string">
  Lookback window. Accepted values: `30d`, `90d`, `all`.
</ParamField>

<ParamField query="limit" type="integer">
  Maximum number of traders to return.
</ParamField>

<CodeGroup>
  ```bash curl theme={null}
  curl "https://api.sleuthintel.io/v1/pm-traders?sort=clv&range=90d&limit=10" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json Example Response theme={null}
[
  {
    "wallet": "0xdef...456",
    "pnl": 182400,
    "win_rate": 0.71,
    "clv_score": 4.2,
    "archetype": "sharp"
  },
  {
    "wallet": "0xghi...789",
    "pnl": 94100,
    "win_rate": 0.63,
    "clv_score": 2.8,
    "archetype": "value_hunter"
  }
]
```

<ResponseField name="wallet" type="string">
  Trader wallet address.
</ResponseField>

<ResponseField name="pnl" type="number">
  Total profit and loss in USD over the selected range.
</ResponseField>

<ResponseField name="win_rate" type="number">
  Proportion of winning trades (0–1).
</ResponseField>

<ResponseField name="clv_score" type="number">
  Closing line value score — a measure of edge relative to closing market prices. Higher is sharper.
</ResponseField>

<ResponseField name="archetype" type="string">
  Behavioral archetype derived from trading patterns (e.g. `sharp`, `value_hunter`, `fade_target`).
</ResponseField>

***

### GET /discover

Browse the on-chain wallet leaderboard across 250+ chains. Filter by chain, sort by performance metric, and identify the wallets generating consistent alpha.

<ParamField query="chain" default="all" type="string">
  Chain to filter by (e.g. `ethereum`, `solana`, `base`). Pass `all` for cross-chain results.
</ParamField>

<ParamField query="sort" type="string">
  Sort field. Accepted values: `pnl`, `volume`, `win_rate`.
</ParamField>

<ParamField query="range" default="30d" type="string">
  Lookback window. Accepted values: `7d`, `30d`, `90d`.
</ParamField>

<ParamField query="limit" type="integer">
  Maximum number of wallets to return.
</ParamField>

<CodeGroup>
  ```bash curl theme={null}
  curl "https://api.sleuthintel.io/v1/discover?chain=solana&sort=pnl&range=30d&limit=10" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json Example Response theme={null}
[
  {
    "address": "7xKq...MnP2",
    "chain": "solana",
    "pnl_30d": 2410000,
    "volume_30d": 18500000,
    "win_rate": 0.74,
    "tags": ["whale", "dex_trader", "early_entry"]
  },
  {
    "address": "0xabc...d3f1",
    "chain": "ethereum",
    "pnl_30d": 980000,
    "volume_30d": 7200000,
    "win_rate": 0.61,
    "tags": ["defi", "yield_farmer"]
  }
]
```

<ResponseField name="address" type="string">
  Wallet address.
</ResponseField>

<ResponseField name="chain" type="string">
  Chain where this wallet was ranked.
</ResponseField>

<ResponseField name="pnl_30d" type="number">
  Realized PnL in USD over the last 30 days.
</ResponseField>

<ResponseField name="volume_30d" type="number">
  Total trading volume in USD over the last 30 days.
</ResponseField>

<ResponseField name="win_rate" type="number">
  Proportion of profitable trades (0–1).
</ResponseField>

<ResponseField name="tags" type="array">
  Behavioral and activity tags assigned to this wallet.
</ResponseField>

***

### GET /wallet

Retrieve a full intelligence profile for any EVM or Solana wallet address — holdings, PnL, behavioral archetype, and on-chain tags.

<ParamField query="address" type="string" required>
  The wallet address to analyze. Accepts EVM (0x...) and Solana formats.
</ParamField>

<ParamField query="chain" type="string">
  Chain identifier (e.g. `ethereum`, `base`, `solana`). If omitted, the API auto-detects the chain from the address format.
</ParamField>

<CodeGroup>
  ```bash curl theme={null}
  curl "https://api.sleuthintel.io/v1/wallet?address=0xabc...123" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json Example Response theme={null}
{
  "address": "0xabc...123",
  "chain": "ethereum",
  "tags": ["whale", "nft_collector", "early_entry"],
  "pnl": {
    "realized_30d": 540000,
    "realized_all_time": 4200000
  },
  "holdings": [
    { "token": "ETH", "amount": 1200, "usd_value": 3840000 },
    { "token": "USDC", "amount": 500000, "usd_value": 500000 }
  ],
  "behavior_archetype": "accumulator"
}
```

<ResponseField name="address" type="string">
  The queried wallet address.
</ResponseField>

<ResponseField name="chain" type="string">
  Detected or specified chain.
</ResponseField>

<ResponseField name="tags" type="array">
  On-chain behavioral and classification tags.
</ResponseField>

<ResponseField name="pnl" type="object">
  PnL breakdown. Contains `realized_30d` and `realized_all_time` in USD.
</ResponseField>

<ResponseField name="holdings" type="array">
  Current token holdings. Each object includes `token`, `amount`, and `usd_value`.
</ResponseField>

<ResponseField name="behavior_archetype" type="string">
  Primary behavioral archetype inferred from trading history.
</ResponseField>

***

### GET /pm-wallet

Retrieve a prediction market-specific intelligence profile for a wallet — total PnL, win rate, closing line value, markets traded, and behavioral archetype.

<ParamField query="address" type="string" required>
  The wallet address to analyze for prediction market activity.
</ParamField>

<CodeGroup>
  ```bash curl theme={null}
  curl "https://api.sleuthintel.io/v1/pm-wallet?address=0xdef...456" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json Example Response theme={null}
{
  "pm_profile": {
    "address": "0xdef...456",
    "total_pnl": 182400,
    "win_rate": 0.71,
    "clv_score": 4.2,
    "markets_traded": 318,
    "archetype": "sharp"
  }
}
```

<ResponseField name="address" type="string">
  The queried wallet address.
</ResponseField>

<ResponseField name="total_pnl" type="number">
  All-time realized PnL across prediction markets in USD.
</ResponseField>

<ResponseField name="win_rate" type="number">
  Proportion of winning market positions (0–1).
</ResponseField>

<ResponseField name="clv_score" type="number">
  Closing line value score. Reflects how often this wallet beats the closing price — a key sharpness metric.
</ResponseField>

<ResponseField name="markets_traded" type="integer">
  Total number of distinct markets this wallet has participated in.
</ResponseField>

<ResponseField name="archetype" type="string">
  PM-specific behavioral archetype.
</ResponseField>

***

### POST /chat

Ask the Sleuth Intel AI assistant a natural language question. The assistant answers from live platform data — signal feeds, wallet rankings, PM odds, and more.

<ParamField body="query" type="string" required>
  Your natural language question (e.g. `"Who is buying SOL right now?"`, `"Which prediction markets have the most unusual volume today?"`).
</ParamField>

<CodeGroup>
  ```bash curl theme={null}
  curl -X POST https://api.sleuthintel.io/v1/chat \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"query": "Who is buying SOL right now?"}'
  ```

  ```javascript JavaScript (fetch) theme={null}
  const response = await fetch("https://api.sleuthintel.io/v1/chat", {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.SLEUTH_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({ query: "Who is buying SOL right now?" }),
  });

  const data = await response.json();
  console.log(data.answer);
  ```

  ```python Python (requests) theme={null}
  import os, requests

  response = requests.post(
      "https://api.sleuthintel.io/v1/chat",
      headers={"Authorization": f"Bearer {os.environ['SLEUTH_API_KEY']}"},
      json={"query": "Who is buying SOL right now?"}
  )
  print(response.json()["answer"])
  ```
</CodeGroup>

```json Example Response theme={null}
{
  "answer": "Three high-conviction wallets are accumulating SOL in the last 4 hours: 7xKq...MnP2 (+420,000 SOL), GhT3...vWx9 (+180,000 SOL), and Rk8L...9Yp1 (+95,000 SOL). All three have positive CLV scores and are tagged as early-entry smart money.",
  "sources": [
    { "type": "wallet", "entity": "7xKq...MnP2", "signal_id": "sig_01hx9z3k2pqr" },
    { "type": "wallet", "entity": "GhT3...vWx9", "signal_id": "sig_01hx9z4a1lmn" }
  ]
}
```

<ResponseField name="answer" type="string">
  Natural language answer synthesized from live platform data.
</ResponseField>

<ResponseField name="sources" type="array">
  Array of source references used to generate the answer. Each object includes `type`, `entity`, and `signal_id`.
</ResponseField>

<Note>
  The AI assistant pulls from live data at query time. Responses reflect conditions at the moment of your request — re-query for updated context.
</Note>

***

### GET and POST /alerts

List your configured alerts or create a new one. Alerts deliver Sleuth Intel signals to your Telegram account when specified conditions are met.

<Note>
  Use `GET /alerts` to retrieve your existing alert configurations and `POST /alerts` to create a new one. Configure your Telegram handle in Account Settings before creating alerts.
</Note>

<ParamField body="type" type="string" required>
  *(POST only)* The signal type to alert on. Accepted values: `wallet`, `market`, `signal`, `social`.
</ParamField>

<ParamField body="entity" type="string">
  *(POST only)* The specific wallet address, asset symbol, or market ID to monitor.
</ParamField>

<ParamField body="threshold" type="object">
  *(POST only)* Trigger conditions. Structure depends on alert type (e.g. `{ "pnl_change": 100000 }` for wallet alerts).
</ParamField>

<CodeGroup>
  ```bash GET alerts theme={null}
  curl https://api.sleuthintel.io/v1/alerts \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```bash POST alert theme={null}
  curl -X POST https://api.sleuthintel.io/v1/alerts \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "type": "wallet",
      "entity": "7xKq...MnP2",
      "threshold": { "pnl_change": 100000 }
    }'
  ```
</CodeGroup>

```json GET Response theme={null}
[
  {
    "id": "alert_01hx9z7r4abc",
    "type": "wallet",
    "entity": "7xKq...MnP2",
    "threshold": { "pnl_change": 100000 },
    "active": true
  }
]
```

```json POST Response theme={null}
{
  "id": "alert_01hx9z8s5def",
  "type": "wallet",
  "entity": "7xKq...MnP2",
  "threshold": { "pnl_change": 100000 },
  "active": true
}
```

***

### GET, POST, and DELETE /watchlists

Create, retrieve, and delete custom watchlists for wallets, assets, and prediction markets you want to track.

<ParamField body="name" type="string" required>
  *(POST only)* Display name for the watchlist.
</ParamField>

<ParamField body="type" type="string" required>
  *(POST only)* Watchlist category. Accepted values: `wallets`, `assets`, `markets`.
</ParamField>

<ParamField body="items" type="array" required>
  *(POST only)* Array of addresses, symbols, or market IDs to include in the watchlist.
</ParamField>

<ParamField query="id" type="string">
  *(DELETE only)* The watchlist ID to delete.
</ParamField>

<CodeGroup>
  ```bash GET watchlists theme={null}
  curl https://api.sleuthintel.io/v1/watchlists \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```bash POST watchlist theme={null}
  curl -X POST https://api.sleuthintel.io/v1/watchlists \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "name": "SOL Smart Money",
      "type": "wallets",
      "items": ["7xKq...MnP2", "GhT3...vWx9"]
    }'
  ```

  ```bash DELETE watchlist theme={null}
  curl -X DELETE "https://api.sleuthintel.io/v1/watchlists?id=wl_01hx9za2xyz" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json GET Response theme={null}
[
  {
    "id": "wl_01hx9za2xyz",
    "name": "SOL Smart Money",
    "type": "wallets",
    "items": ["7xKq...MnP2", "GhT3...vWx9"],
    "created_at": "2025-06-01T09:00:00Z"
  }
]
```

```json POST Response theme={null}
{
  "id": "wl_01hx9za2xyz",
  "name": "SOL Smart Money",
  "type": "wallets",
  "items": ["7xKq...MnP2", "GhT3...vWx9"],
  "created_at": "2025-06-10T15:00:00Z"
}
```

```json DELETE Response theme={null}
{
  "deleted": true,
  "id": "wl_01hx9za2xyz"
}
```

***

### GET and POST /alerts

List your configured alerts or create a new one. Alerts deliver Sleuth Intel signals to your Telegram account when specified conditions are met.

<Note>
  Use `GET /alerts` to retrieve your existing alert configurations and `POST /alerts` to create a new one. Configure your Telegram handle in Account Settings before creating alerts.
</Note>

<ParamField body="type" type="string" required>
  *(POST only)* The signal type to alert on. Accepted values: `wallet`, `market`, `signal`, `social`.
</ParamField>

<ParamField body="entity" type="string">
  *(POST only)* The specific wallet address, asset symbol, or market ID to monitor.
</ParamField>

<ParamField body="threshold" type="object">
  *(POST only)* Trigger conditions. Structure depends on alert type (e.g. `{ "pnl_change": 100000 }` for wallet alerts).
</ParamField>

<CodeGroup>
  ```bash GET alerts theme={null}
  curl https://api.sleuthintel.io/v1/alerts \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```bash POST alert theme={null}
  curl -X POST https://api.sleuthintel.io/v1/alerts \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "type": "wallet",
      "entity": "7xKq...MnP2",
      "threshold": { "pnl_change": 100000 }
    }'
  ```
</CodeGroup>

```json GET Response theme={null}
[
  {
    "id": "alert_01hx9z7r4abc",
    "type": "wallet",
    "entity": "7xKq...MnP2",
    "threshold": { "pnl_change": 100000 },
    "active": true
  }
]
```

```json POST Response theme={null}
{
  "id": "alert_01hx9z8s5def",
  "type": "wallet",
  "entity": "7xKq...MnP2",
  "threshold": { "pnl_change": 100000 },
  "active": true
}
```

***

### GET, POST, and DELETE /watchlists

Create, retrieve, and delete custom watchlists for wallets, assets, and prediction markets you want to track.

<ParamField body="name" type="string" required>
  *(POST only)* Display name for the watchlist.
</ParamField>

<ParamField body="type" type="string" required>
  *(POST only)* Watchlist category. Accepted values: `wallets`, `assets`, `markets`.
</ParamField>

<ParamField body="items" type="array" required>
  *(POST only)* Array of addresses, symbols, or market IDs to include in the watchlist.
</ParamField>

<ParamField query="id" type="string">
  *(DELETE only)* The watchlist ID to delete.
</ParamField>

<CodeGroup>
  ```bash GET watchlists theme={null}
  curl https://api.sleuthintel.io/v1/watchlists \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```

  ```bash POST watchlist theme={null}
  curl -X POST https://api.sleuthintel.io/v1/watchlists \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "name": "SOL Smart Money",
      "type": "wallets",
      "items": ["7xKq...MnP2", "GhT3...vWx9"]
    }'
  ```

  ```bash DELETE watchlist theme={null}
  curl -X DELETE "https://api.sleuthintel.io/v1/watchlists?id=wl_01hx9za2xyz" \
    -H "Authorization: Bearer YOUR_API_KEY"
  ```
</CodeGroup>

```json GET Response theme={null}
[
  {
    "id": "wl_01hx9za2xyz",
    "name": "SOL Smart Money",
    "type": "wallets",
    "items": ["7xKq...MnP2", "GhT3...vWx9"],
    "created_at": "2025-06-01T09:00:00Z"
  }
]
```

```json POST Response theme={null}
{
  "id": "wl_01hx9za2xyz",
  "name": "SOL Smart Money",
  "type": "wallets",
  "items": ["7xKq...MnP2", "GhT3...vWx9"],
  "created_at": "2025-06-10T15:00:00Z"
}
```

```json DELETE Response theme={null}
{
  "deleted": true,
  "id": "wl_01hx9za2xyz"
}
```
