Reference · Tools
Adalo
Perform CRUD operations on Adalo application collection records (rows)
The Adalo node lets you create, read, update, and delete records in any collection inside your Adalo no-code app. Use it to sync form submissions into your app's database, trigger record updates from external events, or pull live app data into downstream workflow steps. If you manage app data in Adalo and want to automate around it, this node is the direct path.
- Node type
- Action
- Parameters
- 10
- Outputs
- Output, Error
- Credentials
- Adalo API
Adalo
Perform CRUD operations on Adalo collection records
Overview
Adalo is a no-code platform for building mobile and web apps. Its Collections API provides programmatic access to app data. This tool creates, reads, updates, and deletes records (rows) in Adalo collections. Collections have dynamic schemas defined by the user in the Adalo app builder. The API is available on paid Adalo plans only. All operations are scoped to a single Adalo app (determined by appId in credentials).
Category: Data & Storage
Tool Name: adalo
Version: 1
Appearance: Icon: lucide-Smartphone | Color: #7C4DFF
Node Type
Action — processes input items and produces output
Input / Output
| Direction | Port(s) |
|---|---|
| Input | Input |
| Output | Output, Error |
Credentials
This tool requires Adalo API credentials. See the Credentials Guide for setup instructions.
Resources
| Resource | Value |
|---|---|
| Collection | collection |
Operations
| Operation | Value | Description |
|---|---|---|
| Create | create | Create a row |
| Delete | delete | Delete a row |
| Get | get | Retrieve a row |
| Get Many | getAll | Retrieve many rows |
| Update | update | Update a row |
Parameters
Collection: Create
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Collection ID | string | Yes | — | The ID of the Adalo collection. Open your Adalo application and click on the three buttons beside the collection name, then select API Documentation. You can find information about app collections at https://app.adalo.com/apps/<your-app-id>/api-docs |
| Data to Send | options | No | defineBelow | Whether to insert the input data this node receives in the new row. |
Options: autoMapInputData (use when node input properties match destination column names), defineBelow (set the value for each destination column) | ||||
| Inputs to Ignore | string | No | — | List of input properties to avoid sending, separated by commas. Leave empty to send all properties. (shown when Data to Send is autoMapInputData) |
| Fields to Send | fixedCollection | No | {} | Field must be defined in the collection, otherwise it will be ignored. If a field defined in the collection is not set here, it will be set to null. (shown when Data to Send is defineBelow) |
| — Field ID | string | No | — | The field ID from the Adalo collection schema. |
| — Field Value | string | No | — | The value to set for this field. |
Collection: Delete
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Collection ID | string | Yes | — | The ID of the Adalo collection. Open your Adalo application and click on the three buttons beside the collection name, then select API Documentation. You can find information about app collections at https://app.adalo.com/apps/<your-app-id>/api-docs |
| Row ID | string | Yes | — | The ID of the row to operate on. |
Collection: Get
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Collection ID | string | Yes | — | The ID of the Adalo collection. Open your Adalo application and click on the three buttons beside the collection name, then select API Documentation. You can find information about app collections at https://app.adalo.com/apps/<your-app-id>/api-docs |
| Row ID | string | Yes | — | The ID of the row to operate on. |
Collection: Get Many
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Collection ID | string | Yes | — | The ID of the Adalo collection. Open your Adalo application and click on the three buttons beside the collection name, then select API Documentation. You can find information about app collections at https://app.adalo.com/apps/<your-app-id>/api-docs |
| Return All | boolean | No | false | Whether to return all results or only up to a given limit. |
| Limit | number | No | 100 | Max number of results to return. Accepts 1–100. (shown when Return All is false) |
Collection: Update
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Collection ID | string | Yes | — | The ID of the Adalo collection. Open your Adalo application and click on the three buttons beside the collection name, then select API Documentation. You can find information about app collections at https://app.adalo.com/apps/<your-app-id>/api-docs |
| Row ID | string | Yes | — | The ID of the row to operate on. |
| Data to Send | options | No | defineBelow | Whether to insert the input data this node receives in the new row. |
Options: autoMapInputData (use when node input properties match destination column names), defineBelow (set the value for each destination column) | ||||
| Inputs to Ignore | string | No | — | List of input properties to avoid sending, separated by commas. Leave empty to send all properties. (shown when Data to Send is autoMapInputData) |
| Fields to Send | fixedCollection | No | {} | Field must be defined in the collection, otherwise it will be ignored. If a field defined in the collection is not set here, it will be set to null. (shown when Data to Send is defineBelow) |
| — Field ID | string | No | — | The field ID from the Adalo collection schema. |
| — Field Value | string | No | — | The value to set for this field. |
All Operations
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Max Concurrency | number | No | 10 | Maximum number of items to process concurrently. Accepts 1–100. |
Output Data
The Adalo record returned by the API is merged onto the input item’s JSON, so the fields you started with stay available alongside the record’s columns. Binary data on the input item is forwarded unchanged.
| Operation | Output |
|---|---|
create | One item per input item, carrying the newly created record (including the id Adalo assigned). |
get | One item per input item, carrying the requested record. |
update | One item per input item, carrying the updated record. |
delete | One item per input item, carrying success: true. |
getAll | Fans out — one output item per record returned. A collection with no matching records still emits one item, which is the input item passed through unchanged. |
Because a record’s columns are merged at the top level, reference them directly downstream — {{ $json.id }}, {{ $json.email }} — using the field names defined in your Adalo collection schema.
Usage Examples
- Create a new record in an Adalo collection
- Retrieve all records from an Adalo collection
- Update a record in an Adalo collection by row ID
- Delete a record from an Adalo collection
Example Configuration
Create a row, mapping each column explicitly:
{
"type": "adalo",
"parameters": {
"resource": "collection",
"operation": "create",
"collectionId": "t_abc123",
"dataToSend": "defineBelow",
"fieldsUi": {
"fieldValues": [
{ "fieldId": "Name", "fieldValue": "{{ $json.name }}" },
{ "fieldId": "Email", "fieldValue": "{{ $json.email }}" },
{ "fieldId": "Status", "fieldValue": "pending" }
]
}
}
}
Create a row from the incoming item’s own properties, dropping the ones Adalo manages:
{
"type": "adalo",
"parameters": {
"resource": "collection",
"operation": "create",
"collectionId": "t_abc123",
"dataToSend": "autoMapInputData",
"inputsToIgnore": "id,createdAt,updatedAt"
}
}
Fetch a single row by ID:
{
"type": "adalo",
"parameters": {
"resource": "collection",
"operation": "get",
"collectionId": "t_abc123",
"rowId": "{{ $json.recordId }}"
}
}
Read an entire collection, following pagination to the end:
{
"type": "adalo",
"parameters": {
"resource": "collection",
"operation": "getAll",
"collectionId": "t_abc123",
"returnAll": true
}
}
Read the first 50 rows only:
{
"type": "adalo",
"parameters": {
"resource": "collection",
"operation": "getAll",
"collectionId": "t_abc123",
"returnAll": false,
"limit": 50
}
}
Update a row, then delete another:
{
"type": "adalo",
"parameters": {
"resource": "collection",
"operation": "update",
"collectionId": "t_abc123",
"rowId": "{{ $json.recordId }}",
"dataToSend": "defineBelow",
"fieldsUi": {
"fieldValues": [
{ "fieldId": "Status", "fieldValue": "active" }
]
}
}
}
{
"type": "adalo",
"parameters": {
"resource": "collection",
"operation": "delete",
"collectionId": "t_abc123",
"rowId": "{{ $json.recordId }}"
}
}
Error Handling
| Mode | Behavior |
|---|---|
| stop | Halts workflow on first error |
| continue | Skips failed items, passes successful ones through |
| errorPort | Routes failed items to Error output port |
Tips
Perform CRUD operations on records in Adalo no-code app collections.
Frequently asked questions
What Adalo plan do I need for this node to work?
The Adalo Collections API is only available on paid Adalo plans. If your app is on the free tier, API calls will fail regardless of how the node is configured in BusyBot. Upgrade your Adalo plan first, then set up credentials.
What credentials does this node require?
It uses the Adalo API credential type (adaloApi), which includes your API key and the App ID for the specific Adalo application you want to access. All operations through a single configured credential are scoped to that one app — you cannot query a different app's collections without a separate credential.
How does the node know what fields a collection has? Do I define a schema here?
No schema is defined in BusyBot. Collection structure is entirely determined by what you've built in the Adalo app builder. The node works against whatever fields exist in your Adalo collection at runtime, so if you rename or delete a field in Adalo, you'll need to update your workflow accordingly.
What happens when an operation fails — does the workflow stop?
The node has two separate outputs: Output and Error. A failed API call routes to the Error output rather than stopping the workflow outright, which means you can branch on failures — for example, logging the error or retrying — without the entire run being marked as broken.
Can I use this node to query multiple collections in one workflow run?
Each Adalo node instance targets one operation against one collection per execution. To work with multiple collections, add multiple Adalo nodes to your workflow, one for each collection you need to read from or write to.
Build with the Adalo node
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Adalo API credentials first.
Open BusyBotLast updated . Spotted something wrong? Tell us.