Creating a list with backend worklow - too slow

Hello there,
I have been facing a big problem, which is that my app creates a list with a backend workflow, and it takes way too long… To create 77 entries I needed exactly 2min40sec, which is way too long. I’ll explain how it all works:

  1. In a popup we select a list of clients (name, phone number), and by pressing a button it saves them into a custom state.

  2. Once it is done, the popup closes and by clicking another button, it is possible to save. It triggers a workflow, and the relevant action is “Schedule API Worflow” which triggers a backend workflow creating a list of “Users”, which contains the client phone number and their campaign (another data type which contains the list of messages these clients will receive, but this is not important).

So yeah I’m wondering how to create this list of “users” containing the “clients” stored in the custom state, with a normal speed. Because it is way too slow, and unfortunately I have found no way to create a list of things without using the backend workflow trick.

I have tried a plugin called List shifter, but couldn’t make it work (the iterate function I think?).
Thanks in advance!

What is the reason you are creating the list of clients with the name and phone number? Are you allowing existing users to create a list of their clients as a sort of contact or are you allowing them to create users?

For my apps when I build for clients who want to allow users to upload a list of users or contacts, I use the CSV upload feature, and I use a free plugin called 1T CSV uploader to help with that.

I don’t know off hand how fast or slow it is, but nevertheless, I always incorporate a ‘loading’ popup to entertain the user has the data is being created, and then signal when the data has been processed. I think typically I’ve experienced uploading the CSVs to populate about 100 entries within 10 seconds or so.

The list of clients with the phone number and name was already created beforehand, and the reason I’m doing this is to associate those with a “campaign”. A campaign is a couple of SMS sent with the Twilio API. So it is important for me to differentiate the actualy client database, and the list of clients who are registered to that campaign (most likely not the full list of clients in the database).
I hope it makes it a bit more clear, I know “user” can be a misleading name, it just means the list of clients who are registered to that campaign.

The client database is indeed filled up with the CSV uploader! And it is pretty fast. The issue is when I wanna select a couple of these clients and create a new list of them.

I did put a “loading” icon indeed, as I don’t want people to send SMSes to the list without it being full first. But yes… I wish it lasted only 10 seconds, as I said I have to wait almost 3 min for a list of 77 clients and that’s the issue I’m trying to solve.

Little update here, I managed to make it work with Listshifter instead of Backend workflow, it is now taking 40 seconds to create the full list instead of 2min40 sec! It’s a big improvement, but I was wonderinf if it was possible to go even faster than that? Because I’m worried to try that once the lists have like 500 users or something… Will still take a while to create it. Thanks in advance!

Try using the Data API Bulk Create endpoint - it’s the quickest was to create multiple things in the database.

Although, from your post, I can’t really work out what you’re trying to do, nor why it needs to happen quickly??..

It needs to happen quickly because my user needs to upload a list of clients, and then click a button to send them the SMS. So it needs to happen in a couple of seconds, and not making them wait 3 minutes in front of the computer.
I took a look at Data API Bulk Create endpoint but it seems to be only doable on bubble side, can it be done by a standard user accessing my website?

It needs to happen quickly because my user needs to upload a list of clients, and then click a button to send them the SMS. So it needs to happen in a couple of seconds, and not making them wait 3 minutes in front of the computer.

But the User won’t know how long it takes, and neither will the clients who receive the SMS…

I took a look at Data API Bulk Create endpoint but it seems to be only doable on bubble side, can it be done by a standard user accessing my website?

I’m not sure what you mean by ‘it can only be done on the Bubble side’?..

Yes of course, it can by done by a User of your app if you set up the correct workfows.

1 Like

The clients will be fine yes, but the User will need to wait for the list to charge to click the Send SMS action since it takes a while and needs the list to be fully charged.

But yes alright I will see how to set up the correct workflow to make the Data API Bulk work, thanks a lot!

The clients will be fine yes, but the User will need to wait for the list to charge to click the Send SMS action since it takes a while and needs the list to be fully charged.

Why would they need to wait for that? Surely everything should be triggered by a single button click?..

But in any case, yeah have a go with the Data API as it should be faster.

The process of creating the list of clients was asynchronous, because I was using Schedule API Workflow. And with List shifter it seems to be asychronous as well, which caused the SMS to be sent before the list of clients was fully created (so only 15 clients out of 40 would receive it).
I hope it makes more sense! Bulk create seems to be synchronous though, so that should solve the problem as well.