Skip to content

Quickstart

1. Get a key

Create a free API key at developers.signals.ai. No card required. The key is shown once — copy it.

Terminal window
export SIGNALS_KEY="sk_live_…"

2. Check coverage

Before pulling data, ask what exists for a company. Agents should call this first to orient.

Terminal window
curl https://api.signals.ai/v1/coverage/UBER \
-H "Authorization: Bearer $SIGNALS_KEY"

3. Pull a cited KPI series

Terminal window
curl "https://api.signals.ai/v1/companies/UBER/kpis/gross_bookings" \
-H "Authorization: Bearer $SIGNALS_KEY"
{
"symbol": "UBER:US",
"data": [
{
"metric_key": "gross_bookings",
"display": "Gross Bookings",
"points": [
{
"period": { "calendar": "2026Q1", "fiscal": "2026Q1", "kind": "quarter" },
"value": { "raw": 44800000000, "normalized": 44.8, "unit": "USD_billion" },
"provenance": {
"src_id": "src_kpi2_9f8e7d6c",
"source_provider": "sec",
"source_url": "https://www.sec.gov/Archives/…/ex99-1.htm",
"quote": "Gross Bookings grew to $44.8 billion, up 18%…"
}
}
]
}
]
}

4. Or just ask

Terminal window
curl https://api.signals.ai/v1/ask \
-H "Authorization: Bearer $SIGNALS_KEY" \
-H "Content-Type: application/json" \
-d '{"question": "How has Uber gross bookings trended?", "symbols": ["UBER"]}'

The answer comes back with every numeric claim carrying a [n] citation that resolves to a src_id + source URL. If the corpus can’t answer, you get a not_found refusal — never a guessed number — and it costs zero credits.

Next