Skip to content
On this page

Request Description

Precautions

  • The file download link returned by the interface will generally be deleted at 24 o'clock the next day. Please download and store it in time.
  • When calling the interface, please pay attention to the parameter transmission method of the corresponding interface in the document, and whether you need to carry Token to prevent parameter confusion.
  • An HTTP status of 200 indicates that your HTTP request is successful, which does not mean that the file process successfully.

Description of Asynchronous Task Processing

To meet the needs of users for high concurrency, the ComPDFKit API uses a message queue asynchronously to process task requests by default to ensure the high availability of the API.

Interface TypeRequest MethodResults Return MethodPros and Cons
AsynchronousAfter sending a request, there is no need to wait for the task to finish processing, and the result is obtained actively at onceGet the recognition results by querying the task result interfaceWhen the concurrency is large, the success rate is high; when the network transmission is slow or not particularly stable, it is more stable

Request PDF Tool List

This interface is used to obtain the collection of all PDF tools supported by the ComPDFKit API, and you can query the URL of each PDF tool.

Request Method

  • request method: GET
  • parameter transfer method: Query

Request Address

https://api-server.compdf.com/server/v1/tool/support

Return Parameter

ParameterData TypeDescription
sourceTypeNameStringSource file format
targetTypeNameStringDestination file format
executeTypeUrlStringType of execution task
java
"code": "200",
"msg": "success",
"data": {
    {
        "sourceTypeName": "pdf",
        "targetTypeName": "docx",
        "executeTypeUrl": "pdf/docx"
    },
    {
        "sourceTypeName": "pdf",
        "targetTypeName": "jpg",
        "executeTypeUrl": "pdf/jpg"
    },
    {
        "sourceTypeName": "doc",
        "targetTypeName": "pdf",
        "executeTypeUrl": "doc/pdf"
    }
    ......
}

Create Task

A task ID is automatically generated for you based on the type of PDF tool you choose. You can provide the callback notification URL. After the task processing is completed, we will notify you of the task result through the callback interface. You can perform other operations according to the task result, such as downloading the result file.

Request method

  • Request method: GET
  • Parameter transfer method: Path

Path parameter

ParameterData TypeDescriptionRequired
executeTypeUrlStringType of execution taskyes

Request parameter

ParameterData TypeDescriptionRequired
languageIntegerInterface error prompt language (1, English, 2, Chinese)no

Request address

https://api-server.compdf.com/server/v1/task/{executeTypeUrl}

Return parameter

ParameterData TypeDescription
taskIdStringtask id
java
"code": "200",
"msg": "success",
"data": {
    "taskId": "2da9dc86-5f41-4991-b9da-bc8434f64cc5"
}

Upload Files

Upload the original file and bind the file to the task ID. The field parameter is used to pass the JSON string to set the processing parameters for the file. Each file will generate automatically a unique filekey. Please note that a maximum of five files can be uploaded for a task ID and no files can be uploaded for that task after it has started.

Request Method

  • Request method: POST
  • Parameter transfer method: Body (form-data)

Request Parameter

ParameterData TypeDescriptionRequired
fileFileUploaded fileyes
taskIdStringTask idyes
passwordStringPasswordno
parameterStringFile processing parametersno
imageFileWatermark image(This parameter needs to be added when adding an image watermark)no
languageIntegerInterface error prompt language (1, English, 2, Chinese)no

Set the processing parameters only for the currently supported functions. If no parameter is set, the default value will be used. The JSON format corresponding to the different function types and the explanation of the fields are shown in the tool guides.

Request Address

https://api-server.compdf.com/server/v1/file/upload

Return Parameter

ParameterData TypeDescription
fileKeyStringfile unique identification
fileUrlStringfile storage path
java
"code": "200",
"msg": "success",
"data": {
    "fileKey": "c6e0dcde-7533-4058-81fb-ea2a26677f85",
    "fileUrl": "<fileUrl>"
}

Process Files

After the file upload is completed, call this interface with the task ID to process file.

Request Method

  • Request method: GET
  • Parameter transfer method: Query

Request Parameter

