Skip to main content

Docling Client

Lightweight client SDK for converting documents via a remote Docling Serve endpoint

docling-client is a meta-package that installs docling-slim[service-client], giving you DoclingServiceClient — a drop-in replacement for the local DocumentConverter that offloads conversion to a Docling Serve instance over HTTP.

For the full documentation, see the Docling docs.

Why a remote client?

You want to… Use
Convert documents in a Python application, without running models locally docling-client → point at a Docling Serve endpoint
Run Docling directly in-process in a Python application docling
Full control over which extras are installed docling-slim[service-client]

Switching from local to remote conversion typically requires changing only the client class and the endpoint URL — the conversion API (sources, options, output formats) stays the same.

Getting started

1. Install

pip install docling-client

2. Point at a Docling Serve endpoint

You need a running Docling Serve instance — self-hosted or a managed service.

Set your connection details in the environment (or a .env file):

DOCLING_SERVICE_URL=https://your-docling-service.example.com
DOCLING_SERVICE_API_KEY=your-api-key   # omit if the service is unauthenticated

3. Convert a document

import os
from docling.service_client import DoclingServiceClient

with DoclingServiceClient(
    url=os.environ["DOCLING_SERVICE_URL"],
    api_key=os.environ.get("DOCLING_SERVICE_API_KEY", ""),
) as client:
    result = client.convert(source="https://arxiv.org/pdf/2501.17887")
    print(result.document.export_to_markdown())

Convert many documents concurrently:

sources = [
    "https://arxiv.org/pdf/2501.17887",
    "path/to/report.pdf",
    "path/to/slides.pptx",
]

with DoclingServiceClient(url=os.environ["DOCLING_SERVICE_URL"]) as client:
    for result in client.convert_all(source=sources, max_concurrency=4):
        print(result.input.file.name, result.status)
        print(result.document.export_to_markdown()[:200])

Switching from local to remote

If you already use the local DocumentConverter, the client API mirrors it closely. Only the import and instantiation change:

# Before — local, runs models on this machine
from docling.document_converter import DocumentConverter
converter = DocumentConverter()
result = converter.convert("report.pdf")

# After — remote, offloads conversion to Docling Serve
from docling.service_client import DoclingServiceClient
converter = DoclingServiceClient(url="https://...", api_key="...")
result = converter.convert(source="report.pdf")

Both result.document.export_to_markdown() and other output methods work the same way.

Managed services

Running Docling Serve yourself means operating infrastructure. Managed services remove that overhead.

Docling for IBM watsonx

A fully managed, hosted instance of Docling Serve — no servers, GPUs, scaling, or operational monitoring required. It exposes the same REST API, so your client code stays portable: swap the base URL, supply your API key, and go.

More examples

Runnable examples are in docs/examples/service_client/ in the repository:

Script What it shows
convert.py convert() and convert_all() — the high-level API
tasks.py Job lifecycle: submit(), watch(), result(), result targets
batch.py submit_batch() for plugin sources and artifact targets
chunk.py chunk() — split a document into retrieval-ready pieces

Documentation

License

MIT License — see LICENSE

Metadata

Release files for docling-client 2.141.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for docling-client 2.141.0
File Size Uploaded Provenance
docling_client-2.141.0.tar.gz 6.8 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for docling-client 2.141.0
File Interpreter ABI Platform
docling_client-2.141.0-py3-none-any.whl Python 3 none any Details

Total release size: 9.8 kB

Release files / docling_client-2.141.0.tar.gz

Download URL docling_client-2.141.0.tar.gz
Size 6.8 kB
Tags Source
SHA-256 checksum
How to use checksums
e237f4c027e9cff5cbbbf04d8bbb3996a326cc4c2322cae6e1f4b0ad05cf768a
BLAKE2b-256 checksum
How to use checksums
bdc5200ef3b416493afa5b725ff38bea7794c117dcc6c5547a7a18899c09d0c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Release files / docling_client-2.141.0-py3-none-any.whl

Download URL docling_client-2.141.0-py3-none-any.whl
Size 3.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
487002c42c64fff2517e2bbd75b332973624d2a4018a428d76f2e7608c9a5e1c
BLAKE2b-256 checksum
How to use checksums
8c7c6170278093282bf8c81b51141e73a380ef4182a3ae47bfc8e8ad1ff36855
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

Security for docling-client 2.141.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for docling_client-2.141.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 20, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page