Lisk is joining the Optimism Superchain ecosystem in 2024! Learn more about our planned migration to Ethereum, and what it means for our community, here

Introducing Lisk Service

After completing the development process, we are happy to announce that a new product is joining the Lisk ecosystem - Lisk Service. Lisk Service is an essential part of the Lisk product line-up, as it offers the possibility to access and browse blockchain data, by providing accessible and powerful new API calls.

With much greater flexibility you can access information about regular accounts or delegates. Furthermore, it is possible to inspect blocks and transactions with the full spectrum of metadata and retrieve useful network statistics in real-time.

17 Sep 2020

introducing-lisk-service-MAIN@2x.png

Lisk Service acts as a service layer, meaning it is a proxy between blockchain data and user interfaces. Whilst the Lisk SDK is focused on providing a developer with important blockchain functionalities, such as a public key infrastructure or the consensus algorithm, Lisk Service comes into play when blockchain data has to be provided fast and efficient to user interfaces.

Lisk Service is fully written in JavaScript and runs on the Node.js V8 virtual machine. It's based on an extensible microservices architecture and combined with a high-performance database, which makes providing data in an uncomplicated manner effortless. Each microservice is focused on providing one particular functionality and data is always served in JSON format and exposed by a public RESTful API.

architecture_1_6ba7732b14_.png

Easily Accessible Blockchain Data

Lisk Service can be used with any blockchain application built with the Lisk SDK and following the Lisk protocol. The key principle is to provide services and features that are complementary to the blockchain application.

Internally, we use it to provide our user interfaces blockchain data, specifically all blockchain data persisting within Lisk Core to Lisk Desktop and Lisk Mobile. Lisk Service makes it possible to access real-time blockchain data in a similar approach to the regular Lisk Core API. However, to keep the Lisk SDK flexible and lean, we minimized it's API capabilities which is mirrored on Lisk Core. That's where Lisk Service comes into play which provides developers with much more powerful capabilities.

Lisk Service API vs Lisk Core API

The major benefit of using Lisk Service is to gain easier access to blockchain data, while simultaneously have more powerful options.

With the Lisk Service API you can retrieve the full scope of information, such as blocks and transaction details, account data and activity, delegate voting statistics or network peers combined with geolocation data. Providing a bigger set of API calls than the Lisk Core API. For blockchain application developers it's a more simple approach to expand the blockchain data they need to feed to their user interfaces.

Comparison of Lisk Core and Lisk Service

FeatureLisk SDK/Core APILisk Service API
Main purposeControl of a single nodeHolistic view on the whole network
Account metadata retrievalLimited, based on related blockchain dataWith all metadata, combined with additional non-blockchain data sources
SearchingOn account, block, or delegate basisSearch amongst all of these entities is completed in one request: blocks, accounts, transactions, delegates.
Network node statisticsNoneReal-time
Network transaction statsNoneDaily- and monthly-basis
Timestamp resolutionLisk epoch time basedUNIX timestamp-based
Listing transactionsCurrently possible, in the future version limited to blocksFully supported interminably
Network nodesData from the peer-to-peer layerPeer-to-peer data with geolocation

Questions and Answers

Where Is Lisk Service Used?

sidebar-screen_1.png

Lisk Desktop is currently in the process to fully adopt Lisk Service. Only the most essential blockchain data is requested directly from Lisk Core, as with future versions of Lisk Core, Lisk Service will be the only feasible way to access blockchain data and feed them to user interfaces.

Can I Deploy My Own Instance?

Yes, you can! Check out the official documentation to discover how easy the installation is. With Docker, it only takes a few minutes to make it operational. It is not necessary to install a separate instance of Lisk Core, saving you a lot of disk space and memory.

Can I Make Any Adjustments?

Yes, it’s open source! The project is well-structured and well-organized, which makes it a perfect base for your custom features and new API endpoints.

Moreover, the project itself is based on microservices and you can always create your own one from our template. This in turn makes your product highly customizable. If you create a custom transaction with the Lisk SDK, you may want to add support for it in your own Lisk Service instance.

Does It Support Custom Blockchains Built with the Lisk SDK?

All basic features are always supported. Anything that is not a part of the vanilla Lisk SDK, such as custom transactions, needs to be added as a new microservice to your Lisk Service instance.

Conclusion

In summary, Lisk Service is a new product for developers that can make Lisk and blockchain application user interfaces much more proficient and feature-rich. Giving developers the option to design their blockchain applications with the user in mind.

Learn more about Lisk Service on the official documentation page. For further questions and comments about Lisk Service, we will host an AMA on Lisk.chat with Michał Tuleja (Lead Backend Developer), on Monday, September the 28th at 4 pm CEST.

Lisk is on a mission to enable you to create decentralized, efficient, and transparent blockchain applications. Join us: