Full App Embed > Embed Builder

Configure and preview the full app embed, then copy the code

The embed builder is where you set up Full App Embed. It shows a live preview of what your customers will see and generates the backend and frontend code for your settings.


Open the builder

1

Open a dashboard

Go to Dashboard and open any dashboard in the database you want to embed.

2

Click Embed

Click Embed at the top right. A window opens with two options: Single Dashboard Embed and Full App Embed.

3

Choose Full App Embed

Click Configure full app embed. If your plan doesn't include Full App Embedding, click Preview full app embed to try it with your data.

The builder opens with a live preview on the left and Embed Settings on the right. The dashboard you came from is already selected as a shared dashboard.

Changes apply when you click Apply:

Each setting opens a panel. Your changes only take effect when you click Apply. Going back without applying discards them. The preview and the code update after you apply.


Preview as user

Enter a user ID to preview the embed as that user. It's sent as userIdentifier and works exactly like the IDs your backend sends: each ID gets its own saved queries, folders and dashboards. Press Enter or click outside the field to update the preview.

On plans without Full App Embedding, this field is replaced by a single sample user for previews.


Shared dashboards

Choose the dashboards every customer sees under Shared Dashboards. Use the search box to find dashboards, or Select all.

Customers can filter, drill into and export shared dashboards, but can't edit them. If you use row-level security, each customer sees them filtered to their own rows.


Permissions

Control what customers can create and which tools they get.

What customers can create

OptionWhat it does
Create and save queriesCustomers can build queries and keep them under My Queries.
Create dashboardsCustomers can build their own dashboards under My Dashboards.

Browse data tools

ToolWhat it does
AI assistantAsk questions in plain English and get tables and charts.
SQL editorWrite and run SQL queries.
Query builderBuild queries visually without SQL.

If no shared dashboards are selected and nothing can be created, the builder warns you that the embed would be empty.


Row-level security

Pick an RLS group to limit each customer to their own rows. Leave it empty to give customers full access to the database.

After you pick a group, the builder lists the attributes the group's rules filter on, such as an account ID. Enter values to preview the embed as a specific customer. In production, your backend sends these values for each user. Click View group to open the group's settings.

Row-level security needs a plan that includes it. See Row-level Security for how it works with the embed.


Allowed domains

List the sites allowed to load the embed, such as app.example.com. Leave the list empty to allow any site.

  • Domains are saved to the database, not the token, and apply to every token generated after you click Apply.
  • Enter the exact host. Add each subdomain separately; wildcards like *.example.com aren't supported. Include the port for local testing, for example localhost:3000.
  • Draxlr is always allowed, so the builder preview keeps working.


Colors

OptionWhat it does
Background colorThe embed's page background. Draxlr picks a light or dark theme from this color.
Card background colorThe background of dashboard cards.
Primary colorYour brand color, used for buttons, active states and highlights in place of Draxlr's green. Lighter shades are generated automatically.

Exports

OptionWhat it does
PDF exportDownload a dashboard as a PDF.
Excel exportDownload a dashboard's data as an Excel file.
CSV exportDownload data from individual elements. In the full app embed, this also controls Excel and image downloads from cards and the query editor's export.

Copy the code

The code panel at the bottom updates with your settings.

Backend: a curl request to the Generate Token API with your API key, API secret and all the options above. Call it from your server when a signed-in user opens the page, and replace userIdentifier with that user's ID.

Frontend: the HTML snippet that renders the embed. Replace TOKEN_FROM_YOUR_BACKEND with the token from the API.

<div
  class="draxlr-embed"
  data-token="TOKEN_FROM_YOUR_BACKEND"
  data-height="1000px"
></div>
<script src="https://app.draxlr.com/embed-full-app.js"></script>
AttributeDefaultDescription
data-tokenRequiredThe token from the Generate Token API
data-height1000pxHeight of the embed
data-width100%Width of the embed

Generate a fresh token for each visit:

Tokens last 24 hours. Generate a new one each time the embed loads, so users always get your latest settings.

On plans without Full App Embedding, the code panel is hidden and replaced with an upgrade option.