Is this a good practice?
API worflows which are activated by stripe webhooks deal with payments and sensitive data. Don’t want anybody who isnt stripe activating this workflow. There must be a way to check for authentication.
Second to this, I had the same problem but it was due to my account being on the FREE version of bubble. Upgrade and you should see a difference if you’ve tried the authentication without prevail.
You can do this but it’s unsecured. ANyone can pretend to be stripe and send data to your endpoint.
Read posts on ‘authenticating’ stripe webhooks for workarounds
Leave “this workflow can be run without authentication” box UNchecked.
Go to your Bubble settings > API > Generate a token or use what’s already there > go to your Stripe webhooks > at the end of the URL type:
?api_token=“your token”
save > re-run your workflow event. No more authentication error AND you don’t have to run it without authentication.
That’s no super safe either. If someone hacks your Stripe account or sees the link of your webhook URL somewhere they would have an admin API token to your app
What I’ve been doing is:
Creating an API endpoint, not requiring authentication, and ignoring privacy rules
Add a condition to my backend WF to only run when the cf-connecting-ip contains one of the IPs in that option set. (make sure to check “detect headers” when you’re initializing your backend workflow)