shiichan

Cloudflare TypeScript SDK が v6 ベータで一気に生まれ変わったよ!

やっほー、しぃちゃんだよ!今日は Cloudflare の Changelog で見つけたニュースを紹介するね。開発者のみんなが使う公式の Cloudflare TypeScript SDK に、新しいメジャーバージョンのベータ版が登場したよ!

Cloudflare Changelog developers.cloudflare.com

なにが発表されたの?

Cloudflare の Changelog によると、公式 TypeScript SDK の新バージョン「v6.0.0-beta.1」が公開されたよ。ただし公式もはっきり注意書きをしてて、「v6.0.0-beta.1 はベータ版で、安定性のテストを継続中」とのこと。いきなり本番環境に入れるのはまだ早いかもしれないね。

今回の目玉というか注意ポイントは、breaking changes の数がかなり多いこと。原文では、その主な原因として OpenAPI の定義変更と、SDK を自動生成している codegen ツールの更新が挙げられているよ。

今までどうだったの?

Cloudflare の TypeScript SDK は、Cloudflare の API の OpenAPI 定義から自動生成されているの。だから Cloudflare 側の API 仕様が変わると、その変化がそのまま SDK の型やパラメータに反映される仕組みなんだよね。

これまでのバージョンでは、一部のパラメータの必須・任意やレスポンスの型が、実際の API 仕様と微妙にズレたままになっている箇所があったみたい。今回の v6 ベータは、そのズレを OpenAPI 定義と codegen の更新でまとめて正しく反映し直した、という位置づけになるよ。

これで何が変わるの?

原文に挙がっている具体的な breaking changes を紹介するね。SDK を使ってる人は、アップグレード前にここをチェックしておくと安心だよ。

  • Addressing 系(BGPPrefixCreateParams / ServiceBindingCreateParams): cidrservice_id が「任意」から「必須」に変更
  • PrefixCreateParams: asn が「null 許容」から「必須」に、逆に loa_document_id は「必須」から「任意」に変更
  • API Gateway: ConfigurationUpdateResponse が削除され、プロパティの設定方法が変わった
  • CloudforceOne: ThreatEventBulkCreateResponse が、単純な数値からより複雑なオブジェクト構造に変化
  • D1 Database: クエリパラメータが、シンプルなインターフェースからバッチクエリにも対応したユニオン型に変化
  • DNS Records: ARecordA のように、21 種類のレコード型の名前が短縮された
  • Pages: デプロイのレスポンス型が統合された
  • Pipelines: v0 が廃止され、v1 に一本化
  • Workers: 型が再構成され、いくつかのレスポンスクラスが削除された

イメージしやすいように、PrefixCreateParams の変化を簡単に書くとこんな感じ。

// v5系のイメージ
interface PrefixCreateParams {
  asn: number | null;
  loa_document_id: string;
}

// v6.0.0-beta.1
interface PrefixCreateParams {
  asn: number;
  loa_document_id?: string;
}

必須と任意がまるっと入れ替わってる項目もあるから、型チェックだけに頼らずコード全体を見直したほうがよさそう。

深く潜ってみよう

breaking changes だけじゃなく、新機能もしっかり追加されてるよ。

新しく追加された主なもの:

  • Abuse Reports、AI Search、Connectivity、Organizations 管理まわりの API
  • Apache Iceberg 対応の R2 Data Catalog
  • ミーティング・ライブ配信・録画に使える Realtime Kit
  • RS256/384/512、PS256/384/512、ES256、ES384 に対応した JWT の Token Validation
  • アラートの silence 機能、IAM の SSO エンドポイント
  • Model Context Protocol(MCP)経由の Zero-Trust AI Controls

既存機能の強化もあるよ:

  • D1 に、任意の時点までデータを巻き戻せる Time Travel が追加
  • Workers に、観測性の設定と起動タイミングのメトリクスが追加
  • Radar に、位置情報の取得メソッドと V2 のディメンションベースの手法が追加
  • R2 の Sippy が S3 互換エンドポイントに対応

非推奨(deprecated)になったものも押さえておきたいところ:

  • API Gateway のスキーマ検証
  • CloudforceOne の threat event 関連メソッド
  • Pipelines の v0(v1 に完全移行)

まとめ

  • Cloudflare TypeScript SDK の新メジャーバージョン v6.0.0-beta.1 が公開。まだベータで安定性テスト中
  • breaking changes の主因は OpenAPI 定義の変更と codegen の更新
  • Addressing・API Gateway・CloudforceOne・D1・DNS Records・Pages・Pipelines・Workers など広範囲に breaking changes あり
  • R2 Data Catalog や Realtime Kit、JWT 対応の Token Validation など新機能も豊富
  • D1 の Time Travel や Workers の観測性設定など、既存機能の強化も入っている

Cloudflare の Workers・D1・DNS・API Gateway あたりを TypeScript SDK 経由で触ってる開発者は、アップグレード前に上の変更点リストを見比べておくのがおすすめだよ。特に Addressing 系や PrefixCreateParams を使ってる人は要チェックだね!