ParameterData TypeDescriptionRequired
taskIdStringTask idyes
languageIntegerInterface error prompt language (1, English, 2, Chinese)no

Request address

https://api-server.compdf.com/server/v1/execute/start?taskId=<taskId>&language=<language>

Return parameter

ParameterData TypeDescription
taskIdStringtask id
java
"code": "200",
"msg": "success",
"data": {
    "taskId": "135e8570-6377-4660-94d2-867952796f2c"
}

Download Files

Get the download link of the corresponding result file according to the filekey of each file.

Request Method

  • request method: GET
  • parameter transfer method: Query

Request parameter

ParameterData TypeDescriptionRequired
fileKeyStringFile unique identificationyes
languageIntegerInterface error prompt language (1, English, 2, Chinese)no

Request Address

https://api-server.compdf.com/server/v1/file/fileInfo?fileKey={fileKey}&language=<language>

Return Parameter

ParameterData TypeDescription
fileKeyStringFile unique identification
taskIdStringTask id
fileNameStringOriginal file name
downFileNameStringDown File Name
fileUrlStringOriginal file address
downloadUrlStringTransfer download address
sourceTypeStringSource file format
targetTypeStringTarget file format
fileSizeLongFile size
convertSizeLongConvert success size
convertTimeLongConversion time
statusStringFile Conversion Status
failureCodeStringFailure reason code
failureReasonStringFailure reason
fileParameterStringFile processing parameters
java
"code": "200",
"msg": "success",
"data": {
    "fileKey": "ba13a2a8-1278-43d4-a9a6-7ecc28a0804f",
    "taskId": "f416dbcf-0c10-4f93-ab9e-a835c1f5dba1",
    "fileName": "test.pdf",
    "downFileName": "test.docx",
    "fileUrl": "<fileUrl>",
    "downloadUrl": "<downloadUrl>",
    "sourceType": "pdf",
    "targetType": "docx",
    "fileSize": 24475,
    "convertSize": 6922,
    "convertTime": 8,
    "status": "<status>",
    "failureCode": "",
    "failureReason": "",
    "fileParameter": "{    \"pageOptions\": \"3\"}"
}

Note:

status :File Conversion Status

StatusDescription
createdFile upload succeeded
processingFile conversion in progress
successFile conversion succeeded
failedFile conversion failed
overdueFile saving expired, file deletion

Get Task Information

Request task status and file-related metadata based on the task ID.

Request Method

  • Request method: GET
  • Parameter transfer method: Query

Request Parameter

ParameterData TypeDescriptionRequired
taskIdStringTask idyes
languageIntegerInterface error prompt language (1, English, 2, Chinese)no

Request Address

https://api-server.compdf.com/server/v1/task/taskInfo?taskId={taskId}&language=<language>

Return Parameter

ParameterData TypeDescription
taskIdStringTask id
taskFileNumIntegerNumber of task files
taskSuccessNumStringNumber of successes
taskFailNumStringNumber of failures
taskStatusStringTask status
assetTypeIdStringUse Asset Type
taskCostStringTask cost
taskTimeLongTask duration
sourceTypeLongSource file format
targetTypeLongTarget file format
fileInfoDTOListListTask file information
java
"code": "200",
"msg": "success",
"data": {
    "taskId": "f416dbcf-0c10-4f93-ab9e-a835c1f5dba1",
    "taskFileNum": 1,
    "taskSuccessNum": 1,
    "taskFailNum": 0,
    "taskStatus": "TaskFinish",
    "assetTypeId": 0,
    "taskCost": 1,
    "taskTime": 1,
    "sourceType": "pdf",
    "targetType": "docx",
    "fileInfoDTOList": [
      {
        "fileKey": "ba13a2a8-1278-43d4-a9a6-7ecc28a0804f",
        "taskId": "f416dbcf-0c10-4f93-ab9e-a835c1f5dba1",
        "fileName": "test.pdf",
        "downFileName": "test.docx",
        "fileUrl": "<fileUrl>",
        "downloadUrl": "<downloadUrl>",
        "sourceType": "pdf",
        "targetType": "docx",
        "fileSize": 24475,
        "convertSize": 6922,
        "convertTime": 8,
        "status": "<status>",
        "failureCode": "",
        "failureReason": "",
        "fileParameter": "{    \"pageOptions\": \"3\"}"
      }
    ]
}

