📅 Domain Expiry Monitor — API

Monitoring of domain registration expiry with notifications via Telegram (@brazya_ssl_bot), Email, and Webhook.

GET ?action=check&domain=example.com

Check the registration expiry of a single domain without subscribing.

curl "https://ip.brazya.ru/domain-monitor.php?action=check&domain=example.com"

POST ?action=subscribe

Subscribe to domain expiry notifications.

curl -X POST "https://ip.brazya.ru/domain-monitor.php?action=subscribe" \
  -H "Content-Type: application/json" \
  -d '{"domain":"example.com","telegram_id":123456,"threshold":30,"email":"you@example.com"}'

Parameters: domain (required), telegram_id or email (at least one), threshold (days, default 30), webhook_url (optional).

POST ?action=unsubscribe

Unsubscribe (requires the id received when subscribing).

curl -X POST "https://ip.brazya.ru/domain-monitor.php?action=unsubscribe" \
  -H "Content-Type: application/json" \
  -d '{"id":"SUBSCRIPTION_ID"}'

GET ?action=list

List subscriptions by email or telegram_id.

curl "https://ip.brazya.ru/domain-monitor.php?action=list&email=you@example.com"

GET ?action=cron&secret=CRON_SECRET

Run a check on all subscribed domains (for cron, once a day).

curl "https://ip.brazya.ru/domain-monitor.php?action=cron&secret=YOUR_SECRET"

The secret is stored in .htaccess as SetEnv CRON_SECRET (the same one used by ssl-monitor.php).

📖 See also ssl-monitor.php (SSL/uptime monitoring) or domain-age.php (one-off domain age check).