コンテンツにジャンプ
概要 概要 ニュース ニュース
共有

Publishable Keys

ブラウザで安全なAPI呼び出し。 独自のバックエンド不要。

フロントエンドに配置できる Publishable Key (po_pk_) は、スコープ制限、オリジン依存、予算上限付きです。

Claude Artifacts、ChatGPT Canvas、Grok、および独自のWebアプリ向け。

独自のプレフィックス po_pk_ デフォルトではOriginにバインド いつでも取り消し可能

ブラウザから直接

AIキャンバスからAPI呼び出しへ

Claude、ChatGPT、またはGrokでPDFからテキストへの変換アプリを構築しています。バックエンドがない場合、APIへの呼び出しはこれまで行われていませんでした:CORSがブロックされ、シークレットキーがソースコードに公開され、オープンキーがアカウントに負荷をかけていました。このギャップをPublishable Keysが埋めます。

対応環境: Claude ArtifactsChatGPT CanvasGrokすべてのブラウザアプリ

Claude、ChatGPT、またはGrokに貼り付け

バックエンドなしで、あらゆるAIキャンバスを実際のAPI対応デモに変えるプロンプト。

AIキャンバス プロンプト
このAPIドキュメントをお読みください:
https://api.paperoffice.ai/latest/docs/llms-full.txt 単一ファイルのReactアプリ(Claudeアーティファクト / ChatGPTキャンバス / Grok)を構築してください:
ユーザーがPDFをアップロードすると、アプリはブラウザから直接
/job/add/paperoffice_aiocr___generate を呼び出し
抽出されたテキストを表示します。認証: Bearer po_pk_MY_PUBLISHABLE_KEY(キーの入力をユーザーに促す)。
同期結果には processing_lane=instant を使用してください。Originヘッダーはブラウザによって設定されます。

プリセットを選択し、キーを作成して貼り付けます。

ダッシュボードはスコープと予算のプリセットを提供します。オリジンは空のままにし、ブラウザのデベロッパーツールから取得した Origin ヘッダーを入力し、その後キーをプロンプトにコピーしてください。

キーを作成
JavaScript
const form = new FormData();form.append("file_1", fileInput.files[0]);form.append("processing_lane", "instant");form.append("client_wait", "true");const response = await fetch("https://api.paperoffice.ai/latest/job/add/paperoffice_aiocr___generate", {  method: "POST",  headers: { Authorization: "Bearer po_pk_YOUR_PUBLISHABLE_KEY" },  body: form,});console.log(await response.json());

最初の呼び出し

ブラウザからのfetch、Originはブラウザが設定

リクエストは POST /latest/job/add/{pipeline} 宛てに行われます。これはシークレットキーを使用する場合と同じエンドポイントです。変更点として新たに導入されたのは、キーのタイプとブラウザが自動的に送信する Origin ヘッダーのみです。

  • Origin はブラウザから送信される

    fetch は Origin ヘッダーを自動的に設定します。ブラウザ外のスクリプト(cURL、Node など)は明示的にヘッダーを送信する必要があります。そうでない場合、API は 403 ORIGIN_HEADER_REQUIRED で応答します。

  • 結果のインライン返却

    processing_lane=instant および client_wait=true を指定すると、API は接続を保持し、レスポンス内で結果を直接返します。

  • 明確なエラーコード

    402 BUDGET_EXHAUSTED、403 DOMAIN_NOT_ALLOWED、403 SCOPE_NOT_GRANTED、429 RATE_LIMIT_EXCEEDED — 各制限は固有のエラーコードで通知されます。

セキュリティマトリックス

6つの制御、すべてサーバー側で強制

スコープ制限、オリジン依存、予算上限付き、いつでも取り消し可能。すべての制御はサーバー側で強制されるため、キーはフロントエンドコードに含めることができます。

  • スコープ限定

    キーは明示的に解放されたエンドポイントグループにのみアクセスできます:ocr:readllm:generatetranslate:text など。スコープ外の呼び出しには HTTP 403 が返されます。

  • オリジン依存

    各リクエストには、キーの許可リスト(正確なホストまたはサブドメインワイルドカード)と一致する Origin ヘッダーが必要です。一致しない場合、API HTTP 403 が返されます。

  • 追加の分制限なし

    po_pk_ に固有の分間制限はありません。アカウントの通常のトークンレート制限が適用され、消費はライフタイム予算によって上限が設定されます。

  • 予算制限あり

    各キーにはライフタイム予算が設定されています。予算が枯渇すると、APIはHTTP 402 BUDGET_EXHAUSTEDを返します — 請求時までではなく、消費時点で終了します。

  • いつでも取り消し可能

    キーはアカウント内でいつでも取り消すことができます。取り消されたキーはAPIによって受け付けられなくなります。

  • 固定ロック

    HTTP DELETE およびアカウントログイン、キー管理、OAuth、パートナー管理、支払い変更操作、パスワードクラックは、すべての po_pk_ に対して恒久的にブロックされます。文書化された製品 API(POST による削除、Webhook、請求書読み取り、CRM を含む)は許可されています。

キー階層

3つのキータイプ、明確な責任分担

サーバー用Secret Key、ブラウザ用Publishable Key — さらにユーザー関連のレート制限付きアクセス用のUser Token。

