Fyren Docs
API Reference

Admin Endpoints

Authenticated API endpoints for managing your Fyren instance.

Admin endpoints require authentication via API key or session.

Components

List Components

GET /api/v1/admin/components

Create Component

POST /api/v1/admin/components

Request Body

{
  "name": "API Server",
  "description": "Core API service",
  "status": "operational",
  "displayOrder": 1,
  "isPublic": true
}

Update Component

PUT /api/v1/admin/components/:id

Delete Component

DELETE /api/v1/admin/components/:id

Update Component Status

PATCH /api/v1/admin/components/:id/status

Request Body

{
  "status": "degraded"
}

Status options: operational, degraded, partial_outage, major_outage, maintenance

Monitors

List Monitors

GET /api/v1/admin/monitors

Create Monitor

POST /api/v1/admin/monitors

Request Body

{
  "componentId": "abc123",
  "type": "http",
  "url": "https://api.example.com/health",
  "intervalSeconds": 60,
  "timeoutMs": 10000,
  "expectedStatusCode": 200,
  "failureThreshold": 3
}

Monitor types: http, tcp, ssl_expiry

Update Monitor

PUT /api/v1/admin/monitors/:id

Delete Monitor

DELETE /api/v1/admin/monitors/:id

Incidents

List Incidents

GET /api/v1/admin/incidents

Create Incident

POST /api/v1/admin/incidents

Request Body

{
  "title": "API Latency Issues",
  "status": "investigating",
  "severity": "major",
  "message": "We are investigating increased response times.",
  "componentIds": ["abc123"]
}

Update Incident

PUT /api/v1/admin/incidents/:id

Add Incident Update

POST /api/v1/admin/incidents/:id/updates

Request Body

{
  "status": "identified",
  "message": "Root cause identified. A fix is being deployed."
}

Resolve Incident

PATCH /api/v1/admin/incidents/:id/resolve

Maintenance

List Maintenance

GET /api/v1/admin/maintenance

Create Maintenance

POST /api/v1/admin/maintenance

Request Body

{
  "title": "Database Migration",
  "description": "Scheduled database upgrade to improve performance.",
  "scheduledStart": "2025-01-15T02:00:00Z",
  "scheduledEnd": "2025-01-15T04:00:00Z",
  "componentIds": ["abc123"]
}

Update Maintenance

PUT /api/v1/admin/maintenance/:id

Cancel Maintenance

DELETE /api/v1/admin/maintenance/:id

Subscribers

List Subscribers

GET /api/v1/admin/subscribers

Remove Subscriber

DELETE /api/v1/admin/subscribers/:id

Webhooks

List Webhooks

GET /api/v1/admin/webhooks

Create Webhook

POST /api/v1/admin/webhooks

Request Body

{
  "name": "Slack Notifications",
  "url": "https://hooks.slack.com/services/...",
  "type": "slack",
  "isActive": true
}

Webhook types: slack, discord, teams, generic

Update Webhook

PUT /api/v1/admin/webhooks/:id

Delete Webhook

DELETE /api/v1/admin/webhooks/:id

Organization

Update Organization

PUT /api/v1/admin/org/:id

Request Body

{
  "name": "Acme Corp",
  "logoUrl": "https://example.com/logo.png",
  "brandColor": "#d4c9b8",
  "timezone": "America/New_York"
}

On this page