Sign in
Enter your work email. We'll send you a one-time sign-in link.
New here? Request access
Dictation API
Admin
Docs
Enter your work email. We'll send you a one-time sign-in link.
New here? Request access
Add dictation to your web or Electron app in two calls. Tell us who you are; we review every request and email you as soon as you're approved, with free minutes to start.
Already have an account? Sign in
Continue to the Unmute Dictation API console.
Access requests and every account. Only you can see this page.
| Company | Requested | Free minutes |
|---|
| Company | Started | Link |
|---|
| When | Company | Pack | Minutes |
|---|
| Company | Status | Minutes left | Used this month | People | Keys |
|---|
This month's usage, and the keys your servers use.
| Date | What | Minutes |
|---|
Below, under API keys. It stays on your server; never put it in your app.
Your server swaps the secret key for a short-lived token for each user.
// Node 18+ / Express
app.post('/api/dictation-token', requireLogin, async (req, res) => {
const r = await fetch('/v1/tokens', {
method: 'POST',
headers: { Authorization: `Bearer ${process.env.UNMUTE_SECRET_KEY}`, 'Content-Type': 'application/json' },
body: JSON.stringify({ end_user_id: req.user.id }),
})
res.json({ token: (await r.json()).token })
})
# any language
curl -X POST /v1/tokens -H "Authorization: Bearer $UNMUTE_SECRET_KEY"Web or Electron. Two calls: start() and stop().
<script src="/sdk/unmute-dictation.min.js"></script>
<script>
const dictation = new UnmuteDictation.Dictation({
token: () => fetch('/api/dictation-token', { method: 'POST' }).then(r => r.json()).then(j => j.token),
mode: 'clean',
})
// on press: await dictation.start()
// on release: const { text } = await dictation.stop()
</script>
Prefer ES modules? import { Dictation } from '/sdk/unmute-dictation.mjs'. Electron setup, options and errors: full docs.
From your app, or right here:
| Day | Minutes | Dictations |
|---|
| Name | Key | Created | Last used |
|---|
end_user_id| End user | Minutes | Dictations |
|---|
| Role | Last sign-in |
|---|