Skip to main content

Python client

pip install autosignly

Versions: the supported line is 1.0.*. The newest release of each package is listed among the tags in the repository.

Python 3.10 or newer. Built on httpx, with type hints throughout.

Example​

from autosignly import AutosignlyClient, Signer

with AutosignlyClient(api_key=..., api_secret=...) as client:
document_id = client.upload_and_sign(
pdf=open("contract.pdf", "rb").read(),
document_name="Consulting document",
signers=[Signer(first_name="Anna", last_name="Nowak",
email="[email protected]", country="PL")],
)

What it covers​

Everything the API exposes: credentials, listing and filtering documents (by status and by tag), reading one document, uploading a PDF with or without sending it, attachments, sending for signature, downloading the file, tags, parties — plus webhook signature verification and a generator that walks large listings page by page.

Failures arrive as typed exceptions (NotFoundError, RateLimitError, ConnectionError, …), and reads are retried with backoff, so a hiccup on the network does not become an outage in your code.

How it is tested​

The repository carries two suites, and uv run pytest runs both:

  • Unit tests against a mocked transport — headers, multipart framing, retries, error mapping
  • Contract tests that check every field name the client reads or sends against the published OpenAPI specification, so a client that drifts from the API fails on its own

Separately, an internal end-to-end suite walks the whole journey against a live environment: it creates a company, uploads a PDF, attaches files, sends the document for signature, signs it as the recipient and verifies the sealed document that comes back.