Skip to main content

anycubic-cloud-api

Async Python client for the Anycubic Cloud API and its MQTT telemetry stream.

Extracted from the Home Assistant Anycubic Cloud integration so it can be versioned, tested and used independently.

Install

pip install anycubic-cloud-api

Use

import aiohttp
from anycubic_cloud_api import AnycubicMQTTAPI, AnycubicAuthMode

async with aiohttp.ClientSession() as session:
    api = AnycubicMQTTAPI(session=session)
    api.set_authentication(auth_token="eyJ...", auth_mode=AnycubicAuthMode.SLICER)

    if await api.check_api_tokens():
        for printer in await api.list_my_printers():
            print(printer.name, printer.current_status)

Authentication

Anycubic's login is captcha- and 2FA-protected, so there is no automated sign-in: you supply a token obtained from the Anycubic slicer, website, or Android app. Slicer tokens are 90-day JWTs and additionally unlock the MQTT stream; web tokens are polling-only.

TLS

The MQTT broker requires mutual TLS using Anycubic's own certificates, which ship inside this package. The client verifies the broker against Anycubic's pinned root CA with hostname checking enabled. Two relaxations are unavoidable and forced by Anycubic's certificates:

  • their client certificate is SHA-1 signed, so OpenSSL 3.x will not load it at the default security level
  • their root CA omits the keyUsage extension, which Python 3.13+ rejects as a trust anchor under VERIFY_X509_STRICT

Neither weakens chain or hostname verification.

Licence

GPL-3.0-or-later, matching the integration it came from.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anycubic_cloud_api-0.2.0.tar.gz (92.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

anycubic_cloud_api-0.2.0-py3-none-any.whl (93.2 kB view details)

Uploaded Python 3

File details

Details for the file anycubic_cloud_api-0.2.0.tar.gz.

File metadata

  • Download URL: anycubic_cloud_api-0.2.0.tar.gz
  • Upload date:
  • Size: 92.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.13

File hashes

Hashes for anycubic_cloud_api-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2ae72fa0c6d5368b2f5072c42c441e658e813e8bde5e5d08bb0274af6537d70b
MD5 06c87bc6a2659448ac759b8f13dbbeb7
BLAKE2b-256 ef9d833d3a1269816451a3a94acf7fef82b0cbe5df7257368b927463eeffd434

See more details on using hashes here.

File details

Details for the file anycubic_cloud_api-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for anycubic_cloud_api-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c7ed740b71fdc938db51b3a7a4e17c5327aaf0bba29013b39f3f25ca10743508
MD5 14664ce51baa17ca55cd5c3af311924e
BLAKE2b-256 882254a417b6f460212afa895798291e93f81804e282231b424d46409a160a26

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page