Skip to main content
Loading market data…
GET/api/v1/sentiment/{index}Free tier · 10 req/min

Latest reading for a single sentiment index, looked up by name.

Thin companion to `/sentiment/list`. When you already know the index you want, this returns only the newest sample — cheaper than hitting the history endpoint with `limit=1`. An unknown name resolves to `{ latest: null }` with `meta.unavailable = "no-data"` (a 200, not a 404), so the client UX stays uniform.

Path parameters

Segments of the URL path, validated server-side.

NameTypeRequiredDefaultDescription
indexstringrequired
Sentiment index name (e.g. `crypto_fear_greed`). Must match the `index_name` in `sentiment_index`.

Query parameters

This endpoint takes no query parameters.

Response shape

Always wrapped in the standard envelope. Nullable fields are explicitly marked — treat missing numeric data as a real data-source gap, not as an error.

data payloadtypescript
// Wrapped in the standard envelope:
// {
//   data: /* shape below */,
//   meta?: { total?: number; limit?: number; offset?: number; ... }
// }

{
  indexName: string;
  source: string | null;
  latest: { ts: number; value: number; classification: string } | null;
}

Example

Copy the curl, replace YOUR_KEY with a real key from your dashboard, and run.

Requestbash
curl -sS "http://localhost:3000/api/v1/sentiment/crypto_fear_greed"
Responsejson
{
  "data": {
    "indexName": "crypto_fear_greed",
    "source": "alternative.me",
    "latest": { "ts": 1744761600000, "value": 62, "classification": "Greed" }
  },
  "meta": { "total": 1 }
}

Notes

  • Pair with `/sentiment/{index}/history` when you also need the chart series.

Next

Check the error code reference, or get an API key to try the request against your own account.