Overview
The Nomyo Router plugin transforms your existing Nomyo Router deployment into a compliance agent. With a single configuration block, Nomyo Router periodically reports model inventory, endpoint registry, routing configuration, traffic telemetry, and conversation affinity data to aissurance — eliminating manual data entry.
Prerequisites
- Nomyo Router v0.7+ deployed and managing your AI endpoints
- aissurance account with an active API key (
AISSURANCE_KEY) - TLS 1.3 available for outbound connections
Installation
1. Get Your API Key
From your aissurance dashboard, navigate to Discovery Configuration and generate a new API key. This key is separate from your Nomyo Router’s own authentication.
2. Configure Nomyo Router
Add the compliance block to your Nomyo Router config.yaml:
# config.yaml — Nomyo Router compliance extension
compliance:
enabled: true
server_url: "https://app.aissurance.eu/api/discovery"
api_key: "${AISSURANCE_KEY}" # Provided by aissurance onboarding
polling_interval: 300 # Report every 5 minutes
batch_size: 50
3. Restart Nomyo Router
systemctl restart nomyo-router
4. Verify Connection
Check the discovery status in your aissurance dashboard under Discovery Dashboard. You should see:
- Connection status: Active
- Last sync time: Within last polling interval
- Models discovered: Count of detected models
- Endpoints connected: Count of active inference backends
What Gets Reported
Nomyo Router sends the following data to aissurance:
Model Inventory
- Model name, version, quantization, size
- Associated endpoint URL
- Last used timestamp
- Request count (24h window)
- Average latency
Endpoint Registry
- Backend URL and type (Ollama, vLLM, OpenAI, etc.)
- Health status
- Concurrent connection count
Traffic Telemetry
- Total requests (24h)
- Cache hit rates
- Error rates
Conversation Affinity
- Topic clusters being routed (e.g., customer_service, code_generation, data_analysis)
- Used to infer use cases for risk classification
Discovery Payload Format
{
"tenant_id": "tenant_abc123",
"timestamp": "2026-06-01T10:30:00Z",
"router_version": "0.7",
"models": [
{
"name": "mistral-7b-instruct",
"version": "2.0",
"quantization": "Q4_K_M",
"size_gb": 4.1,
"endpoint": "http://ollama0:11434",
"last_used": "2026-06-01T10:29:45Z",
"request_count_24h": 1547,
"avg_latency_ms": 230
}
],
"endpoints": [
{
"url": "http://ollama0:11434",
"type": "ollama",
"status": "healthy",
"concurrent_connections": 2
}
],
"telemetry": {
"total_requests_24h": 3201,
"total_cache_hits": 892,
"cache_hit_rate": 0.28,
"error_rate": 0.003
},
"conversation_affinity": [
"customer_service",
"code_generation",
"data_analysis"
],
"hmac_signature": "sha256=abc123..."
}
Security
Authentication
- Separate API key (
AISSURANCE_KEY) for the discovery channel - Bearer token authentication on all discovery endpoints
- TLS 1.3 required for all outbound reporting
Integrity Verification
- All payloads signed with HMAC-SHA256 using the aissurance key
- aissurance verifies signatures before processing any discovery data
Deduplication
- Identical payloads within the polling window are automatically deduplicated
- Blacklist controls available to block specific IPs or revoked tenant keys
Fallback Discovery Methods
If Nomyo Router is not available, aissurance supports:
Manual CSV Import
Upload a spreadsheet with model inventory details. The platform maps columns to AI system attributes automatically.
Docker API Scan
Detects running containers with AI-related images (Ollama, vLLM, etc.) via the Docker API.
Troubleshooting
Connection Not Established
- Verify
AISSURANCE_KEYis correct and not revoked - Check outbound TLS connectivity from Nomyo Router to
app.aissurance.eu - Review Nomyo Router logs for compliance-related errors
Models Not Appearing
- Confirm polling interval is configured correctly
- Check that models are actively serving traffic
- Verify the discovery dashboard shows successful payload receipt
High Error Rate
- Check
batch_size— reduce if payloads are too large - Verify HMAC signature generation matches expectations
- Contact support at info@aissurance.eu
API Endpoints
| Endpoint | Method | Description |
|---|---|---|
/discovery/payload | POST | Receive discovery data |
/discovery/health | GET | Global health status |
/discovery/health/tenant/{id} | GET | Per-tenant health |
/discovery/config/report | POST | Report router config |
/admin/discovery/blacklist | POST | Manage blocklist |