Skip to main content

ACME HTTP Connector

A Python library for publishing HTTP-01 challenges and deploying certificates through existing HTTP APIs. Python 3.10+. No Certbot or ACME protocol dependency. This library does not issue certificates or serve challenges itself.

from acme_http_connector import HTTPConnector

connector = HTTPConnector({
    "perform": {"uri": "https://api.example.com", "path": "/challenges"},
    "cleanup": {"uri": "https://api.example.com", "path": "/challenges"},
    "deploy": {"uri": "https://api.example.com", "path": "/certificates"},
})
challenge_path = "/.well-known/acme-challenge/TOKEN"
connector.publish(challenge_path, "TOKEN.ACCOUNT_THUMBPRINT")
# The ACME client validates the challenge before cleanup.
connector.cleanup(challenge_path)
connector.deploy_files("example.com", "cert.pem", "key.pem", "chain.pem")

publish(path, validation) and cleanup(path) accept the full challenge path. deploy(domain, cert, key, chain="") accepts PEM strings; deploy_files reads files and accepts an optional chain path. Successful operations return None. Configuration errors raise ConfigurationError; Requests HTTP/network errors and filesystem errors propagate. The caller handles ACME issuance, challenge validation, retries and cleanup timing.

HTTPConnector(config, phases=("perform", "cleanup", "deploy")) can initialize only selected phases; the Certbot adapters each initialize their own phases.

Configuration is copied and uses the existing perform, cleanup, deploy sections and CBT_HTTPREQ_<PHASE>_<OPTION> environment variables. Timeout defaults to 30 seconds and TLS verification is enabled by default. Use HTTPS and protect credentials: deployment sends the private key.

See the repository documentation for all configuration options and the certbot-httpreq adapter.

Copyright © 2019–2026 Adrien Delle Cave. GPL-3.0-or-later.

Metadata

Release files for acme-http-connector 0.1.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 acme-http-connector 0.1.0
File Size Uploaded
acme_http_connector-0.1.0.tar.gz 16.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for acme-http-connector 0.1.0
File Interpreter ABI Platform
acme_http_connector-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 34.9 kB

Release files / acme_http_connector-0.1.0.tar.gz

Download URL acme_http_connector-0.1.0.tar.gz
Size 16.9 kB
Tags Source
SHA-256 checksum
How to use checksums
c4c54299f8b3f7f02ce3e7c8ca0dc2e818cadd76b59997e5798ff2377156f95f
BLAKE2b-256 checksum
How to use checksums
436f4ce90b4a5bf76d8706795ba95046a85275b99929a4efe3ba891179df391e
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 1, 2026.

Transparency log

Release files / acme_http_connector-0.1.0-py3-none-any.whl

Download URL acme_http_connector-0.1.0-py3-none-any.whl
Size 18.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0233511dc14b6005e41c17118e65e7038602ff757d542a1ba215f880d1be8285
BLAKE2b-256 checksum
How to use checksums
85375e127d18b77cea12cab713d3f5a27b36548da9e1a4493365aab55e48e8f7
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 1, 2026.

Transparency log

Release history Release notifications | RSS feed

0.2.1

2 release files

0.2.0

2 release files

0.1.1

2 release files

This release

0.1.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