通过 API,把 PDF 转成 Markdown。
在应用或批量工作台中使用同一转换服务,通过产品 API Key 安全接入。
Personal、Developer、Team 和 Enterprise 均包含 API、CLI、MCP 和批量提交,各入口共用套餐页数额度。
curl https://pdftomd.cc/api/v1/convert \
-H "Authorization: Bearer $PDFTOMD_API_KEY" \
-H "Idempotency-Key: example-conversion-0001" \
-F "file=@document.pdf;type=application/pdf" \
-F "keepImages=true"在终端或 AI Agent 中使用 PDF to MD。
CLI 和 MCP 客户端复用同一转换 API、任务记录和账户页数额度。
Personal、Developer、Team 和 Enterprise 均包含 API、CLI、MCP 和批量提交,各入口共用套餐页数额度。
安装客户端
需要 Node.js 20+。安装可下载的客户端包,再设置服务地址和产品 API Key。
npm install --global https://pdftomd.cc/downloads/pdftomd-client-0.1.0.tgz下载 CLI + MCP 安装包(.tgz)export PDFTOMD_BASE_URL="https://pdftomd.cc"
# 请在终端或密钥管理工具中设置 PDFTOMD_API_KEY。
pdftomd usage
pdftomd convert document.pdf \
--output document.md \
--idempotency-key document-request-0001
pdftomd batch first.pdf second.pdf \
--idempotency-key batch-request-000001命令返回便于脚本处理的 JSON;错误和自动生成的请求 ID 输出到 stderr。导出不覆盖已有文件,上传中断后请使用相同请求 ID 和文件重试。
| pdf_to_md_convert | 提交一个 PDF 并返回任务 ID。 |
| pdf_to_md_batch | 提交最多 10 个 PDF,返回逐文件处理记录。 |
| pdf_to_md_get_job | 查询状态及分页 Markdown,每次最多 20,000 字符。 |
| pdf_to_md_get_batch | 查询批次中每个文件的状态。 |
| pdf_to_md_usage | 查询余额、月度用量与套餐权限。 |
接口列表
| POST | /api/v1/convert | 提交一个 PDF,返回 HTTP 202 和任务 ID。 |
| POST | /api/v1/batches | 用重复的 files 字段提交最多 10 个 PDF,返回各文件处理记录。 |
| GET | /api/v1/jobs/{id} | 查询任务状态及已完成的 Markdown 结果。 |
| GET | /api/v1/batches/{id} | 查询批次内各文件状态,通过任务接口读取结果。 |
| GET | /api/v1/usage | 查询剩余额度及 UTC 当月转换用量。 |
提交、轮询、读取结果
将密钥设置到 PDFTOMD_API_KEY 环境变量并仅在服务端使用。提交后每 5 秒查询任务或批次,直到状态为 success 或 failed。/api/v1 接口仅接受 API Key,不使用浏览器登录 Cookie。
# 提交响应示例,并非真实转换结果
{
"code": 0,
"message": "ok",
"data": {
"id": "pdf_…",
"status": "pending",
"fileName": "document.pdf",
"pages": 12,
"quality": null
}
}
curl https://pdftomd.cc/api/v1/jobs/JOB_ID \
-H "Authorization: Bearer $PDFTOMD_API_KEY"成功任务返回 result.markdown、result.pages、result.images(文件名与 Base64 数据);失败任务返回错误码。批次响应不包含完整结果,请按任务分别读取。当前版本尚不提供向客户地址推送的 Webhook。
上传和请求限制
仅支持 PDF。单文件最多 10 MB、200 页;每批最多 10 个文件、合计 25 MB。整批文件先校验再提交。同一账户、同一接口写请求至少间隔 2 秒,读请求至少间隔 0.5 秒;HTTP 429 包含 Retry-After。
重试与幂等处理
Idempotency-Key 使用 16-80 位字母、数字、下划线或连字符。网络中断后,使用相同文件、顺序、选项及密钥重试;内容不同返回 HTTP 409。批次可能部分提交,相同请求重试会尝试补交缺失文件;已失败任务需使用新密钥。
错误与计费
响应包含 code、message、data,code 为 0 表示成功。HTTP 401:密钥无效;402:额度不足;403:需有效付费套餐或 API 已关闭;404:任务不存在;409:幂等冲突;413:上传过大;429:频率限制;503:引擎未配置。标准转换每页 1 点,提交时预占,失败退回。
解析质量
上游质量评分用于辅助复核,不代表经过实测的识别准确率。引擎没有返回评分时,明确显示为未提供。 未提供评分时 API 返回 quality: null;真实评分格式为 score, scale: 5, source: "provider" 。当前版本尚不包含字词置信度和原文错误标注。