This guide provides information on the Web SDK which enables you to

If you have previously been working with older versions you might be interested in some short information on the evolution of the UI stack (Migration history) to better understand how and why it is now designed the way it is.

Important: Web SDK for Angular JS is deprecated. Therefore, its documentation is no longer provided here. As all Cumulocity IoT REST APIs are backward compatible, Angular JS applications will still continue to work.

Web SDK for plugins is based on Angular JS and is also deprecated. For Angular-based development, we recommend you to implement native Angular modules. The documentation is still available for migration purposes, i.e. if you want to integrate an already developed plugin into the Web SDK for Angular. You can import plugins to Angular as described in ngx-components > Extension points.


The Web SDK consists of the following packages deployed to npm in the scope @c8y and available under Apache 2.0 license:

These packages depend on each other from top to bottom. While the @c8y/client is a very low-level API interface with nearly no dependencies, the @c8y/apps provide feature rich applications by including @c8y/ngx-components and @c8y/client.

The goal of these splittings is to provide the right package for every use case, e.g. if you want to build a small application with React you could use the @c8y/client to do the API interaction. If you need a brandable feature rich application which is close to our Cockpit or Device Management application you could use @c8y/ngx-components together with @c8y/style.

The following is a list which explains the use cases of each package.

You can find all our packages on npm here. To quickly get you bootstrapped with these packages we have built an CLI tool called @c8y/cli. Next, we will showcase how to get started with the @c8y/cli command line tool.