[DeFacto-001/2] Factom Open API – Sprint 2 (Admin API, Web UI, callbacks)

Update #1
Grant completion:

What's ready:
  1. Refactored Open API config
  2. Implemented API server restart
  3. Implemented UI skeleton with webpack & assets mapper
  4. Designed UI using React
  5. Implemented Admin API calls group with separate admin authorization
  6. Explored different authorization methods & security issues of different token storage methods
  7. Implemented JWT authorization for Admin with storing access token in HTTP-only cookie
  8. Implemented API calls for user management

What's next:
  1. Open API 1.1.0 release with Admin API & UI (scheduled on 22.07-04.08)
  2. Open API 1.2.0 release with Callbacks (scheduled on 19.08-01.09)
Last edited:
Update #2
  1. Admin API calls implemented
    1. GET /queue — Get all unprocessed writing tasks & tasks processed within last 1 hour
    2. DELETE /queue — Manual delete task from queue
    3. GET /users — Get all API users
    4. POST /users — Create new API users
    5. DELETE /users — Delete API user
    6. PUT /users/:id — Update API user
    7. POST /user/rotate — Rotate API key for user
  2. Finished UI for user management
  3. Finished UI for queue monitoring & management (+ queue monitor is updating in realtime)
  4. Echo REST API lib is updated to latest version (4.1.6), some bugs fixed (included the minor issue we found)
We made few videos of live interaction with Admin UI:

1. User management

2. Queue monitoring
Last edited:
Factom Open API 1.1.0 released
We are pleased to announce next version of Factom Open API.

What's new:
  1. Admin API endpoints
  2. Admin UI built with React
    1. API Server settings
    2. User management
    3. Queue monitor
  3. Random EC address generation
  4. EC address funding via store
  • Minor bugs fixed
  • Undercover DB functions improvements / refactoring
  • DB connection status monitor
  • Moved to new version of Echo framework
  • Moved to new version of Factom lib
  • You can now run Open API without EC wallet at all (for reading entries, e.g.)
Screenshots of Admin UI are in the attachment.
More cool stuff for Open API is coming in the development Sprint 3 :cool:


Factom Open API 1.2.0 released
We are pleased to announce next version of Factom Open API.

What's new since version 1.1.0:
  1. ver. 1.1.1
    1. Added getUser into Admin API
    2. Clean code
  2. ver 1.1.2
    1. Fixed bug with token rotation (Admin API)
    2. Fixed availability of embedded documentation
    3. Minor UI improvements
  3. ver 1.2.0
    1. Callbacks for new chains/entries
    2. Security fix in project dependencies
Callbacks are registered with query param while creating chain or entry:

Open API sends callbacks twice – when chain/entry is in processing state (sent to blockchain) & then when it is in completed state (included into Factom DBlock).