Configuring Bubble as a Source
In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the Bubble option from the list of connectors. Click Next and you’ll be prompted to add your access.1. Add account access
You’ll need to provide your Bubble Data API key and app details. The following configurations are available:- API Key: Your Bubble Data API key (bearer token). You can find it in your Bubble app under Settings > API > Data API. Make sure the Data API is enabled and the key has read access to the data types you want to sync.
-
App Name: Your Bubble app subdomain. For example, if your app URL is
myapp.bubbleapps.io, entermyapp. -
Data Types: A list of Bubble data type names you want to sync. Enter the exact names as they appear in your Bubble database (e.g.,
user,order,product). Each data type will become a separate stream. -
Environment: Choose between
Live(production data) orTest(development data). Defaults tolive. -
Custom Domain (optional): If your Bubble app uses a custom domain instead of the default
bubbleapps.io, enter it here (e.g.,app.example.com). - Start Date (optional): The earliest date from which records will be synced. Only applicable for incremental sync.
-
Discovery Record Sample (optional): Number of records to sample for schema discovery. Increase if some fields are missing from the schema. Defaults to
1000.
2. Select streams
Choose which data streams you want to sync. Each configured data type appears as a separate stream. For faster extractions, select only the streams that are relevant to your analysis. Select the streams and click Next.3. Configure data streams
Customize how you want your data to appear in your catalog. Select the desired layer where the data will be placed, a folder to organize it inside the layer, a name for each table and the type of sync.- Layer: choose between the existing layers on your catalog. This is where you will find your new extracted tables as the extraction runs successfully.
- Folder: a folder can be created inside the selected layer to group all tables being created from this new data source.
- Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix to all tables at once and make this process faster!
- Sync Type: you can choose between INCREMENTAL and FULL_TABLE.
- Incremental: every time the extraction happens, only new or modified records are fetched, based on the
modified_datefield. - Full table: every time the extraction happens, the current state of all records is fetched.
- Incremental: every time the extraction happens, only new or modified records are fetched, based on the
4. Configure data source
Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. Once you are ready, click Next to finalize the setup.5. Check your new source
You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.Streams and Fields
Streams are dynamically created based on the data types you configure. During extraction, the connector samples records (up to the configuredDiscovery Record Sample) to automatically discover your schema and infer field types.
All field names are sanitized during extraction: they are lowercased, spaces and special characters are replaced with underscores, and accents are removed (e.g., My Field! becomes my_field).
Every Bubble data type includes the following base fields:
Base Fields (all streams)
Base Fields (all streams)
| Field | Type | Description |
|---|---|---|
id | String | Unique record identifier |
created_date | Datetime | When the record was created |
modified_date | Datetime | When the record was last modified |
created_by | String | User who created the record |
slug | String | URL-friendly identifier |
Since Bubble data types are user-defined, the specific fields available depend on your application’s database schema. If you notice missing fields, try increasing the Discovery Record Sample configuration.
Implementation Notes
API Limits & Pagination
- 50k Record Limit: The Bubble Data API has a limit of 50,000 results per query. This connector automatically bypasses this limit by using date-windowed pagination based on the
created_datefield, splitting queries into smaller time windows when approaching the limit. - Schema Discovery: Since Bubble lacks a descriptive metadata endpoint, the connector samples records to discover available fields. This involves an initial API scan before extraction begins.
Skills for agents
Download Bubble skills file
Bubble connector documentation as plain markdown, for use in AI agent contexts.