Create system
Create a new system. Any authenticated user can create systems - access control is based on the creator's organization.
POST
/systems
curl \
--request POST 'https://api.your-domain.com/api/systems' \
--header "Authorization: Bearer $ACCESS_TOKEN" \
--header "Content-Type: application/json" \
--data '{"name":"Production Server 01","type":"ns8","custom_data":{"tier":"web","datacenter":"EU-West-1","environment":"production"}}'
Request examples
{
"name": "Production Server 01",
"type": "ns8",
"custom_data": {
"tier": "web",
"datacenter": "EU-West-1",
"environment": "production"
}
}
Response examples (201)
{
"code": 201,
"message": "system created successfully",
"data": {
"id": "4cf3053f-d0d5-4b10-b752-ff8f7b63c2f7",
"name": "Production Server 01",
"type": "ns8",
"status": "online",
"fqdn": "prod-web-01.example.com",
"ipv4_address": "192.168.1.100",
"ipv6_address": "2001:db8::1",
"version": "2.1.4",
"last_seen": "2025-07-10T10:30:00Z",
"custom_data": {
"tier": "web",
"datacenter": "EU-West-1",
"environment": "production"
},
"secret_hint": "a7b9",
"created_at": "2025-07-01T09:00:00Z",
"updated_at": "2025-07-10T10:30:00Z",
"created_by": {
"user_id": "usr_123456789",
"user_name": "admin",
"organization_id": "org_123456789",
"organization_name": "Nethesis"
},
"heartbeat_status": "alive",
"last_heartbeat": "2025-07-21T10:25:00Z",
"heartbeat_minutes": 5
}
}
Response examples (400)
{
"code": 400,
"message": "validation failed",
"data": {
"type": "validation_error",
"errors": [
{
"key": "username",
"message": "required",
"value": "string"
}
]
}
}
Response examples (401)
{
"code": 401,
"message": "invalid token",
"data": {}
}
Response examples (403)
{
"code": 403,
"message": "insufficient permissions",
"data": {}
}