Driftwatch

Cloudflare / Cloudflare API /

Additive

Response field context added

What changed

No action needed unless you validate responses against a closed schema.

Affects GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}.

Who is affected

Code that reads GET /accounts/{account_id}/cfd_tunnel/{tunnel_id} (messages[].context).

Before and after

WhereBeforeAfter
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id} · messages[].contextabsentpresent
DELETE /accounts/{account_id}/cfd_tunnel/{tunnel_id} · messages[].contextabsentpresent
PATCH /accounts/{account_id}/cfd_tunnel/{tunnel_id} · messages[].contextabsentpresent
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections · messages[].contextabsentpresent
DELETE /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connections · messages[].contextabsentpresent
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/connectors/{connector_id} · messages[].contextabsentpresent
POST /accounts/{account_id}/cfd_tunnel/{tunnel_id}/management · messages[].contextabsentpresent
GET /accounts/{account_id}/teamnet/routes · messages[].contextabsentpresent
POST /accounts/{account_id}/teamnet/routes · messages[].contextabsentpresent
GET /accounts/{account_id}/teamnet/routes/ip/{ip} · messages[].contextabsentpresent
POST /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded} · messages[].contextabsentpresent
DELETE /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded} · messages[].contextabsentpresent
PATCH /accounts/{account_id}/teamnet/routes/network/{ip_network_encoded} · messages[].contextabsentpresent
GET /accounts/{account_id}/teamnet/routes/{route_id} · messages[].contextabsentpresent
PATCH /accounts/{account_id}/teamnet/routes/{route_id} · messages[].contextabsentpresent
GET /accounts/{account_id}/teamnet/virtual_networks · messages[].contextabsentpresent
POST /accounts/{account_id}/teamnet/virtual_networks · messages[].contextabsentpresent
GET /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id} · messages[].contextabsentpresent
DELETE /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id} · messages[].contextabsentpresent
PATCH /accounts/{account_id}/teamnet/virtual_networks/{virtual_network_id} · messages[].contextabsentpresent
GET /accounts/{account_id}/tunnels · messages[].contextabsentpresent
POST /accounts/{account_id}/warp_connector · messages[].contextabsentpresent
GET /accounts/{account_id}/warp_connector/{tunnel_id} · messages[].contextabsentpresent
DELETE /accounts/{account_id}/warp_connector/{tunnel_id} · messages[].contextabsentpresent
PATCH /accounts/{account_id}/warp_connector/{tunnel_id} · messages[].contextabsentpresent
GET /accounts/{account_id}/warp_connector/{tunnel_id}/connections · messages[].contextabsentpresent
GET /accounts/{account_id}/warp_connector/{tunnel_id}/connectors/{connector_id} · messages[].contextabsentpresent
PUT /accounts/{account_id}/warp_connector/{tunnel_id}/failover · messages[].contextabsentpresent
GET /accounts/{account_id}/zerotrust/routes/hostname · messages[].contextabsentpresent
POST /accounts/{account_id}/zerotrust/routes/hostname · messages[].contextabsentpresent
GET /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id} · messages[].contextabsentpresent
DELETE /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id} · messages[].contextabsentpresent
PATCH /accounts/{account_id}/zerotrust/routes/hostname/{hostname_route_id} · messages[].contextabsentpresent
GET /accounts/{account_id}/zerotrust/subnets · messages[].contextabsentpresent
PATCH /accounts/{account_id}/zerotrust/subnets/cloudflare_source/{address_family} · messages[].contextabsentpresent
GET /accounts/{account_id}/zerotrust/subnets/initial_resolved_ip/{address_family} · messages[].contextabsentpresent
PUT /accounts/{account_id}/zerotrust/subnets/initial_resolved_ip/{address_family} · messages[].contextabsentpresent
POST /accounts/{account_id}/zerotrust/subnets/warp · messages[].contextabsentpresent
GET /accounts/{account_id}/cfd_tunnel · messages[].contextabsentpresent
POST /accounts/{account_id}/cfd_tunnel · messages[].contextabsentpresent
GET /accounts/{account_id}/cfd_tunnel/{tunnel_id}/token · messages[].contextabsentpresent
DELETE /accounts/{account_id}/teamnet/routes/{route_id} · messages[].contextabsentpresent
GET /accounts/{account_id}/warp_connector · messages[].contextabsentpresent
GET /accounts/{account_id}/warp_connector/{tunnel_id}/token · messages[].contextabsentpresent
GET /accounts/{account_id}/zerotrust/subnets/cloudflare_source/{address_family} · messages[].contextabsentpresent
GET /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id} · messages[].contextabsentpresent
DELETE /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id} · messages[].contextabsentpresent
PATCH /accounts/{account_id}/zerotrust/subnets/warp/{subnet_id} · messages[].contextabsentpresent

Based on Cloudflare’s published API specification. How severity is decided.