Skip to content
Pinner.xyz

Check SSL Status

Pinner provisions SSL certificates automatically for custom domains. Once DNS is configured and validated, Pinner's certificate manager (backed by Caddy) handles provisioning; you just wait for the process to complete.

Check the current status

const response = await pinner.websites.getSSLStatus("mysite.example.com");
const ssl = response.ssl;
 
if (ssl) {
  console.log("Status:", ssl.status);
  if (ssl.error) {
    console.log("Error:", ssl.error);
  }
  if (ssl.issued_at) {
    console.log("Issued at:", ssl.issued_at);
  }
}

SSL states

StatusMeaning
pendingWaiting to start provisioning: DNS may not have propagated yet
issuingCertificate is being requested and provisioned
readyCertificate issued and active; the site is serving HTTPS
failedProvisioning failed; check the error field for details

Using the CLI

You can also check SSL status from the command line:

# Check once
pinner websites ssl status example.com
 
# Watch for changes (polls until settled)
pinner websites ssl status example.com --watch
 
# JSON output
pinner websites ssl status example.com --json

Troubleshooting

SSL stuck at pending

DNS records haven't propagated yet. This is normal; it can take a few minutes to a few hours depending on your registrar. Verify your CNAME and TXT records are in place:

dig CNAME mysite.example.com
dig TXT pinner-verify.mysite.example.com

SSL in failed state

Check the error field for details. Common causes:

  • DNS not pointing at Pinner: The CNAME or A record is missing or pointing elsewhere
  • Domain validation expired: Re-validate the domain (see Custom Domains)
  • Rate limit hit: Too many SSL requests in a short time; wait and retry

Keep watching for SSL readiness

Use the CLI's --watch flag to poll until the certificate reaches ready or failed:

pinner websites ssl status example.com --watch