サインイン不要:匿名レート制限が無料ツールを無料のまま保つ仕組み
カタログツールと匿名の /api/v1 呼び出しにアカウントは不要。ホスト側の応答は X-RateLimit-Limit、Remaining、Reset を持ち、HTTP 429 では Retry-After も付く。

PDF123 はアカウント不要のアップロード/ダウンロード経路を維持している。同じ操作は /api/v1/ の下にも並んでおり、スクリプトが人間に Process を押させることなく呼び出せる。匿名利用に API Key は要らない。レート制限が、この面が無制限の無料ホストになるのを防いでいる。
匿名が既定の経路
圧縮 や 結合 のようなツールページにファイルを落として実行する。カタログツール向けの匿名 REST(/api/v1/)も同じように動く。/api/v1/general/、/api/v1/misc/、/api/v1/security/、/api/v1/convert/、/api/v1/filter/ が匿名ツールのプレフィックスで、ポータルのカタログツールはすべてこれらのパスに対応する。
サインインがあるのは、自動化用の個人 API Key を作れるようにするためであり、Process を課金の壁にするためではない。ブラウザのフォームと HTTP の契約は揃っている。各ツールページの「Call this from code」ブロックは、フォームが送るのと同じフィールドから curl を組み立てる。
管理、ユーザープロファイル、その他の非ツールの経路はこれらのプレフィックスの外にある。匿名の呼び出しがゲート付きのパスに当たれば認証失敗になり、API 面全体を無料で通り抜けられるわけではない。
ヘッダーが語ること
ホスト側の API 応答はすべて予算を告知する(pdfx-server に実装されている)。
X-RateLimit-Limit:この応答で告知される期間の上限X-RateLimit-Remaining:現在の期間に残っている予算X-RateLimit-Reset:窓のリセット標識(値を読むこと。暦日だと仮定しない)
HTTP 429 では、Retry-After が行儀のよいクライアントに再試行の時期を伝える。枠の超過は 開発者向けエラー にある構造化 rate_limited problem コードを使い、他の API 失敗と同じ application/problem+json の形を取る。スクリプトは HTML のエラーページをスクレイピングせずにコードで分岐できる。
数値の上限はデプロイ設定で変わりうる。ある応答のヘッダーが真実であり、ブログのスナップショットではない。本記事から日次の数字をハードコードしたクライアントは、運用担当者が期間を調整した次の時点で間違える。呼び出しのたびに X-RateLimit-Remaining を読み、ゼロに近づいたらバックオフする方がよい。
無料ツールでも呼び出しを制限する理由
上限がなければ、匿名エンドポイントは他人のバッチ農場になる。制限があることで単発の作業は使えるままに保たれ、重い作業や私有の作業はキーや セルフホスト へ移る。
上限は、本当に高コストな op のために共有 CPU も守る。大きな結合、スキャンから Markdown を返す OCR(text/markdown であり、テキスト層を重ね直した PDF ではない)、そして多段の POST /api/v1/pipeline の実行だ。製品としての選択は「匿名かつ有限」であり、「匿名かつ無制限」ではない。
匿名アクセスは依然として一時的な処理だ。アップロードはそのジョブのために扱われ、結果が準備できた時点で片付けられる。レート制限は容量の公平さの話であり、無料のログイン壁の裏に長期的な文書ストアを発明する話ではない。
キーが変えるのは身元で、カタログではない
安定した呼び出し元の身元、二重実行してはならない Idempotency-Key の再試行、あるいは固定のグローバルキーを持つセルフホストサーバー(自分のマシンの SECURITY_CUSTOMGLOBALAPIKEY)が必要なときは、開発者向け からキーを作る。OpenAPI は、どの base URL を叩いても /v1/openapi.json にある。
/mcp の MCP も同じカタログと同じキーの話に従う。呼び出し元が匿名でもキー付きでも、操作は変わらない。変わるのは認証と枠だ。
一つの op に対する四つの取っ手(ブラウザ、curl、MCP、CLI)は 同じ操作、四つのクライアント にある。枠や保持が足りないときに面全体を自ネットワークへ移す話は セルフホストが実際にもたらすもの にある。