This API provides a system of record for configuration changes across AI deployments. It supports:
- Schema evolution
- Role-based access control
- Audit trail of all changes
- Backwards compatibility
All requests require a bearer token specific to your role:
- Enterprise Infrastructure:
enterprise-token
- LOB IT:
lob-token
- Application Teams:
app-token
Enterprise teams manage core infrastructure configurations.
curl -X POST http://localhost:8000/api/v1/config/schema \
-H "Authorization: Bearer enterprise-token" \
-H "Content-Type: application/json" \
-d '{
"name": "gpu-inference",
"targetMetric": "gpu_utilization",
"dataClassification": "Restricted",
"quickAlertHeuristic": {
"threshold": 0.85,
"window": "5m"
},
"gpu_config": {
"type": "A100",
"memory": "80GB"
},
"reason": "Production scale-up for high-throughput inference"
}'
Response:
{
"status": "success",
"message": "Enterprise schema updated",
"updated_schema": {
"type": "object",
"properties": {
"name": {"type": "string"},
"targetMetric": {"type": "string"},
"dataClassification": {
"type": "string",
"enum": ["Public", "Internal", "Confidential", "Restricted"]
},
"quickAlertHeuristic": {
"type": "object",
"properties": {
"threshold": {"type": "number"},
"window": {"type": "string"}
}
},
"gpu_config": {
"type": "object",
"properties": {
"type": {"type": "string"},
"memory": {"type": "string"}
}
}
}
}
}
LOB IT teams manage runtime configurations and model validation.
curl -X POST http://localhost:8000/api/v1/runtime/schema \
-H "Authorization: Bearer lob-token" \
-H "Content-Type: application/json" \
-d '{
"modelVersion": "v2.1.0",
"validationParameters": {
"minBatchSize": 32,
"maxLatencyMs": 100
},
"operational_metric": "inference_throughput",
"reason": "Adding throughput monitoring for batch processing"
}'
Application teams manage custom integrations and business metrics.
curl -X POST http://localhost:8000/api/v1/integrations/schema \
-H "Authorization: Bearer app-token" \
-H "Content-Type: application/json" \
-d '{
"customThresholds": {
"accuracy": 0.95,
"latency_p99": 250
},
"businessMetric": "revenue",
"callbackUrl": "https://app-endpoint/callback",
"reason": "Adding latency monitoring for SLA compliance"
}'
View the history of changes for any schema type:
curl -X GET http://localhost:8000/api/v1/audit/enterprise \
-H "Authorization: Bearer enterprise-token"
Response:
{
"changes": [
{
"timestamp": "2024-02-13T14:30:00Z",
"schema_type": "enterprise",
"author": "enterprise-infrastructure",
"change": {
"name": "gpu-inference",
"gpu_config": {
"type": "A100",
"memory": "80GB"
}
}
}
]
}
-
Required Fields:
- Enterprise: name, targetMetric, dataClassification, quickAlertHeuristic
- LOB IT: modelVersion, validationParameters
- App Teams: customThresholds, businessMetric
-
All changes require:
- Reason for change
- Appropriate role authorization
- Valid schema according to role
-
New fields:
- Must match their declared type
- Cannot override existing fields
- Are automatically added to schema
Common error responses:
{
"detail": "Enterprise access required"
}
{
"detail": "Invalid token"
}
{
"detail": "Required field 'reason' missing"
}
- Always include a clear reason for changes
- Use descriptive names for new fields
- Document changes in your change management system
- Verify changes in audit log
- Test backwards compatibility
These configurations are a system of record and NOT:
- Real-time system state
- Performance metrics
- Resource allocation
- Runtime parameters
Example of proper usage:
# Record approved GPU configuration
curl -X POST http://localhost:8000/api/v1/config/schema \
-H "Authorization: Bearer enterprise-token" \
-H "Content-Type: application/json" \
-d '{
"name": "gpu-inference",
"targetMetric": "gpu_utilization",
"dataClassification": "Restricted",
"quickAlertHeuristic": {
"threshold": 0.85,
"window": "5m"
},
"gpu_config": {
"type": "A100",
"memory": "80GB"
},
"reason": "Establishing baseline for production GPU inference"
}'
This records that:
- A100 GPUs are approved for use
- 80GB memory configuration is standard
- Utilization should be monitored
- Changes were properly authorized
The actual runtime allocation and usage are managed separately by your orchestration system.