Verifying the Endpoint for WhatsApp Webhooks

Hi,

I am trying to setup webhooks for whatsapp business but when configuring the endpoint, whatsapp asks me for a verify token.

How can I add this verify token to my endpoint?

verifytoken

Documentation: Get Started - Cloud API - Documentation - Meta for Developers

Step 1 : Find a large handkerchief
Step 2: Cry into it

That is just practice for what you are about to experience doing this.

The verify token is mainly irrelevant (it is there so that YOU know it comes from Meta, not the other way round), what you need to do is set up the endpoint to be GET and configure the parameters manually (not with initialise).

Pass back the (using return data) hub.challenge (which is a number BTW).

This will verify your endpoint. Now getting it to recognise the data … that is another thing :slight_smile:

3 Likes

Hey Nigel! Thanks for replying.

Is this what you mean?

verifytoken

verifytoken4

verifytoken5

This is not working either.

Where am I wrong here?

It needs to be the hub.challenge that was passed in. Not a fixed number.

1 Like

I think I might have not understand what you said. Do you mean this?

verifytoken7

Not working either.

I tried this as well:

verifytoken8

verifytoken9

and also tried this:

verifytoken10

verifytoken11

Not working yet.

1 Like

For anybody looking to do this, in the end, this is what worked:

verifytoken12

Thanks for the guidance @NigelG

The final objective is to configure Whatsapp Webhooks and save the content of a Whatsapp message into our Bubble database.

Trying to solve the next challenge in this process here: Saving data from json Whatsapp Webhooks into Bubble's database

3 Likes

Hi!
I’m a newbie.
I read your solution but I couldn’t solve the problem.
The “return data from API” window doesn’t appear for me.
What did you type in the “token” field on whatsapp api?

For understanding return data from api check this: Returning data via API? - #4 by keith

The token is a key given by Meta.

If you are a newbie, I suggest you practice first with other more simple APIs or search for a whatsapp plugin in Bubble instead. Connecting to Meta’s APIs can be a pretty big headache.

Muito obrigado, pela ajuda, eu estava com o mesmo problema.
Vou deixar um dica pra que tá iniciando e que mesmo a sua dica fiquem um tempo sem entender.

1 º - Copiar o endereço do endpoint ainda no médoto POST, depois remove o “/inicialize” e cola lá no imput url webhook do facebook.

2º - Fazer esta configuração que você ensinou.

3º - Clicar em verificar e salvar lá no facebook.

Grande abraço.

1 Like

Hey can you please make a loom video. Because I tried to make the same steps but I still don’t know how to get the verify tokens WhatsApp is asking for. Thank you.

Hi

I have managed to “initialize” the callback url following the posted steps. The next question is how to save data into bubble when meta send it to the callback url.

I understood the part about setting up a post event in the API connector but not sure how to obtain the “data/body” from the Meta callback url to post it as parameters in the Bubble post api?

Do you have more steps to assist and can you confirm if you are currently using WhatsApp Cloud Api in a production app?

I opened a thread for that as well. Check the link that is in the end of the solution post of this thread

{“statusCode”:400,“body”:{“status”:“MISSING_DATA”,“message”:“Missing parameter for workflow webhooks_endpoint: parameter hub.challenge”}}

This what I get when by opening the webhook URL. Please help :slight_smile:

PS: I did exactly what @pachocastillosr last screenshots.


image

What do you mean with “opening the webhook url”?

`https://***.bubbleapps.io/version-test/api/1.1/wf/webhook_endpoint

image

https://***.bubbleapps.io/version-test/api/1.1/wf/webhook_endpoint

Yeah you shouldn’t be trying to open that url. That url is used by Meta to send webhooks to your app. Read the docs at Meta for developers to learn how to enable webhooks.

Meta api integrations can be complicated, even after reading all the threads where I documented some of them, with the contribution of others. If you don’t have moderate-advanced experience with apis, I’d suggest you to practice with other more simple apis first or find someone to assist you.

Hey @pachocastillosr thx for your time. Yes its not for the Browser but I need still I need a Status Code: 200. I have a good exerpience with API just sticking a some steps like you did in the past and need some guidance :slight_smile:

Your domain is not in the url in the screenshot

Yes but it iscorrect I just deleted for the screenshot. Any guess why iam getting 400 Status code?