/api/agent/v6/*
Fork V6 endpoints for agentic AI runs and on-chain chat. Read-only — to submit AGENT_REQUEST, sign and post via /api/chain/tx.
Agent runs
GET /api/agent/v6/run/:agentRunId
Full agent run record.
- cURL
- TypeScript
- Python
curl https://api.ombra-net.com/api/agent/v6/run/abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890
const res = await fetch(`${API}/api/agent/v6/run/${runId}`);
const run = await res.json();
run = client.get_agent_run(run_id)
Response:
{
"agentRunId": "...",
"conversationId": "...",
"submitter": "...",
"prompt": "...",
"toolsWhitelist": ["chain_get_balance"],
"maxFee": "1000000",
"maxSteps": 50,
"status": "completed",
"minerAddress": "...",
"modelInfo": "llama-server:Qwen2.5-7B",
"hardwareTier": "desktop",
"stepCount": 3,
"totalTokensOut": 1500,
"minerReward": "1500",
"userRefund": "998200",
"networkFee": "300",
"finalAnswerInline": "Your balance is 12.34 OMBRA.",
"submittedAt": 1735389942000,
"claimedAt": 1735389945000,
"finishedAt": 1735390002000,
"blockIndex": 62500
}
Errors: 404 not found
GET /api/agent/v6/run/:agentRunId/steps
All AGENT_STEP transactions emitted for this run.
curl https://api.ombra-net.com/api/agent/v6/run/abcd.../steps
Response:
{
"agentRunId": "...",
"count": 3,
"steps": [{
"stepIndex": 0,
"outputTokens": 500,
"outputHash": "...",
"toolCalls": [
{ "name": "chain_get_balance", "argsHash": "...", "resultHash": "...", "durationMs": 87, "ok": true }
],
"timestamp": 1735389950000,
"blockIndex": 62498
}]
}
GET /api/agent/v6/by-status/:status?limit=N
Filter runs by status. status ∈ { pending, claimed, running, completed, failed, timeout, insufficient_funds, cancelled }.
curl 'https://api.ombra-net.com/api/agent/v6/by-status/pending?limit=20'
Useful for miners to poll for unclaimed runs.
Response: { "status": "...", "count": N, "runs": [...] }
GET /api/agent/v6/by-submitter/:address?limit=N
User's own agent runs.
curl 'https://api.ombra-net.com/api/agent/v6/by-submitter/7a8b7038...?limit=50'
GET /api/agent/v6/by-miner/:address?limit=N
Runs claimed by a miner.
curl 'https://api.ombra-net.com/api/agent/v6/by-miner/7a8b7038...?limit=50'
Chat conversations
GET /api/agent/v6/chat/:conversationId
Conversation metadata.
curl https://api.ombra-net.com/api/agent/v6/chat/abcd1234...
Response:
{
"conversationId": "...",
"creator": "7a8b7038...",
"turnCount": 12,
"firstTurnAt": 1735380000000,
"lastTurnAt": 1735390000000
}
GET /api/agent/v6/chat/:conversationId/turns?limit=N
All turns in chronological order. limit ≤ 1000, default 200.
curl 'https://api.ombra-net.com/api/agent/v6/chat/abcd1234.../turns?limit=500'
Response:
{
"conversationId": "...",
"count": 12,
"turns": [{
"hash": "...",
"from": "...",
"role": "user",
"content": "What's my balance?",
"agentRunId": "...",
"timestamp": 1735389942000,
"blockIndex": 62500
}]
}
GET /api/agent/v6/chat-by-author/:address?limit=N
Distinct conversations involving an author.
curl 'https://api.ombra-net.com/api/agent/v6/chat-by-author/7a8b7038...?limit=100'
Response: { "author": "...", "count": N, "conversationIds": ["...", ...] }
See Recipes › Submit agent run for end-to-end submit + poll.