コンテンツへスキップ
Offer! Grab your .com from $5.98 with Namecheap. Get started →

APIドキュメント

PasteBox API を使って、プログラムからペーストを作成・取得できます。

ベースURL

https://pastebox.io/api/paste.php

認証

APIキー(スクリプトにおすすめ)

登録ユーザーは プロフィール → APIキー からAPIキーを発行できます。キーを使うとリクエストがあなたとして認証されるため、セッションCookieやCSRFトークンは不要です。Authorization ヘッダー(または X-API-Key ヘッダー)で送信してください:

Authorization: Bearer pb_your_api_key

キーはアカウント単位で発行され、キーごとにレート制限があります。キーはいつでも一時停止または削除できます。管理者は個々のキーやAPI全体を無効にできます。

ブラウザセッション(CSRFトークン)

ログイン中のブラウザセッションからのリクエストでは、代わりにCSRFトークンを使用します。トークンは各ページの タグから読み取り、次のヘッダーとして送信します:

X-CSRF-Token: your_csrf_token

読み取り専用のエンドポイント(ペーストとその生データの取得)には、キーもアカウントも不要です。たとえば、任意の公開ペーストをプレーンテキストとして取得できます:

curl -s -H "Authorization: Bearer pb_your_api_key" \ -d '{"content":"hello","syntax":"text"}' \ https://pastebox.io/api/paste.php?action=create

ペーストを作成

POST /api/paste.php?action=create

パラメーター

パラメーター 種類 必須 説明
content string はい ペーストの内容
title string いいえ ペーストのタイトル(デフォルト:"Untitled")
syntax string いいえ 構文の言語スラッグ(デフォルト:"plaintext")
expiration string いいえ 有効期限:5min, 10min, 1hour, 1day, 1week, 2weeks, 1month, 6months, 1year, never
visibility string いいえ public(公開)、unlisted(非公開)、private(プライベート)のいずれか(デフォルト:"public")
slug string いいえ カスタムURLのスラッグ(ログインユーザーのみ、かつ管理者がカスタムURLを有効にしている場合のみ):3〜64文字の英小文字・数字・ハイフン。ゲストの場合、機能が無効な場合、使用済みまたは無効な場合は無視され、代わりにランダムなスラッグが使用されます。
password string いいえ ペーストを保護するパスワード
burn_after_read boolean いいえ 初回閲覧後にペーストを削除
encrypt boolean いいえ サーバー側暗号化を有効にする

リクエスト例

curl -X POST https://pastebox.io/api/paste.php?action=create \
  -H "Content-Type: application/json" \
  -H "X-CSRF-Token: YOUR_TOKEN" \
  -d '{
    "content": "console.log(\"Hello World\");",
    "title": "Hello World",
    "syntax": "javascript",
    "expiration": "1week",
    "visibility": "public"
  }'

レスポンス例

{
  "success": true,
  "message": "Paste created successfully.",
  "url": "https://pastebox.io/paste/abc123",
  "slug": "abc123"
}

ペーストの生データを取得

GET /api/paste.php?action=raw&slug={slug}

ペーストの生のテキスト内容を返します。パスワード保護されたペーストの場合は、パスワードをクエリパラメーターとして渡してください。

例

curl https://pastebox.io/api/paste.php?action=raw&slug=abc123

ペーストをダウンロード

GET /api/paste.php?action=download&slug={slug}

構文の言語に応じた適切な拡張子のファイルとしてペーストをダウンロードします。

ペーストを削除

POST /api/paste.php?action=delete

ペーストを削除します。ペーストの所有者または管理者のみ利用できます。

リクエスト例

curl -X POST https://pastebox.io/api/paste.php?action=delete \
  -H "Content-Type: application/json" \
  -H "X-CSRF-Token: YOUR_TOKEN" \
  -d '{"slug": "abc123"}'

レート制限

  • APIキーによるリクエスト:キーごとに1時間あたり 1000 回(サイト管理者が設定。超過すると 429 が返されます)。
  • ゲストによるペースト作成(キー・セッションなし):IPごとに1時間あたり10件。ログインユーザーによる作成には、IPベースのレート制限は適用されません。
  • パスワードによるロック解除の試行:ペーストごとに10分あたり10回。
  • 報告:IPごとに1時間あたり5件。
  • 読み取り専用のエンドポイント(表示 / 生データ / ダウンロード)にはレート制限はありません。

制限を超えるとリクエストは拒否されます。しばらく待ってから再試行してください。

エラーレスポンス

すべてのエラーレスポンスは次の形式に従います:

{
  "success": false,
  "message": "Error description here."
}

当サイトでは、サインイン状態の維持、設定の保存、サイトの利用状況の把握のためにCookieを使用しています。すべてのCookieを許可するか、サイトの動作に必要な必須Cookieのみを許可するかを選択できます。 詳しく見る