apyhub
FILE CONVERSION · FILE MANIPULATION

Advanced Convert Word to PDF API

What it does

Word to PDF Converter turns Word documents into PDF files and lets you track each conversion job as it runs. Send one or more files in .docx, .doc, .rtf, or .odt format, then receive a job list with job_id, filename, status, and progress for each conversion.

Use the job status endpoint when you need to monitor a single conversion. It accepts a job_id and returns the same job_id plus a status value of queued, processing, done, or failed, along with progress from 0 to 100. If you need to check completion across multiple conversions, the aggregate status endpoint accepts job_ids as a query string and returns overall status, progress, total_files, completed_files, and per-job details.

When a job finishes, download the converted PDF with the download endpoint using the same job_id. The download response is binary file content, so it fits directly into document workflows, upload pipelines, and batch export jobs.

This is a good fit for systems that need to standardize office documents into PDF for sharing, archiving, or downstream processing without manually opening files in a desktop editor.

▣ ENDPOINT 01 / 04
POST
Convert Word files (.docx, .doc, .rtf, .odt) to PDF
http://localhost:8080/pankajretestflows/advance-convert-word-to-pdf

QUICKSTART

GUIDE

Quickstart

Upload one or more Word documents to convert them to PDF.

curl -X POST "http://localhost:8080/pankajretestflows/advance-convert-word-to-pdf" \
  -H "apy-token: $APY_TOKEN" \
  -F "files=@/path/to/report.docx"

What you'll get back

Returns a JSON object with a jobs array. Each item in jobs is an object with job_id (string), filename (string), status (string), and progress (integer).

{
  "jobs": [
    {
      "job_id": "a1b2c3d4",
      "filename": "report.pdf",
      "status": "queued",
      "progress": 0
    }
  ]
}
TRY ITLIVE · 100 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*
files*
Word files (.docx, .doc, .rtf, .odt) to convert to PDF.

About this endpoint

What it does

Converts one or more Word files into PDF files by accepting uploaded files in the request body. The response returns a JSON object containing a jobs array with job details for each file.

Request Body

ParameterTypeMandatoryDescription
filesString ArrayYesWord files (.docx, .doc, .rtf, .odt) to convert to PDF.

Response

Returns a JSON object with a jobs array field. Each item in jobs is an object containing job_id, filename, status, and progress.

ParameterTypeMandatoryDescription
jobsObject ArrayYesArray of job objects, one per converted file.
jobs[].job_idStringYesJob identifier.
jobs[].filenameStringYesOutput filename.
jobs[].statusStringYesJob status.
jobs[].progressIntegerYesJob progress value.

Body

Name
Type
Description
bodyREQUIRED
object

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ ENDPOINT 02 / 04
GET
Get the status of a Word-to-PDF job
http://localhost:8080/pankajretestflows/advance-convert-word-to-pdf/status/:job_id

QUICKSTART

GUIDE

Quickstart

Check the status of a conversion job by replacing job_id in the path.

curl -X GET "http://localhost:8080/pankajretestflows/advance-convert-word-to-pdf/status/:job_id" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

Returns a JSON object with job_id as a string, status as a string (queued, processing, done, or failed), progress as an integer from 0 to 100, and an optional error string that may be null.

{
  "job_id": "job-12345",
  "status": "processing",
  "progress": 60,
  "error": null
}
TRY ITLIVE · 1 ATOM
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Checks the status of a Word-to-PDF conversion job by job ID and returns the job identifier, current status, progress percentage, and any error message if present.

Path Parameter(s)

AttributeTypeMandatoryDescription
job_idStringYesIdentifies the Word-to-PDF job to look up.

Response

Returns a JSON object with job_id as a string, status as a string enum, progress as an integer, and error as a nullable string. The success response includes the job’s current state and completion progress.

ParameterTypeMandatoryDescription
job_idStringYesThe job identifier.
statusENUMYesJob state. Allowed values: queued, processing, done, failed.
progressIntegerYesProgress percentage from 0 to 100.
errorStringNoError message, if one is available; nullable.

Path parameters

Name
Type
Description
job_idREQUIRED
string
▣ ENDPOINT 03 / 04
GET
Download a finished Word-to-PDF output
http://localhost:8080/pankajretestflows/advance-convert-word-to-pdf/download/:job_id

QUICKSTART

GUIDE

Quickstart

Download the converted PDF for a finished job by providing its job_id in the path.

curl -X GET "http://localhost:8080/pankajretestflows/advance-convert-word-to-pdf/download/:job_id" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

Returns a binary file (string with format: binary) containing the PDF download.

TRY ITLIVE · 1 ATOM
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Downloads the finished PDF output for a previously submitted Word-to-PDF job. The request takes the job identifier in the path and returns the binary file content on success.

Path Parameter(s)

AttributeTypeMandatoryDescription
job_idStringYesIdentifies the finished conversion job.

Response

Returns the binary file content as a string with binary format. The success response is the downloaded PDF produced by the job.

ParameterTypeMandatoryDescription
(binary content)StringYesBinary PDF file data returned by the download endpoint.

Path parameters

Name
Type
Description
job_idREQUIRED
string
▣ ENDPOINT 04 / 04
GET
Aggregate progress across Word-to-PDF jobs
http://localhost:8080/pankajretestflows/advance-convert-word-to-pdf/overall-status

QUICKSTART

GUIDE

Quickstart

Check the overall status for one or more conversion jobs by passing the required job_ids query parameter.

curl -X GET "http://localhost:8080/pankajretestflows/advance-convert-word-to-pdf/overall-status?job_ids=job-123,job-456" \
  -H "apy-token: $APY_TOKEN"

What you'll get back

Returns a JSON object with required status and progress fields, plus optional details, total_files, and completed_files fields. status is one of unknown, queued, processing, done, or failed, and progress is an integer from 0 to 100.

{
  "status": "processing",
  "progress": 60,
  "details": [
    {
      "job_id": "job-123",
      "status": "processing",
      "progress": 60
    }
  ],
  "total_files": 2,
  "completed_files": 1
}
TRY ITLIVE · 1 ATOM
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.

About this endpoint

What it does

Returns the aggregate progress for one or more Word-to-PDF jobs identified by job_ids. The response includes an overall status, overall progress, and optional per-job details.

Query Parameter(s)

AttributeTypeMandatoryDescription
job_idsStringYesOne or more job identifiers.

Response

Returns a JSON object with required status and progress fields, plus optional details, total_files, and completed_files fields. status indicates the aggregate job state, and progress is an integer from 0 to 100.

AttributeTypeMandatoryDescription
statusENUMYesAggregate status. Allowed values: unknown, queued, processing, done, failed.
progressIntegerYesOverall progress percentage. Minimum 0, maximum 100.
detailsObject ArrayNoPer-job status entries.<br>details[].job_id: String — Job identifier.<br>details[].status: String — Job status string.<br>details[].progress: Integer — Per-job progress value.
total_filesIntegerNoTotal number of files across the jobs.
completed_filesIntegerNoNumber of files completed across the jobs.

Query parameters

Name
Type
Description
job_idsREQUIRED
string
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.