Skip to main content

Dashboard API

The Dashboard API provides real-time access to project metrics, compliance status, and monitoring data for building custom dashboards and integrations.

Base URL

https://api.supernal-coding.com/v1/dashboard

Authentication

All Dashboard API endpoints require authentication via API key:

curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.supernal-coding.com/v1/dashboard/metrics

Endpoints

Get Project Metrics

GET /metrics

Returns comprehensive project metrics including requirement status, compliance scores, and progress indicators.

curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.supernal-coding.com/v1/dashboard/metrics

Response:

{
"project": {
"name": "Medical Device Software",
"version": "1.2.0",
"lastUpdated": "2024-01-15T10:30:00Z"
},
"requirements": {
"total": 45,
"completed": 38,
"inProgress": 5,
"pending": 2,
"completionRate": 84.4
},
"compliance": {
"frameworks": [
{
"name": "ISO 13485",
"score": 92.5,
"status": "compliant",
"lastAssessed": "2024-01-10T14:20:00Z"
},
{
"name": "FDA 21 CFR Part 11",
"score": 88.7,
"status": "compliant",
"lastAssessed": "2024-01-12T09:15:00Z"
}
],
"overallScore": 90.6
}
}

Get Real-Time Status

GET /status

Returns current system status and real-time activity indicators.

curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.supernal-coding.com/v1/dashboard/status

Response:

{
"status": "healthy",
"uptime": "99.98%",
"lastActivity": "2024-01-15T10:28:45Z",
"activeUsers": 12,
"systemHealth": {
"validation": "operational",
"compliance": "operational",
"monitoring": "operational"
},
"recentActivity": [
{
"timestamp": "2024-01-15T10:25:00Z",
"type": "requirement_updated",
"user": "john.doe",
"description": "Updated REQ-ISO-001 validation criteria"
}
]
}

Generate Reports

POST /reports

Generates custom reports based on specified criteria.

curl -X POST \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"type": "compliance",
"framework": "iso13485",
"period": "last_30_days",
"format": "pdf"
}' \
https://api.supernal-coding.com/v1/dashboard/reports

Request Body:

{
"type": "compliance" | "requirements" | "audit" | "summary",
"framework": "iso13485" | "fda21cfr11" | "gdpr" | "soc2",
"period": "last_7_days" | "last_30_days" | "last_90_days" | "custom",
"startDate": "2024-01-01",
"endDate": "2024-01-31",
"format": "pdf" | "json" | "csv"
}

Response:

{
"reportId": "rpt_abc123",
"status": "generating",
"estimatedCompletion": "2024-01-15T10:35:00Z",
"downloadUrl": null
}

Get Historical Data

GET /history

Returns historical metrics and trends over specified time periods.

curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.supernal-coding.com/v1/dashboard/history?period=30d&metric=compliance_score"

Query Parameters:

  • period: 7d, 30d, 90d, 1y
  • metric: compliance_score, requirement_completion, validation_rate
  • framework: Filter by specific compliance framework

Response:

{
"metric": "compliance_score",
"period": "30d",
"dataPoints": [
{
"timestamp": "2024-01-01T00:00:00Z",
"value": 85.2
},
{
"timestamp": "2024-01-02T00:00:00Z",
"value": 86.1
}
],
"trend": "increasing",
"averageValue": 87.5
}

WebSocket API

For real-time updates, connect to the WebSocket endpoint:

const ws = new WebSocket('wss://api.supernal-coding.com/v1/dashboard/ws');

ws.onopen = function () {
// Subscribe to specific events
ws.send(
JSON.stringify({
type: 'subscribe',
events: [
'requirement_updated',
'compliance_changed',
'validation_completed',
],
})
);
};

ws.onmessage = function (event) {
const data = JSON.parse(event.data);
console.log('Real-time update:', data);
};

WebSocket Event Types:

  • requirement_updated: Requirement status or content changed
  • compliance_changed: Compliance score or status updated
  • validation_completed: Validation process finished
  • user_activity: User performed an action
  • system_alert: System health or performance alert

Rate Limits

  • Standard Plan: 1,000 requests per hour
  • Premium Plan: 10,000 requests per hour
  • Enterprise Plan: Unlimited requests

Rate limit headers are included in all responses:

X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1642248000

Error Handling

The API uses standard HTTP status codes and returns error details in JSON format:

{
"error": {
"code": "INVALID_FRAMEWORK",
"message": "The specified framework 'invalid_framework' is not supported",
"details": {
"supportedFrameworks": ["iso13485", "fda21cfr11", "gdpr", "soc2"]
}
}
}

Common Error Codes:

  • 400: Bad Request - Invalid parameters
  • 401: Unauthorized - Invalid or missing API key
  • 403: Forbidden - Insufficient permissions
  • 404: Not Found - Resource not found
  • 429: Too Many Requests - Rate limit exceeded
  • 500: Internal Server Error - Server error

SDKs and Libraries

Official SDKs are available for popular programming languages:

JavaScript/TypeScript

npm install @supernal-coding/dashboard-api
import { DashboardAPI } from '@supernal-coding/dashboard-api';

const api = new DashboardAPI('your-api-key');
const metrics = await api.getMetrics();

Python

pip install supernal-coding-dashboard
from supernal_coding import DashboardAPI

api = DashboardAPI('your-api-key')
metrics = api.get_metrics()

The Dashboard API enables custom integrations and real-time monitoring of compliance and project metrics.