Skip to content

Cookie preferences

We use cookies for our own analytics, to see how our campaigns perform and, if you allow it, to load content from other services such as the Google site search. We never sell your data. Necessary cookies keep the site working and cannot be switched off. See our Cookie Policy for details and our Privacy Policy for how we handle personal data.

Security, load balancing and remembering your cookie choice.

Show us which pages people read, how they find the site and where they get stuck, so we can improve it (Google Analytics, Microsoft Clarity).

Show us which of our ad campaigns bring visitors to the site and remember the campaign or partner link you arrived from (Google Ads, LinkedIn, Meta, partner program). We do not use these cookies to build advertising profiles.

Load the site search from Google when you use it. Google sets its own cookies and shows ads in the search results.

© 2026 The ThingsBoard Authors
22.5k Try for free

ThingsBoard Cloud

Choose your data region

Your data stays in the region you choose, for residency and compliance. No credit card required.

Rather run it yourself? Install on your own servers

Deliver a solution to a customer

A quick build is for you, the Tenant Administrator. It has no customers, roles, or users. When a customer must see the data, tell the agent to add them. The agent adds the customer, the roles, and the users, and makes one dashboard for each role. This guide shows how.

  • A project folder with a working profile. See Getting Started.
  • A solution in the project. In this guide, the solution is office-climate, a quick build of the office sensor from Getting Started.
  1. Start the agent in the project folder.

  2. Send a prompt that names the customer and the roles:

    In office-climate, add the customer Acme Offices. Add two roles for Acme: an operator who can acknowledge and clear alarms, and a viewer who can only look. Add one user for each role.
  3. If the agent asks Just these items, or full solution treatment?, select Full solution treatment. A new role changes the dashboards, so the agent must see the full design.

  4. Check the plan. The agent shows the changes and asks Does this plan look right? Select Approve and apply, or select Revise the plan and describe the change.

    The agent then writes the files. Each step is a git commit.

  5. Answer the deploy question. Select Deploy only, Deploy and stream live data to see live values, or Not now to deploy later. After a deployment, the agent shows the dashboard links.

To make more changes later, describe them in the same way. The agent changes only what is affected and keeps the IDs of the existing entities.

A quick build uses the built-in Tenant Administrator. When you add the first customer, user group, or role, the agent writes the full role design:

Part What the agent does
Customers Adds a customer entity for each customer that you name.
Roles Adds one tenant-level administrator role with full access (CRUD), and the roles that you asked for. An operator role usually gets read and update access (RU). A view-only role gets read access (R).
User groups Adds one user group for each role. A customer-level user group belongs to the customer.
Users Adds one user for each role, unless you ask for more.
Entity groups Adds the groups that connect the roles to the devices, assets, and dashboards.
Dashboards Moves the existing dashboard to the new administrator role. It keeps its screens. Each other role gets its own dashboard.

The agent never makes a second administrator dashboard. Your first dashboard becomes the administrator dashboard.

A customer-level dashboard opens on the customer’s own data. The agent adds management actions only for roles whose permissions allow them. A view-only role gets no actions.

The existing devices move to the new customer: the agent changes their owner and does not add new demo devices. After the push, the devices appear under the customer in ThingsBoard.

The agent records the design in the design/ folder of the solution. Push ignores this folder. Open these files to check the result before you deploy:

  • design/architecture-overview.md: The Customer Groups table lists the customers. The User Groups and Roles table lists each role with its scope (Tenant or the customer) and its permissions (CRUD, RU, or R).
  • design/dashboards.json: Each dashboard has an assignedTo field with the role that uses it.

To change the design, tell the agent what is wrong, like this:

The viewer must not see the alarm table. Remove it from the viewer dashboard.

If you selected Not now at the deploy question, deploy later from the project folder:

Terminal window
tb push office-climate --run-tasks

The command creates the new entities and updates the existing ones. It does not duplicate entities. When it completes, it shows the dashboard links.

The agent gives each user a demo email address, like anna.smith@acme-offices.com. Nobody can receive mail at this address. To give a real person access, tell the agent the real address before you deploy:

In office-climate, change the email of the Acme operator user to jane@acme.com.

After the deploy, activate the user in ThingsBoard:

  1. Go to Customers & users > Users and open the user.

  2. Click Display activation link, copy the link, and send it to the person. Or click Resend activation to send the link by mail. Mail needs a configured mail server.

  3. Tell the person to open the link and create a password.

The person can now sign in. They see only the entities of their customer and the dashboards of their role.

To check what a role sees, open the user and click Login as Customer User. For details, see these platform pages: