Operator RPC API#
Operator RPCs are exposed under /node
and do not require authentication.
- GET /node/api#
OpenAPI schema
Example request:
GET /node/api HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json {}
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/api/metrics#
Usage metrics for endpoints
Example request:
GET /node/api/metrics HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "metrics": [ { "calls": 1, "errors": 1, "failures": 1, "method": "string", "path": "string", "retries": 1 } ] }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/code#
This endpoint is deprecated. It is replaced by /gov/kv/nodes/code_ids endpoint
Permitted SGX code identities
Example request:
GET /node/code HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "versions": [ { "digest": "string", "status": "AllowedToJoin" } ] }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/commit#
Current commit level
Latest transaction ID that has been committed on the service
- Query Parameters:
view_history (boolean) –
view_history_since (integer) –
Example request:
GET /node/commit HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "transaction_id": "string", "view_history": [ "string" ] }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/config#
Example request:
GET /node/config HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json {}
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/consensus#
Example request:
GET /node/consensus HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "details": { "acks": {}, "configs": [ { "idx": 1, "nodes": {}, "rid": 1 } ], "current_view": 1, "leadership_state": "None", "learners": {}, "membership_state": "Active", "primary_id": "string", "reconfiguration_type": "OneTransaction", "retirement_phase": "Committed", "ticking": true } }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/index/strategies#
Example request:
GET /node/index/strategies HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json {}
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/js_metrics#
Example request:
GET /node/js_metrics HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "bytecode_size": 1, "bytecode_used": true, "max_cached_interpreters": 1, "max_execution_time": 1, "max_heap_size": 1, "max_stack_size": 1 }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/jwt_metrics#
Example request:
GET /node/jwt_metrics HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "attempts": 1, "successes": 1 }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/memory#
Example request:
GET /node/memory HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "current_allocated_heap_size": 1, "max_total_heap_size": 1, "peak_allocated_heap_size": 1 }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/metrics#
Example request:
GET /node/metrics HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "sessions": { "active": 1, "interfaces": {}, "peak": 1 } }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/network#
Example request:
GET /node/network HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "current_service_create_txid": "string", "current_view": 1, "primary_id": "string", "recovery_count": 1, "service_certificate": "string", "service_data": {}, "service_status": "Opening" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/network/nodes#
- Query Parameters:
host (string) –
port (string) –
status (string) –
Example request:
GET /node/network/nodes HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "nodes": [ { "last_written": 1, "node_data": {}, "node_id": "string", "primary": true, "rpc_interfaces": {}, "status": "Pending" } ] }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/network/nodes/primary#
Example request:
GET /node/network/nodes/primary HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "last_written": 1, "node_data": {}, "node_id": "string", "primary": true, "rpc_interfaces": {}, "status": "Pending" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/network/nodes/self#
Example request:
GET /node/network/nodes/self HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "last_written": 1, "node_data": {}, "node_id": "string", "primary": true, "rpc_interfaces": {}, "status": "Pending" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- DELETE /node/network/nodes/{node_id}#
- Parameters:
node_id (string) –
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json true
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/network/nodes/{node_id}#
- Parameters:
node_id (string) –
Example request:
GET /node/network/nodes/{node_id} HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "last_written": 1, "node_data": {}, "node_id": "string", "primary": true, "rpc_interfaces": {}, "status": "Pending" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/network/removable_nodes#
Example request:
GET /node/network/removable_nodes HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "nodes": [ { "last_written": 1, "node_data": {}, "node_id": "string", "primary": true, "rpc_interfaces": {}, "status": "Pending" } ] }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- HEAD /node/primary#
- Status Codes:
200 OK – Default response description
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/quotes#
Example request:
GET /node/quotes HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "quotes": [ { "endorsements": "string", "format": "OE_SGX_v1", "mrenclave": "string", "node_id": "string", "raw": "string", "uvm_endorsements": "string" } ] }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/quotes/self#
Example request:
GET /node/quotes/self HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "endorsements": "string", "format": "OE_SGX_v1", "mrenclave": "string", "node_id": "string", "raw": "string", "uvm_endorsements": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/ready/app#
Example request:
GET /node/ready/app HTTP/1.1 Host: example.com
- Status Codes:
204 No Content – Default response description
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/ready/gov#
Example request:
GET /node/ready/gov HTTP/1.1 Host: example.com
- Status Codes:
204 No Content – Default response description
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/receipt#
Receipt for a transaction
A signed statement from the service over a transaction entry in the ledger
- Query Parameters:
transaction_id (string) – (Required)
Example request:
GET /node/receipt?transaction_id=string HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json {}
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/self_signed_certificate#
Example request:
GET /node/self_signed_certificate HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "self_signed_certificate": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/service/configuration#
Example request:
GET /node/service/configuration HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "consensus": "CFT", "maximum_node_certificate_validity_days": 1, "maximum_service_certificate_validity_days": 1, "recent_cose_proposals_window_size": 1, "reconfiguration_type": "OneTransaction", "recovery_threshold": 1 }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/service/previous_identity#
Example request:
GET /node/service/previous_identity HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "previous_service_identity": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/state#
Example request:
GET /node/state HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "last_recovered_seqno": 1, "last_signed_seqno": 1, "node_id": "string", "recovery_target_seqno": 1, "startup_seqno": 1, "state": "Uninitialized", "stop_notice": true }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/tx#
Current status of a transaction
Possible statuses returned are Unknown, Pending, Committed or Invalid.
- Query Parameters:
transaction_id (string) – (Required)
Example request:
GET /node/tx?transaction_id=string HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "status": "Unknown", "transaction_id": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /node/version#
Example request:
GET /node/version HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "ccf_version": "string", "quickjs_version": "string", "unsafe": true }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }