Examples
curl and TypeScript, from a week of signals to a new radar.
The signals of the last week
curl "https://app.trymarketradar.com/api/v1/signals?since=2026-09-18" \
-H "Authorization: Bearer $MARKET_RADAR_KEY"Every signal of a radar, page by page
In TypeScript, following next_cursor and waiting when the rate
limit answers 429:
async function allSignals(radarId: number, key: string) {
const signals = []
let cursor: string | null = null
do {
const url = new URL(`https://app.trymarketradar.com/api/v1/radars/${radarId}/signals`)
url.searchParams.set("limit", "100")
if (cursor) url.searchParams.set("cursor", cursor)
const res = await fetch(url, { headers: { Authorization: `Bearer ${key}` } })
if (res.status === 429) {
await new Promise((r) => setTimeout(r, Number(res.headers.get("Retry-After")) * 1000))
continue
}
if (!res.ok) throw new Error((await res.json()).error.message)
const page = await res.json()
signals.push(...page.data)
cursor = page.next_cursor
} while (cursor)
return signals
}Add a company, then a radar watching it
curl -X POST https://app.trymarketradar.com/api/v1/companies \
-H "Authorization: Bearer $MARKET_RADAR_KEY" -H "Content-Type: application/json" \
-d '{"name": "Revolut", "website": "revolut.com"}'
curl -X POST https://app.trymarketradar.com/api/v1/radars \
-H "Authorization: Bearer $MARKET_RADAR_KEY" -H "Content-Type: application/json" \
-d '{"name": "Revolut", "query": {"lines": [
{"joiner": null, "chips": [{"filter": "product_launches"}, {"filter": "partnerships"}]},
{"joiner": "AND", "chips": [{"company_id": 93}]}]}}'The second call uses the id the first one returned.