Create HTTP Admin (internal) API endpoint

Description

We need a way for node operators to get current state of the node, information not available via public API but also information about internals like deploys waiting in the queue or currently executing, or the status of databases.

We already have internal (admin) port on gRPC with propose command. So we need the same for Web API. Also Admin API should not have restrictions e.g. depth for getBlocks or listen for data at name.

What is needed to build the service:

Related Web API PR.
https://github.com/rchain/rchain/pull/2811

For additional improvements of the API (both public and admin) would be to get rid of manual specification of the JSON serializers (encoder/decoder pair) and use circe default implementation for HList.
https://github.com/rchain/rchain/pull/2811#discussion_r355610199

Activity

nutzipper May 10, 2020 at 5:43 PM

If we use dedicated port for it, it should be /api I believe

Tomislav Grospić May 6, 2020 at 11:43 AM

should we have port 40405 for HTTP Admin API?

Also for url I’m not sure is it better to be the same as public /api or maybe /admin or /admin/api?

Done

Details

Assignee

Reporter

Priority

Fix versions

Created May 6, 2020 at 11:39 AM
Updated March 12, 2021 at 4:23 PM
Resolved March 12, 2021 at 4:23 PM