用途
PDF.co 是一个 PDF 处理 API 服务,用于以编程方式完成各类 PDF 自动化任务。当用户提到 "PDF.co"、"extract PDF"、"parse PDF" 或 PDF 自动化时,可使用该技能。所有操作通过 HTTP 请求调用 api.pdf.co 的接口完成,请求头使用 x-api-key 携带令牌(环境变量 PDFCO_TOKEN)。
主要能力
该 API 提供以下端点:
- /pdf/convert/to/text:PDF 转文本,支持 OCR
- /pdf/convert/to/csv:PDF 表格转 CSV
- /pdf/convert/to/json:PDF 转 JSON
- /pdf/merge:合并多个 PDF
- /pdf/split:按页拆分 PDF
- /pdf/optimize:压缩 PDF
- /pdf/convert/from/html:HTML 转 PDF
- /pdf/convert/from/url:URL 转 PDF
- /ai-invoice-parser:AI 驱动的发票解析
- /document-parser:基于模板的文档解析
- /file/upload/get-presigned-url:获取上传 URL
- /job/check:检查异步任务状态
使用方式
调用方式为向对应端点发送 POST 请求,请求体为 JSON,通过 --header "x-api-key: $PDFCO_TOKEN" 鉴权。示例(PDF 转文本):
curl --location --request POST "https://api.pdf.co/v1/pdf/convert/to/text" --header "x-api-key: $PDFCO_TOKEN" --header "Content-Type: application/json" -d @/tmp/request.json
其中 /tmp/request.json 内容示例:
{
"url": "https://pdfco-test-files.s3.us-west-2.amazonaws.com/pdf-to-text/sample.pdf",
"inline": true
}
常用参数包括:url(源文件 URL,必填)、inline(布尔,是否在响应体中返回结果)、async(布尔,是否作为后台任务运行)、pages(页码范围,从 1 开始,如 "1-3"、"1,3,5"、"2-")、name(输出文件名)、password(受保护 PDF 的密码)、expiration(输出链接过期时间,单位分钟,默认 60)。
响应格式示例:
{
"url": "https://pdf-temp-files.s3.amazonaws.com/.../result.pdf",
"pageCount": 5,
"error": false,
"status": 200,
"name": "result.pdf",
"credits": 10,
"remainingCredits": 9990
}
当设置 inline: true 时,响应会包含 body 字段,内含提取的内容。
上传本地文件需分三步:先调用 /file/upload/get-presigned-url 获取预签名上传 URL 和文件 URL,再用 PUT 上传文件,最后在后续 API 调用中使用返回的文件 URL。
大文件(超过 40 页或 10MB)建议使用 async: true,先启动异步任务获取 jobId,再通过 /job/check 传入 jobid 查询状态。
适用场景
适用于需要将 PDF 处理集成到自动化流程或应用中的场景,例如批量提取 PDF 文本、将 PDF 表格转为结构化数据、合并或拆分文档、压缩文件、由 HTML 或网页生成 PDF,以及从发票中提取结构化数据。
限制与注意事项
- 文件来源:使用直接 URL,或先通过预签名 URL 上传文件。
- 大文件:超过 40 页或 10MB 时使用 async: true。
- OCR:对扫描版 PDF 自动启用(非英文可设置 lang)。
- 速率限制:需查看 https://pdf.co/pricing 了解套餐。
- 输出过期:需在过期时间内下载结果(默认 60 分钟)。
- 积分:每次操作消耗积分,可在响应中查看 remainingCredits。
- 故障排查:若请求失败,可运行 zero doctor check-connector --env-name PDFCO_TOKEN 或 zero doctor check-connector --url https://api.pdf.co/v1/pdf/convert/to/text --method POST。
关于具体收费价格、套餐细节及平台支持情况,资料中暂未提供。