Documentation Portal
Invalid access code

Dashboard

All systems operational
v4.9
Munin Articulate™
Updated today
59,459
Training Examples
+640 last 24 hours
99.94%
Uptime (30 days)
SLA target: 99.9%
18
Active Languages
incl. Northern Sami
PASS
Munin Deploy Gate™
1,500/1,500 tests passed
68
Available Voices
Nora, Erik + 66 more

Platform Improvements

Munin Huginn™ continuously improves the platform. The chart shows the growth of training data and model quality over time.

60K 55K 50K 45K 40K v4.1 v4.2 v4.3 v4.4 v4.5 v4.6 v4.7 v4.8 v4.9 Training examples Response time (ms)

Recent Updates

Today
Munin Articulate™ v4.9 deployed — 59,459 training examples, 1,500/1,500 Deploy Gate™ PASS
Today
Genesys TTS Connector (BYOT-A) implemented — ready for integration
Yesterday
Documentation portal, status page and admin panel launched
3 June
New language: Northern Sami (davvisamegiella)
2 June
Munin Deploy Gate™ v4.8 passed: 0 regressions

Key Metrics

Munin Accelerate™ hit rate94%
Response time with Accelerate™Sub-2 ms
Time to first byte (streaming)From <100 ms
Pronunciation corrections (nb)123 rules
Pronunciation languages supported13
Stress test passed63,000+ requests
Latest deploy gatePASS

Platform Overview

Munin Labs operates a fully isolated infrastructure within AWS EU regions. All processing takes place within the customer's chosen AWS region. Data never leaves the EU.

Production Architecture

Genesys Cloud TTS Connector / HTTPS TLS 1.3 PRODUCTION (api.muninlabs.io) Munin Gateway Munin Voice Engine™ Munin Articulate™ Munin Accelerate™ Munin Sentinel™ Munin Refine™ EU Data Residency (encrypted, per-customer isolation) FAILOVER (automatic DNS swap) Identical configuration, separate hardware, different AZ DEVELOPMENT api.dev.muninlabs.io Identical to production Munin Huginn™ Continuous improvement 24/7 Munin Deploy Gate™ 1,500 automated tests Network Isolation • All services run in a private VPC (no public IPs except gateway) • TLS 1.3 end-to-end. Certificates renewed automatically • Customer data encrypted at rest (AES-256) and in transit. Never stored permanently • Per-customer segregation (Munin Accelerate™ isolation) • No third-party services in the data processing chain • AWS EU region, GDPR-compliant

Language Endpoints

Each language has a dedicated endpoint. No language detection required — the endpoint enforces the correct language. This eliminates misclassification and delivers the highest possible quality.

HTTPSnb.api.muninlabs.io
HTTPSnn.api.muninlabs.io
HTTPSsv.api.muninlabs.io
HTTPSda.api.muninlabs.io
HTTPSfi.api.muninlabs.io
HTTPSis.api.muninlabs.io
HTTPSsme.api.muninlabs.io
HTTPSen.api.muninlabs.io
HTTPSde.api.muninlabs.io
HTTPSfr.api.muninlabs.io
HTTPSes.api.muninlabs.io
HTTPSit.api.muninlabs.io
HTTPSnl.api.muninlabs.io
HTTPSpl.api.muninlabs.io
HTTPShu.api.muninlabs.io
HTTPSpt.api.muninlabs.io
HTTPSja.api.muninlabs.io
HTTPSar.api.muninlabs.io

Customer-Isolated Endpoints

For enterprise customers we provide fully isolated endpoints with dedicated data storage, individual SLA targets and segregated reporting.

Example: Customer-isolated setup Upon onboarding, the customer's own endpoints are provisioned automatically: nb.{customer}.api.muninlabs.io
sv.{customer}.api.muninlabs.io
da.{customer}.api.muninlabs.io
Each customer receives isolated Munin Accelerate™, dedicated logging, and full GDPR deletion with a single command.
CapabilityDescription
Data isolationFully separated data storage per customer. No cross-contamination possible
Munin Accelerate™Dedicated per customer. No sharing of optimised data
GDPR deletionA single API command permanently and irreversibly deletes all customer data
Per-customer SLAIndividual uptime monitoring and reporting
LoggingSegregated logging — each customer sees only their own data

