Skip to main content

Python Package for managing keys, request SSL certificates from ACME.

Project description

CertApi

CertApi is a Python package for requesting SSL certificates from ACME. This is to be used as a base library for building other tools, or to integrate Certificate creation feature in you app.

⚠️ Warning: This project is in beta. Please stay tuned for the LTS v1.0.0 release.

Installation

You can install CertApi using pip

pip install certapi

Example: Obtain Certificate with Cloudflare

import json
from certapi import CertApiException, CloudflareChallengeSolver, Key, AcmeCertIssuer


# Initialize the Cloudflare challenge solver
# The API key is read from the CLOUDFLARE_API_KEY environment variable, or you can set it below.
challenge_solver = CloudflareChallengeSolver(api_key=None)

## initialize cert issuer with a new account key
cert_issuer = AcmeCertIssuer(Key.generate('rsa'), challenge_solver)

# Preform setup i.e. fetching directory and registering ACME account
cert_issuer.setup()

try:
    # Obtain a certificate for your domain
    (key, cert) = cert_issuer.generate_key_and_cert_for_domain("your-domain.com")

    print("------ Private Key -----")
    print(key.to_pem())
    print("------- Certificate ------")
    print(cert)
except CertApiException as e:
    print(f"An error occurred:", json.dumps(e.json_obj(), indent=2))

Example: Use High Leve API

Project details


Download files

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

Source Distribution

certapi-0.4.8.tar.gz (30.5 kB view details)

Uploaded Source

Built Distribution

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

certapi-0.4.8-py3-none-any.whl (45.4 kB view details)

Uploaded Python 3

File details

Details for the file certapi-0.4.8.tar.gz.

File metadata

  • Download URL: certapi-0.4.8.tar.gz
  • Upload date:
  • Size: 30.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for certapi-0.4.8.tar.gz
Algorithm Hash digest
SHA256 e9cb4807d7d60f36dedac685754ada4a35242df54a81f37f3baa9376f549cd8d
MD5 cbf0779f0bb0676e12f31a5d6f0ae945
BLAKE2b-256 0e77b0c00007971490d33983d6a87a469234663aa0bd5ba67527bb0689810d2c

See more details on using hashes here.

File details

Details for the file certapi-0.4.8-py3-none-any.whl.

File metadata

  • Download URL: certapi-0.4.8-py3-none-any.whl
  • Upload date:
  • Size: 45.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for certapi-0.4.8-py3-none-any.whl
Algorithm Hash digest
SHA256 72b3086cdf72e9de1a992b0d20dd7013d432d4891da1398e4d0d6e2eb342245a
MD5 9b08347111e8680b03ee4da5b0f14b9a
BLAKE2b-256 5cd2d19805c902a9145b6337ee065c44b7e336548f189266a3ee9d0a2e651ba3

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