About EmerAPI

EmerAPI - is a project of instruments’ development that simplifies the use of functions of Emer Blockchain and services that are built on its basis.

The developers of EmerAPI emanates from 4 principles:

  1. Fast integration without reading documentation. Plugging the functions of blockchain into the application must take no more than 10 minutes for unwary user of the system. Standard scenario of the integration: installation of additional libraries (preferably - by means of environment, from standard repositories). Than it is easy to make everything what you need rather in documentation or simply copying the code from proposed examples.
  2. There is no need in additional software either for the developer nor for the end user.For the performance of all possible functions on the application of the end user, the installation of additional software is not obligatory (including the wallet).
  3. All keys are saved by the client. The server should not store (or have access to) the private information of the user, except the information that is (presented and informed by the user) for the work of payment functions or, for instance, for the creation of earning tokens or for the service’s payment.
  4. The user may not know what is blockchain. API should be oriented on possibility to totally abstract the user from any blockchain oriented functions. The developer should have the opportunity to get alone with a minimum knowledge about blockchain technologies.

All components of EmerAPI are built on the principles of open source code, most of its components have MIT Licence.

Structure of the EmerAPI

EmerAPI includes:

  1. EmerAPI server - is a server application that allows a remote client to plug into the blockchain. Also, it provides the web interface for a several user functions. The server provides 4 types of functions:
    1. Functions publication of a standard Emer node (all functions are available thanks for JSON-RPC protocol and are not required concrete address). While using the system without a server those functions can be done with a local wallet usage.
    2. Additional functions that are aggregating the execution of a many RPC-functions in one time for the optimisation of a number of executions. While using the system without a server those functions can be done with a local wallet usage.
    3. Functions that are connected with an external world and services that are presented on the server only (tokens buying, file storage on the server etc.). Those functions can work when connected to the server only.
    4. Functions that provide the cooperation with the server (authorization of the user, order of the user’s tasks etc.).

    The access to the functions can be realized through any type of interfaces:

    • Graph QL interface (for the WEB application first of all) (realized)
    • Its own protocol on the basis of TCP-IP with in-circuit encryption (is planned for 2019)
    • Its own protocol on the basis of UDP (limited set of functions) (is planned for 2019)
  2. EmerAPI SDK - set of libraries for a different languages of programming that ease the service integration. Libraries receive an access to the blockchain through the server or a standard Emer node. Libraries development is planned for the following languages:
    1. JavaScript- React Native (is planned for 2019)
    2. JavaScript- React (is planned for 2019)
    3. Python (is planned for 2019)
    4. Java (is planned for 2019-2020)
    5. Swift (is planned for 2020)
    6. C# (is planned for 2020)
    7. C++ (is planned for 2020)
    8. Go (is planned for 2021)
  3. EmerAPI Key Keeper - is an application that is built on the basis of EmerAPI. It is developed for a safe storing of a users’ private keys, transaction signing. Also the application can be used as a wallet.
    Program prototype can be downloaded here. The first version is planned for 2019.

Ways of EmerAPI usage

  1. Integration of the blockchain and supporting services for web-applications with the development of each own code.
  2. Integration of the blockchain and supporting services for web-applications with EmerAPI usage.
  3. Integration into mobile applications.
  4. Integration into desktop applications
  5. KeyKeeper usage as a wallet for the end users
© EmerAPI 2019