Security Overview

Munin Labs is built with security as a foundational principle. All data processing takes place in AWS EU regions, with encryption at every layer and no third-party services involved in data processing.

Encryption

In transitTLS 1.3
At restAES-256
Certificate managementAutomatic renewal
API key hashingbcrypt (cost 14)
WebSocketWSS (encrypted)

Access Control

AuthenticationAPI key + HMAC signature
AuthorisationPer-customer isolation (RLS)
Admin accessSSH key pairs, no passwords
Network accessOnly port 443 open externally
Internal communicationPrivate VPC, no public IPs

Data Residency

Guaranteed EU Processing All data processing takes place in AWS EU regions (Ireland/Frankfurt/Stockholm). No data leaves the EU region. No US access. No third-party services in the data processing chain.
Data TypeStorageRetention
Audio (speech)RAM only during processingNever stored
TranscriptionsEncrypted, per-customer isolationConfigurable
MetadataEncrypted database in EUConfigurable
Model dataEncrypted in EU regionPermanent (not customer data)

Munin Sentinel™ — Continuous Monitoring

Munin Sentinel™ monitors the entire platform in real time, 24/7/365. Anomalies trigger automatic remediation to maintain service quality.

CheckFrequencyAction on anomaly
Service healthEvery 60 secondsAutomatic restart within 30 seconds
Response timeEvery 60 secondsBuffer flush + escalation
CapacityEvery 60 secondsAutomatic scale-up within 5 minutes
SecurityContinuousBlocking + alerting
CertificatesDailyAutomatic renewal

Security Policies

PolicyStatusStandard
Information Security PolicyActiveISO 27001
Acceptable UseActiveSOC2 CC1
Access Control PolicyActiveSOC2 CC6
Incident ResponseActiveSOC2 CC7
Change ManagementActiveSOC2 CC8
Risk ManagementActiveSOC2 CC3
Privacy PolicyActiveGDPR
Backup PolicyActiveSOC2 CC9

GDPR & Privacy

Munin Labs is designed from the ground up for GDPR compliance. We act as a data processor on behalf of the customer. No personal data leaves the customer's chosen EU region.

Data Flow Diagram

Caller PSTN Genesys Cloud WSS/TLS 1.3 MUNIN LABS — EU REGION (encrypted) Munin Gateway Voice Engine™ Articulate™ Accelerate™ Per-customer isolation | Encrypted | No permanent audio storage Never stored Audio after processing

Privacy Guarantees

Audio is never storedGuaranteed
No third-party servicesGuaranteed
EU data residencyGuaranteed
Per-customer data isolationGuaranteed
Right to erasureAPI available
Data Processing AgreementAvailable

Compliance Roadmap

StandardStatus
GDPRCompliant
NIS2Aligned
DORA (finance/insurance)Aligned
SOC2 Type IPlanned Q3
ISO 27001Planned Q4
Schrems IINot applicable
Schrems II Because all data processing occurs in the EU using EU-based infrastructure, Schrems II concerns are eliminated. No data is transferred to third countries.

Customer Data Deletion (GDPR Art. 17)

Upon termination of a customer relationship or upon request, all customer data is permanently deleted:

Request received
Identity verification
Deletion from all systems
Munin Accelerate™ purged
Confirmation sent

Maximum processing time: 72 hours. Typical: under 24 hours.

SLA — Service Level Agreement

Munin Labs commits to 99.9% uptime for the production environment. In the event of an SLA breach, credits are issued according to the agreed compensation model.

99.9%
Uptime Target
Max 43 min downtime/month
From <100 ms
Streaming TTFB
Time to first byte
Sub-2 ms
Munin Accelerate™
Known requests

Failover Architecture

DNS api.muninlabs.io Health-based routing Primary Node EU region, AZ-a ● Active Failover Node EU region, AZ-b ○ Standby Munin Sentinel™ ● Health check: 60s ● DNS swap: <60s ● Alerting: immediate ● Automatic escalation ● Accelerate™ warm-up on failover ● Zero manual intervention Auto failover

