System
Base URL: https://app.neuroflash.com/api/digital-twin-service
Health Check
GET
/healthHealth check endpoint.
Returns the service health status, name, version, and environment.
Response
FieldTypeDescription
statusstringService health statusservicestringService nameversionstringService versionenvironmentstringDeployment environmentExample
- cURL
- Python
- Node.js
- Go
curl "https://app.neuroflash.com/api/digital-twin-service/health" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
import requests
response = requests.get(
f"https://app.neuroflash.com/api/digital-twin-service/health",
headers={"Authorization": f"Bearer {token}"},
).json()
const response = await fetch(
`https://app.neuroflash.com/api/digital-twin-service/health`,
{ headers: { Authorization: `Bearer ${token}` } }
).then((r) => r.json());
req, _ := http.NewRequest("GET", "https://app.neuroflash.com/api/digital-twin-service/health", nil)
req.Header.Set("Authorization", "Bearer "+token)
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
Response:
{
"status": "healthy",
"service": "digital-twin-service",
"version": "1.0.0",
"environment": "local"
}
Status Check
GET
/statusStatus check endpoint with database connection testing.
Requires admin role. Returns counts of permissions from MySQL and surveys from PostgreSQL to verify database connectivity.
Response
FieldTypeDescription
statusstringService statusmysqlbooleanMySQL database connectivitypostgresbooleanPostgreSQL database connectivityExample
- cURL
- Python
- Node.js
- Go
curl "https://app.neuroflash.com/api/digital-twin-service/status" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
import requests
response = requests.get(
f"https://app.neuroflash.com/api/digital-twin-service/status",
headers={"Authorization": f"Bearer {token}"},
).json()
const response = await fetch(
`https://app.neuroflash.com/api/digital-twin-service/status`,
{ headers: { Authorization: `Bearer ${token}` } }
).then((r) => r.json());
req, _ := http.NewRequest("GET", "https://app.neuroflash.com/api/digital-twin-service/status", nil)
req.Header.Set("Authorization", "Bearer "+token)
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
Response:
{
"status": "healthy",
"mysql": false,
"postgres": false
}
Get Performance Metrics
GET
/v1/performance-metricsQuery Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
page | integer | 1 | Page number (1-based) |
size | integer | 20 | Number of elements per page |
minCreatedAt | string | — | Filter twins and jobs created on or after this timestamp (default: 10 days ago) |
maxCreatedAt | string | — | Filter twins and jobs created on or before this timestamp (default: no upper limit) |
Response
FieldTypeDescription
dataarray<object>
keystringvalueobjectdescriptionstringpageobjectPagination metadata.
sizeintegerNumber of elements per pagetotalElementsintegerTotal number of matching elementstotalPagesintegerTotal number of pagescurrentPageintegerCurrent page number (1-based)Example
- cURL
- Python
- Node.js
- Go
curl "https://app.neuroflash.com/api/digital-twin-service/v1/performance-metrics" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"
import requests
response = requests.get(
f"https://app.neuroflash.com/api/digital-twin-service/v1/performance-metrics",
headers={"Authorization": f"Bearer {token}"},
).json()
const response = await fetch(
`https://app.neuroflash.com/api/digital-twin-service/v1/performance-metrics`,
{ headers: { Authorization: `Bearer ${token}` } }
).then((r) => r.json());
req, _ := http.NewRequest("GET", "https://app.neuroflash.com/api/digital-twin-service/v1/performance-metrics", nil)
req.Header.Set("Authorization", "Bearer "+token)
resp, _ := http.DefaultClient.Do(req)
defer resp.Body.Close()
Response:
{
"data": [
{
"key": "string",
"value": {},
"description": "string"
}
],
"page": {
"size": 0,
"totalElements": 0,
"totalPages": 0,
"currentPage": 0
}
}