Skip to main content

Automate Certificate Renewal with ZeroSSL

ZeroSSL provides two main integration options for SSL/TLS certificate management: ACME protocol and REST API. Both are powerful, but they serve different technical needs. This guide explains when to use each, with real-world examples.

🔍 What is ACME?

ACME (Automated Certificate Management Environment) is an industry-standard protocol for automating certificate issuance and renewal. It’s widely used by tools like acme.sh, Certbot, and win-acme.

  • Fully automated issuance and renewal
  • Works with popular ACME clients
  • Ideal for environments where certificates need to renew without manual intervention

✅ Example: Issue a Certificate with acme.sh

RequestOutput
     
acme.sh --issue \
-d example.com \
-d www.example.com \
--server https://acme.zerossl.com/v2/DV90 \
--keylength ec-256 \
--dns \
--accountemail "your-email@example.com"
     
Tip: ACME is best for automation-first environments like Kubernetes, Docker, and CI/CD pipelines.

🔍 What is the ZeroSSL REST API?

The REST API provides direct programmatic access to ZeroSSL’s certificate lifecycle management. It’s designed for developers who need fine-grained control over certificate creation, validation, and revocation.

  • Full control over certificate lifecycle
  • Integration with custom applications or dashboards
  • Supports advanced workflows (bulk issuance, reporting)

✅ Example: Create a Certificate via REST API

Request (POST)Response
     
curl -X POST "https://api.zerossl.com/certificates?access_key=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
  "certificate_domains": ["example.com", "www.example.com"],
  "certificate_validity_days": 90,
  "certificate_csr": "-----BEGIN CERTIFICATE REQUEST-----\n...CSR CONTENT...\n-----END CERTIFICATE REQUEST-----",
  "strict_domains": true,
  "validation_method": "DNS_CNAME"
}' 
     

Tip: Using EAB credentials from your ZeroSSL account ensures all certificates are linked to your account for full visibility and control.

 

🎯 What should I chose now?

✅ When to Use ACME

  • Fully automated environments (Kubernetes, Docker, CI/CD)
  • Standard ACME clients (acme.sh, win-acme, Certbot)
  • Wildcard certificates via DNS plugins
  • Minimal coding required

✅ When to Use REST API

  • Custom dashboards or SaaS integrations
  • Bulk issuance and revocation
  • Detailed reporting and analytics
  • Non-ACME environments

10 Example Use Cases

ACMEREST API
Fully Automated Renewals

ZeroSSL ACME protocol enables hands-free certificate renewal without manual API calls.

Using Existing ACME Tooling

Integrates seamlessly with Certbot, acme.sh, and other ACME clients for quick setup.

Dynamic Certificate Issuance

Ideal for apps needing on-demand certificates without complex REST API logic.

Lightweight Deployment

Minimal coding required—just configure ACME client with ZeroSSL credentials.

Standardized Protocol

Cross-platform compatibility reduces vendor lock-in and simplifies migration.

Was this article helpful?
0 out of 0 found this helpful