プレフィックス タイプ ユースケース ブラウザ対応 デフォルトスコープ
po_sk_ シークレットキー サーバー間通信、完全なAPIアクセス権限 いいえ すべてのエンドポイント
po_ut_ User Token ユーザースコープ、ティア制限 いいえ ティアベース
po_pk_ Publishable Key ブラウザ / AI-キャンバス (Claude, ChatGPT, Grok) はい スコープリスト

認証とキー

3つのプリセット

ワンクリック。キー一つ。明確な目的。

各プリセットは特定のユースケースに合わせて設定されています — 安全なデフォルト値、厳選されたスコープ、現実的な予算。すべてダッシュボードでいつでも調整可能です。

  • DEFAULT 安全な読み取り専用

    簡単なデモや内部ツール用の安全なデフォルト権限:OCR、LLM、翻訳、ドキュメント、検索。

    権限スコープ

    ocr:readllm:generatetranslate:textdocuments:uploaddocuments:readsearch:query
    このプリセットで開始
  • WIDGET 公開ウェブサイト

    自社の企業ウェブサイト上のコンタクトフォーム、チャットウィジェット、予約ボタン用。

    権限スコープ

    knowledge:readwidget:chatwidget:bookingwidget:formswidget:contactwidget:leadwidget:fingerprint
    このプリセットで開始

最初のAPIコール

ブラウザからの最初の呼び出しの準備はできましたか?

キーを作成し、llms-full.txtを開き、プロンプトを貼り付け — あなたのアプリはAPIをClaude、ChatGPT、またはGrokから直接呼び出します。

独自のプレフィックス バックエンド不要 いつでも取り消し可能
動画

Publishable Keysの実演

PaperOfficeのPublishable Keysが実際にどのように機能するかをご覧ください。

Publishable Keysの実演

よくある質問

重要な情報すべてをワンストップで

po_pk_とpo_sk_の違いは何ですか?

po_sk_(シークレットキー)はサーバー間統合用であり、APIへのフルアクセス権限を持ち、ブラウザには決して組み込まないでください。po_pk_(公開可能キー)はブラウザコード向けに設計されており、スコープ制限、オリジンバインド、予算上限が設定されています。同じAPIを使用しますが、セキュリティプロファイルが異なります。

なぜ自前のバックエンドからリバースプロキシを使わないのですか?

これは古典的な方法ですが、引き続きバックエンドが必要です。AIアーティファクト(Claude、ChatGPT、Grok)は、独自のバックエンドなしでの運用を目的としています。Publishable Keysを使用することで、Secret Keyを公開することなくこれを実現できます:境界はサーバー側で強制されます。

CORSサンドボックスがあるClaudeアーティファクトでも機能しますか?

はい。呼び出しはブラウザから直接行われ、Origin ヘッダーはブラウザ自体が設定します。PaperOffice はベンダー許可リストを提供しません;キー作成時にデベロッパーツールから取得した Origin を入力してください。

po_pk_が公開されて見えるようになった場合どうなりますか?

被害は限定されます:オリジンロックにより他ドメインでの使用がブロックされ、予算制限により消費が終了し、レート制限により自動アクセスが抑制されます。アカウントでキーを無効化してください。その後、APIはそのキーを受け付けなくなります。

独自のドメインを許可されたオリジンとして追加できますか?

はい。キー作成時に、正確なホストまたはサブドメインのワイルドカードとして、各オリジンを許可リストに追加します。WIDGETプリセットはまさにそのために設計されています:独自のドメインを登録し、バックエンドなしでチャット、予約、またはコンタクトウィジェットを組み込みます。

キーごとに予算を設定する方法は?

作成時にライフタイム制限を選択します。プリセットにはそれぞれ既定値が含まれています。制限に達すると、APIはHTTP 402 BUDGET_EXHAUSTEDを返します。この値はアカウント内でいつでも調整可能です。

po_pk_には独自のプランが必要ですか?

いいえ。Publishable Key は既存のアカウントを取り巻く追加の保護層です:スコープ、オリジン、予算を制限します。どのプランがあなたのセットアップに適しているかは、価格表をご覧ください。

po_pk_に対してどのエンドポイントがブロックされていますか?

HTTP DELETE およびアカウントログイン、ユーザー管理、キー管理、OAuth、パートナー管理、Stripe チェックアウト、パスワードクラックは恒久的にブロックされています。文書化された製品 API は許可されており、POST による削除、Webhook、請求書読み取り、インポート、CRM が含まれます。Workspace の削除、ゴミ箱の空欄化、法的事由保持の解除は UI のみ(403 UI_ONLY_ENDPOINT)です。

PaperOfficeをどこで試しますか?

PCとスマートフォンが接続されました:PCでワークスペース、電話で取得。

テスト版が準備完了しました

どこから始めますか?

フルワークスペースはPC用に最適化されています。モバイルバージョンは文書の取得、確認、共有に適しています。

app.paperoffice.ai

PCで開始する

パーソナルアクセスリンクをメールアドレスにお送りします。

無料で登録 アプリを開く PaperOfficeアプリ フル製品:ウェブ、デスクトップ、モバイル。文書の取り込み、整理、検索、チームでの作業。 無料アカウントが必要です Playgroundを開く Playground 選択した機能をすぐに試せます — 登録なし、制限付きのデモAPIキーで。 登録不要、ただし制限付きのデモAPIキー