Certificate Monitoring

Subscribe to certificate transparency matches for a domain and read the certificates.

What certificate monitoring is

Certificate monitoring watches a domain for matching certificates and can notify a webhook when a certificate meets conditions you set.

Organization monitoring can also show certificates on a domain link. Use this when you want the watch on its own.

POST/v3/cert-monitoring

Watch a domain

Request fields

FieldNotes
domainDomain to watch
notificationsOptional callback configuration

notifications fields:

FieldNotes
enabledTurn delivery on
callback_idRequired when enabled is true. A webhook id
conditionsWhich certificates qualify
delivery_modeimmediate (default), hourly, daily, weekly, or monthly
digest_hour0–23. Used by daily, weekly, and monthly delivery
digest_weekday0–6, Sunday is 0. Used by weekly delivery
digest_day1–31. Used by monthly delivery. Shorter months use the last day
max_events_per_deliveryCap on events in one delivery
stateseeding, active, or paused

This callback_id is the subscription's own webhook. It is not filled from preferences and it is not a job callback.

A new subscription stays in seeding while historic certificates are loaded from crt.sh and ctlogs.dev, then moves to active. If both sources stay unavailable, seeding still ends after 6 hours. Names already seen stay quiet. Names that show up after that can notify. callback_id is required only when enabled is true.

curl -sS -X POST "https://api.efflux.io/v3/cert-monitoring" \
  -H "Authorization: Bearer $EFFLUX_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "domain": "example.com",
    "notifications": {
      "enabled": true,
      "callback_id": "whook_abc123",
      "delivery_mode": "daily",
      "digest_hour": 8
    }
  }'

Read matches

GET/v3/cert-monitoring

List watched domains

GET/v3/cert-monitoring/{domain}

Get one domain

PUT/v3/cert-monitoring/{domain}

Replace notifications

DELETE/v3/cert-monitoring/{domain}

Stop watching

GET/v3/cert-monitoring/certs

Matches across your domains

GET/v3/cert-monitoring/{domain}/certs

Matches for one domain

GET/v3/cert-monitoring/{domain}/certs/{hash}

One certificate

GET/v3/cert-monitoring/{domain}/count

Match count

Certificate lists default to limit 50 (max 500). The count route accepts since and until.

A match includes domain, hash, the CT log id and URL, and certificate_data (DNS names, validity, fingerprints, issuer, subject, key type).