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,1ymetric:compliance_score,requirement_completion,validation_rateframework: 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 changedcompliance_changed: Compliance score or status updatedvalidation_completed: Validation process finisheduser_activity: User performed an actionsystem_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 parameters401: Unauthorized - Invalid or missing API key403: Forbidden - Insufficient permissions404: Not Found - Resource not found429: Too Many Requests - Rate limit exceeded500: 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()
Related Documentation
- API Overview - General API information
- Dashboard Guide - Dashboard usage guide
- Integration Examples - Integration examples
The Dashboard API enables custom integrations and real-time monitoring of compliance and project metrics.