Health check and monitoring
The status endpoint provides real-time information about the API's health and availability. Use it to monitor service uptime, check component health, and integrate with your monitoring systems.
operationalOPERATIONALAll systems are functioning normally
degradedDEGRADEDSome components are experiencing issues but service is still available
outageOUTAGEService is unavailable or experiencing major issues
/v1/statusCheck the current health and operational status of the SnapshotAI API. This endpoint is public and does not require authentication.
Base URL: https://www.snapshotai.dev
No Authentication Required
This endpoint is public and can be called without an API key. Use it for monitoring and health checks without exposing credentials.
curl -X GET https://www.snapshotai.dev/api/v1/statusconst response = await fetch('https://www.snapshotai.dev/api/v1/status');
const status = await response.json();
console.log('API Status:', status.status);
console.log('Version:', status.version);
console.log('Uptime:', status.uptime_seconds, 'seconds');
// Check individual components
if (status.components.database.status === 'operational') {
console.log('Database is healthy');
}import requests
response = requests.get('https://www.snapshotai.dev/api/v1/status')
status = response.json()
print(f"API Status: {status['status']}")
print(f"Version: {status['version']}")
print(f"Uptime: {status['uptime_seconds']} seconds")
# Check components
for component, data in status['components'].items():
print(f"{component}: {data['status']}"){
"status": "operational",
"version": "1.0.0",
"timestamp": "2025-11-05T00:45:30.123Z",
"uptime_seconds": 2847293,
"response_time_ms": 142,
"components": {
"database": {
"status": "operational",
"response_time_ms": 45
},
"storage": {
"status": "operational",
"response_time_ms": 38
},
"api": {
"status": "operational"
}
}
}{
"status": "degraded",
"version": "1.0.0",
"timestamp": "2025-11-05T00:45:30.123Z",
"uptime_seconds": 2847293,
"response_time_ms": 1250,
"components": {
"database": {
"status": "degraded",
"response_time_ms": 1100
},
"storage": {
"status": "operational",
"response_time_ms": 42
},
"api": {
"status": "operational"
}
}
}statusstringOverall API status: operational,degraded, oroutage
versionstringCurrent API version (semantic versioning)
uptime_secondsnumberService uptime in seconds since last restart
response_time_msnumberTime taken to generate this status response in milliseconds
componentsobjectHealth status of individual service components:
database - Database connectivity and performancestorage - File storage system availabilityapi - API server healthIntegrate the status endpoint into your monitoring and alerting systems:
// Health check monitoring script
async function checkApiHealth() {
try {
const response = await fetch('https://www.snapshotai.dev/api/v1/status');
const status = await response.json();
if (status.status !== 'operational') {
// Send alert
await sendAlert({
severity: status.status === 'degraded' ? 'warning' : 'critical',
message: `API status is ${status.status}`,
components: status.components
});
}
// Log metrics
await logMetrics({
status: status.status,
responseTime: status.response_time_ms,
uptime: status.uptime_seconds
});
return status.status === 'operational';
} catch (error) {
// API is unreachable
await sendAlert({
severity: 'critical',
message: 'API is unreachable',
error: error.message
});
return false;
}
}
// Run every 60 seconds
setInterval(checkApiHealth, 60000);Poll the status endpoint every 60 seconds for production monitoring. Increase frequency during incidents.
setInterval(checkStatus, 60000)Configure alerts based on status changes and response times:
Track API availability and uptime over time to measure SLA compliance and service reliability.
Display real-time API status on internal dashboards and status pages for stakeholders.
Implement circuit breakers that stop sending requests when the API status is degraded or down.
Quickly identify which components are affected during incidents to speed up troubleshooting.
Best Practices
Related Resources