Skip to content

PDF 合并 API

BASE URLhttps://api-server.compdf.com/server/

❖ 功能说明

将多个 PDF 文件按上传顺序合并为单一 PDF,支持对每个源文件单独指定页面范围及打开密码。

❖ 调用方式

同步请求 (Sync)
接口完成后直接返回结果文件。推荐在小文件、前端实时交互等需要即时反馈的场景下使用。
异步请求 (Async)
先返回任务受理结果,再通过 taskId 查询处理进度和结果。适用于大文件及批量执行任务。
预签名请求方式
通过预签名等安全机制上传处理,适用于高安全性要求及数据隐私合规场景。

▎调用流程

1上传文件
2调用接口(同步)
3获取结果地址
4下载文件

▎使用限制

下载有效期24 小时

同步执行

POSThttps://api-server.compdf.com/server/v2/process/pdf/merge

❖ 请求参数 (Parameters)

在 Header 中发送的 x-api-key 认证凭证

Body Parameters multipart/form-data

未选择文件
待合并的 PDF 文件列表,至少 2 份。提交顺序即为合并顺序。
公共默认打开密码。若所有源 PDF 共用同一密码可填此字段;逐文件密码请使用 passwords[]。
接口错误提示语言。1=English,2=中文(默认)。
文件 1
文件 2
每行对应上方上传文件列表中的一份文件;如选择 N 份文件,请按顺序填写 N 行。
与 file[] 列表一一对应的页范围;每个文件单独一项。页码从 1 开始,可填写 "all" 或 "1-3,6"(多段以英文逗号分隔)。
文件 1
文件 2
每行对应上方上传文件列表中的一份文件;如选择 N 份文件,请按顺序填写 N 行。
与 file[] 列表一一对应的打开密码;不需要密码的位置用空字符串占位。
输出 PDF 文件名,未传默认为 merged.pdf。

❖ 响应属性说明

字段类型说明
codeString业务状态码
msgString返回信息
dataArray响应数据
data[].fileKeyString文件在存储系统中的唯一 key。
data[].taskIdString任务 ID。创建任务后返回,后续启动转换或查询任务状态时使用。
data[].fileNameString源文件名称。预签名模式必填,用于生成对象存储上传地址。
data[].downFileNameString转换完成后的输出文件名。
data[].fileUrlString源文件存储地址或对象存储 key。
data[].downloadUrlString文件下载地址
data[].sourceTypeString源文件类型或源功能分类,例如 pdf、docx、img、documentAI、idp。
data[].targetTypeString目标文件类型或目标功能,例如 docx、pdf、split、ocr。
data[].fileSizeInteger源文件大小,单位为字节。
data[].convertSizeInteger转换结果文件大小,单位为字节。
data[].convertTimeInteger单个文件转换耗时,单位通常为毫秒。
data[].statusString文件处理状态。常见值包括 success、failed、processing 等。
data[].failureCodeString文件转换失败时的错误码
data[].failureReasonString文件转换失败时的错误原因。
data[].fileParameterString创建任务时提交的转档参数 JSON 字符串。
🔗请求示例 (Request)
curl --request POST \
  --url https://api-server.compdf.com/server/v2/process/pdf/merge \
  --header 'x-api-key: YOUR API-KEY' \
  --form [email protected] \
  --form [email protected]
响应示例 (Response)
200 OK
{
  "code": "200",
  "msg": "success",
  "data": [
    {
      "fileKey": "<string>",
      "taskId": "<string>",
      "fileName": "<string>",
      "downFileName": "<string>",
      "fileUrl": "<string>",
      "downloadUrl": "<string>",
      "sourceType": "<string>",
      "targetType": "<string>",
      "fileSize": 0,
      "convertSize": 0,
      "convertTime": 0,
      "status": "<string>",
      "failureCode": "<string>",
      "failureReason": "<string>",
      "fileParameter": "<string>"
    }
  ]
}