Built for developers
Copyable examples, stable error codes, sandbox issuance, and signed webhooks — built so an engineer can issue a certificate in one sitting.
One request to start an order
POST /api/v1/certificates with a domain list and a validation method. The response is 202 with an order id, challenge records, and — when the sandbox CA is selected — an issued certificate you can inspect immediately.
Stable errors
Error codes such as wildcard_requires_dns, insufficient_scope, idempotency_conflict, and certificate_already_revoked stay stable so your client can branch on them.
Sandbox first
The default certificate driver is a sandbox CA. Production Let’s Encrypt stays gated behind ACME_PRODUCTION_ENABLED. You can develop against fake issuance, then switch the same API to staging ACME.