I’m just getting started in Adalo and like much of it so far, although starting to bump up against some roadblocks (like recurring IAP). Anyway…
I am building an RSVP app. I have three collections:
Events (has the details of each event)
Contacts (name, contact info, etc). There is a many to many relationship between Events and Contacts - i.e. each event can have multiple contacts. And each contact could be assigned to multiple Events.
Users - the owner of the event and contacts (one to many for events and contacts)
I want to be able to have Integromat pull all the contacts that are joined with an event for a user so Integromat can use the contact info (e.g. email address and name) to message (via another platform) each user.
How I would get the contacts (a collection) that are joined (referenced) with events (another collection) into Integromat so I can send info to the contacts for an event? I believe in Integromat I would need to the iterator function unless each contact came through individually…
Hope that makes sense. I’m a non coder so excuse any incorrect terms
As a possible solution, how the scenario could look like:
Webhook listening to the custom action.You need to pass unique event name to this webhook (as Adalo doesn’t provide internal IDs, and we need that later)
Adalo List Events
filter - List Event Name IS EQUAL to event name from webhook. With this you will get only one event you’d like to work with later
— in this event bundle, you will see Contacts as an array.
Iterator, which iterates array of Contacts
Adalo Get Record - from Contacts collection
Voila, you have the contact info and can pass it to the 3rd party messaging platform.
This will work if Contacts have email stored. If not - you will need to have another Adalo Get Record, to get info from Users collection based on User ID which is stored in the referenced field in Contacts record.
Please keep in mind - when you add Adalo collections to Integromat, be sure that you have the first record “fully completed”, otherwise Integromat may not recognize all the fields.
@Victor One more question - I tried using a Adalo “Make an API cal” from Integromat to try and select an individual record (I thought I could pass a query through the call), but it always returns all records. Is it possible to send a query in an API call to Adalo to get a single record without knowing Adalo’s ID (which is absolutely ridiculous that it isn’t visible)?
In order to get the individual record, you need to know its ID - it works like that by design (in every API ). But yes, Adalo doesn’t show it publicly which creates a lot of difficulties There is GET ONE method which works, but as it’s difficult to get individual ID, its usage is very limited.
The only way to make this work is List Records + Filter by some unique property (for user that will be email, for instance). Then you’ll have the desired record.
Thanks @Victor yes that was what I had to do. I was trying not to get a full list every time there is a a trigger, but it does work (with the tiny sample data I have so far). That’s why I was hoping you could do a custom query (like a “?field=X” type call) via API on Adalo collections.