Quickstart
From zero to a live answer in five minutes — create a key, send your first prompt, and stream the response.
Everything below takes you from signup to a streaming answer in about five minutes — no SDK, just HTTP. The steps are independent, so if you already have a key you can jump straight to asking your first question.
1. Get an API key
Sign in to the dashboard and open API Keys.
Click Create key, give it a label, and copy the secret.
The full secret is shown once, at creation time. Store it in a secret manager or environment variable before you close the dialog.
Make sure your account has an active plan in Pricing -
/agent/ask requires it.
API keys look like neuro_<random>. The leading neuro_<8 chars> is
the public prefix; everywhere we surface a key (logs, dashboards)
it's the prefix only.
2. Confirm your key works
GET /api/v1/health is the lightest authenticated call there is — it's
free, bills zero units, and confirms your key and the connection in a
single request.
curl -s https://api.neurobro.ai/api/v1/health \
-H "X-API-Key: $NEUROAPI_KEY" | jqExpected response:
{
"status": "healthy",
"service": "neuroapi",
"version": "0.1.0",
"authenticated": true,
"key_prefix": "neuro_a1b2c3d4",
"timestamp": "2026-05-08T12:34:56.789Z"
}3. Ask your first question
/agent/ask is the endpoint you'll build on. Send a prompt, pick a
mode (fast / smart / max), and get a structured JSON answer back
with token usage and a request_id.
curl -s https://api.neurobro.ai/api/v1/agent/ask \
-H "Content-Type: application/json" \
-H "X-API-Key: $NEUROAPI_KEY" \
-d '{
"prompt": "Summarise the latest macroeconomic outlook for the eurozone.",
"mode": "smart"
}' | jqconst res = await fetch("https://api.neurobro.ai/api/v1/agent/ask", {
method: "POST",
headers: {
"Content-Type": "application/json",
"X-API-Key": process.env.NEUROAPI_KEY!,
},
body: JSON.stringify({
prompt: "Summarise the latest macroeconomic outlook for the eurozone.",
mode: "smart",
}),
})
const { answer, request_id, usage } = await res.json()import os, httpx
res = httpx.post(
"https://api.neurobro.ai/api/v1/agent/ask",
headers={"X-API-Key": os.environ["NEUROAPI_KEY"]},
json={
"prompt": "Summarise the latest macroeconomic outlook for the eurozone.",
"mode": "smart",
},
timeout=60,
)
data = res.json()Sample response:
{
"answer": "The European Central Bank held rates steady ...",
"mode": "smart",
"request_id": "8b3a2f0e-1d7e-4c6b-9b2a-f5e23a1c9d44",
"usage": {
"prompt_tokens": 124,
"completion_tokens": 256,
"cost_units": 2
}
}The X-Request-Id response header mirrors request_id - paste it when
reporting issues.
4. Stream the answer live
Set "stream": true to receive the answer as it's generated — token by
token over SSE, ideal for chat UIs and long responses. The stream closes
with a final data: [DONE]\n\n.
curl -N https://api.neurobro.ai/api/v1/agent/ask \
-H "Content-Type: application/json" \
-H "X-API-Key: $NEUROAPI_KEY" \
-d '{"prompt": "Walk me through the bull and bear case for NVDA right now.", "stream": true}'