Configuration
After installing OpenUptimes, you'll want to configure it to suit your needs. This page covers the various configuration options available.
Admin Dashboard
OpenUptimes provides an admin dashboard at /admin where you can easily configure all your services without touching any code.
Through the admin dashboard, you can:
- Add new services to monitor
- Edit existing service configurations
- Delete services you no longer wish to monitor
- View monitoring history and statistics
- Configure GitHub Actions integration

Service Configuration
Each service can be configured with:
| Setting | Description | Default |
|---|---|---|
| Name | Display name for the service | Required |
| URL | The URL to check | Required |
| Description | Description of the service | Optional |
| Expected Status | HTTP status code to expect | 200 |
| Method | HTTP method to use | GET |
| Timeout | Timeout in milliseconds | 10000 |
Adding a Service
To add a new service:
- Navigate to the admin dashboard at
/admin - Click the Add Service button
- Fill in the service details
- Click Save
Editing a Service
To edit an existing service:
- Navigate to the admin dashboard at
/admin - Find the service you want to edit
- Click the Edit button
- Update the service details
- Click Save
Deleting a Service
To delete a service:
- Navigate to the admin dashboard at
/admin - Find the service you want to delete
- Click the Delete button
- Confirm the deletion
Environment Variables
OpenUptimes supports the following environment variables:
| Variable | Description | Default | Required |
|---|---|---|---|
REDIS_URL |
URL to your Redis instance | - | Yes |
NEXT_PUBLIC_SITE_NAME |
Name of your status page | "OpenUptimes" | No |
NEXT_PUBLIC_SITE_DESCRIPTION |
Short description | "Service Status Monitor" | No |
NEXT_PUBLIC_REFRESH_INTERVAL |
Refresh interval in ms | 60000 | No |
Setting Environment Variables
On Vercel
- Go to your project in the Vercel dashboard
- Click on Settings > Environment Variables
- Add each environment variable and its value
- Click Save
- Redeploy your project for the changes to take effect
Self-Hosted
For local development or self-hosted deployment:
- Create or edit the
.env.localfile in the root directory - Add each environment variable:
REDIS_URL="redis://username:password@host:port"
NEXT_PUBLIC_SITE_NAME="My Status Page"
NEXT_PUBLIC_SITE_DESCRIPTION="Service Status Monitor"
NEXT_PUBLIC_REFRESH_INTERVAL=60000
Warning
Never commit your .env.local file to version control, as it may contain sensitive information.
GitHub Actions Configuration
For GitHub Actions monitoring, you'll need to:
- Generate an API key through the admin dashboard
- Add the API key as a repository secret (named
PING_API_KEYby default) - Create a workflow file in your repository at
.github/workflows/ping.yml
See the GitHub Actions Setup guide for detailed instructions.
Redis Configuration
OpenUptimes uses Redis for data storage. Here are some Redis configuration tips:
Redis Connection URL Format
Redis Connection Examples
- Local:
redis://localhost:6379 - With auth:
redis://username:password@redis.example.com:6379 - With SSL:
rediss://username:password@redis.example.com:6379
Redis Memory Management
To prevent Redis from using too much memory, OpenUptimes implements automatic TTL (Time To Live) for historical data. By default, data is stored for 24 hours.
You can configure the TTL in the admin dashboard under Debug > Ping History.
Advanced Configuration
For advanced users, OpenUptimes offers additional configuration options:
Custom API Integrations
You can integrate OpenUptimes with other monitoring tools by using the API endpoints:
- GET
/api/ping: Trigger a check of all services - GET
/api/status: Get the current status of all services - GET
/api/history/{serviceName}: Get historical data for a specific service
Internal Cron System
OpenUptimes includes an internal cron system for more precise monitoring. This can be configured through the admin dashboard under Debug > Ping Cron.