VAGAChain Node API

OpenAPI documentation for the VAGAChain dev-node HTTP and REST surfaces. This file focuses on the node's HTTP endpoints and documents the JSON-RPC envelope at POST /rpc. For grouped JSON-RPC and gRPC references, see docs/api-reference.md.

Spec Info
Version 0.1.0
http://127.0.0.1:9944
Download openapi.yaml
API REFERENCE

System

GET/health

Node health and runtime summary

Responses

StatusDescriptionSchema
200Health summaryobject
GET/state

Full runtime snapshot

Responses

StatusDescriptionSchema
200Runtime snapshotobject
GET/state/indexer-snapshot

Binary snapshot contract for the indexer

Responses

StatusDescriptionSchema
200Binary-encoded snapshotbinary
500Snapshot encoding errorobject
GET/ws

WebSocket notifications endpoint

Upgrades to a WebSocket connection. The server sends an initial welcome message containing a runtime snapshot and then streams node notifications. Sending the text message `ping` returns `{"type":"pong"}`.

Responses

StatusDescriptionSchema
101WebSocket upgrade

Events

GET/events

List runtime event log records

Parameters

NameInTypeRequiredDescription
from_seqqueryintegerno
limitqueryintegerno
event_typequerystringno

Responses

StatusDescriptionSchema
200Event listobject

REST

GET/api/agent/{agent_id}

Get agent summary

Parameters

NameInTypeRequiredDescription
agent_idpathstringyesVAGA agent address, usually `vaga...` or legacy `0x...`

Responses

StatusDescriptionSchema
200Agent summaryobject
400Invalid requestobject
404Resource not foundobject
GET/api/balance/{agent_id}

Get balance summary for one agent

Parameters

NameInTypeRequiredDescription
agent_idpathstringyesVAGA agent address, usually `vaga...` or legacy `0x...`

Responses

StatusDescriptionSchema
200Balance breakdownobject
400Invalid requestobject
404Resource not foundobject
GET/api/sla/{sla_id}

Get SLA summary

Parameters

NameInTypeRequiredDescription
sla_idpathintegeryes

Responses

StatusDescriptionSchema
200SLA summaryobject
404Resource not foundobject
GET/api/dispute/{dispute_id}

Get dispute summary

Parameters

NameInTypeRequiredDescription
dispute_idpathintegeryes

Responses

StatusDescriptionSchema
200Dispute summaryobject
404Resource not foundobject
GET/api/transfers

List treasury transfer events

Parameters

NameInTypeRequiredDescription
from_agentquerystringnoOptional sender filter
to_agentquerystringnoOptional recipient filter
limitqueryintegerno

Responses

StatusDescriptionSchema
200Transfer listobject
400Invalid requestobject

Explorer

GET/api/explorer

Explorer overview

Parameters

NameInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
limitqueryintegerno

Responses

StatusDescriptionSchema
200Explorer overview with aggregated sectionsobject
GET/api/explorer/transactions

List explorer transactions

Parameters

NameInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
limitqueryintegerno
qquerystringno
agent_idquerystringno
tx_typequerystringno

Responses

StatusDescriptionSchema
200Transaction listobject
400Invalid requestobject
GET/api/explorer/transactions/{tx_id}

Get one explorer transaction

Parameters

NameInTypeRequiredDescription
tx_idpathstringyes

Responses

StatusDescriptionSchema
200Transaction detailobject
404Resource not foundobject
GET/api/explorer/wallets

List explorer wallets

Parameters

NameInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
limitqueryintegerno
qquerystringno

Responses

StatusDescriptionSchema
200Wallet listobject
GET/api/explorer/wallets/{agent_id}

Get one explorer wallet detail view

Parameters

NameInTypeRequiredDescription
agent_idpathstringyesVAGA agent address, usually `vaga...` or legacy `0x...`
pagequeryintegerno
page_sizequeryintegerno
limitqueryintegerno
qquerystringno

Responses

StatusDescriptionSchema
200Wallet detail viewobject
400Invalid requestobject
404Resource not foundobject
GET/api/explorer/blocks

List explorer blocks

Parameters

NameInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
limitqueryintegerno
qquerystringno

Responses

StatusDescriptionSchema
200Block listobject
GET/api/explorer/blocks/{block_number}

Get one explorer block detail view

Parameters

NameInTypeRequiredDescription
block_numberpathintegeryes
pagequeryintegerno
page_sizequeryintegerno
limitqueryintegerno
qquerystringno

