OpenAICloudflare Developer Platform2026/06/11 0:00

Browser Run - New formats parameter for the Browser Run /snapshot endpoint

要点だけを先に読めるように短く再構成したセクションです。

元記事

Quick Digest

要約

要点だけを先に読めるように短く再構成したセクションです。

openaijamodel: gpt-5-mini-2025-08-07

Browser Run: /snapshot に formats パラメータを追加

Key Points

  • 複数形式を同時取得
  • Markdownはトークン効率的
  • アクセシビリティツリー提供

Summary

Browser Run の /snapshot エンドポイントに formats パラメータが追加され、1回の API 呼び出しで複数のページ形式を同時に取得できるようになりました。以前は HTML とスクリーンショットのみが返されていましたが、これにより markdownaccessibilityTree などを同一レスポンスで受け取れます。Markdown はトークン効率の良いテキスト表現を、アクセシビリティツリーは要素の役割・ラベル・階層を構造的に提供するため、AI エージェントワークフローで特に有用です。

Key Points

  • 複数形式の指定: リクエスト JSON の formats に配列で指定します。例: formats: ["screenshot", "markdown", "accessibilityTree"]
  • 最低要件: formats には少なくとも2つの形式を指定する必要があります。単一形式だけ必要な場合は専用エンドポイント(例: /screenshot, /markdown)を使用してください。
  • 利点: Markdown は LLM に直接渡せるトークン効率の良い表現、アクセシビリティツリーはページ構造理解・ナビゲーションに役立ちます。
  • 実装上の注意: レスポンスに複数の形式フィールドが含まれるため、クライアント側で各フィールドのパースとエラー処理を準備してください。
  • SDK/Workers: TypeScript SDK と Workers バインディングからも同様に formats を指定して呼び出せます。

Practical action items

  • 既存の /snapshot 呼び出しを更新して必要なフォーマットを配列で指定する(AI ワークフローには markdownaccessibilityTree を含めると効果的)。
  • 単一形式で良い場合は専用エンドポイントに切り替えて無駄なペイロードを避ける。
  • 詳細な受け入れ値と許容されるフォーマット一覧は /snapshot ドキュメントを参照してください。

Full Translation

翻訳

原文の流れを保ったまま読める翻訳セクションです。

openaijamodel: gpt-5-mini-2025-08-07

Browser Run — /snapshot エンドポイントの新しい formats パラメータ

Browser Run — /snapshot エンドポイントの新しい formats パラメータ

概要

Browser Run の /snapshot エンドポイントは formats パラメータをサポートするようになり、1 回の API 呼び出しで複数のページ形式を返せるようになりました。従来、/snapshot は HTML コンテンツとスクリーンショットのみを返していましたが、これからは Markdown や accessibility tree も同じレスポンスに含めることができます。

これらのフォーマットは特に AI エージェントワークフローで有用です。

  • Markdown: HTML マークアップを解析せずに LLM が直接処理できる、トークン効率の良いページ内容の表現を提供します。
  • accessibility tree: 要素のロール、ラベル、階層構造を含むページの構造化された表現を提供し、LLM がページ構造を理解して内容をナビゲートするのに役立ちます。

使用例

以下の例はスクリーンショット、Markdown、accessibility tree を一度の呼び出しで返します。

curl -X POST 'https://api.cloudflare.com/client/v4/accounts/<accountId>/browser-rendering/snapshot' -H 'Authorization: Bearer <apiToken>' -H 'Content-Type: application/json' -d '{ "url": "https://example.com/", "formats": ["screenshot", "markdown", "accessibilityTree"] }'

TypeScript (SDK) 例

import Cloudflare from "cloudflare";
const client = new Cloudflare({ apiToken: process.env["CLOUDFLARE_API_TOKEN"] });
const snapshot = await client.browserRendering.snapshot.create({
  account_id: process.env["CLOUDFLARE_ACCOUNT_ID"],
  url: "https://example.com/",
  formats: ["screenshot", "markdown", "accessibilityTree"],
});
console.log(snapshot.markdown);
console.log(snapshot.accessibilityTree);

Workers 例

interface Env { BROWSER: BrowserRun; }

export default {
  async fetch(request, env): Promise<Response> {
    return await env.BROWSER.quickAction("snapshot", {
      url: "https://example.com/",
      formats: ["screenshot", "markdown", "accessibilityTree"],
    });
  },
} satisfies ExportedHandler<Env>;

注意事項

  • formats は少なくとも 2 つ指定する必要があります。もし 1 つだけ必要であれば、/screenshot/markdown のような単一フォーマット専用のエンドポイントを使用してください。
  • サポートされる値の全一覧は /snapshot ドキュメントを参照してください。

参照

  • /snapshot ドキュメント(詳細な受け入れ値一覧およびレスポンス形式)

ご不明な点があればドキュメントを確認するかサポートにお問い合わせください。