Note:

taskStatus :Task processing status

StatusDescription
TaskStartTask created successfully
TaskWaitingTask waiting for processing
TaskProcessingThe task is being processed
TaskFinishTask processing completed
TaskOverdueTask waiting for processing timeout

Get Asset Details

Get the remaining assets of the current user.

Request Method

  • Request method: GET
  • Parameter transfer mode: Query

Request Address

https://api-server.compdf.com/server/v1/asset/info

Return Parameter

Return ParameterData TypeDescription
tenantAssetListAsset Information
assetTypeNameStringAsset Type
assetIntegerAsset balance
withholdingAssetIntegerTotal withholding assets
java
"code": "200",
"msg": "success",
"data": {
    "tenantAsset": [
      {
        "assetTypeName": "SUBSCRIPTIONS",
        "asset": 12,
        "withholdingAsset": 0
      },
      {
        "assetTypeName": "PACKAGES",
        "asset": 1,
        "withholdingAsset": 0
      }
    ]
}

Get Task List

Request the current user file transfer task list.

Request Method

  • Request method: GET
  • Parameter transfer mode: Query

Request Parameter

  • page:Pagination - Current number of pages, not required, default to 1 if not filled.
  • size:Pagination - The number of items displayed on the page, not required, the default is 10 if not filled.
ParameterData TypeDescriptionRequired
pageLongCurrent pageno(If not filled, the default is 1)
sizeLongNumber of pagesno(If not filled, the default is 10)

Request Address

https://api-server.compdf.com/server/v1/task/list

Return Parameter

ParameterData TypeDescription
createdByStringFounder
updatedByStringUpdater
creationTimeLocalDateTimeCreation time
updateTimeLocalDateTimeUpdate time
idLongTask primary key id
taskIdStringTask id
taskUrltaskUrlTask original folder
taskLoadUrlStringTask conversion folder
taskFileNumIntegerNumber of task files
taskSuccessNumIntegerNumber of successes
taskFailNumIntegerNumber of failures
taskStatusStringTask status
assetTypeIdIntegerWorking with asset types
taskCostIntegerTask cost
taskTimeLongTask duration
callbackUrlStringCallback address
serverStringServer address
sourceTypeStringSource file format
targetTypeStringTarget file format
tenantIdLongTenant id
java
{
    "records": [
      {
        "createdBy": null,
        "updatedBy": null,
        "creationTime": "2022-08-31 15:06:20",
        "updateTime": "2022-08-31 15:14:44",
        "id": 771751854513061888,
        "taskId": "a300c232-0a2d-4e3c-95f2-cfb4604b2018",
        "taskUrl": "",
        "taskLoadUrl": "",
        "taskFileNum": 3,
        "taskSuccessNum": 0,
        "taskFailNum": 0,
        "taskStatus": "TaskFinish",
        "assetTypeId": 0,
        "taskCost": 3,
        "taskTime": 0,
        "callbackUrl": "",
        "server": "",
        "sourceType": "pdf",
        "targetType": "docx",
        "tenantId": 1
      },
      {
        "createdBy": null,
        "updatedBy": null,
        "creationTime": "2022-08-31 15:25:24",
        "updateTime": "2022-08-31 15:26:17",
        "id": 771756653954465793,
        "taskId": "e74d60a6-fbd3-4d7d-9efa-0dc70297ee0b",
        "taskUrl": "",
        "taskLoadUrl": "",
        "taskFileNum": 3,
        "taskSuccessNum": 3,
        "taskFailNum": 0,
        "taskStatus": "TaskFinish",
        "assetTypeId": 0,
        "taskCost": 3,
        "taskTime": 3,
        "callbackUrl": "",
        "server": "",
        "sourceType": "pdf",
        "targetType": "docx",
        "tenantId": 1
      }
    ],
    "total": 528,
    "size": 2,
    "current": 1,
    "orders": [],
    "optimizeCountSql": true,
    "searchCount": true,
    "countId": null,
    "maxLimit": null,
    "pages": 264
}