message is required for analysisType: "chat". For macro, summary, tokenIntro, tokenAnalysis, and accountAnalysis, Elfa uses the mode and assetMetadata; the free-form message field is ignored.
Chat
Use Chat when you want meaning rather than metrics: plain language in, written market answer out. It is the fastest path for agents or teams that do not want to build an ETL and summarization pipeline before they can ask questions.
Surfaces
| Surface | Endpoint | Best when |
|---|---|---|
| API key JSON | POST /v2/chat | Your integration cannot consume SSE, or wants a complete JSON answer. |
| API key SSE | POST /v2/chat/stream | Your client can consume Server-Sent Events and wants incremental output. |
| x402 JSON | POST /x402/v2/chat | A wallet-based agent should pay per call without an API key. |
Plan access differs by surface: non-streaming Chat requires Grow and above or PAYG, streaming Chat requires PAYG or Enterprise, and x402 Chat is paid per request.
Analysis Types
analysisType decides what Elfa does. All modes share the same request shape, but they do not need the same fields.
| Type | In-app title | Use it for | Needs |
|---|---|---|---|
chat | Free text | Open-ended questions about why something is moving and what may happen next. | message |
macro | Understand Market Conditions | A step-back read on broad market conditions. | No extra field |
summary | Quick Summary | A fast pulse check before digging into a token. | No extra field |
tokenIntro | What is $SOL? | Explain what a token is, why it exists, and its narrative. | assetMetadata.symbol or assetMetadata.chain + assetMetadata.contractAddress |
tokenAnalysis | Suggest Trade Setup for $SOL | Entries, exits, market context, and onchain context in one read. | Same as tokenIntro |
accountAnalysis | Analyze Account @username | Vet who is posting, whether engagement is real, and what they push. | assetMetadata.username |
Worked Requests
{"analysisType":"chat","message":"Why is EUL pumping and will the rally continue?","speed":"expert"}
{"analysisType":"macro","speed":"expert"}
{"analysisType":"summary","speed":"fast"}
{"analysisType":"tokenIntro","assetMetadata":{"symbol":"SOL"}}
{"analysisType":"tokenAnalysis","assetMetadata":{"symbol":"SOL"},"speed":"expert"}
{"analysisType":"accountAnalysis","assetMetadata":{"username":"elfa_ai"}}
Sessions and Speed
Omit sessionId to start a new conversation. The response includes a sessionId; pass it back to continue the same thread.
Speed controls cost and depth:
| Speed | Meaning |
|---|---|
fast | Cheaper and shallower. |
expert | Default, deeper reasoning. |
adaptive | Lets Elfa choose. Available on /v2/chat, not on /x402/v2/chat. |
When to Use Data Endpoints Instead
Chat gives conclusions. Use measurement endpoints when your agent needs raw attention signals it can score itself: Discovery, Mentions and Accounts, and News and Narratives.