Update Zero Trust Access Policy via API (or Python Library) returns an error

What is the name of the domain?

yonz.org

What is the error number?

12135

What is the error message?

access.api.error.not_found

What is the issue you’re encountering

When i try to update a zero_trust.access.policy object I get an error 12135: access.api.error.not_found

What steps have you taken to resolve the issue?

Leangthy chat with the cloudflare support chat bot, tried using python as well as curl command

What are the steps to reproduce the issue?

Run this curl command:
curl https://api.cloudflare.com/client/v4/accounts/$CF_ACCOUNT_ID/access/policies/$CF_POLICY_ID
-X PUT
-H ‘Content-Type: application/json’
-H “X-Auth-Email: $CF_EMAIL”
-H “X-Auth-Key: $CF_API_KEY”
-d ‘{
“id”: “$CF_POLICY_ID”,
“name”: “IP”,
“decision”: “bypass”,
“include”: [
{
“ip”: {
“ip”: “188.169.183.235/32”
}
}
],
“require”: ,
“exclude”:
}’

I have verified the AccountID and PolicyID values by issuing this curl command:
curl https://api.cloudflare.com/client/v4/accounts/$CF_ACCOUNT_ID/access/policies/$CF_POLICY_ID
-X GET
-H ‘Content-Type: application/json’
-H “X-Auth-Email: $CF_EMAIL”
-H “X-Auth-Key: $CF_API_KEY”

{
“result”: {
“created_at”: “2025-01-02T15:57:09Z”,
“decision”: “bypass”,
“exclude”: ,
“id”: “04c17e8d-893a-4287-9544-2650ce90ba9d”,
“include”: [
{
“ip”: {
“ip”: “88.69.183.235/32”
}
}
],
“name”: “IP”,
“require”: ,
“uid”: “04c17e8d-893a-4287-9544-2650ce90ba9d”,
“updated_at”: “2025-01-08T12:41:27Z”,
“reusable”: false,
“app_count”: 1,
“app_id”: “50ea14e0-4efe-4183-b96e-ec739df36ab0”
},
“success”: true,
“errors”: ,
“messages”:
}
It returns the correct policy object.