Reliability
Status, uptime and SLAs
CBCTHub publishes uptime, incident and maintenance information on an external status page hosted on a separate domain. This way you can still see the service state even when the main app is down.
ℹ Public status page
Subscribe by email or RSS to receive automatic notifications when an incident is opened, updated or resolved.
Monitored components
The status page reports the health of each product component separately, so an email incident does not mask an upload one.
| Component | Type | Critical | Notes |
|---|---|---|---|
| API REST | HTTP | ✓ | api.cbcthub.com/api/v1/* — public endpoints. |
| Upload (R2) | Cloudflare R2 | ✓ | PUT to presigned URLs. If down, uploads fail. |
| 3D Viewer | WebGL client | ✓ | cbcthub.com/viewer/*. Served via CDN. |
| Webhooks delivery | Event queue | — | Non-blocking: events queue up and retry when restored. |
| Email (Resend) | Transactional email | — | Report delivery, magic links and notifications. |
| Database | PostgreSQL (Supabase) | ✓ | Primary backend. If down, you cannot authenticate or read exams. |
SLAs per plan
The SLA defines the minimum guaranteed monthly uptime. If we fall below it in a calendar month, eligible customers receive automatic credits on their next invoice.
| Plan | Monthly uptime | Credits | Support |
|---|---|---|---|
| Free | Best effort | — | No contractual SLA. Email support. |
| Pro | 99.5% | ✓ | Email + WhatsApp during business hours. |
| Clinic | 99.9% | ✓ | Priority support. Response in under 4 business hours. |
| Ultra / Enterprise | 99.95% | ✓ | 24/7 support. Shared Slack + direct line. |
ℹ How uptime is measured
Incident policy
Incidents are triaged by severity. Each level has a target acknowledgement time and resolution time.
| Severity | Acknowledgement | Resolution | Description |
|---|---|---|---|
| P0 | < 15 min | — | Full service outage or data loss. |
| P1 | < 1 hour | — | Critical component degraded (upload, viewer, auth). |
| P2 | < 4 hours | — | Secondary functionality affected (email, webhooks). |
| P3 | < 24 hours | — | Minor bugs or non-critical features. |
Scheduled maintenance
When we need to perform maintenance that may impact the service, we post it on the status page at least 48 hours in advance and email subscribers. Windows are chosen during low-traffic times (LATAM late nights / UTC weekends).
How to subscribe to alerts
Three ways to stay up to date without manually checking the status page:
- Email: on the status page, click "Subscribe" → "Email notifications". You get an email when an incident is opened/updated/resolved.
- RSS / Atom: the status page exposes a public feed. Hook it into your monitoring (Datadog, PagerDuty, Slack RSS app).
- Dedicated webhooks: Ultra / Enterprise customers can request a direct webhook to their endpoint when an incident is published. Request it at soporte@cbcthub.com.
Uptime history
The status page shows the last 90 days of uptime per component, with a visual timeline of past incidents and their post-mortems when applicable.
⚠ Reporting an issue