Instructions
Overview
XLSX Export Pro helps you export Bubble data to Excel with better formatting and more control.
The plugin works through 3 actions:
Convert List to JSON
Converts a Bubble list of Things into a JSON string.
JSON to XLSX
Converts that JSON into an Excel file (.xlsx) and downloads it in the browser.
Get Field Slugs
Lists the internal field slugs of a Bubble data type, which is especially useful when fields were renamed.
Plugin Setting
Configure this in Plugin Editor → Settings:
Setting Type Required Description
api_token text No Bubble Data API token. Required only when using Data API mode, which improves support for Option Sets and related Things.
Where to get the token
Go to:
Settings → API → Generate a new API token
Action 1 — Convert List to JSON
Type: Server-side action
This action converts a Bubble list into a JSON string.
It supports 2 modes:
Data API mode → recommended
Internal mode → fallback
Inputs
Property Type Required Description
list list of Things Yes The Bubble list you want to export
fields text Yes Comma-separated list of fields to include
data_type text No API type name of the Bubble data type. Required for Data API mode
related_fields text No Used to resolve fields from related Things
Outputs
Output Type Description
json text Generated JSON string
count number Number of records returned
error text Error message, if any
How the 2 modes work
1) Data API mode — Recommended
This mode is used when:
api_token is configured in plugin settings
data_type is provided in the action
Why this mode is better
Uses the current field display names
Avoids slug issues caused by renamed fields
Resolves Option Set values correctly
Supports related fields through related_fields
Requirements
To use this mode, make sure:
Data API is enabled in Bubble
The main data type is enabled in Settings → API
Any related data types are also enabled
Privacy Rules allow API access to the data
2) Internal mode — Fallback
This mode is used when api_token or data_type is missing.
It relies on Bubble’s internal methods such as listProperties() and .get().
Limitations of Internal mode
Renamed fields may require the original slug
Option Set fields may return null
Related Things usually return only the Unique ID
fields syntax
Basic example
document, name, status_serv, email
Renamed fields (Internal mode only)
If a field was renamed in Bubble, you may need to use the original slug and define a display label.
Example:
status_atd:Status Reserva, name, document
Meaning:
status_atd = internal slug used to fetch the value
Status Reserva = key name that will appear in the JSON output
related_fields syntax
Use this when a field points to another data type and you want a sub-field from that related record.
Example:
oficina>Oficina>nome, cliente>client>name
Format:
field_name>API_Type_Name>field_to_return
Explanation
field_name → field in the main data type
API_Type_Name → related type name as defined in Bubble API settings
field_to_return → field you want from the related Thing
Multiple mappings must be separated by commas.
Examples
Simple export (Data API mode)
data_type: test_table
fields: document, name, status_serv, status_res, email
Export with related fields
data_type: test_table
fields: document, name, status_serv, status_res, oficina
related_fields: oficina>Oficina>nome
Export using renamed field slug (Internal mode)
fields: document, name, status_atd:status_res, oficina
Action 2 — JSON to XLSX
Type: Client-side action
This action takes a JSON string and converts it into a downloadable Excel file.
It supports 2 output modes:
styled → custom visual formatting
table → native Excel table formatting
Required input
Property Type Aliases Description
jsonData text json_data, jsondata, json, data, dados JSON string to export
File and sheet options
Property Type Default Aliases Description
fileName text export file_name, filename Download file name, without .xlsx
sheetName text Dados sheet_name, sheetname Worksheet tab name
Output mode
Property Type Default Aliases Description
outputMode text styled output_mode, outputmode, mode, modo styled for custom formatting, table for native Excel table
Column configuration
Property Type Aliases Description
columnOrder text column_order, columnorder Custom column order
excludeColumns text exclude_columns, excludecolumns Columns to remove from export
renameColumns text rename_columns, renamecolumns JSON object for renaming headers
headerFormat text header_format, headerformat Header text style
autoFormat boolean auto_format, autoformat Automatically formats common data types
Example for renameColumns
{"old_name": "New Name"}
Available headerFormat values
titlecase
uppercase
lowercase
original
Styled mode options
Use these when outputMode = styled.
Property Type Default Aliases Description
theme text professional tema Predefined visual theme
customHeaderColor text — custom_header_color, headerColor, header_color Header background color
customHeaderFontColor text — custom_header_font_color, headerFontColor, header_font_color Header text color
customEvenRowColor text — custom_even_row_color, evenRowColor, even_row_color Even row color
customOddRowColor text — custom_odd_row_color, oddRowColor, odd_row_color Odd row color
Available themes
professional
modern
minimal
vibrant
corporate
Table mode options
Use these when outputMode = table.
Property Type Default Aliases Description
tableStyle text TableStyleMedium2 table_style, tablestyle, estilo_tabela Excel table style
showTotals boolean false show_totals, showtotals, mostrar_totais Shows totals row
totalsColumns text — totals_columns, totalscolumns, colunas_totais Total function per column
autoTotals boolean false auto_totals, autototals Automatically totals numeric columns
showRowStripes boolean true show_row_stripes, showrowstripes Alternating row colors
showColumnStripes boolean false show_column_stripes Alternating column colors
showFirstColumn boolean false show_first_column Highlights first column
showLastColumn boolean false show_last_column Highlights last column
Total functions for totalsColumns
Function PT-BR alias Description
sum soma Sum
average media Average
count contar, contagem Count
countNums contarnums Count numeric values only
min minimo Minimum
max maximo Maximum
stdDev desvpad Standard deviation
var variancia Variance
Available Excel table styles
Light
TableStyleLight1 through TableStyleLight14
Medium
TableStyleMedium1 through TableStyleMedium14
Dark
TableStyleDark1 through TableStyleDark11
Published states
State Type Description
export_status text success or error
export_filename text Final exported file name
export_row_count number Number of exported rows
export_mode text styled or table
export_error text Error message on failure
Auto-format behavior
When autoFormat = true, the plugin automatically detects and formats common values.
Data type Detection Applied format
CPF 11 digits 000.000.000-00
CNPJ 14 digits 00.000.000/0000-00
Phone 10–11 digits (00) 00000-0000
CEP 8 digits 00000-000
RG 9 digits 00.000.000-0
Currency Numeric values in currency-like columns R$ #,##0.00
Date ISO 8601 dd/mm/yyyy
DateTime ISO 8601 with time dd/mm/yyyy hh:mm:ss
Integer Whole number #,##0
Decimal Decimal number #,##0.00
Limits
Item Limit
Maximum rows 100,000
Column width 8 to 60
Sheet name length 31 characters
File name length 200 characters
Action 3 — Get Field Slugs
Type: Server-side action
This is a utility action that lists the internal field slugs of a data type.
It is mainly useful when:
a field was renamed in Bubble
a field is returning null
you need to identify the real internal slug used by Bubble
Input
Property Type Required Description
list list of Things Yes Same list used in Convert List to JSON
Outputs
Output Type Description
slugs text Formatted list of field slugs and related metadata
count number Number of fields found
error text Error message, if any
Example output
document_text | type: text | use as: document
name_text | type: text | use as: name
status_atd_option_status_reservation | type: Option Set | use as: status_atd | related to: status_reservation
status_serv_option_status_service | type: Option Set | use as: status_serv | related to: status_service
oficina_custom_cofiguracao | type: Related Thing | use as: oficina | related to: cofiguracao | sub-fields: cidade_text, cnpj_text, nome__text...
Best use for this action
Use Get Field Slugs during setup or debugging.
Once you identify the correct slug names, use them in the fields property of Convert List to JSON.
This action is generally not needed in production workflows.
Setup Guide
Step 1 — Install the plugin
Add XLSX Export Pro to your Bubble app.
Step 2 — Configure the API token
Recommended when you want better compatibility with:
Option Sets
renamed fields
related Things
Steps
Go to Settings → API
Enable Data API
Select the data types you want to expose
Select related data types too, when needed
Generate a new API token
Paste it into Plugin Settings → api_token
Step 3 — Review Privacy Rules
Make sure your privacy rules allow API access.
Important checks
Main data type must allow field access
Related data types must also allow field access
Privacy rules must not block the API from reading the records you want to export
Step 4 — Build the workflow
Example:
Button Click
|
+--> Step 1: Convert List to JSON
| list: Search for [YourType]
| fields: document, name, status_serv, oficina
| data_type: your_type_name
| related_fields: oficina>Oficina>nome
|
+--> Step 2: JSON to XLSX
jsonData: Result of Step 1's json
fileName: my_export
theme: professional
Troubleshooting
Problem: fields are returning null
Possible fixes
Run Get Field Slugs
Check whether the field was renamed
In Internal mode, use the original slug with label mapping:
original_slug:Display Name
Prefer Data API mode when possible
Problem: Option Set fields are returning null
Use Data API mode.
That means:
configure api_token
provide data_type
This mode resolves Option Set display values more reliably.
Problem: related fields return only Unique ID
This usually means the related field was not fully resolved.
Check the following
The related data type is enabled in Settings → API
Privacy rules allow API access
related_fields is configured correctly
Example:
oficina>Oficina>nome
Problem: extra rows with null values
Usually this comes from the input list, not from the Excel generation itself.
Check
whether the Bubble search is properly filtered
whether the list contains only the expected records
In Data API mode, the plugin tries to match the exported result to the exact Bubble list you provided.
Problem: “Type not found” in related fields
Verify these points
The API type name matches exactly what appears in Settings → API
Case matches exactly
The related type is actually enabled in the Data API
Privacy Rules are not blocking access
A good trick is:
uncheck the type
save
check it again
save again
Recommended workflow
For most cases, this is the safest approach:
Enable Data API
Configure api_token
Use Convert List to JSON
Pass the result into JSON to XLSX
Use Get Field Slugs only when debugging renamed or problematic fields
Quick summary
Use:
Convert List to JSON to prepare the data
JSON to XLSX to generate the Excel file
Get Field Slugs to debug field names
For better reliability, prefer Data API mode over Internal mode.