---
title: "The tradable crypto universe with per token strength scores (cache fresh, ~5 min)"
method: GET
path: "/v1/screener/scan"
---

# The tradable crypto universe with per token strength scores (cache fresh, ~5 min)

`GET /v1/screener/scan`

## Request

- Base URL: `https://app.texttoquant.com/api`
- URL: `https://app.texttoquant.com/api/v1/screener/scan`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Optional EMA cross filter: emaFast and emaSlow together keep only the tokens whose fast EMA crossed the slow EMA in emaDirection (default bullish) within the last emaWithin closed bars (default 3) on emaTimeframe (default 1d). The 100 most traded tokens of the scan are read; kept rows carry `emaCross {fast, slow, direction, crossedAt, barsAgo}` and `data.emaCross` summarises the pass. Without the pair the response is unchanged.

## Query parameters

- `minVolume` integer
- `barCount` integer
- `emaFast` integer
- `emaSlow` integer
- `emaDirection` 'bullish' | 'bearish' | 'any'
- `emaWithin` integer
- `emaTimeframe` '1h' | '4h' | '12h' | '1d' | '3d' | '1w'

## Response `200`

Success

- object
  - `success` true, required
  - `data` object, required

## Other responses

- `400`: validation
- `503`: EMA cross filter: the candle store did not answer in time

---

[API](https://skmtc.dev/texttoquant/apis/texttoquant-api.md) · [All operations](https://skmtc.dev/texttoquant/apis/texttoquant-api/llms.txt) · [OpenAPI document](https://skmtc.dev/texttoquant/apis/texttoquant-api/revisions/d417fc3f4a7d?raw)
