Ask a question
Is a very brief video that's a follow up to one I've just recorded where I've shown how to send outgoing SMS notifications from your Bubble app. And I've used a service called ClickSendend. Often when you think of SMS APIs, you will think of Twilio. But I found that ClickSend end offers a wide suite of different tools that isn't just restricted to SMS. We've got voice, we've got email, fax, we can even send post that's printed off and sent anywhere in the world, basically. Yeah, ClickSend can be a more intuitive and simpler solution than Twilio. I think that many people find the Twilio dashboard because you can basically send an SMS 10, 100 different ways. It's confusing. ClickSend is great. But in this video, as I say, it's going to be very brief.
How do you receive inbound SMS? In particular, a reply. If I've sent an SMS out for my Bubble app and I invite my users to reply to it, how do I then process that inbound message into my Bubble app? Well, it's really quick to do so.
Create an API Workflow
So I create an API workflow in back end workflows. And this will require you to have a Bubble app on a paid plan because this is one of those features that's restricted on the free plan.
So I create a new endpoint called SMS, and then I put it into detect data mode or initialize. And that then means that Bubble is on the lookout for data coming in to this URL, this endpoint, and it's ready to analyze it and structure that data. If I go into ClickSend, and then I go into messaging settings, I can add an inbound rule here to my SMS. And so I can say all inbound. It doesn't really matter what I name these. Under Action, I choose URL. And then in here, you can see I've already done so. I've pasted my endpoints that I've got from the Bubble app here. And I don't even need to reach into my pocket to test it.
Testing your Bubble API endpoint
I can get ClickSend to simulate an inbound SMS. And you can see that Bubble has detected it and begun to structure the data. And these are all bits of data that I can then refer to in my workflow actions to save it to my database. So I can go create a new thing, inbound message. I can refer to the request data and I can refer to message. In order to save whatever is returned in this field.
One thing that we would need to update before saving this and assuming that it's going to work consistently, in fact, two things to point out. One is that I need to remove initialize. Because the initialize is only going to work when I have to take data and then it isn't actually going to run any workflow actions after that. It's simply to teach Bubble the structure of the data, the JSON that's being sent from the third party service. So I need to remove initialize.
The other thing that I've seen confuse people is that your back end workflow API endpoints are specific to your app that you're version. So you can see here that I have test version. I would effectively need to create two rules here, one for my test version and then one for my live version. If indeed I wanted all SMS messages to go to both versions of my app, then I would, of course, click Save. And that's now ready to send SMS inbound messages to my Bubble app, assuming I've deployed what I've just set up in my development version to my live version and that this workflow actually exists in my live version.
So there we have it. That is a very brief and hopefully shows just how simple it is to take your replies for the SMS notifications that you sent out using ClickSend and to process them into your Bubble app. So there you have it. We've now got two videos out there on how to send and how to receive SMS notifications from your Bubble app, and you've not even had to sign up for a Twilio account to do so.