PDF to JSON API

認証付き POST 1 回で公開 PDF URL を保存済み構造化 JSON に——型付きブロック、ページテキスト、Markdown をページ範囲で読み戻せます。

  • 単一 REST エンドポイント
  • 型付きブロックスキーマ
  • 双方向出力
  • ページング取得
  • 冪等な課金書き込み
  • 変換オプション

リクエスト例

curl -X POST "https://api.agentbody.io/v1/documents/parse" \
  -H "Authorization: Bearer <YOUR_AGENTBODY_API_KEY>" \
  -H "Content-Type: application/json" \
  -d '{"analysis_chart":"true","file_name":"YOUR_FILE_NAME","file_url":"YOUR_FILE_URL","merge_tables":"true","recognize_seal":"true","relevel_titles":"true","return_span_boxes":"true"}'

レスポンス例

OpenAPI 仕様に記載されたレスポンス。

Accepted document parse result reference.

{
  "document_id": "00000000-0000-4000-8000-000000000001",
  "get_path": "example_value",
  "pages": 1,
  "preview": "example_value"
}

機能特徴

PDF to JSON API をデータ抽出パイプライン、ドキュメントインデックス、LLM 摂取に使う——URL を入れ、構造化ブロックを得る。

単一 REST エンドポイント

bearer API キー、file_url、file_name を付けて POST /v1/documents/parse を呼びます。API が文書を解析し構造化結果を保存します。解析ライブラリのホストもレイアウトエンジンの維持も不要です。

型付きブロックスキーマ

結果の各ブロックは id、type、text、page、bbox を運びます。安定したドキュメント化されたスキーマです。見出し、段落などの要素がラベル付きで届くため、ダウンストリームコードは推測なしで振り分けられます。

双方向出力

保存された結果は、プログラム用の blocks 配列と、読解・プロンプト用の Markdown レンダリングの両方を運びます。1 回のパースが、同じ document_id で抽出パイプラインと LLM コンテキストの両方に奉仕します。

ページング取得

GET /v1/documents/{document_id} に page_start/page_end を付けて結果を読み戻します。1000 ページの文書もクエリ可能なまま保たれ、ワーカーは無境界な 1 レスポンスではなくチャンクで処理します。

冪等な課金書き込み

パースは従量課金です。再試行時に Idempotency-Key ヘッダーを送ると、中断されたレスポンスが同じ文書の二重課金になりません。同一キーの同一リクエストは元の結果を返します。

変換オプション

パースごとに調整できます。merge_tables は断片化した表セルをマージし、relevel_titles は見出し階層を正規化します。Markdown を形作るオプションがブロック構造も形作ります。

使い方

次のステップで PDF to JSON API を呼び出します。キーを作成し、文書 URL を送信し、構造化ブロックを読み戻します。

01

API キーを作成

AgentBody アカウントを作成し、コンソールで API キーを生成します。キーはサーバー側に保管し bearer トークンとして送信します。

02

文書を送信

file_url(公開 HTTPS)、file_name、必要に応じて変換オプションを付けて POST /v1/documents/parse を送信します。レスポンスは document_id とプレビューを返します。

03

冪等キーを追加

再試行する可能性のあるすべてのパースに Idempotency-Key ヘッダーを付けます。同一キーの同一リクエストは元の結果を返し、再課金しません。

04

ブロックを読み戻す

ページ範囲付きで GET /v1/documents/{document_id} を呼びます。blocks 配列——id、type、text、page、bbox——をそのままストレージ、インデックス、パイプラインに解析します。

05

キーはサーバー側に

バックエンドや定期ジョブからエンドポイントを呼びます。ユーザーが変換をトリガーする場合は独自エンドポイントでプロキシしてください。

06

エラーを正しく処理

400 はリクエストを修正し、401 は有効なキーを設定し、402 は残高を補充し、409 はドキュメント化された冪等キーの動作に従います。502/503/504 はバックオフ付きで再試行します。

よくある質問

PDF to JSON API とは何ですか?

認証付きエンドポイントのペアです。POST /v1/documents/parse が公開 PDF URL を保存済み構造化結果に変換し、GET /v1/documents/{document_id} がそれを読み戻します。各要素が id、type、text、page、bbox を持つ blocks 配列と、ページごとのテキスト、Markdown が付きます。

PDF to JSON API の料金はどうなっていますか?

各パースはアカウントのクレジットで実行される従量課金の操作です。価格はゲートウェイが管理します。コンソールで現在の費用を確認し、冪等キーで再試行の二重課金を防いでください。

各 JSON ブロックには何が入っていますか?

5 つのフィールド:id(安定した要素識別子)、type(見出し・段落などの要素クラス)、text(内容)、page(ページ番号)、bbox(ページ上の座標位置)。文書の構造を再構築またはクエリするのに十分です。

ローカルファイルを処理できますか?

いいえ。API は公開 HTTPS の file_url を受け付け、multipart アップロードは受け付けません。PDF を API が到達できる場所にホストし、その URL を渡してください。

非常に大きな PDF はどう扱いますか?

一度パースし、page_start と page_end でページ範囲を読み戻します。各取得は境界のあるブロックとページのスライスを返すため、1000 ページの文書もチャンクで処理でき、メモリは無界になりません。

API エラーの処理方法は?

400 はリクエストを修正し、401 は bearer キーを修正し、402 は残高を解決し、409 はドキュメント化された冪等キーの動作に従います。502、503、504 は一時的な上流の障害として、同じキーの下でバックオフ付きで再試行してください。