Stirling-PDF/pdftools.yml
2025-09-05 00:10:27 +01:00

4079 lines
118 KiB
YAML

openapi: 3.1.0
info:
title: Stirling PDF - Processing API
description: >-
API documentation for PDF processing operations including conversion,
manipulation, security, and utility functions.
termsOfService: 'https://www.stirlingpdf.com/terms'
contact:
name: Stirling Software
url: 'https://www.stirlingpdf.com'
email: contact@stirlingpdf.com
license:
name: MIT
url: >-
https://raw.githubusercontent.com/Stirling-Tools/Stirling-PDF/refs/heads/main/LICENSE
version: 1.0.0
servers:
- url: 'http://localhost:8080'
description: Generated server url
tags:
- name: Filter
description: Filter APIs
- name: Security
description: Security APIs
- name: Pipeline
description: Pipeline APIs
- name: Proprietary UI Data
description: APIs for React UI data (Proprietary features)
- name: Analysis
description: Analysis APIs
- name: Misc
description: Miscellaneous APIs
- name: Convert
description: Convert APIs
- name: General
description: General APIs
paths:
/api/v1/security/validate-signature:
post:
tags:
- Security
summary: Validate PDF Digital Signature
description: >-
Validates the digital signatures in a PDF file against default or custom
certificates. Input:PDF Output:JSON Type:SISO
operationId: validateSignature
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/SignatureValidationRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/SignatureValidationResult'
/api/v1/security/sanitize-pdf:
post:
tags:
- Security
summary: Sanitize a PDF file
description: >-
This endpoint processes a PDF file and removes specific elements based
on the provided options. Input:PDF Output:PDF Type:SISO
operationId: sanitizePDF
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/SanitizePdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/security/remove-password:
post:
tags:
- Security
summary: Remove password from a PDF file
description: >-
This endpoint removes the password from a protected PDF file. Users need
to provide the existing password. Input:PDF Output:PDF Type:SISO
operationId: removePassword
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFPasswordRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/security/remove-cert-sign:
post:
tags:
- Security
summary: Remove digital signature from PDF
description: >-
This endpoint accepts a PDF file and returns the PDF file without the
digital signature. Input:PDF, Output:PDF Type:SISO
operationId: removeCertSignPDF
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/security/redact:
post:
tags:
- Security
summary: Redacts areas and pages in a PDF document
description: >-
This operation takes an input PDF file with a list of areas, page
number(s)/range(s)/function(s) to redact. Input:PDF, Output:PDF,
Type:SISO
operationId: redactPdfManual
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ManualRedactPdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/security/get-info-on-pdf:
post:
tags:
- Security
summary: Summary here
description: 'desc. Input:PDF Output:JSON Type:SISO'
operationId: getPdfInfo
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/security/cert-sign:
post:
tags:
- Security
summary: Sign PDF with a Digital Certificate
description: >-
This endpoint accepts a PDF file, a digital certificate and related
information to sign the PDF. It then returns the digitally signed PDF
file. Input:PDF Output:PDF Type:SISO
operationId: signPDFWithCert
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/SignPDFWithCertRequest'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/SignPDFWithCertRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/security/auto-redact:
post:
tags:
- Security
summary: Redacts listOfText in a PDF document
description: >-
This operation takes an input PDF file and redacts the provided
listOfText. Input:PDF, Output:PDF, Type:SISO
operationId: redactPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/RedactPdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/security/add-watermark:
post:
tags:
- Security
summary: Add watermark to a PDF file
description: >-
This endpoint adds a watermark to a given PDF file. Users can specify
the watermark type (text or image), rotation, opacity, width spacer, and
height spacer. Input:PDF Output:PDF Type:SISO
operationId: addWatermark
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/AddWatermarkRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/security/add-password:
post:
tags:
- Security
summary: Add password to a PDF file
description: >-
This endpoint adds password protection to a PDF file. Users can specify
a set of permissions that should be applied to the file. Input:PDF
Output:PDF
operationId: addPassword
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/AddPasswordRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/pipeline/handleData:
post:
tags:
- Pipeline
operationId: handleData
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/HandleDataRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/update-metadata:
post:
tags:
- Misc
summary: Update metadata of a PDF file
description: >-
This endpoint allows you to update the metadata of a given PDF file. You
can add, modify, or delete standard and custom metadata fields.
Input:PDF Output:PDF Type:SISO
operationId: metadata
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/MetadataRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/unlock-pdf-forms:
post:
tags:
- Misc
summary: Remove read-only property from form fields
description: >-
Removing read-only property from form fields making them
fillableInput:PDF, Output:PDF. Type:SISO
operationId: unlockPDFForms
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/show-javascript:
post:
tags:
- Misc
summary: Grabs all JS from a PDF and returns a single JS file with all code
description: 'desc. Input:PDF Output:JS Type:SISO'
operationId: extractHeader
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/scanner-effect:
post:
tags:
- Misc
summary: Apply scanner effect to PDF
description: >-
Applies various effects to simulate a scanned document, including
rotation, noise, and edge softening. Input:PDF Output:PDF Type:SISO
operationId: scannerEffect
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ScannerEffectRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/replace-invert-pdf:
post:
tags:
- Misc
summary: Replace-Invert Color PDF
description: >-
This endpoint accepts a PDF file and option of invert all colors or
replace text and background colors. Input:PDF Output:PDF Type:SISO
operationId: replaceAndInvertColor
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ReplaceAndInvertColorRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: binary
/api/v1/misc/repair:
post:
tags:
- Misc
summary: Repair a PDF file
description: >-
This endpoint repairs a given PDF file by running Ghostscript (primary),
qpdf (fallback), or PDFBox (if no external tools available). The PDF is
first saved to a temporary location, repaired, read back, and then
returned as a response. Input:PDF Output:PDF Type:SISO
operationId: repairPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/remove-blanks:
post:
tags:
- Misc
summary: Remove blank pages from a PDF file
description: >-
This endpoint removes blank pages from a given PDF file. Users can
specify the threshold and white percentage to tune the detection of
blank pages. Input:PDF Output:PDF Type:SISO
operationId: removeBlankPages
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/RemoveBlankPagesRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/ocr-pdf:
post:
tags:
- Misc
summary: Process a PDF file with OCR
description: >-
This endpoint processes a PDF file using OCR (Optical Character
Recognition). Users can specify languages, sidecar, deskew, clean,
cleanFinal, ocrType, ocrRenderType, and removeImagesAfter options. Uses
OCRmyPDF if available, falls back to Tesseract. Input:PDF Output:PDF
Type:SI-Conditional
operationId: processPdfWithOCR
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ProcessPdfWithOcrRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/flatten:
post:
tags:
- Misc
summary: Flatten PDF form fields or full page
description: >-
Flattening just PDF form fields or converting each page to images to
make text unselectable. Input:PDF, Output:PDF. Type:SISO
operationId: flatten
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/FlattenRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/extract-images:
post:
tags:
- Misc
summary: Extract images from a PDF file
description: >-
This endpoint extracts images from a given PDF file and returns them in
a zip file. Users can specify the output image format. Input:PDF
Output:IMAGE/ZIP Type:SIMO
operationId: extractImages
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFExtractImagesRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/extract-image-scans:
post:
tags:
- Misc
summary: Extract image scans from an input file
description: >-
This endpoint extracts image scans from a given file based on certain
parameters. Users can specify angle threshold, tolerance, minimum area,
minimum contour area, and border size. Input:PDF Output:IMAGE/ZIP
Type:SIMO
operationId: extractImageScans
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ExtractImageScansRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/decompress-pdf:
post:
tags:
- Misc
summary: Decompress PDF streams
description: Fully decompresses all PDF streams including text content
operationId: decompressPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/compress-pdf:
post:
tags:
- Misc
summary: Optimize PDF file
description: >-
This endpoint accepts a PDF file and optimizes it based on the provided
parameters. Input:PDF Output:PDF Type:SISO
operationId: optimizePdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/OptimizePdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/auto-split-pdf:
post:
tags:
- Misc
summary: Auto split PDF pages into separate documents
description: >-
This endpoint accepts a PDF file, scans each page for a specific QR
code, and splits the document at the QR code boundaries. The output is a
zip file containing each separate PDF document. Input:PDF Output:ZIP-PDF
Type:SISO
operationId: autoSplitPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/AutoSplitPdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/auto-rename:
post:
tags:
- Misc
summary: Extract header from PDF file
description: >-
This endpoint accepts a PDF file and attempts to extract its title or
header based on heuristics. Input:PDF Output:PDF Type:SISO
operationId: extractHeader_1
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ExtractHeaderRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/add-stamp:
post:
tags:
- Misc
summary: Add stamp to a PDF file
description: >-
This endpoint adds a stamp to a given PDF file. Users can specify the
stamp type (text or image), rotation, opacity, width spacer, and height
spacer. Input:PDF Output:PDF Type:SISO
operationId: addStamp
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/AddStampRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/add-page-numbers:
post:
tags:
- Misc
summary: Add page numbers to a PDF document
description: >-
This operation takes an input PDF file and adds page numbers to it.
Input:PDF Output:PDF Type:SISO
operationId: addPageNumbers
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/AddPageNumbersRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/add-image:
post:
tags:
- Misc
summary: Overlay image onto a PDF file
description: >-
This endpoint overlays an image onto a PDF file at the specified
coordinates. The image can be overlaid on every page of the PDF if
specified. Input:PDF/IMAGE Output:PDF Type:SISO
operationId: overlayImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/OverlayImageRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/misc/add-attachments:
post:
tags:
- Misc
summary: Add attachments to PDF
description: 'This endpoint adds attachments to a PDF. Input:PDF, Output:PDF Type:MISO'
operationId: addAttachments
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/AddAttachmentRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/split-pdf-by-sections:
post:
tags:
- General
summary: Split PDF pages into smaller sections
description: >-
Split each page of a PDF into smaller sections based on the user's
choice (halves, thirds, quarters, etc.), both vertically and
horizontally. Input:PDF Output:ZIP-PDF Type:SISO
operationId: splitPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/SplitPdfBySectionsRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/split-pdf-by-chapters:
post:
tags:
- General
summary: Split PDFs by Chapters
description: Splits a PDF into chapters and returns a ZIP file.
operationId: splitPdf_1
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/SplitPdfByChaptersRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/split-pages:
post:
tags:
- General
summary: Split a PDF file into separate documents
description: >-
This endpoint splits a given PDF file into separate documents based on
the specified page numbers or ranges. Users can specify pages using
individual numbers, ranges, or 'all' for every page. Input:PDF
Output:PDF Type:SIMO
operationId: splitPdf_2
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFWithPageNums'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/split-by-size-or-count:
post:
tags:
- General
summary: Auto split PDF pages into separate documents based on size or count
description: "split PDF into multiple paged documents based on size/count, ie if 20 pages and split into 5, it does 5 documents each 4 pages\r\n if 10MB and each page is 1MB and you enter 2MB then 5 docs each 2MB (rounded so that it accepts 1.9MB but not 2.1MB) Input:PDF Output:ZIP-PDF Type:SISO"
operationId: autoSplitPdf_1
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/SplitPdfBySizeOrCountRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/scale-pages:
post:
tags:
- General
summary: Change the size of a PDF page/document
description: >-
This operation takes an input PDF file and the size to scale the pages
to in the output PDF file. Input:PDF Output:PDF Type:SISO
operationId: scalePages
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ScalePagesRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/rotate-pdf:
post:
tags:
- General
summary: Rotate a PDF file
description: >-
This endpoint rotates a given PDF file by a specified angle. The angle
must be a multiple of 90. Input:PDF Output:PDF Type:SISO
operationId: rotatePDF
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/RotatePDFRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/remove-pages:
post:
tags:
- General
summary: Remove pages from a PDF file
description: >-
This endpoint removes specified pages from a given PDF file. Users can
provide a comma-separated list of page numbers or ranges to delete.
Input:PDF Output:PDF Type:SISO
operationId: deletePages
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFWithPageNums'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/remove-image-pdf:
post:
tags:
- General
summary: Remove images from file to reduce the file size.
description: >-
This endpoint remove images from file to reduce the file size.Input:PDF
Output:PDF Type:MISO
operationId: removeImages
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/rearrange-pages:
post:
tags:
- General
summary: Rearrange pages in a PDF file
description: >-
This endpoint rearranges pages in a given PDF file based on the
specified page order or custom mode. Users can provide a page order as a
comma-separated list of page numbers or page ranges, or a custom mode.
Input:PDF Output:PDF
operationId: rearrangePages
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/RearrangePagesRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/pdf-to-single-page:
post:
tags:
- General
summary: Convert a multi-page PDF into a single long page PDF
description: >-
This endpoint converts a multi-page PDF document into a single paged PDF
document. The width of the single page will be same as the input's
width, but the height will be the sum of all the pages' heights.
Input:PDF Output:PDF Type:SISO
operationId: pdfToSinglePage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/overlay-pdfs:
post:
tags:
- General
summary: Overlay PDF files in various modes
description: >-
Overlay PDF files onto a base PDF with different modes: Sequential,
Interleaved, or Fixed Repeat. Input:PDF Output:PDF Type:MIMO
operationId: overlayPdfs
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/OverlayPdfsRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/multi-page-layout:
post:
tags:
- General
summary: Merge multiple pages of a PDF document into a single page
description: >-
This operation takes an input PDF file and the number of pages to merge
into a single sheet in the output PDF file. Input:PDF Output:PDF
Type:SISO
operationId: mergeMultiplePagesIntoOne
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/MergeMultiplePagesRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/merge-pdfs:
post:
tags:
- General
summary: Merge multiple PDF files into one
description: >-
This endpoint merges multiple PDF files into a single PDF file. The
merged file will contain all pages from the input files in the order
they were provided. Input:PDF Output:PDF Type:MISO
operationId: mergePdfs
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/MergePdfsRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/extract-bookmarks:
post:
tags:
- General
summary: Extract PDF Bookmarks
description: Extracts bookmarks/table of contents from a PDF document as JSON.
operationId: extractBookmarks
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: string
format: binary
required:
- file
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
type: object
additionalProperties: {}
/api/v1/general/edit-table-of-contents:
post:
tags:
- General
summary: Edit Table of Contents
description: Add or edit bookmarks/table of contents in a PDF document.
operationId: editTableOfContents
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/EditTableOfContentsRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/crop:
post:
tags:
- General
summary: Crops a PDF document
description: >-
This operation takes an input PDF file and crops it according to the
given coordinates. Input:PDF Output:PDF Type:SISO
operationId: cropPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/CropPdfForm'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/general/booklet-imposition:
post:
tags:
- General
summary: Create a booklet with proper page imposition
description: >-
This operation combines page reordering for booklet printing with
multi-page layout. It rearranges pages in the correct order for booklet
printing and places multiple pages on each sheet for proper folding and
binding. Input:PDF Output:PDF Type:SISO
operationId: createBookletImposition
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/BookletImpositionRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/filter/filter-page-size:
post:
tags:
- Filter
summary: Checks if a PDF is of a certain size
description: 'Input:PDF Output:Boolean Type:SISO'
operationId: pageSize
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PageSizeRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/filter/filter-page-rotation:
post:
tags:
- Filter
summary: Checks if a PDF is of a certain rotation
description: 'Input:PDF Output:Boolean Type:SISO'
operationId: pageRotation
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PageRotationRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/filter/filter-page-count:
post:
tags:
- Filter
summary: 'Checks if a PDF is greater, less or equal to a setPageCount'
description: 'Input:PDF Output:Boolean Type:SISO'
operationId: pageCount
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFComparisonAndCount'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/filter/filter-file-size:
post:
tags:
- Filter
summary: Checks if a PDF is a set file size
description: 'Input:PDF Output:Boolean Type:SISO'
operationId: fileSize
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/FileSizeRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/filter/filter-contains-text:
post:
tags:
- Filter
summary: 'Checks if a PDF contains set text, returns true if does'
description: 'Input:PDF Output:Boolean Type:SISO'
operationId: containsText
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ContainsTextRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/filter/filter-contains-image:
post:
tags:
- Filter
summary: Checks if a PDF contains an image
description: 'Input:PDF Output:Boolean Type:SISO'
operationId: containsImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFWithPageNums'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/url/pdf:
post:
tags:
- Convert
summary: Convert a URL to a PDF
description: >-
This endpoint fetches content from a URL and converts it to a PDF
format. Input:N/A Output:PDF Type:SISO
operationId: urlToPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/UrlToPdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/xml:
post:
tags:
- Convert
summary: Convert PDF to XML
description: >-
This endpoint converts a PDF file to an XML file. Input:PDF Output:XML
Type:SISO
operationId: processPdfToXML
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/word:
post:
tags:
- Convert
summary: Convert PDF to Word document
description: >-
This endpoint converts a given PDF file to a Word document format.
Input:PDF Output:WORD Type:SISO
operationId: processPdfToWord
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PdfToWordRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/text:
post:
tags:
- Convert
summary: Convert PDF to Text or RTF format
description: >-
This endpoint converts a given PDF file to Text or RTF format. Input:PDF
Output:TXT Type:SISO
operationId: processPdfToRTForTXT
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PdfToTextOrRTFRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/presentation:
post:
tags:
- Convert
summary: Convert PDF to Presentation format
description: >-
This endpoint converts a given PDF file to a Presentation format.
Input:PDF Output:PPT Type:SISO
operationId: processPdfToPresentation
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PdfToPresentationRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/pdfa:
post:
tags:
- Convert
summary: Convert a PDF to a PDF/A
description: >-
This endpoint converts a PDF file to a PDF/A file using LibreOffice.
PDF/A is a format designed for long-term archiving of digital documents.
Input:PDF Output:PDF Type:SISO
operationId: pdfToPdfA
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PdfToPdfARequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/markdown:
post:
tags:
- Convert
summary: Convert PDF to Markdown
description: >-
This endpoint converts a PDF file to Markdown format. Input:PDF
Output:Markdown Type:SISO
operationId: processPdfToMarkdown
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/img:
post:
tags:
- Convert
summary: Convert PDF to image(s)
description: >-
This endpoint converts a PDF file to image(s) with the specified image
format, color type, and DPI. Users can choose to get a single image or
multiple images. Input:PDF Output:Image Type:SI-Conditional
operationId: convertToImage
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ConvertToImageRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/html:
post:
tags:
- Convert
summary: Convert PDF to HTML
description: >-
This endpoint converts a PDF file to HTML format. Input:PDF Output:HTML
Type:SISO
operationId: processPdfToHTML
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/pdf/csv:
post:
tags:
- Convert
summary: Extracts a CSV document from a PDF
description: >-
This operation takes an input PDF file and returns CSV file of whole
page. Input:PDF Output:CSV Type:SISO
operationId: pdfToCsv
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFWithPageNums'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
/api/v1/convert/markdown/pdf:
post:
tags:
- Convert
summary: Convert a Markdown file to PDF
description: >-
This endpoint takes a Markdown file input, converts it to HTML, and then
to PDF format. Input:MARKDOWN Output:PDF Type:SISO
operationId: markdownToPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/GeneralFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/img/pdf:
post:
tags:
- Convert
summary: Convert images to a PDF file
description: >-
This endpoint converts one or more images to a PDF file. Users can
specify whether to stretch the images to fit the PDF page, and whether
to automatically rotate the images. Input:Image Output:PDF Type:MISO
operationId: convertToPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/ConvertToPdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/html/pdf:
post:
tags:
- Convert
summary: Convert an HTML or ZIP (containing HTML and CSS) to PDF
description: >-
This endpoint takes an HTML or ZIP file input and converts it to a PDF
format. Input:HTML Output:PDF Type:SISO
operationId: HtmlToPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/HTMLToPdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/file/pdf:
post:
tags:
- Convert
summary: Convert a file to a PDF using LibreOffice
description: >-
This endpoint converts a given file to a PDF using LibreOffice API
Input:ANY Output:PDF Type:SISO
operationId: processFileToPDF
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/GeneralFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/convert/eml/pdf:
post:
tags:
- Convert
summary: Convert EML to PDF
description: >-
This endpoint converts EML (email) files to PDF format with extensive
customization options. Features include font settings, image
constraints, display modes, attachment handling, and HTML debug output.
Input: EML file, Output: PDF or HTML file. Type: SISO
operationId: convertEmlToPdf
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/EmlToPdfRequest'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: string
format: byte
/api/v1/analysis/security-info:
post:
tags:
- Analysis
summary: Get security information
description: >-
Returns encryption and permission details. Input:PDF Output:JSON
Type:SISO
operationId: getSecurityInfo
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
additionalProperties: {}
/api/v1/analysis/page-dimensions:
post:
tags:
- Analysis
summary: Get page dimensions for all pages
description: 'Returns width and height of each page. Input:PDF Output:JSON Type:SISO'
operationId: getPageDimensions
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: array
items:
type: object
additionalProperties:
type: number
format: float
/api/v1/analysis/page-count:
post:
tags:
- Analysis
summary: Get PDF page count
description: 'Returns total number of pages in PDF. Input:PDF Output:JSON Type:SISO'
operationId: getPageCount
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
additionalProperties:
type: integer
format: int32
/api/v1/analysis/form-fields:
post:
tags:
- Analysis
summary: Get form field information
description: >-
Returns count and details of form fields. Input:PDF Output:JSON
Type:SISO
operationId: getFormFields
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
additionalProperties: {}
/api/v1/analysis/font-info:
post:
tags:
- Analysis
summary: Get font information
description: >-
Returns list of fonts used in the document. Input:PDF Output:JSON
Type:SISO
operationId: getFontInfo
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
additionalProperties: {}
/api/v1/analysis/document-properties:
post:
tags:
- Analysis
summary: Get PDF document properties
description: 'Returns title, author, subject, etc. Input:PDF Output:JSON Type:SISO'
operationId: getDocumentProperties
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
additionalProperties:
type: string
/api/v1/analysis/basic-info:
post:
tags:
- Analysis
summary: Get basic PDF information
description: 'Returns page count, version, file size. Input:PDF Output:JSON Type:SISO'
operationId: getBasicInfo
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
additionalProperties: {}
/api/v1/analysis/annotation-info:
post:
tags:
- Analysis
summary: Get annotation information
description: 'Returns count and types of annotations. Input:PDF Output:JSON Type:SISO'
operationId: getAnnotationInfo
requestBody:
content:
multipart/form-data:
schema:
$ref: '#/components/schemas/PDFFile'
responses:
'200':
description: OK
content:
'*/*':
schema:
type: object
additionalProperties: {}
/api/v1/proprietary/ui-data/teams:
get:
tags:
- Proprietary UI Data
summary: Get teams list data
operationId: getTeamsData
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/TeamsData'
'/api/v1/proprietary/ui-data/teams/{id}':
get:
tags:
- Proprietary UI Data
summary: Get team details data
operationId: getTeamDetailsData
parameters:
- name: id
in: path
required: true
schema:
type: integer
format: int64
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/TeamDetailsData'
/api/v1/proprietary/ui-data/login:
get:
tags:
- Proprietary UI Data
summary: Get login page data
operationId: getLoginData
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/LoginData'
/api/v1/proprietary/ui-data/database:
get:
tags:
- Proprietary UI Data
summary: Get database management data
operationId: getDatabaseData
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/DatabaseData'
/api/v1/proprietary/ui-data/audit-dashboard:
get:
tags:
- Proprietary UI Data
summary: Get audit dashboard data
operationId: getAuditDashboardData
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/AuditDashboardData'
/api/v1/proprietary/ui-data/admin-settings:
get:
tags:
- Proprietary UI Data
summary: Get admin settings data
operationId: getAdminSettingsData
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/AdminSettingsData'
/api/v1/proprietary/ui-data/account:
get:
tags:
- Proprietary UI Data
summary: Get account page data
operationId: getAccountData
responses:
'200':
description: OK
content:
'*/*':
schema:
$ref: '#/components/schemas/AccountData'
components:
schemas:
SignatureValidationRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
certFile:
type: string
format: binary
description: (Optional) file to compare PDF cert signatures against x.509 format
SignatureValidationResult:
type: object
properties:
valid:
type: boolean
signerName:
type: string
signatureDate:
type: string
reason:
type: string
location:
type: string
errorMessage:
type: string
chainValid:
type: boolean
trustValid:
type: boolean
notExpired:
type: boolean
notRevoked:
type: boolean
issuerDN:
type: string
subjectDN:
type: string
serialNumber:
type: string
validFrom:
type: string
validUntil:
type: string
signatureAlgorithm:
type: string
keySize:
type: integer
format: int32
version:
type: string
keyUsages:
type: array
items:
type: string
selfSigned:
type: boolean
SanitizePdfRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
removeJavaScript:
type: boolean
default: true
description: Remove JavaScript actions from the PDF
removeEmbeddedFiles:
type: boolean
default: true
description: Remove embedded files from the PDF
removeXMPMetadata:
type: boolean
default: false
description: Remove XMP metadata from the PDF
removeMetadata:
type: boolean
default: false
description: Remove document info metadata from the PDF
removeLinks:
type: boolean
default: false
description: Remove links from the PDF
removeFonts:
type: boolean
default: false
description: Remove fonts from the PDF
required:
- removeEmbeddedFiles
- removeFonts
- removeJavaScript
- removeLinks
- removeMetadata
- removeXMPMetadata
PDFPasswordRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
password:
type: string
format: password
description: The password of the PDF file
PDFFile:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
ManualRedactPdfRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pageNumbers:
type: string
default: all
description: >-
The pages to select, Supports ranges (e.g., '1,3,5-9'), or 'all' or
functions in the format 'an+b' where 'a' is the multiplier of the
page number 'n', and 'b' is a constant (e.g., '2n+1', '3n', '6n-5')
redactions:
type: array
description: A list of areas that should be redacted
items:
$ref: '#/components/schemas/RedactionArea'
convertPDFToImage:
type: boolean
default: false
description: Convert the redacted PDF to an image
pageRedactionColor:
type: string
default: '#000000'
description: The color used to fully redact certain pages
required:
- convertPDFToImage
- pageNumbers
- pageRedactionColor
- redactions
RedactionArea:
type: object
properties:
x:
type: number
format: double
description: The left edge point of the area to be redacted.
'y':
type: number
format: double
description: The top edge point of the area to be redacted.
height:
type: number
format: double
description: The height of the area to be redacted.
width:
type: number
format: double
description: The width of the area to be redacted.
page:
type: integer
format: int32
description: The page on which the area should be redacted.
color:
type: string
description: The color used to redact the specified area.
SignPDFWithCertRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
certType:
type: string
description: The type of the digital certificate
enum:
- PEM
- PKCS12
- JKS
- SERVER
privateKeyFile:
type: string
format: binary
description: >-
The private key for the digital certificate (required for PEM type
certificates)
certFile:
type: string
format: binary
description: The digital certificate (required for PEM type certificates)
p12File:
type: string
format: binary
description: The PKCS12 keystore file (required for PKCS12 type certificates)
jksFile:
type: string
format: binary
description: The JKS keystore file (Java Key Store)
password:
type: string
format: password
description: The password for the keystore or the private key
showSignature:
type: boolean
default: false
description: Whether to visually show the signature in the PDF file
reason:
type: string
default: Signed by SPDF
description: The reason for signing the PDF
location:
type: string
default: SPDF
description: The location where the PDF is signed
name:
type: string
default: SPDF
description: The name of the signer
pageNumber:
type: integer
format: int32
default: 1
description: >-
The page number where the signature should be visible. This is
required if showSignature is set to true
showLogo:
type: boolean
default: true
description: Whether to visually show a signature logo along with the signature
required:
- certType
- showLogo
- showSignature
RedactPdfRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
listOfText:
type: string
default: 'text,text2'
description: List of text to redact from the PDF
useRegex:
type: boolean
default: false
description: Whether to use regex for the listOfText
wholeWordSearch:
type: boolean
default: false
description: Whether to use whole word search
redactColor:
type: string
default: '#000000'
description: The color for redaction
customPadding:
type: number
description: Custom padding for redaction
convertPDFToImage:
type: boolean
default: false
description: Convert the redacted PDF to an image
required:
- convertPDFToImage
- customPadding
- listOfText
- redactColor
- useRegex
- wholeWordSearch
AddWatermarkRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
watermarkType:
type: string
description: The watermark type (text or image)
enum:
- text
- image
watermarkText:
type: string
default: Stirling Software
description: The watermark text
watermarkImage:
type: string
format: binary
description: The watermark image
alphabet:
type: string
default: roman
description: The selected alphabet
enum:
- roman
- arabic
- japanese
- korean
- chinese
fontSize:
type: number
format: float
default: 30
description: The font size of the watermark text
rotation:
type: number
format: float
default: 0
description: The rotation of the watermark in degrees
opacity:
type: number
format: float
default: '0.5'
description: The opacity of the watermark (0.0 - 1.0)
widthSpacer:
type: integer
format: int32
default: 50
description: The width spacer between watermark elements
heightSpacer:
type: integer
format: int32
default: 50
description: The height spacer between watermark elements
customColor:
type: string
default: '#d3d3d3'
description: The color for watermark
convertPDFToImage:
type: boolean
default: false
description: Convert the redacted PDF to an image
required:
- convertPDFToImage
- watermarkType
AddPasswordRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
ownerPassword:
type: string
format: password
description: >-
The owner password to be added to the PDF file (Restricts what can
be done with the document once it is opened)
password:
type: string
format: password
description: >-
The password to be added to the PDF file (Restricts the opening of
the document itself.)
keyLength:
type: integer
format: int32
default: 256
description: The length of the encryption key
enum:
- '40'
- '128'
- '256'
preventAssembly:
type: boolean
default: false
description: Whether document assembly is prevented
preventExtractContent:
type: boolean
default: false
description: Whether content extraction is prevented
preventExtractForAccessibility:
type: boolean
default: false
description: Whether content extraction for accessibility is prevented
preventFillInForm:
type: boolean
default: false
description: Whether form filling is prevented
preventModify:
type: boolean
default: false
description: Whether document modification is prevented
preventModifyAnnotations:
type: boolean
default: false
description: Whether modification of annotations is prevented
preventPrinting:
type: boolean
default: false
description: Whether printing of the document is prevented
preventPrintingFaithful:
type: boolean
default: false
description: Whether faithful printing is prevented
required:
- keyLength
HandleDataRequest:
type: object
properties:
fileInput:
type: array
description: The input files
items:
type: string
format: binary
json:
type: string
default: '{}'
description: JSON String
required:
- fileInput
- json
MetadataRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
deleteAll:
type: boolean
default: false
description: Delete all metadata if set to true
author:
type: string
default: author
description: The author of the document
creationDate:
type: string
default: '2023/10/01 12:00:00'
description: 'The creation date of the document (format: yyyy/MM/dd HH:mm:ss)'
pattern: 'yyyy/MM/dd HH:mm:ss'
creator:
type: string
default: creator
description: The creator of the document
keywords:
type: string
default: keywords
description: The keywords for the document
modificationDate:
type: string
default: '2023/10/01 12:00:00'
description: 'The modification date of the document (format: yyyy/MM/dd HH:mm:ss)'
pattern: 'yyyy/MM/dd HH:mm:ss'
producer:
type: string
default: producer
description: The producer of the document
subject:
type: string
default: subject
description: The subject of the document
title:
type: string
default: title
description: The title of the document
trapped:
type: string
default: 'False'
description: The trapped status of the document
enum:
- 'True'
- 'False'
- Unknown
allRequestParams:
type: object
additionalProperties:
type: string
description: >-
Map list of key and value of custom parameters. Note these must
start with customKey and customValue if they are non-standard
required:
- deleteAll
ScannerEffectRequest:
type: object
properties:
fileInput:
type: string
format: binary
description: PDF file to process
quality:
type: string
description: Scan quality preset
enum:
- low
- medium
- high
example: high
rotation:
type: string
description: Rotation preset
enum:
- none
- slight
- moderate
- severe
example: none
colorspace:
type: string
description: Colorspace for output image
enum:
- grayscale
- color
example: grayscale
border:
type: integer
format: int32
description: Border thickness in pixels
example: 20
rotate:
type: integer
format: int32
description: Base rotation in degrees
example: 0
rotateVariance:
type: integer
format: int32
description: Random rotation variance in degrees
example: 2
brightness:
type: number
format: float
description: Brightness multiplier (1.0 = no change)
example: 1
contrast:
type: number
format: float
description: Contrast multiplier (1.0 = no change)
example: 1
blur:
type: number
format: float
description: 'Blur amount (0 = none, higher = more blur)'
example: 1
noise:
type: number
format: float
description: 'Noise amount (0 = none, higher = more noise)'
example: 8
yellowish:
type: boolean
description: Simulate yellowed paper
example: false
resolution:
type: integer
format: int32
description: Rendering resolution in DPI
example: 300
advancedEnabled:
type: boolean
description: Whether advanced settings are enabled
example: false
rotationValue:
type: integer
format: int32
qualityValue:
type: integer
format: int32
required:
- fileInput
- quality
- rotation
ReplaceAndInvertColorRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
replaceAndInvertOption:
type: string
default: HIGH_CONTRAST_COLOR
description: Replace and Invert color options of a pdf.
enum:
- HIGH_CONTRAST_COLOR
- CUSTOM_COLOR
- FULL_INVERSION
highContrastColorCombination:
type: string
default: WHITE_TEXT_ON_BLACK
description: >-
If HIGH_CONTRAST_COLOR option selected, then pick the default color
option for text and background.
enum:
- WHITE_TEXT_ON_BLACK
- BLACK_TEXT_ON_WHITE
- YELLOW_TEXT_ON_BLACK
- GREEN_TEXT_ON_BLACK
backGroundColor:
type: string
description: >-
If CUSTOM_COLOR option selected, then pick the custom color for
background. Expected color value should be 24bit decimal value of a
color
textColor:
type: string
description: >-
If CUSTOM_COLOR option selected, then pick the custom color for
text. Expected color value should be 24bit decimal value of a color
required:
- highContrastColorCombination
- replaceAndInvertOption
RemoveBlankPagesRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
threshold:
type: integer
format: int32
default: 10
description: The threshold value to determine blank pages
maximum: 255
minimum: 0
whitePercent:
type: number
format: float
default: '99.9'
description: The percentage of white color on a page to consider it as blank
maximum: 100
minimum: 0.1
required:
- threshold
- whitePercent
ProcessPdfWithOcrRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
languages:
type: array
default: '["eng"]'
description: 'List of languages to use in OCR processing, e.g., ''eng'', ''deu'''
items:
type: string
sidecar:
type: boolean
description: Include OCR text in a sidecar text file if set to true
deskew:
type: boolean
description: Deskew the input file if set to true
clean:
type: boolean
description: Clean the input file if set to true
cleanFinal:
type: boolean
description: Clean the final output if set to true
ocrType:
type: string
description: 'Specify the OCR type, e.g., ''skip-text'', ''force-ocr'', or ''Normal'''
enum:
- skip-text
- force-ocr
- Normal
ocrRenderType:
type: string
default: hocr
description: 'Specify the OCR render type, either ''hocr'' or ''sandwich'''
enum:
- hocr
- sandwich
removeImagesAfter:
type: boolean
description: Remove images from the output PDF if set to true
required:
- languages
- ocrRenderType
- ocrType
FlattenRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
flattenOnlyForms:
type: boolean
default: false
description: >-
True to flatten only the forms, false to flatten full PDF (Convert
page to image)
required:
- flattenOnlyForms
PDFExtractImagesRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
format:
type: string
default: png
description: 'The output image format e.g., ''png'', ''jpeg'', or ''gif'''
enum:
- png
- jpeg
- gif
allowDuplicates:
type: boolean
default: false
description: >-
Boolean to enable/disable the saving of duplicate images, true to
enable duplicates
required:
- format
ExtractImageScansRequest:
type: object
properties:
fileInput:
type: string
format: binary
description: The input file containing image scans
angleThreshold:
type: integer
format: int32
default: 5
description: The angle threshold for the image scan extraction
tolerance:
type: integer
format: int32
default: 20
description: The tolerance for the image scan extraction
minArea:
type: integer
format: int32
default: 8000
description: The minimum area for the image scan extraction
minContourArea:
type: integer
format: int32
default: 500
description: The minimum contour area for the image scan extraction
borderSize:
type: integer
format: int32
default: 1
description: The border size for the image scan extraction
required:
- angleThreshold
- borderSize
- fileInput
- minArea
- minContourArea
- tolerance
OptimizePdfRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
optimizeLevel:
type: integer
format: int32
default: 5
description: >-
The level of optimization to apply to the PDF file. Higher values
indicate greater compression but may reduce quality.
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
expectedOutputSize:
type: string
default: 25KB
description: 'The expected output size, e.g. ''100MB'', ''25KB'', etc.'
linearize:
type: boolean
default: false
description: >-
Whether to linearize the PDF for faster web viewing. Default is
false.
normalize:
type: boolean
default: false
description: >-
Whether to normalize the PDF content for better compatibility.
Default is false.
grayscale:
type: boolean
default: false
description: Whether to convert the PDF to grayscale. Default is false.
required:
- expectedOutputSize
- grayscale
- linearize
- normalize
- optimizeLevel
AutoSplitPdfRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
duplexMode:
type: boolean
default: false
description: >-
Flag indicating if the duplex mode is active, where the page after
the divider also gets removed.
ExtractHeaderRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
useFirstTextAsFallback:
type: boolean
default: false
description: >-
Flag indicating whether to use the first text as a fallback if no
suitable title is found. Defaults to false.
AddStampRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pageNumbers:
type: string
default: all
description: >-
The pages to select, Supports ranges (e.g., '1,3,5-9'), or 'all' or
functions in the format 'an+b' where 'a' is the multiplier of the
page number 'n', and 'b' is a constant (e.g., '2n+1', '3n', '6n-5')
stampType:
type: string
description: The stamp type (text or image)
enum:
- text
- image
stampText:
type: string
default: Stirling Software
description: The stamp text
stampImage:
type: string
format: binary
description: The stamp image
alphabet:
type: string
default: roman
description: The selected alphabet of the stamp text
enum:
- roman
- arabic
- japanese
- korean
- chinese
fontSize:
type: number
format: float
default: 30
description: The font size of the stamp text and image
rotation:
type: number
format: float
default: 0
description: The rotation of the stamp in degrees
opacity:
type: number
format: float
default: '0.5'
description: The opacity of the stamp (0.0 - 1.0)
position:
type: integer
format: int32
default: 5
description: >-
Position for stamp placement based on a 1-9 grid (1: bottom-left, 2:
bottom-center, 3: bottom-right, 4: middle-left, 5: middle-center, 6:
middle-right, 7: top-left, 8: top-center, 9: top-right)
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
overrideX:
type: number
format: float
default: -1
description: >-
Override X coordinate for stamp placement. If set, it will override
the position-based calculation. Negative value means no override.
overrideY:
type: number
format: float
default: -1
description: >-
Override Y coordinate for stamp placement. If set, it will override
the position-based calculation. Negative value means no override.
customMargin:
type: string
default: medium
description: Specifies the margin size for the stamp.
enum:
- small
- medium
- large
- x-large
customColor:
type: string
default: '#d3d3d3'
description: The color of the stamp text
required:
- customMargin
- fontSize
- opacity
- overrideX
- overrideY
- pageNumbers
- position
- rotation
- stampType
AddPageNumbersRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pageNumbers:
type: string
default: all
description: >-
The pages to select, Supports ranges (e.g., '1,3,5-9'), or 'all' or
functions in the format 'an+b' where 'a' is the multiplier of the
page number 'n', and 'b' is a constant (e.g., '2n+1', '3n', '6n-5')
customMargin:
type: string
default: medium
description: 'Custom margin: small/medium/large/x-large'
enum:
- small
- medium
- large
- x-large
fontSize:
type: number
format: float
default: 12
description: Font size for page numbers
minimum: 1
fontType:
type: string
description: Font type for page numbers
enum:
- helvetica
- courier
- times
position:
type: integer
format: int32
default: 8
description: >-
Position: 1-9 representing positions on the page (1=top-left,
2=top-center, 3=top-right, 4=middle-left, 5=middle-center,
6=middle-right, 7=bottom-left, 8=bottom-center, 9=bottom-right)
enum:
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
startingNumber:
type: integer
format: int32
default: 1
description: Starting number for page numbering
minimum: 1
pagesToNumber:
type: string
default: all
description: 'Which pages to number (e.g. ''1,3-5,7'' or ''all'')'
customText:
type: string
default: '{n}'
description: >-
Custom text pattern. Available variables: {n}=current page number,
{total}=total pages, {filename}=original filename
example: 'Page {n} of {total}'
required:
- fontSize
- fontType
- pageNumbers
- position
- startingNumber
OverlayImageRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
imageFile:
type: string
format: binary
description: The image file to be overlaid onto the PDF.
x:
type: number
format: float
default: 0
description: The x-coordinate at which to place the top-left corner of the image.
'y':
type: number
format: float
default: 0
description: The y-coordinate at which to place the top-left corner of the image.
everyPage:
type: boolean
default: false
description: Whether to overlay the image onto every page of the PDF.
required:
- everyPage
- imageFile
- x
- 'y'
AddAttachmentRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
attachments:
type: array
format: binary
description: The image file to be overlaid onto the PDF.
items:
type: string
format: binary
required:
- attachments
SplitPdfBySectionsRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
horizontalDivisions:
type: integer
format: int32
default: 0
description: Number of horizontal divisions for each PDF page
minimum: 0
verticalDivisions:
type: integer
format: int32
default: 1
description: Number of vertical divisions for each PDF page
minimum: 0
merge:
type: boolean
default: true
description: Merge the split documents into a single PDF
required:
- horizontalDivisions
- merge
- verticalDivisions
SplitPdfByChaptersRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
includeMetadata:
type: boolean
default: true
description: Whether to include Metadata or not
allowDuplicates:
type: boolean
default: true
description: Whether to allow duplicates or not
bookmarkLevel:
type: integer
format: int32
default: 2
description: Maximum bookmark level required
minimum: 0
required:
- allowDuplicates
- bookmarkLevel
- includeMetadata
PDFWithPageNums:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pageNumbers:
type: string
default: all
description: >-
The pages to select, Supports ranges (e.g., '1,3,5-9'), or 'all' or
functions in the format 'an+b' where 'a' is the multiplier of the
page number 'n', and 'b' is a constant (e.g., '2n+1', '3n', '6n-5')
required:
- pageNumbers
SplitPdfBySizeOrCountRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
splitType:
type: integer
format: int32
default: 0
description: >-
Determines the type of split: 0 for size, 1 for page count, 2 for
document count
splitValue:
type: string
default: 10MB
description: >-
Value for split: size in MB (e.g., '10MB') or number of pages (e.g.,
'5')
ScalePagesRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pageSize:
type: string
description: >-
The scale of pages in the output PDF. Acceptable values are A0-A6,
LETTER, LEGAL, KEEP.
enum:
- A0
- A1
- A2
- A3
- A4
- A5
- A6
- LETTER
- LEGAL
- KEEP
scaleFactor:
type: number
format: float
default: 1
description: >-
The scale of the content on the pages of the output PDF. Acceptable
values are floats.
minimum: 0
required:
- pageSize
- scaleFactor
RotatePDFRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
angle:
type: integer
format: int32
default: 90
description: >-
The angle by which to rotate the PDF file. This should be a multiple
of 90.
enum:
- '0'
- '90'
- '180'
- '270'
required:
- angle
RearrangePagesRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pageNumbers:
type: string
default: all
description: >-
The pages to select, Supports ranges (e.g., '1,3,5-9'), or 'all' or
functions in the format 'an+b' where 'a' is the multiplier of the
page number 'n', and 'b' is a constant (e.g., '2n+1', '3n', '6n-5')
customMode:
type: string
description: >
The custom mode for page rearrangement. Valid values are:
CUSTOM: Uses order defined in PageNums DUPLICATE: Duplicate pages n
times (if Page order defined as 4, then duplicates each page 4
times)REVERSE_ORDER: Reverses the order of all pages.
DUPLEX_SORT: Sorts pages as if all fronts were scanned then all
backs in reverse (1, n, 2, n-1, ...). BOOKLET_SORT: Arranges pages
for booklet printing (last, first, second, second last, ...).
ODD_EVEN_SPLIT: Splits and arranges pages into odd and even numbered
pages.
ODD_EVEN_MERGE: Merges pages and organises them alternately into odd
and even pages.
REMOVE_FIRST: Removes the first page.
REMOVE_LAST: Removes the last page.
REMOVE_FIRST_AND_LAST: Removes both the first and the last pages.
enum:
- CUSTOM
- REVERSE_ORDER
- DUPLEX_SORT
- BOOKLET_SORT
- SIDE_STITCH_BOOKLET_SORT
- ODD_EVEN_SPLIT
- ODD_EVEN_MERGE
- REMOVE_FIRST
- REMOVE_LAST
- REMOVE_FIRST_AND_LAST
- DUPLICATE
required:
- pageNumbers
OverlayPdfsRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
overlayFiles:
type: array
description: >-
An array of PDF files to be used as overlays on the base PDF. The
order in these files is applied based on the selected mode.
items:
type: string
format: binary
overlayMode:
type: string
description: >-
The mode of overlaying: 'SequentialOverlay' for sequential
application, 'InterleavedOverlay' for round-robin application,
'FixedRepeatOverlay' for fixed repetition based on provided counts
enum:
- SequentialOverlay
- InterleavedOverlay
- FixedRepeatOverlay
counts:
type: array
description: >-
An array of integers specifying the number of times each
corresponding overlay file should be applied in the
'FixedRepeatOverlay' mode. This should match the length of the
overlayFiles array.
items:
type: integer
format: int32
overlayPosition:
type: number
description: 'Overlay position 0 is Foregound, 1 is Background'
enum:
- '0'
- '1'
required:
- overlayFiles
- overlayMode
- overlayPosition
MergeMultiplePagesRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pagesPerSheet:
type: number
default: 2
description: The number of pages to fit onto a single sheet in the output PDF.
enum:
- '2'
- '3'
- '4'
- '9'
- '16'
addBorder:
type: boolean
description: Boolean for if you wish to add border around the pages
required:
- pagesPerSheet
MergePdfsRequest:
type: object
properties:
fileInput:
type: array
description: The input PDF files
items:
type: string
format: binary
sortType:
type: string
default: orderProvided
description: The type of sorting to be applied on the input files before merging.
enum:
- orderProvided
- byFileName
- byDateModified
- byDateCreated
- byPDFTitle
removeCertSign:
type: boolean
default: true
description: >-
Flag indicating whether to remove certification signatures from the
merged PDF. If true, all certification signatures will be removed
from the final merged document.
generateToc:
type: boolean
default: false
description: >-
Flag indicating whether to generate a table of contents for the
merged PDF. If true, a table of contents will be created using the
input filenames as chapter names.
required:
- fileInput
- removeCertSign
- sortType
EditTableOfContentsRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
bookmarkData:
type: string
description: Bookmark structure in JSON format
example:
- title: Chapter 1
pageNumber: 1
children:
- title: Section 1.1
pageNumber: 2
replaceExisting:
type: boolean
description: Whether to replace existing bookmarks or append to them
example: true
CropPdfForm:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
x:
type: number
description: The x-coordinate of the top-left corner of the crop area
'y':
type: number
description: The y-coordinate of the top-left corner of the crop area
width:
type: number
description: The width of the crop area
height:
type: number
description: The height of the crop area
BookletImpositionRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
bookletType:
type: string
default: BOOKLET
description: The booklet type to create.
enum:
- BOOKLET
- SIDE_STITCH_BOOKLET
pagesPerSheet:
type: number
default: 2
description: The number of pages to fit onto a single sheet in the output PDF.
enum:
- '2'
- '4'
addBorder:
type: boolean
description: Boolean for if you wish to add border around the pages
pageOrientation:
type: string
default: LANDSCAPE
description: The page orientation for the output booklet sheets.
enum:
- LANDSCAPE
- PORTRAIT
required:
- bookletType
- pageOrientation
- pagesPerSheet
PageSizeRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
comparator:
type: string
description: 'The comparison type, accepts Greater, Equal, Less than'
enum:
- Greater
- Equal
- Less
standardPageSize:
type: string
default: A4
description: Standard Page Size
enum:
- A0
- A1
- A2
- A3
- A4
- A5
- A6
- LETTER
- LEGAL
required:
- comparator
- standardPageSize
PageRotationRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
comparator:
type: string
description: 'The comparison type, accepts Greater, Equal, Less than'
enum:
- Greater
- Equal
- Less
rotation:
type: integer
format: int32
default: 0
description: Rotation in degrees
required:
- comparator
- rotation
PDFComparisonAndCount:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
comparator:
type: string
description: 'The comparison type, accepts Greater, Equal, Less than'
enum:
- Greater
- Equal
- Less
pageCount:
type: integer
format: int32
default: 0
description: Count
required:
- comparator
- pageCount
FileSizeRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
comparator:
type: string
description: 'The comparison type, accepts Greater, Equal, Less than'
enum:
- Greater
- Equal
- Less
fileSize:
type: integer
format: int64
default: 0
description: Size of the file in bytes
required:
- comparator
- fileSize
ContainsTextRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pageNumbers:
type: string
default: all
description: >-
The pages to select, Supports ranges (e.g., '1,3,5-9'), or 'all' or
functions in the format 'an+b' where 'a' is the multiplier of the
page number 'n', and 'b' is a constant (e.g., '2n+1', '3n', '6n-5')
text:
type: string
default: text
description: The text to check for
required:
- pageNumbers
- text
UrlToPdfRequest:
type: object
properties:
urlInput:
type: string
description: The input URL to be converted to a PDF file
required:
- urlInput
PdfToWordRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
outputFormat:
type: string
description: The output Word document format
enum:
- doc
- docx
- odt
required:
- outputFormat
PdfToTextOrRTFRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
outputFormat:
type: string
description: The output Text or RTF format
enum:
- rtf
- txt
required:
- outputFormat
PdfToPresentationRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
outputFormat:
type: string
description: The output Presentation format
enum:
- ppt
- pptx
- odp
required:
- outputFormat
PdfToPdfARequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
outputFormat:
type: string
description: The output PDF/A type
enum:
- pdfa
- pdfa-1
required:
- outputFormat
ConvertToImageRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
pageNumbers:
type: string
default: all
description: >-
The pages to select, Supports ranges (e.g., '1,3,5-9'), or 'all' or
functions in the format 'an+b' where 'a' is the multiplier of the
page number 'n', and 'b' is a constant (e.g., '2n+1', '3n', '6n-5')
imageFormat:
type: string
default: png
description: The output image format
enum:
- png
- jpeg
- jpg
- gif
- webp
singleOrMultiple:
type: string
default: multiple
description: >-
Choose between a single image containing all pages or separate
images for each page
enum:
- single
- multiple
colorType:
type: string
default: color
description: The color type of the output image(s)
enum:
- color
- greyscale
- blackwhite
dpi:
type: integer
format: int32
default: 300
description: The DPI (dots per inch) for the output image(s)
required:
- colorType
- dpi
- imageFormat
- pageNumbers
- singleOrMultiple
GeneralFile:
type: object
properties:
fileInput:
type: string
format: binary
description: The input file
required:
- fileInput
ConvertToPdfRequest:
type: object
properties:
fileInput:
type: array
description: The input images to be converted to a PDF file
items:
type: string
format: binary
fitOption:
type: string
default: fillPage
description: Option to determine how the image will fit onto the page
enum:
- fillPage
- fitDocumentToImage
- maintainAspectRatio
colorType:
type: string
default: color
description: The color type of the output image(s)
enum:
- color
- greyscale
- blackwhite
autoRotate:
type: boolean
default: false
description: >-
Whether to automatically rotate the images to better fit the PDF
page
required:
- autoRotate
- colorType
- fileInput
- fitOption
HTMLToPdfRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
zoom:
type: number
format: float
default: 1
description: Zoom level for displaying the website. Default is '1'.
required:
- zoom
EmlToPdfRequest:
type: object
properties:
fileInput:
type: string
format: binary
contentMediaType: application/pdf
description: The input PDF file
fileId:
type: string
description: File ID for server-side files (can be used instead of fileInput)
example: a1b2c3d4-5678-90ab-cdef-ghijklmnopqr
includeAttachments:
type: boolean
description: Include email attachments in the PDF output
example: false
maxAttachmentSizeMB:
type: integer
format: int32
description: >-
Maximum attachment size in MB to include (default 10MB, range:
1-100)
example: 10
maximum: 100
minimum: 1
downloadHtml:
type: boolean
description: Download HTML intermediate file instead of PDF
example: false
includeAllRecipients:
type: boolean
description: Include CC and BCC recipients in header (if available)
example: true
TeamWithUserCountDTO:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
userCount:
type: integer
format: int64
TeamsData:
type: object
properties:
teamsWithCounts:
type: array
items:
$ref: '#/components/schemas/TeamWithUserCountDTO'
teamLastRequest:
type: object
additionalProperties:
type: string
format: date-time
Authority:
type: object
properties:
id:
type: integer
format: int64
authority:
type: string
user:
$ref: '#/components/schemas/User'
Team:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
users:
type: array
items:
$ref: '#/components/schemas/User'
uniqueItems: true
TeamDetailsData:
type: object
properties:
team:
$ref: '#/components/schemas/Team'
teamUsers:
type: array
items:
$ref: '#/components/schemas/User'
availableUsers:
type: array
items:
$ref: '#/components/schemas/User'
userLastRequest:
type: object
additionalProperties:
type: string
format: date-time
User:
type: object
properties:
id:
type: integer
format: int64
username:
type: string
password:
type: string
apiKey:
type: string
enabled:
type: boolean
isFirstLogin:
type: boolean
roleName:
type: string
authenticationType:
type: string
authorities:
type: array
items:
$ref: '#/components/schemas/Authority'
uniqueItems: true
team:
$ref: '#/components/schemas/Team'
settings:
type: object
additionalProperties:
type: string
firstLogin:
type: boolean
rolesAsString:
type: string
accountNonExpired:
type: boolean
credentialsNonExpired:
type: boolean
accountNonLocked:
type: boolean
LoginData:
type: object
properties:
providerList:
type: object
additionalProperties:
type: string
loginMethod:
type: string
altLogin:
type: boolean
DatabaseData:
type: object
properties:
backupFiles:
type: array
items:
$ref: '#/components/schemas/FileInfo'
databaseVersion:
type: string
versionUnknown:
type: boolean
FileInfo:
type: object
properties:
fileName:
type: string
filePath:
type: string
modificationDate:
type: string
format: date-time
fileSize:
type: integer
format: int64
creationDate:
type: string
format: date-time
formattedCreationDate:
type: string
formattedFileSize:
type: string
formattedModificationDate:
type: string
filePathAsPath:
type: object
properties:
absolute:
type: boolean
fileSystem:
type: object
properties:
open:
type: boolean
readOnly:
type: boolean
separator:
type: string
rootDirectories: {}
fileStores: {}
userPrincipalLookupService: {}
nameCount:
type: integer
format: int32
AuditDashboardData:
type: object
properties:
auditEnabled:
type: boolean
auditLevel:
type: string
enum:
- 'OFF'
- BASIC
- STANDARD
- VERBOSE
auditLevelInt:
type: integer
format: int32
retentionDays:
type: integer
format: int32
auditLevels:
type: array
items:
type: string
enum:
- 'OFF'
- BASIC
- STANDARD
- VERBOSE
auditEventTypes:
type: array
items:
type: string
enum:
- USER_LOGIN
- USER_LOGOUT
- USER_FAILED_LOGIN
- USER_PROFILE_UPDATE
- SETTINGS_CHANGED
- FILE_OPERATION
- PDF_PROCESS
- HTTP_REQUEST
AdminSettingsData:
type: object
properties:
users:
type: array
items:
$ref: '#/components/schemas/User'
currentUsername:
type: string
roleDetails:
type: object
additionalProperties:
type: string
userSessions:
type: object
additionalProperties:
type: boolean
userLastRequest:
type: object
additionalProperties:
type: string
format: date-time
totalUsers:
type: integer
format: int32
activeUsers:
type: integer
format: int32
disabledUsers:
type: integer
format: int32
teams:
type: array
items:
$ref: '#/components/schemas/Team'
maxPaidUsers:
type: integer
format: int32
AccountData:
type: object
properties:
username:
type: string
role:
type: string
settings:
type: string
changeCredsFlag:
type: boolean
saml2Login:
type: boolean
oauth2Login:
type: boolean