Skip to main content

PDF Tools API

Webページ PDF 変換 API

バックエンド、バッチ処理、プロダクト内のワークフローにWebページをPDFに変換を組み込み、PDF処理基盤の自前運用を減らします。

Credits

1 Credit / call

1 Credit per successful API request. Failed processing attempts are refunded automatically.

Pricing

1,000 Credits = $1

Every signed-in user receives 100 free API Credits each month.

Endpoint

/api/external/webpage-to-pdf/pdf

Use your API Key in the x-api-key header.

Use case

公開ページの定期保存、顧客画面のエクスポート、証跡保存をサーバー側で行う場面で使います。手作業の確認はWebツール、安定したサーバー側処理はAPIに分ける設計です。

cURL example

curl -X POST https://itextmaster.com/api/external/webpage-to-pdf/pdf \
  -H 'x-api-key: YOUR_API_KEY' \
  -F 'url=https://example.com/report' \
  -F 'pageSize=A4' \
  -F 'waitDelay=2' \
  --output webpage.pdf

Multipart example

curl -X POST https://itextmaster.com/api/external/webpage-to-pdf/pdf \
  -H 'x-api-key: YOUR_API_KEY' \
  -F 'url=https://example.com/report' \
  -F 'pageSize=A4' \
  -F 'waitDelay=2' \
  --output webpage.pdf

JSON base64 example

curl -X POST https://itextmaster.com/api/external/webpage-to-pdf/pdf \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{
    "url": "https://example.com/report",
    "pageSize": "A4",
    "waitDelay": 2
  }' \
  --output webpage.pdf

Node.js example

import { writeFile } from 'node:fs/promises';

const response = await fetch('https://itextmaster.com/api/external/webpage-to-pdf/pdf', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'x-api-key': process.env.ITEXTMASTER_API_KEY
  },
  body: JSON.stringify({
  url: 'https://example.com/report',
  pageSize: 'A4',
  waitDelay: 2
})
});

if (!response.ok) {
  throw new Error(await response.text());
}

await writeFile('webpage.pdf', Buffer.from(await response.arrayBuffer()));

Python example

import os
import requests

response = requests.post(
    'https://itextmaster.com/api/external/webpage-to-pdf/pdf',
    headers={
        'Content-Type': 'application/json',
        'x-api-key': os.environ['ITEXTMASTER_API_KEY'],
    },
    json={
        'url': 'https://example.com/report',
        'pageSize': 'A4',
        'waitDelay': 2,
    },
)
response.raise_for_status()

with open('webpage.pdf', 'wb') as f:
    f.write(response.content)

Error codes

400invalid_payload

JSONまたはmultipartに必要なHTML、URL、ファイル入力がありません。

401invalid_api_key

x-api-keyがない、無効、またはローテーション済みです。

402insufficient_credits

アカウントのAPI Creditsが不足しています。

502conversion_failed

サーバー側レンダリングで変換を完了できませんでした。失敗分のCreditsは自動で戻ります。

Limits

  • 正常に開けるPDFまたは有効な入力データが必要です。
  • API Keyはサーバー側に置き、ブラウザには公開しないでください。
  • 大量処理の前に代表的なファイルで出力を確認してください。

Response headers

webpage.pdf とともに、使用Creditsと残高を示すレスポンスヘッダーが返ります。

Content-Type
生成ファイルのMIMEタイプです。通常はapplication/pdfまたはapplication/zipです。
Content-Disposition
生成ファイルのダウンロード名です。
X-Credits-Charged
成功したリクエストで消費されたCreditsです。
X-Credit-Balance
リクエスト後のAPI Credits残高です。

FAQ

Webページ PDF 変換 APIの料金は?

成功したWebページ PDF 変換 APIリクエストはAPI Creditsを使います。処理に失敗した分は自動で返却されます。ログイン済みユーザーには毎月100 free API Creditsがあり、1,000 Credits = $1です。

WebツールでもAPI Creditsを使いますか?

ブラウザ内で処理するWebツールはAPI Creditsを使いません。API Keyを使う自動化リクエストだけが対象です。

フロントエンドから直接呼べますか?

推奨しません。API Keyはバックエンド、キュー、サーバー側ジョブに置いてください。

Start with 100 free API Credits

Create an API Key, test Webページ PDF 変換 API, and buy more Credits only when automation volume grows.