Renew Radar Product Free tools Docs
Sign in Get started
Docs

API reference

The Renew Radar API lets you manage tracked certificates, alert channels, and thresholds from your own tooling. It's a JSON REST API secured with personal access tokens.

Authentication

Create a token from Settings → API tokens, then send it as a bearer token on every request:

curl https://renewradar.com/api/v1/certificates \
  -H "Authorization: Bearer <your-token>" \
  -H "Accept: application/json"

Each token is scoped to read or read & write when you create it. Tokens can be revoked at any time from the same page — revoking one takes effect immediately.

Base URL & rate limits

All endpoints are under https://renewradar.com/api/v1 and return JSON. Requests are limited to 60 per minute per token.

Certificates

Method
Endpoint
Ability
Description
GET
/certificates
read
List your tracked certificates.
GET
/certificates/{id}
read
Show a single certificate, including its chain.
POST
/certificates
write
Track a new certificate.
PATCH
/certificates/{id}
write
Update a certificate's domain or auto-renew flag.
DELETE
/certificates/{id}
write
Stop tracking a certificate.
POST
/certificates/{id}/rescan
write
Re-check a single certificate immediately.
POST
/certificates/rescan
write
Re-check every tracked certificate immediately.

To track a live domain, send a domain with source set to live. To track an offline certificate, set source to offline and include a PEM-encoded certificate_pem instead:

curl https://renewradar.com/api/v1/certificates \
  -X POST \
  -H "Authorization: Bearer <your-token>" \
  -H "Accept: application/json" \
  -d "domain=shop.acme.com" \
  -d "source=live" \
  -d "auto_renew=0"

Certificate object

{
  "id": 1,
  "domain": "shop.acme.com",
  "source": "live",
  "status": "valid",
  "issuer": "R3",
  "organization": null,
  "key_algorithm": "RSA",
  "key_size": 2048,
  "serial_number": "...",
  "signature_algorithm": "sha256WithRSAEncryption",
  "fingerprint_sha256": "...",
  "self_signed": false,
  "valid_from": "2026-05-01T00:00:00.000000Z",
  "valid_to": "2026-07-30T00:00:00.000000Z",
  "days_remaining": 16,
  "auto_renew": false,
  "error": null,
  "last_checked_at": "2026-07-14T09:00:00.000000Z",
  "chain": [ /* leaf, intermediate(s), root */ ],
  "created_at": "2026-04-01T00:00:00.000000Z",
  "updated_at": "2026-07-14T09:00:00.000000Z"
}

Alert channels

Method
Endpoint
Ability
Description
GET
/alert-channels
read
List your alert channels.
GET
/alert-channels/{id}
read
Show a single alert channel.
POST
/alert-channels
write
Add a channel. type is email or webhook; destination is an email address or a URL to match.
PATCH
/alert-channels/{id}
write
Update a channel's destination or enabled state.
DELETE
/alert-channels/{id}
write
Remove a channel.

Alert thresholds

Method
Endpoint
Ability
Description
GET
/alert-thresholds
read
List your alert thresholds.
GET
/alert-thresholds/{id}
read
Show a single alert threshold.
POST
/alert-thresholds
write
Add a threshold: days_before (0–365), label, optional description.
PATCH
/alert-thresholds/{id}
write
Update a threshold.
DELETE
/alert-thresholds/{id}
write
Remove a threshold.

Certificate events

Method
Endpoint
Ability
Description
GET
/certificate-events
read
List recent events — domains added or removed, status changes, and alerts sent.

Current user

Method
Endpoint
Ability
Description
GET
/user
read
Show the authenticated user.
Want alerts pushed to you?
Set up a webhook alert channel instead of polling the API.