Skip to content
KovaPDF SDKs and CLI

KovaPDF for your own code: SDKs and CLI

Call the KovaPDF tools from JavaScript or Python, or from a terminal. The packages upload your file, start the job, wait for it calmly and download the result.

  • JavaScript and TypeScript
  • Python
  • A kovapdf command
Install
npm install @kovapdf/sdk
pip install kovapdf
Set up

Get started

  1. Make an API key

    In your KovaPDF dashboard, open Developer API and make a key. Keep it in an environment variable, never in your code.

    Shell
    export KOVAPDF_API_KEY="kova_live_..."
  2. JavaScript or TypeScript

    Install the package from npm. It also adds the kovapdf command.

    npm
    npm install @kovapdf/sdk
  3. Python

    Install the package from PyPI. It also adds the kovapdf command.

    pip
    pip install kovapdf
  4. Or call the API directly

    Upload a file, start a job, then ask for the job until it is done. The packages do exactly this for you.

    HTTP
    curl https://api.kovapdf.com/api/v1/files \
      -H "Authorization: Bearer $KOVAPDF_API_KEY" \
      -F file=@report.pdf
    
    curl https://api.kovapdf.com/api/v1/jobs \
      -H "Authorization: Bearer $KOVAPDF_API_KEY" \
      -H "Content-Type: application/json" \
      -d '{ "tool": "compress", "inputs": ["FILE_ID"] }'
    
    curl https://api.kovapdf.com/api/v1/jobs/JOB_ID \
      -H "Authorization: Bearer $KOVAPDF_API_KEY"
Examples

What the packages take care of

Waiting politely

They check a job a few seconds apart, wait longer as it runs, and stop after a time you can set.

Busy moments

When KovaPDF is busy they wait as long as the answer asks, then try again a few times, never in a tight loop.

Clear errors

Every refusal comes back as an error with a code and a plain message you can show.

Attribution

Each result says it was done with KovaPDF, so you can show where the work happened.

Limits and privacy

What to expect

  • Your account's usual limits

    Each step runs as the KovaPDF account the key belongs to and uses that account's usual limits, the same as on the website.

  • Files deleted within an hour

    Files you send and the results are deleted within an hour. Results come back as download links that stop working soon after; ask again for a fresh one.

  • Keys only from the environment

    The packages read KOVAPDF_API_KEY or a key you pass in. Never commit a key; revoke it in your dashboard if it leaks.

Questions

Common questions

Which tools can I call?

The tools apps can use: compress, merge, split, organize pages, convert, read scans, redact, check signatures, and the Bangla and Hindi text converters. GET /tools lists them with their options.

Is there a full API reference?

Yes. The developer docs describe every call, and the OpenAPI file can generate a client in any language.

What happens when my account reaches its limit?

The call is refused with a clear code and a Retry-After header saying when to try again.

What happens if KovaPDF pauses this app?

The step stops with a plain message saying KovaPDF has paused connections from this app for now, and nothing is changed. You can still use every tool on the KovaPDF website.

Every integration in one place

See every app KovaPDF works in, or read how connections, files and jobs work in the developer docs.

Something not working? Write to support@kovapdf.com.