If you're seeing this error:
INVALID_PROPERTY_VALUE
Property 'refresh_on_back' can be true only when property 'data_api_version' is set.
You're likely trying to make your flow re-fetch data on screen navigation without configuring the data connection properly. Let’s walk through what this means and how to fix it.
Quick Fix
To use "refresh_on_back": true, you must set a data_api_version at the root level of your flow.
Correct Example:
{
"version": "2.1",
"data_api_version": "1.0",
"screens": [
{
"id": "screenA",
"refresh_on_back": true,
"layout": {
"children": [...]
}
}
]
}
Without data_api_version, the flow is considered a data-channel-less flow, and setting refresh_on_back causes validation to fail.
Why This Happens
Meta’s flow engine only allows refresh_on_back when your flow is connected to a server or external data source.
data_api_version tells the system that your flow is backed by APIs.
refresh_on_back is used to re-fetch data when a user navigates back to a screen—this only works if the screen can actually get updated data from somewhere.
If you haven’t defined data_api_version, the platform assumes you’re not using a backend. So trying to “refresh” makes no sense, and the error is thrown.
When to Use refresh_on_back
Use it only when:
The screen shows dynamic data fetched from a server.
There’s a chance the data might have changed while the user was on another screen.
Your flow includes data_api_version and server endpoints are configured.
When Not to Use It
If your flow is static and doesn’t rely on backend APIs.
If you haven’t configured data_api_version.
For more troubleshooting insights related to WhatsApp Business API, check out heltar.com/blogs.