API Overview
The Bareuptime API allows you to programmatically manage your monitoring setup, retrieve data, and integrate with your existing tools.
Base URL
https://api.bareuptime.co/v1
Authentication
All API requests require authentication using an API key. Include your API key in the request headers:
Authorization: Bearer YOUR_API_KEY
Getting Your API Key
- Log in to your Bareuptime dashboard
- Navigate to Settings → API Keys
- Click Generate New Key
- Copy and securely store your API key
Rate Limiting
The API is rate limited to:
- 100 requests per minute for free accounts
- 1000 requests per minute for premium accounts
When you exceed the rate limit, you'll receive a 429 Too Many Requests response.
Response Format
All API responses are returned in JSON format:
{
"success": true,
"data": { ... },
"message": "Success"
}
Error Responses
When an error occurs, the API returns an error response:
{
"success": false,
"error": {
"code": "VALIDATION_ERROR",
"message": "Invalid monitor URL"
}
}
Available Endpoints
Monitors
GET /monitors- List all monitorsPOST /monitors- Create a new monitorGET /monitors/{id}- Get monitor detailsPUT /monitors/{id}- Update a monitorDELETE /monitors/{id}- Delete a monitor
Monitor Data
GET /monitors/{id}/status- Get current statusGET /monitors/{id}/stats- Get statisticsGET /monitors/{id}/incidents- Get incident history
Status Pages
GET /status-pages- List status pagesPOST /status-pages- Create status pagePUT /status-pages/{id}- Update status page
Notifications
GET /notifications- List notification channelsPOST /notifications- Create notification channelPUT /notifications/{id}- Update notification channel
SDKs and Libraries
Official SDKs are available for:
- JavaScript/Node.js -
npm install bareuptime-sdk - Python -
pip install bareuptime - Go -
go get github.com/bareuptime/go-sdk
Examples
Check out our Monitor API Examples for common use cases and code samples.