What causes this error when trying to publish my flow? "You should verify that the endpoint is available and that you have implemented a health check before publishing it."
1

I verified my endpoint and it is working fine and I still get this error: You should verify that the endpoint is available and that you have implemented a health check before publishing it.

I found this documentation but it is not clear what I should do, before this endpoint worked for me to publish a flow but now I get that error. https://developers.facebook.com/docs/whatsapp/flows/guides/implementingyourflowendpoint#health_check_request

Johana
Đã hỏi khoảng 4 tháng trước
Câu trả lời được chọn
1

Hi,

One of the requirements says that you need to upload and sign a public key to a phone number before you can send or publish a Flow with data channel. See details here: https://developers.facebook.com/docs/whatsapp/flows/guides/implementingyourflowendpoint#upload_public_key. Have you done that?

You're saying we published flows in the past using the same endpoint. Are the past flows and the new one in the same WABA?

Thanks, Daniel

12 tháng 6 lúc 06:28
Daniel
Johana

Yes, the past flow and the new one are in the same WABA. But I have the last flow in Obsolete state. Can this affect the publication of my new flow?

12 tháng 6 lúc 06:59
1

The status of a previous flow would not impact publishing of a new one. Just to clarify, "obsolete" means status is DEPRECATED, right?

What about the public key, was this uploaded and is fine?

12 tháng 6 lúc 10:35
Daniel
Johana

Yes, the public key was loaded correctly and is valid. I don't know what it could be

12 tháng 6 lúc 13:36
1

Would you be comfortable sharing the flow id, so we can investigate on the actual flow?

13 tháng 6 lúc 02:08
Daniel
Johana

Yes, this is 3724886324423819 I look forward to any response

13 tháng 6 lúc 06:32
1

We see the endpoint configured in the flow is not available.

13 tháng 6 lúc 07:06
Daniel
1

Please note that endpoints should be able to respond to health check requests. WhatsApp will periodically send health check requests to the endpoints used by published flows.

Sample Health Check Request Payload

{
    "version": "3.0",
    "action": "ping",
    "data": {}
}

You should generate the following response payload:

{
    "version": "3.0",
    "data": {
        "status": "active"
    }
}

For reference, please use this: https://developers.facebook.com/docs/whatsapp/flows/reference/implementingyourflowendpoint#health_check_request

13 tháng 6 lúc 07:09
Daniel
Johana

That is, should I execute a POST with my URL and this in the body?

{
    "version": "3.0",
    "action": "ping",
    "data": {}
}
13 tháng 6 lúc 09:13
Daniel

yes, please, you need to make sure your endpoint is up all the time and also responds to ping as detailed above

14 tháng 6 lúc 13:53
Johana

Yes, the endpoint works but it still doesn't verify me. Please help

18 tháng 6 lúc 19:25
Daniel

When I try to ping your endpoint in curl I get errors:

[status] => "failed"
[error] => "Curl failed with error code 56 (RECV_ERROR)"
[error_type] => "no_http_response"
20 tháng 6 lúc 06:56
Johana

How do you execute it? If it answers me with http code 200. This is my curl:

curl --location 'https://lia-qa.fif.tech/webhook-stg/dataflows/seguros_co/stg' \
--header 'Content-Type: application/json' \
--header 'Cookie: __cf_bm=CAhtki_FEWNct_I2z.8.OEfLBashEfHhI0c2ntNA1Tw-1718891939-1.0.1.1-XmyrIkba0ieCjGsXznxne92uNMXLiD2dkZtFibax0ZqizYhYi6qWlHp7tfpuzgCLj6CBEgKGLucWWABi3Ds8x0EYkvixr9pVVooWrUk9kbE' \
--data '{
    "version": "3.0",
    "action": "ping",
    "data": {}
}'
20 tháng 6 lúc 17:12
Johana

You can try to run the endpoint several times? as it is a test environment (qa), our endpoint is not exposed to the internet, however we have applied a rule to allow the ASN of Meta 32934 to reach our service

20 tháng 6 lúc 17:13
Daniel

First, I note that you amended the endpoint used by the flow. Second, the new endpoint behaves the same as the old one: still we don't get a response for ping. You're saying your endpoint is not exposed to the internet... maybe that shouldn't be the case?

21 tháng 6 lúc 05:18
Johana

Yes, it is not exposed to the internet but as I said, it is exposed to the internet for Meta's ASN 32934. That is to say that if you are doing the ping from a Meta machine with that ASN 32934 it should work for you.

21 tháng 6 lúc 09:11
Johana

Can you send me your request?

21 tháng 6 lúc 09:13
Daniel

Is it possible to please provide a link to documentation where there is a recommendation to limit endpoints access to ASN 32934?

22 tháng 6 lúc 15:15
Daniel

Additionally, note that the endpoint is supposed to serve the users of that flow. They won't be coming from ASN 32934.

We now know technically why the flow can't be published. Please amend your local settings so endpoint is reachable.

Please confirm if this thread can be closed.

22 tháng 6 lúc 15:20