Axion forecasting
Axion answers a question by running an orchestrator and a team of research agents (web search, market data, SEC filings, Fermi estimates) that cite their evidence and return graded probabilistic forecasts.
When to use
Use Axion when the user wants the odds of a future event, a deal or scenario evaluated, or a research-backed estimate: "how likely is X", "forecast whether Y", "what are the odds of Z", elections, markets, deals, geopolitics, product launches.
Setup
- Create an account at https://axion.eternis.ai and create an API key on the API Keys page. Any account can create keys.
- Add credits. API usage is prepaid and billed separately from the monthly plan; new accounts start at zero.
- Provide the key as the
AXION_API_KEYenvironment variable.
Before calling, confirm the key is present. If AXION_API_KEY is empty, stop and ask the user to set it. Do not proceed.
Procedure
Forecasts run asynchronously: start one, then poll until it reaches a terminal status. Base URL https://api.axion.eternis.ai; the key is a Bearer token on every request.
- Start a forecast:
curl -s https://api.axion.eternis.ai/forecasts \
-H "Authorization: Bearer $AXION_API_KEY" \
-H "Content-Type: application/json" \
-d '{"input": "Will the Fed cut rates in June 2026?", "effort": "high"}'
Returns {"id": "<token>", "status": "starting"} — id is an opaque token (e.g. L2d5qNdtxXjyjXGKTmKVMX), no fixed prefix. Use it to poll. Set effort low/medium/high and max_forecasts 1–10 to widen the run.
- Poll until
statusiscompletedorfailed, backing off a few seconds between calls:
curl -s https://api.axion.eternis.ai/forecasts/<id> \
-H "Authorization: Bearer $AXION_API_KEY"
- Read
forecasts[]. Each carriesforecast_text,probability(0–1),confidence_lower/confidence_upper,resolution_date, andreasoning. Present the probability and the reasoning behind it.
Full request and response fields, webhooks, and credit rates: see references/axion-api.md, mirrored from https://axion.eternis.ai/docs.md.
Pitfalls
- A positive credit balance is required to start a forecast. A 402 with an insufficient-credits message means add credits at https://axion.eternis.ai.
- A run takes roughly 15 seconds to 3 minutes. Poll with backoff; do not block.
- Maximum 10 concurrent in-progress threads per account (429 otherwise).
- The key is read from the environment. Never print or hard-code it. In sandboxed runs, make sure
AXION_API_KEYis provided to the sandbox, not only to the host. - Successful responses are valid JSON, but a transient
5xx(an upstream reset at the ingress) can return a short plain-text body instead of the usual{"error": ...}envelope. Check the HTTP status before parsing; on a non-2xx, retry the same request a few times with backoff rather than parsing the body as JSON.
Verification
A successful run ends with status completed and a non-empty forecasts[] array carrying probabilities between 0 and 1.
Scan to join WeChat group