快速开始
本指南假设你已经注册并获得了一个 API Key。尚未注册?点击这里创建账号 →
1. 创建 API Key
登录控制台后进入 API Keys 页,点击「创建新 Key」。系统会返回一个明文 Key,只显示一次——请立即保存到你的密码管理器。
export TURNITIN_API_KEY="sk_live_xxxxxxxxxx"
2. 上传文档
curl -X POST https://turnitin.example.com/app/api/uploads \
-H "Authorization: Bearer $TURNITIN_API_KEY" \
-F "file=@./paper.pdf"
响应:
{
"upload": {
"id": "upl_xxxxxxxx",
"filename": "paper.pdf",
"word_count": 2847
}
}
3. 创建查重提交
curl -X POST https://turnitin.example.com/app/api/submissions \
-H "Authorization: Bearer $TURNITIN_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"upload_id": "upl_xxxxxxxx",
"reports": ["similarity", "ai"]
}'
此请求会从你的账户预扣相应额度,并返回一个提交 ID:
{
"submission": {
"id": "sub_xxxxxxxx",
"status": "queued",
"credits_reserved": 2
}
}
4. 等待报告
两种方式:
轮询:
curl https://turnitin.example.com/app/api/submissions/sub_xxxxxxxx \
-H "Authorization: Bearer $TURNITIN_API_KEY"
SSE 实时订阅(推荐):
curl https://turnitin.example.com/v1/jobs/<jobId>/events \
-H "Authorization: Bearer $TURNITIN_API_KEY"
典型耗时:30–120 秒。平台侧失败(turnitin_blocked / login_failed 等)不扣费,积分自动返还。
5. 下载报告
curl https://turnitin.example.com/app/api/submissions/sub_xxxxxxxx/report?type=similarity \
-H "Authorization: Bearer $TURNITIN_API_KEY" \
-o similarity.pdf
同一接口传 ?type=ai 可拿到 AI 检测 PDF。JSON 结构化评分在响应的 scores 字段内。
常见问题
- 报告一直 queued:检查账号池健康(大概率是上游 Turnitin 限流,等待几分钟会自动 retry)
- 401 Unauthorized:Authorization header 格式应为
Bearer <key>,注意没有空格 - 402 insufficient_credits:余额不足,在控制台充值或等订阅下一周期自动发放