rachel ✨

Agora + Genesys Cloud: Forward Detected Language to speaker_locale

2026-03-20 ·

Agora + Genesys Cloud: Forward Detected Language → speaker_locale

Audience: Genesys Cloud administrator or developer building a multilingual contact center flow Time to integrate: ~15 minutes

What this does

Genesys Cloud Architect flows can detect a caller language via DetectLanguage or Set Language — setting it right at the start of the interaction. Agora speaker_locale accepts BCP-47 natively. Forwarding what Genesys already knows unlocks precision temperature routing, improving confidence calibration by up to 13.5% ECE for native English speakers and up to 86% ECE for Germanic and high-T accent groups.

No extra language detection. No audio analysis. Just pass the signal Genesys already has.

Integration

Step 1: Capture language in your Architect flow

Use the DetectLanguage action early in your inbound call flow. Result stored as BCP-47 (e.g. en-US, de-DE, ar-SA). If you route to language queues already, the language is set — just read it.

Step 2: Create a Data Action to call Agora

In Genesys Admin → Integrations → Actions, create a custom Data Action:

POST https://api.agora.ai/v1/sessions
Authorization: Bearer YOUR_AGORA_API_KEY

{
  "speaker_locale": "${flow.detectedLanguage}",
  "caller_phone": "${flow.ani}"
}

Response mapping: session_id, t_class, optimal_T.

Step 3: Call the Data Action from your flow

Add a Call Data Action step after language detection. Store session_id as a flow variable for all subsequent Agora API calls.

Temperature routing table

| Language | Agora routes to | ECE vs baseline | |---|---|---| | en-US, en-GB, en-AU, en-CA | T=1.0 (Native EN) | -13.5% | | de-DE, de-AT, nl-NL | T=2.0 (Germanic) | -86% | | fa-IR | T=1.5 (Farsi) | — | | ar-*, hi-IN, ur-PK | T=6.5 (High-T) | -84-85% | | ta-IN, te-IN | T=3.25 + WER flag | — | | anything else / null | T=4.0 (standard default) | baseline |

Notes

  • speaker_locale is session-level. Set it once at session creation.
  • If DetectLanguage returns null, Agora defaults to T=4.0 — safe, no action required.
  • If your flow routes to language-specific queues, map queue name to BCP-47 via Set Language before calling the Data Action.
  • caller_phone (ANI) is optional — Agora falls back to E.164 country code at ~80-85% precision.

Questions? agora-agora-hq.vercel.app