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
创建粘贴
/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"
}
获取原始粘贴
/api/paste.php?action=raw&slug={slug}
返回粘贴的原始文本内容。对于受密码保护的粘贴,请将密码作为查询参数传递。
示例
curl https://pastebox.io/api/paste.php?action=raw&slug=abc123
下载粘贴
/api/paste.php?action=download&slug={slug}
根据语法语言,以对应的文件扩展名将粘贴下载为文件。
删除粘贴
/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 密钥请求:每个密钥每小时 1000 次(由网站管理员设置,超出时返回 429)。
- 访客创建粘贴(无密钥/会话):每个 IP 每小时 10 个粘贴。已登录用户创建粘贴时不受 IP 速率限制。
- 密码解锁尝试:每个粘贴每 10 分钟 10 次。
- 举报:每个 IP 每小时 5 次。
- 只读端点(查看 / 原始内容 / 下载)不受速率限制。
超出限制时请求会被拒绝,请稍候再重试。
错误响应
所有错误响应均采用以下格式:
{
"success": false,
"message": "Error description here."
}