SLA Tiers

ComponentTargetMax downtime/monthAlerting
API availability99.9%43 minutesImmediate
TTS streaming TTFBFrom <100 msN/AOn threshold breach
TTS with Munin Accelerate™Sub-2 msN/AOn threshold breach
Failover time<60 secondsN/AAutomatic
Planned maintenanceZero-downtime0 minutes48-hour advance notice

Incident Response

SeverityResponse TimeResolution TimeExample
Critical (P1)15 minutes4 hoursTotal service outage
High (P2)1 hour8 hoursDegraded performance
Medium (P3)4 hours24 hoursSingle service failure
Low (P4)Next business day5 business daysCosmetic / minor

SLA Breach Compensation

UptimeCredit
99.0% — 99.9%10% of monthly fee
95.0% — 99.0%25% of monthly fee
<95.0%50% of monthly fee

Development & Deployment Process

Munin Labs follows a strict development process with automated testing, a staging environment and zero-downtime deployments. No code change reaches production without passing Munin Deploy Gate™.

Deployment Pipeline

Code change (Git)
Munin Deploy Gate™
1,500 automated tests
Deploy to DEV
Manual verification
Promote to PROD
Zero-downtime hot-swap

Munin Deploy Gate™

Every update must pass 1,500 automated tests before it can be deployed. The gate test covers:

Text-to-speech quality150 x 10 batches
Norwegian (Bokmål)Tested
Norwegian (Nynorsk)Tested
Regression0 allowed
Automatic rollbackOn failure
Gate failure blocks deployment If a single test fails, production remains unchanged. No manual override is possible. The previous version stays active until the issue is resolved.

Zero-Downtime Deployment

Updates are deployed without any service interruption:

1. New version loaded on parallel environment
2. Health check verifies new version
3. Traffic routed to new version
4. Previous version held on standby (rollback)
5. After 15 min stable operation: previous version removed

Total deployment time: under 5 minutes. Customers notice nothing.

Environments

EnvironmentAddressPurposeStability
PROD api.muninlabs.io Production. Verified releases only 99.9% SLA
DEV api.dev.muninlabs.io Testing and integration. Identical to prod Best effort
DEV is identical to PROD The development environment runs the same configuration and software as production. The only difference is that DEV may be updated more frequently and is used for integration testing without risk to production.

Munin Huginn™ — Continuous Improvement

Munin Huginn™ analyses and improves the platform automatically, around the clock:

TaskFrequencyDescription
Pronunciation analysisEvery 2 hoursAutomatically identifies and corrects pronunciation errors
Training data generationDailyGenerates new training examples for all supported languages
Model optimisationWeeklyEvaluates and improves model quality
Quality reportingDailyAutomatic report on improvements and deviations

API Reference

Munin Labs offers a simple, stable API based on WebSocket (AudioHook protocol) for real-time speech-to-text and text-to-speech.

Endpoints

Production — TTS https://api.muninlabs.io/v1/speak
Production — AudioHook (STT) wss://api.muninlabs.io/v1/ws
Development / Testing https://api.dev.muninlabs.io/v1/speak

Language-Specific Endpoints

For the simplest possible integration we offer language-specific endpoints that enforce the correct language without any language detection. Each endpoint supports both TTS (HTTPS) and AudioHook STT (WSS).

LanguageTTS (HTTPS)AudioHook STT (WSS)ISO
Norwegian Bokmålnb.api.muninlabs.io/v1/speaknb.api.muninlabs.io/v1/wsnb
Norwegian Nynorsknn.api.muninlabs.io/v1/speaknn.api.muninlabs.io/v1/wsnn
Swedishsv.api.muninlabs.io/v1/speaksv.api.muninlabs.io/v1/wssv
Danishda.api.muninlabs.io/v1/speakda.api.muninlabs.io/v1/wsda
Finnishfi.api.muninlabs.io/v1/speakfi.api.muninlabs.io/v1/wsfi
Icelandicis.api.muninlabs.io/v1/speakis.api.muninlabs.io/v1/wsis
Northern Samisme.api.muninlabs.io/v1/speaksme.api.muninlabs.io/v1/wssme
Englishen.api.muninlabs.io/v1/speaken.api.muninlabs.io/v1/wsen
Germande.api.muninlabs.io/v1/speakde.api.muninlabs.io/v1/wsde
+ 9 more languagesfr, es, it, nl, pl, hu, pt, ja, ar — same pattern

