Skip to main content

Unoriginal Prusa Connect Python Client

PyPI version License: AGPL v3 Python Versions

Control your Prusa 3D printers programmatically with Python. This library provides a frictionless, strongly-typed interface for the Prusa Connect API.

[!WARNING] A Note on Unoriginal-ness

This SDK is not an officially supported or endorsed product of Prusa Research. It is developed and maintained by an independent developer and is not affiliated with Prusa Research. See Motivation & Design for more information.

Features:

  • Zero-Config Authentication: Log in once via CLI, use everywhere in Python.
  • Strong Typing: Full Pydantic models for printers, jobs, cameras, and files.
  • Batteries Included: Retries, timeouts, and error handling out of the box.
  • CLI Tool: Manage printers from the terminal with prusactl.

Installation

Install the package with the CLI tools (recommended for easiest setup):

pip install "prusa-connect-sdk-client[cli]"

Or install the lightweight library only:

pip install prusa-connect-sdk-client

Quick Start

from prusa.connect.client import PrusaConnectClient

# Credentials are automatically loaded from the CLI session
# (run `prusactl auth login` first)
client = PrusaConnectClient()

for printer in client.printers.list_printers():
    status = printer.printer_state or "UNKNOWN"
    print(f"- {printer.name} ({status})")

Resources are grouped by service — client.printers, client.cameras, client.teams, client.files, client.jobs, and client.stats.

Documentation

Full documentation including the CLI reference, SDK quickstart, and API reference is available at:

https://dcode.github.io/python-prusa-connect-sdk-client/

Motivation and Design

My motivation to create this library is to provide a frictionless, strongly-typed interface for the Prusa Connect API. I want to be able to monitor and control my Prusa 3D printers programmatically with Python. I love building tools, which has led to me loving my Prusa 3D printers.

It is my goal that this library has the same level of quality engineering and "feel" as the products Prusa Research produces. That goal drove the decisions on library layout (e.g. prusa.connect.client namespace) and the naming of the PyPI package itself.

That said, if anyone from Prusa Research wishes to take over development of this library, I would be happy to hand it over (and keep contributing, if desired). Alternatively, I can keep this project going as a community-driven project in my spare time. If you're from Prusa Research and wish to support this work, I'd gladly accept Prusameters towards a new Core-generation printer. 😉

My Printables Profile: :simple-printables: dcode

Contributing

Contributions are welcome! Please see CONTRIBUTING.md for development setup, testing, and pull request guidelines.

License

This project is licensed under the GNU Affero General Public License v3.0 or later.

Metadata

Release files for prusa-connect-sdk-client 1.0.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 prusa-connect-sdk-client 1.0.0
File Size Uploaded
prusa_connect_sdk_client-1.0.0.tar.gz 2.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for prusa-connect-sdk-client 1.0.0
File Interpreter ABI Platform
prusa_connect_sdk_client-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 2.4 MB

Release files / prusa_connect_sdk_client-1.0.0.tar.gz

Download URL prusa_connect_sdk_client-1.0.0.tar.gz
Size 2.3 MB
Tags Source
SHA-256 checksum
How to use checksums
d0cb82902501d7b66259f62c0d8dbed83dbdfa93b3006fb2eec6b6b7aa9559a1
BLAKE2b-256 checksum
How to use checksums
9b41106e7d199156b05454a2e33836da55dd756c9aae6431e8e146882aad5a4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Feb 24, 2026.

Transparency log

Release files / prusa_connect_sdk_client-1.0.0-py3-none-any.whl

Download URL prusa_connect_sdk_client-1.0.0-py3-none-any.whl
Size 86.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ba83725fac2e31796babf362790a272cb3d7fa4699c0cf175a6ce89967598fda
BLAKE2b-256 checksum
How to use checksums
01e40acfd18eec725f9a003b9e70dc693527efae0ef2da8831bbfa8ef5026fa0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Feb 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

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