Responses

StatusDescriptionSchema
200Block detail viewobject
404Resource not foundobject
GET/api/explorer/validators

List explorer validators

Parameters

NameInTypeRequiredDescription
pagequeryintegerno
page_sizequeryintegerno
limitqueryintegerno
qquerystringno

Responses

StatusDescriptionSchema
200Validator listobject
GET/api/explorer/validators/{validator_id}

Get one explorer validator detail view

Parameters

NameInTypeRequiredDescription
validator_idpathstringyes32-byte hex public key
pagequeryintegerno
page_sizequeryintegerno
limitqueryintegerno
qquerystringno

Responses

StatusDescriptionSchema
200Validator detail viewobject
400Invalid requestobject
404Resource not foundobject

JSON-RPC

POST/rpc

JSON-RPC 2.0 endpoint

Generic JSON-RPC 2.0 entrypoint for VAGAChain write and read methods. See docs/api-reference.md for grouped method lists.

Request Body

Content-Type: application/json · object

system_health request

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "system_health",
  "params": {}
}

get_balance request

{
  "jsonrpc": "2.0",
  "id": 2,
  "method": "get_balance",
  "params": {
    "agent_id": "vaga0123456789abcdef0123456789abcdef0123456789abcdef0123456789"
  }
}

Responses

StatusDescriptionSchema
200JSON-RPC responseobject

Schemas

ErrorBody

PropertyTypeRequired
errorstringyes

Pagination

PropertyTypeRequired
pageintegerno
page_sizeintegerno
totalintegerno
total_pagesintegerno
has_nextbooleanno
has_prevbooleanno

EventRecord

PropertyTypeRequired
seqintegeryes
block_numberintegeryes
timestamp_msintegeryes
event_typestringyes
eventobjectno

EventsResponse

PropertyTypeRequired
from_seqintegeryes
next_cursorintegeryes
latest_seqintegeryes
countintegeryes
total_availableintegeryes
eventsarray<EventRecord>yes

HealthResponse

PropertyTypeRequired
statusstringyes
uptime_secondsintegeryes
block_numberintegeryes
epoch_indexintegeryes
latest_finalized_blockintegeryes
latest_finality_certificate_hashstringnullno
finality_lag_blocksintegeryes
base_feestringno
external_market_cap_referencestringnullno
external_market_cap_reported_atintegernullno
persist_pipeline_enabledbooleanno
persist_pipeline_pendingbooleanno
persist_pipeline_interval_msintegerno
rpc_inflight_availableintegerno
rpc_per_ip_max_requestsintegerno
rpc_per_ip_window_msintegerno
runtime_event_log_lenintegerno
runtime_event_latest_seqintegerno

BalanceResponse

PropertyTypeRequired
agent_idstringyes
token_symbolstringyes
liquid_balancestringyes
locked_escrowstringyes
locked_collateralstringyes
total_balancestringyes

SlaSummary

PropertyTypeRequired
sla_idintegeryes
client_agentstringyes
provider_agentstringyes
escrow_amountstringyes
provider_collateralstringyes
deadlineintegeryes
statusstringyes
risk_classintegeryes

DisputeSummary

PropertyTypeRequired
dispute_idintegeryes
sla_idintegeryes
challenger_agentstringyes
reasonstringyes
opened_atintegeryes
challenge_bondstringyes
juryarray<string>yes
verification_methodstringyes
votes_for_challengerintegeryes
votes_for_providerintegeryes
resolvedbooleanyes
verdictstringnullno

TransferRecord

PropertyTypeRequired
event_indexintegeryes
from_agentstringyes
to_agentstringyes
amountstringyes
token_symbolstringyes

TransfersResponse

PropertyTypeRequired
countintegeryes
transfersarray<TransferRecord>yes

PaginatedRowsResponse

PropertyTypeRequired
countintegeryes
rowsarray<object>yes
filtersobjectno
paginationobjectno

JsonRpcRequest

PropertyTypeRequired
jsonrpc"2.0"yes
idinteger | string | object | array<unknown> | boolean | nullyes
methodstringyes
paramsobjectno

JsonRpcError

PropertyTypeRequired
codeintegeryes
messagestringyes

JsonRpcResponse

PropertyTypeRequired
jsonrpc"2.0"yes
idinteger | string | object | array<unknown> | boolean | nullyes
resultobject | array<unknown> | string | integer | number | boolean | nullno
errorJsonRpcError | nullno