Customer-Isolated Endpoints

Enterprise customers receive their own fully isolated endpoints. These are provisioned automatically during onboarding:

Format: {language}.{customer}.api.muninlabs.io nb.{customer}.api.muninlabs.io — Norwegian Bokmål
sv.{customer}.api.muninlabs.io — Swedish
da.{customer}.api.muninlabs.io — Danish
Provisioned automatically during onboarding. Full data isolation, dedicated Munin Accelerate™, and individual SLA monitoring.

Authentication

All API calls require authentication via API key. The key is provided during onboarding.

# Authentication via Bearer token
Authorization: Bearer mk_your_api_key_here

Genesys TTS Connector (BYOT-A)

For Genesys Cloud integration the TTS Connector is used. Two endpoints are required:

1. List voices

GET/v1/tts/voicesVoice catalogue for Architect
$ curl https://api.muninlabs.io/v1/tts/voices \
-H "Authorization: Bearer mk_..."

# Response:
{
  "voices": [
    {"name": "Nora", "id": "nora", "language": "nb-NO", "gender": "female", "type": "neural"},
    {"name": "Erik", "id": "erik", "language": "nb-NO", "gender": "male", "type": "neural"},
    {"name": "Astrid", "id": "astrid", "language": "sv-SE", "gender": "female", "type": "neural"},
    ...
  ]
}

2. Synthesise speech

POST/v1/tts/synthesizeText to PCM audio
$ curl -X POST https://api.muninlabs.io/v1/tts/synthesize \
-H "Authorization: Bearer mk_..." \
-H "Content-Type: application/json" \
-d '{"text":"Welcome to customer service","voice":"nora","language":"nb-NO","sample_rate":8000,"format":"pcm"}' \
--output audio.pcm

# Response: raw PCM audio (16-bit, mono, 8kHz)
# Content-Type: audio/L16;rate=8000
Genesys Configuration Complete Advanced JSON for Genesys Admin is provided during onboarding. Paste into Admin > Integrations > TTS Connector > Advanced. Credentials: "User Defined" with Authorization header.

REST API (Direct Integration)

For customers who do not use Genesys, we offer a simpler REST API:

Text to Speech

GET/v1/speakGenerates WAV audio
$ curl "https://api.muninlabs.io/v1/speak?text=Hello&voice=nora&language=norwegian" \
-H "Authorization: Bearer mk_..." \
--output hello.wav
ParameterTypeRequiredDescription
textstringYesText to be spoken (max 2,000 characters)
voicestringYesVoice ID (e.g. "nora", "erik")
languagestringYesLanguage ("norwegian", "swedish", "danish", etc.)
speedfloatNoSpeech rate 0.8–1.2 (default: 1.0)

Health Check

GET/v1/healthNo authentication required
$ curl https://api.muninlabs.io/v1/health

{"status":"ok","engine":"Munin Voice Engine","version":"5.0","voices":68}

Voice List

GET/v1/voicesAll available voices

Error Codes

CodeMeaningAction
200OK — audio returned
400Invalid request (missing text/voice)Check parameters
401Invalid or missing API keyCheck Authorization header
404Unknown voice or languageCheck /v1/tts/voices for valid values
429Too many requestsWait and retry (rate limit)
500Internal errorContact support
503Service temporarily unavailableAutomatic failover active, retry

Language Codes

LanguageREST APIGenesys (BCP-47)
Norwegian Bokmålnorwegiannb-NO
Norwegian Nynorsknorwegiannn-NO
Swedishswedishsv-SE
Danishdanishda-DK
Finnishfinnishfi-FI
Icelandicicelandicis-IS
Northern Saminorthern samise-NO
Englishenglishen-GB
Germangermande-DE

Rate Limits

LimitValue
Max text length per request2,000 characters
Max requests per minuteDepends on agreement
Max concurrent requestsDepends on agreement

Contact us for customised limits based on your requirements.