テック技報最新号へ →
インフラ

Cloudflare DNS 設定 API: Advanced Nameservers は foundation_dns ではなく nameservers.type: "cloudflare.advanced" で扱う

@CFchangelog · 2026-10-28
#infra#cloudflare#dns#api#iac

2026-10-26 から 7 日かけて、DNS 設定 API(/zones/{zone_id}/dns_settings と /accounts/{account_id}/dns_settings)の表現が変わる。Terraform や自作スクリプトで DNS 設定を読み書きしている場合、クライアント側の対応が要る。

何が変わるか

  • 以前: Advanced Nameservers(Foundation DNS)は真偽値 "foundation_dns": true で表していた
  • 以後: "nameservers": { "type": "cloudflare.advanced" } で表す
  • ロールアウトがアカウントに届くまでは、Advanced Nameservers でも nameservers.type は "cloudflare.standard" が返る
  • 移行期間中も PATCH で "cloudflare.advanced" を送れる(権利のあるアカウント)
json
{
  "nameservers": { "type": "cloudflare.advanced" },
  "foundation_dns": true
}

やること

  1. nameservers.type を決まった値だけの enum として扱っているクライアントは、"cloudflare.advanced" を受け付けるように直す(知らない値で落ちる・既定値に戻すコードが危ない)
  2. 新しく書き込むときは nameservers.type を使う
  3. PATCH で foundation_dns と nameservers.type を両方送るなら値を一致させる。食い違うと API が拒否する
  4. foundation_dns は非推奨の互換エイリアスとして当面残るが、将来削除される。移行後は真偽値の処理を消す

注意点

  • ロールアウト中は同じアカウントでも返り値が standard / advanced で揺れうる。差分検出(drift)を見るツールは、この 7 日間は誤検知に注意
  • この変更でサブスクリプションや Advanced Nameservers の有効・無効は変わらない。ゾーンの移行も不要

出典

X の元の投稿を開く