Quick Start
Create your first status page in 2 minutes
Webhooks
Connect your monitoring tools
API Reference
Update status programmatically
Custom Domains
Serve your page at status.yourcompany.com
Notifications
Email subscribers on incidents
Quick Start
1. Create your account
Sign up at app.greenping.live with your email. No credit card required.
2. Create a status page
Click "New Page" and enter your page name and URL slug. Your page will be available at greenping.live/s/your-slug.
3. Add your components
Components are the services you want to display (e.g., API, Website, Database). Add them from the Components tab. Each component has a status:
- Operational — everything is working normally
- Degraded — reduced performance but functional
- Partial Outage — some users are affected
- Major Outage — service is unavailable
- Maintenance — planned downtime
4. Share your status page
Share your public URL with your customers. The page is hosted on GreenPing's infrastructure, separate from yours — so it stays reachable when your own site isn't. You can also serve it from your own subdomain — see Custom Domains below.
Webhooks
Supported monitoring tools
- UptimeRobot — sends alert type (up/down) automatically
- Checkly — sends check results with failure status
- Pingdom — sends current state (UP/DOWN)
- Generic — any tool that can send HTTP POST requests
Setting up a webhook
- Go to your status page → Webhooks tab
- Click "Add Webhook"
- Select the source (UptimeRobot, Checkly, etc.) and target component
- Copy the generated webhook URL
- Paste it into your monitoring tool's webhook/notification settings
Generic webhook format
Send a POST request with this JSON body:
POST /api/webhooks/incoming/{webhook_id}
Content-Type: application/json
{
"status": "major_outage",
"message": "API server is not responding"
}When status is major_outage or partial_outage, an incident is auto-created. When operational, active incidents are auto-resolved.
API Reference
All API endpoints authenticate with a Bearer token in the Authorization header. Use your session access token (issued at sign-in; it expires after about an hour). Long-lived API keys are on the roadmap.
Quick status update
Change a component's status with a single call:
curl -X PATCH \
https://greenping.onrender.com/api/pages/{page_id}/components/{id}/status?status=major_outage \
-H "Authorization: Bearer YOUR_TOKEN"Create an incident
curl -X POST \
https://greenping.onrender.com/api/pages/{page_id}/incidents \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Database connectivity issues",
"severity": "major",
"message": "We are investigating connection timeouts.",
"affected_components": ["component_id"],
"status": "investigating"
}'Resolve an incident
curl -X POST \
https://greenping.onrender.com/api/pages/{page_id}/incidents/{id}/resolve \
-H "Authorization: Bearer YOUR_TOKEN"Auto-resolves the incident, posts a "resolved" update, and resets affected components to operational.
All endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/pages | List your pages |
| POST | /api/pages | Create a page |
| GET | /api/pages/{id}/components | List components |
| PATCH | /api/pages/{id}/components/{id}/status | Update status |
| POST | /api/pages/{id}/incidents | Create incident |
| POST | /api/pages/{id}/incidents/{id}/updates | Post update |
| POST | /api/pages/{id}/incidents/{id}/resolve | Resolve |
Custom Domains
Serve your page at status.yourcompany.com
- At your DNS provider, add a CNAME record for your subdomain (e.g.
status) pointing tocname.vercel-dns.com. Using Cloudflare? Set the record to DNS only (grey cloud, not orange) — proxied records cause an SSL handshake error. - In your dashboard, open your page's Settings and enter the full subdomain in the Custom Domain field, then save
- We activate the domain with automatic SSL — usually live within minutes
Your greenping.live/s/your-slug URL keeps working alongside the custom domain. See it live: our own status page runs at status.greenping.live.
Email Notifications
How it works
- A "Subscribe to updates" form appears on your public status page
- Users enter their email and receive a confirmation link (double opt-in)
- Once confirmed, they receive emails for all incident activity
- Every email includes an unsubscribe link
Subscriber limits by plan
| Plan | Confirmed Subscribers |
|---|---|
| Free | 100 |
| Pro ($9/mo) | 1,000 |
| Scale ($29/mo) | 5,000 |
There is no limit on emails sent per month — the cap is on total confirmed subscribers per status page.