How to connect an external collection to Adalo
To connect an external collection in Adalo, open Database → Add Collection → External Collection, paste a base URL that returns a flat JSON array of records, and let Adalo fetch. Adalo reads the property names from the first records it receives, so the response must be flat, consistently typed, and paginated with an accurate total.
An "external collection" is data that lives outside Adalo, in your own API or a hosted database, that Adalo reads over the internet as if it were a normal collection. The whole job is getting the response into the shape Adalo expects. If you do not already have an API, External Collections gives you that endpoint without writing a backend.
Get the data into the right shape first
Create the collection and give every property a clear name and the right type. Adalo infers types from the first records it sees, so a wrong type sticks everywhere.
- Text for names, descriptions and IDs you never do maths on.
- Number for prices, counts and anything you sort or filter by range.
- Date for timestamps, send ISO strings (2026-03-12T09:00:00Z), not "12/03".
- Image and File properties should hold a full https URL, not a file name.
Test the endpoint before Adalo sees it
Open the URL in a browser or run the built-in connection test before you add the collection in Adalo. Whatever fails here will fail in Adalo too, with far less information about why.
- The URL responds without an error.
- The response is valid JSON.
- Every record is a flat object, nothing nested.
- The same properties appear on every record.
Add the collection in Adalo
In the editor go to Database → Add Collection → External Collection and let Adalo fetch the data. Your keys become properties you can bind to lists, forms and detail screens.
- Base URL: the endpoint that returns the list of records.
- Headers: put API keys here, never in the query string.
- Give the collection clear singular/plural names, they only show in the editor.
- Run the fetch and confirm every expected property appears.
Why the flat shape matters
Adalo does not read your API documentation. It builds a property list from the top-level keys of the first page it fetches, so anything nested is invisible.
- Nested objects (a customer object inside an order) never become properties.
- "No properties detected" is almost always a shape problem, not a connection problem.
- Adalo pages with offset and limit and trusts the total your API reports.
- A total that moves between requests makes lists stop loading early.
Keeping it working as your properties change
Adalo caches the property list, so changes on your API do not appear automatically.
- Add a property → re-run the test, then refresh the collection in Adalo.
- Renaming a property breaks every component already bound to the old name.
- Prefer adding a new property over renaming an existing one.
- Remove properties only after confirming no screen still uses them.
Common mistakes and how to diagnose them
Adalo shows the collection but no properties.
- Likely cause:
- The response is wrapped in an envelope ({ "data": [...] }) or the records contain nested objects.
- Fix:
- Return a plain array of flat objects, or configure the path to the array. Flatten nested values into top-level keys such as customer_name.
Some properties are missing, others appear.
- Likely cause:
- The first records omit those properties entirely, so Adalo never sees them.
- Fix:
- Always include every property on every record, using null for empty values instead of leaving the key out.
The list works in the editor but is empty in preview.
- Likely cause:
- A filter comparing a Text property to a Number, or a filter on Logged-in User on a screen reached while logged out.
- Fix:
- Remove all filters, confirm records appear, then add them back one at a time until the list empties.
The list loads the first 20 records and stops.
- Likely cause:
- Pagination parameters ignored, or an inconsistent total count.
- Fix:
- Honour the offset and limit values Adalo sends and return the same total on every page.
Real example: a product catalogue that outgrew Adalo
A shop app had 4,000 products maintained in a spreadsheet by a non-technical team. Keeping them in an Adalo collection meant a manual re-import every week, and search was slow.
The fix was to host the catalogue outside Adalo and expose it as one flat endpoint: id, name, price (number), category, image_url, in_stock (boolean). Adalo read it as an external collection, the list filtered on category directly, and the team kept editing in their own tool. No screens changed, only the data source behind them.
When you need an Adalo expert
Plenty of Adalo issues are straightforward to fix yourself with the steps above. It usually pays to bring in an experienced Adalo developer when the problem sits deeper in the build:
- Your API returns nested or inconsistent JSON and you cannot change it, a small translation layer is needed in front of it.
- The collection needs per-user data, so requests must be authenticated as the logged-in Adalo user.
- You need writes as well as reads: create, update and delete flowing back through custom actions.
- The connection works in the editor but fails in the published app.
Related guides
How to structure collections for an Adalo app
Field types, relationships and naming rules that keep an Adalo app fast to filter, easy to change, and painless to connect to an API later.
Adalo external collection not working: common causes and fixes
Missing properties, wrong item counts, empty lists and pagination problems in Adalo external collections, the symptom, the cause and the fix for each.
How to connect an API to Adalo
Connect a REST API to Adalo with custom actions or external collections, including the response shape, authentication headers and pagination Adalo expects.
How to set up a custom action in Adalo
Create an Adalo custom action step by step: method, URL, headers, body with magic text, and how to use the response on the next screen.
Frequently asked questions
Do I need my own server for an Adalo external collection?
No. Any REST endpoint that returns a flat JSON array will do, and hosted tools such as External Collections give you one without writing backend code.
Why are my properties missing in Adalo?
Almost always nested JSON or properties missing from the first records. Adalo only reads flat, top-level keys from the first page of results.
Can I filter and search an external collection?
Yes, on top-level properties. Filtering through relationships is unreliable on external collections, so store what you filter on directly on the record.
Can users create records in an external collection?
Yes, if your API implements POST/PUT/DELETE at the paths Adalo calls, or you use a custom action for the write.
How do I refresh the property list after adding a property?
Re-run the connection test on your endpoint, then refresh the collection in Adalo so it re-reads the properties.
Is an external collection slower than an Adalo collection?
It depends on your API. Keep responses small, paginate, and avoid returning properties no screen uses.
Webnux Tools is an independent product by Webnux Ltd. It is not affiliated with, endorsed by, or sponsored by Adalo, Inc. Adalo is a trademark of Adalo, Inc.

