Health API

The Health API provides endpoints for monitoring the service status and readiness of the Blueberry IDP.

Endpoints

Basic Health Check

Simple health status endpoint.

GET /api/health

Response

{
  "status": "healthy",
  "timestamp": "2024-01-01T10:00:00Z",
  "version": "1.0.0",
  "service": "blueberry"
}

Readiness Check

Comprehensive readiness probe for load balancers.

GET /api/ready

Response

Ready (200):

{
  "status": "ready",
  "checks": {
    "firestore": "healthy",
    "redis": "healthy",
    "argocd": "healthy"
  },
  "timestamp": "2024-01-01T10:00:00Z"
}

Not Ready (503):

{
  "status": "not ready",
  "checks": {
    "firestore": "healthy",
    "redis": "unhealthy",
    "argocd": "healthy"
  },
  "timestamp": "2024-01-01T10:00:00Z"
}

Detailed Status

Comprehensive health status for all components.

GET /api/status

Response

{
  "status": "healthy",
  "timestamp": "2024-01-01T10:00:00Z",
  "version": "1.0.0",
  "services": {
    "firestore": {
      "healthy": true,
      "response_time_ms": 45,
      "last_check": "2024-01-01T10:00:00Z"
    },
    "redis": {
      "healthy": true,
      "response_time_ms": 12,
      "memory_usage": "150MB",
      "last_check": "2024-01-01T10:00:00Z"
    },
    "argocd": {
      "healthy": true,
      "applications_synced": 15,
      "last_check": "2024-01-01T10:00:00Z"
    }
  }
}

Use Cases

  • Load Balancer Health Checks: Use /api/health for basic health
  • Kubernetes Readiness Probes: Use /api/ready for readiness
  • Monitoring Systems: Use /api/status for detailed metrics

Last Updated: January 2024

Document ID: reference/api/health