Member RPC API#
Member RPCs are exposed under /gov
and require authentication with a valid member identity.
- POST /gov/ack#
Provide a member endorsement of a service state digest
Example request:
POST /gov/ack HTTP/1.1 Host: example.com Content-Type: application/json { "state_digest": "string" }
- 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" } }
- POST /gov/ack/update_state_digest#
Update and fetch a service state digest, for the purpose of member endorsement
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "state_digest": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/api#
OpenAPI schema
Example request:
GET /gov/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 /gov/api/metrics#
Usage metrics for endpoints
Example request:
GET /gov/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 /gov/code#
This endpoint is deprecated. It is replaced by /gov/kv/nodes/code_ids endpoint
Permitted SGX code identities
Example request:
GET /gov/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 /gov/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 /gov/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" } }
A member’s recovery share
- Parameters:
member_id (string) –
Example request:
GET /gov/encrypted_recovery_share/{member_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 { "encrypted_share": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/jwt_keys/all#
This endpoint is deprecated. It is replaced by /gov/kv/jwt/public_signing_keys, /gov/kv/jwt/public_signing_key_issue, and /gov/kv/jwt/issuers endpoints.
Example request:
GET /gov/jwt_keys/all 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 /gov/kv/constitution#
Example request:
GET /gov/kv/constitution HTTP/1.1 Host: example.com
- 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 /gov/kv/cose_history#
Example request:
GET /gov/kv/cose_history 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 /gov/kv/cose_recent_proposals#
Example request:
GET /gov/kv/cose_recent_proposals 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 /gov/kv/endpoints#
Example request:
GET /gov/kv/endpoints HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ [ { "uri_path": "string", "verb": "string" }, { "authn_policies": [ "string" ], "forwarding_required": "sometimes", "interpreter_reuse": { "key": "string" }, "js_function": "string", "js_module": "string", "mode": "readwrite", "openapi": {}, "openapi_hidden": true } ] ]
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/kv/history#
Example request:
GET /gov/kv/history 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 /gov/kv/interpreter/flush#
Example request:
GET /gov/kv/interpreter/flush HTTP/1.1 Host: example.com
- 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 /gov/kv/js_runtime_options#
Example request:
GET /gov/kv/js_runtime_options HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "log_exception_details": true, "max_cached_interpreters": 1, "max_execution_time_ms": 1, "max_heap_bytes": 1, "max_stack_bytes": 1, "return_exception_details": true }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/kv/jwt/issuers#
Example request:
GET /gov/kv/jwt/issuers 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 /gov/kv/jwt/public_signing_key_issuer#
Example request:
GET /gov/kv/jwt/public_signing_key_issuer 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 /gov/kv/jwt/public_signing_keys#
Example request:
GET /gov/kv/jwt/public_signing_keys 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 /gov/kv/members/acks#
Example request:
GET /gov/kv/members/acks 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 /gov/kv/members/certs#
Example request:
GET /gov/kv/members/certs 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 /gov/kv/members/encryption_public_keys#
Example request:
GET /gov/kv/members/encryption_public_keys 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 /gov/kv/members/info#
Example request:
GET /gov/kv/members/info 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 /gov/kv/modules#
Example request:
GET /gov/kv/modules 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 /gov/kv/modules_quickjs_bytecode#
Example request:
GET /gov/kv/modules_quickjs_bytecode 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 /gov/kv/modules_quickjs_version#
Example request:
GET /gov/kv/modules_quickjs_version HTTP/1.1 Host: example.com
- 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 /gov/kv/nodes/code_ids#
Example request:
GET /gov/kv/nodes/code_ids HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ [ "string", "AllowedToJoin" ] ]
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/kv/nodes/endorsed_certificates#
Example request:
GET /gov/kv/nodes/endorsed_certificates 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 /gov/kv/nodes/info#
Example request:
GET /gov/kv/nodes/info 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 /gov/kv/nodes/snp/host_data#
Example request:
GET /gov/kv/nodes/snp/host_data HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ [ "string", "string" ] ]
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/kv/nodes/snp/measurements#
Example request:
GET /gov/kv/nodes/snp/measurements HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json [ [ "string", "AllowedToJoin" ] ]
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/kv/nodes/snp/uvm_endorsements#
Example request:
GET /gov/kv/nodes/snp/uvm_endorsements 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 /gov/kv/proposals#
Example request:
GET /gov/kv/proposals 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 /gov/kv/proposals_info#
Example request:
GET /gov/kv/proposals_info 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 /gov/kv/service/acme_certificates#
Example request:
GET /gov/kv/service/acme_certificates 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 /gov/kv/service/config#
Example request:
GET /gov/kv/service/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 { "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 /gov/kv/service/info#
Example request:
GET /gov/kv/service/info HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "cert": "string", "current_service_create_txid": "string", "previous_service_identity_version": 1, "recovery_count": 1, "service_data": {}, "status": "Opening" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/kv/service/previous_service_identity#
Example request:
GET /gov/kv/service/previous_service_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 string
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/kv/tls/ca_cert_bundles#
Example request:
GET /gov/kv/tls/ca_cert_bundles 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 /gov/kv/users/certs#
Example request:
GET /gov/kv/users/certs 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 /gov/kv/users/info#
Example request:
GET /gov/kv/users/info 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 /gov/members#
This endpoint is deprecated. It is replaced by /gov/kv/members/certs, /gov/kv/members/encryption_public_keys, /gov/kv/members/info endpoints.
Example request:
GET /gov/members 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 /gov/proposals#
Proposed changes to the service pending resolution
Example request:
GET /gov/proposals 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" } }
- POST /gov/proposals#
Submit a proposed change to the service
Example request:
POST /gov/proposals HTTP/1.1 Host: example.com Content-Type: application/json { "actions": [ { "args": {}, "name": "string" } ] }
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "ballot_count": 1, "failure": { "reason": "string", "trace": "string" }, "proposal_id": "string", "proposer_id": "string", "state": "Open", "vote_failures": {}, "votes": {} }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/proposals/{proposal_id}#
Information about a proposed change to the service
- Parameters:
proposal_id (string) –
Example request:
GET /gov/proposals/{proposal_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 { "ballots": {}, "failure": { "reason": "string", "trace": "string" }, "final_votes": {}, "proposer_id": "string", "state": "Open", "vote_failures": {} }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/proposals/{proposal_id}/actions#
Actions contained in a proposed change to the service
- Parameters:
proposal_id (string) –
Example request:
GET /gov/proposals/{proposal_id}/actions HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "actions": [ { "args": {}, "name": "string" } ] }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- POST /gov/proposals/{proposal_id}/ballots#
Ballots submitted against a proposed change to the service
- Parameters:
proposal_id (string) –
Example request:
POST /gov/proposals/{proposal_id}/ballots HTTP/1.1 Host: example.com Content-Type: application/json { "ballot": "string" }
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "ballot_count": 1, "failure": { "reason": "string", "trace": "string" }, "proposal_id": "string", "proposer_id": "string", "state": "Open", "vote_failures": {}, "votes": {} }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/proposals/{proposal_id}/ballots/{member_id}#
Ballot for a given member about a proposed change to the service
- Parameters:
proposal_id (string) –
member_id (string) –
Example request:
GET /gov/proposals/{proposal_id}/ballots/{member_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 { "ballot": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- POST /gov/proposals/{proposal_id}/withdraw#
Withdraw a proposed change to the service
- Parameters:
proposal_id (string) –
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "ballots": {}, "failure": { "reason": "string", "trace": "string" }, "final_votes": {}, "proposer_id": "string", "state": "Open", "vote_failures": {} }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/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 /gov/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" } }
A member’s recovery share
Example request:
GET /gov/recovery_share HTTP/1.1 Host: example.com
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "encrypted_share": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
Provide a recovery share for the purpose of completing a service recovery
Example request:
POST /gov/recovery_share HTTP/1.1 Host: example.com Content-Type: application/json { "share": "string" }
- Status Codes:
200 OK –
Default response description
Example response:
HTTP/1.1 200 OK Content-Type: application/json { "message": "string" }
default –
An error occurred
Example response:
HTTP/1.1 default - Content-Type: application/json { "error": { "code": "string", "message": "string" } }
- GET /gov/tx#
Current status of a transaction
Possible statuses returned are Unknown, Pending, Committed or Invalid.
- Query Parameters:
transaction_id (string) – (Required)
Example request:
GET /gov/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" } }