Universal Agent Deployment Module (UADM) API¶
The UADM API enables programmatic control over AI agent deployment, management, and monitoring across various devices and environments.
Overview¶
The UADM API provides endpoints for:
- Agent deployment and lifecycle management
- Device registration and control
- Real-time monitoring and metrics
- Security and access control
Authentication¶
All API requests require authentication using a Bearer token:
API Endpoints¶
Agent Management¶
Deploy Agent¶
Request body:
{
"agentId": "string",
"deviceId": "string",
"configuration": {
"memory": "number",
"cpu": "number",
"permissions": ["string"]
}
}
Response:
List Deployments¶
Response:
{
"deployments": [
{
"id": "string",
"agentId": "string",
"deviceId": "string",
"status": "string",
"createdAt": "string",
"updatedAt": "string"
}
]
}
Device Management¶
Register Device¶
Request body:
{
"name": "string",
"type": "string",
"capabilities": ["string"],
"connectionInfo": {
"protocol": "string",
"address": "string",
"port": "number"
}
}
Response:
Get Device Status¶
Response:
{
"deviceId": "string",
"status": "string",
"lastSeen": "string",
"deployedAgents": ["string"],
"metrics": {
"cpu": "number",
"memory": "number",
"network": "object"
}
}
Monitoring & Metrics¶
Get Agent Metrics¶
Response:
{
"agentId": "string",
"metrics": {
"requests": "number",
"latency": "number",
"errors": "number",
"uptime": "string"
},
"period": "string"
}
Stream Device Logs¶
WebSocket connection for real-time log streaming:
Security & Access Control¶
Update Agent Permissions¶
Request body:
Response:
WebSocket Events¶
Connect to WebSocket for real-time updates:
Event Types¶
Agent Status Change¶
{
"type": "AGENT_STATUS_CHANGE",
"data": {
"agentId": "string",
"status": "string",
"timestamp": "string"
}
}
Device Connection¶
{
"type": "DEVICE_CONNECTION",
"data": {
"deviceId": "string",
"status": "string",
"timestamp": "string"
}
}
Error Handling¶
Errors follow a standard format:
Common error codes:
AGENT_NOT_FOUND: Agent does not existDEVICE_OFFLINE: Device is not connectedINSUFFICIENT_RESOURCES: Device lacks required resourcesPERMISSION_DENIED: Insufficient permissions
Rate Limiting¶
- 1000 requests per hour per API token
- Headers indicate limits:
X-RateLimit-LimitX-RateLimit-RemainingX-RateLimit-Reset
Best Practices¶
-
Error Handling
-
Implement proper error handling for all API calls
-
Use exponential backoff for retries
-
Resource Management
-
Monitor agent resource usage
-
Set appropriate resource limits
-
Security
-
Rotate API tokens regularly
-
Use minimal required permissions
-
Monitoring
- Subscribe to WebSocket events for real-time updates
- Implement health checks
SDK Support¶
Official SDKs available for:
- JavaScript/TypeScript
- Python
- Go
- Java
Example using TypeScript SDK: