curl \
"https://api.inworld.ai/pronunciations/v1/workspaces/${INWORLD_WORKSPACE_ID}/pronunciationDictionaries/${PRONUNCIATION_DICTIONARY_ID}" \
--header "Authorization: Basic ${INWORLD_API_KEY}"import os
import requests
workspace_id = os.environ["INWORLD_WORKSPACE_ID"]
dictionary_id = os.environ["PRONUNCIATION_DICTIONARY_ID"]
url = (
"https://api.inworld.ai/pronunciations/v1/"
f"workspaces/{workspace_id}/pronunciationDictionaries/{dictionary_id}"
)
response = requests.get(
url,
headers={"Authorization": f"Basic {os.environ['INWORLD_API_KEY']}"},
)
response.raise_for_status()
print(response.json())const { INWORLD_API_KEY, INWORLD_WORKSPACE_ID, PRONUNCIATION_DICTIONARY_ID } = process.env;
const url = `https://api.inworld.ai/pronunciations/v1/workspaces/${INWORLD_WORKSPACE_ID}/pronunciationDictionaries/${PRONUNCIATION_DICTIONARY_ID}`;
const response = await fetch(url, {
headers: { Authorization: `Basic ${INWORLD_API_KEY}` },
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());{
"name": "workspaces/my-workspace/pronunciationDictionaries/2d470a1e-0262-4f22-9b46-5353d454d988",
"displayName": "Product names",
"pronunciations": [
{
"displayHeadword": "Hello",
"languageCode": "en-US",
"phoneSymbols": [
"h",
"ə",
"l",
"oʊ"
]
},
{
"displayHeadword": "World",
"languageCode": "en-US",
"phoneSymbols": [
"w",
"ɜː",
"l",
"d"
]
}
],
"etag": "tLKwUsvfq4TjPZQYhA9Dg3pM",
"createTime": "2026-08-14T18:22:31.145Z",
"updateTime": "2026-08-14T18:22:31.145Z"
}{
"code": 123,
"message": "<string>",
"details": [
{
"@type": "<string>"
}
]
}Get a pronunciation dictionary
Get a named pronunciation dictionary with its complete contents and current etag.
curl \
"https://api.inworld.ai/pronunciations/v1/workspaces/${INWORLD_WORKSPACE_ID}/pronunciationDictionaries/${PRONUNCIATION_DICTIONARY_ID}" \
--header "Authorization: Basic ${INWORLD_API_KEY}"import os
import requests
workspace_id = os.environ["INWORLD_WORKSPACE_ID"]
dictionary_id = os.environ["PRONUNCIATION_DICTIONARY_ID"]
url = (
"https://api.inworld.ai/pronunciations/v1/"
f"workspaces/{workspace_id}/pronunciationDictionaries/{dictionary_id}"
)
response = requests.get(
url,
headers={"Authorization": f"Basic {os.environ['INWORLD_API_KEY']}"},
)
response.raise_for_status()
print(response.json())const { INWORLD_API_KEY, INWORLD_WORKSPACE_ID, PRONUNCIATION_DICTIONARY_ID } = process.env;
const url = `https://api.inworld.ai/pronunciations/v1/workspaces/${INWORLD_WORKSPACE_ID}/pronunciationDictionaries/${PRONUNCIATION_DICTIONARY_ID}`;
const response = await fetch(url, {
headers: { Authorization: `Basic ${INWORLD_API_KEY}` },
});
if (!response.ok) throw new Error(await response.text());
console.log(await response.json());{
"name": "workspaces/my-workspace/pronunciationDictionaries/2d470a1e-0262-4f22-9b46-5353d454d988",
"displayName": "Product names",
"pronunciations": [
{
"displayHeadword": "Hello",
"languageCode": "en-US",
"phoneSymbols": [
"h",
"ə",
"l",
"oʊ"
]
},
{
"displayHeadword": "World",
"languageCode": "en-US",
"phoneSymbols": [
"w",
"ɜː",
"l",
"d"
]
}
],
"etag": "tLKwUsvfq4TjPZQYhA9Dg3pM",
"createTime": "2026-08-14T18:22:31.145Z",
"updateTime": "2026-08-14T18:22:31.145Z"
}{
"code": 123,
"message": "<string>",
"details": [
{
"@type": "<string>"
}
]
}etag when updating or deleting the resource.Authorizations
Your authentication credentials. For Basic authentication, send Basic $INWORLD_API_KEY. Use a Standard API key for the target workspace. Voices Read access permits list and get; Voices Write access permits all five methods.
Path Parameters
ID of the workspace that owns the dictionary. It must match a workspace accessible to the API key.
1 - 61^[a-z0-9_-]+$"my-workspace"
Service-assigned UUID from the dictionary's resource name.
"2d470a1e-0262-4f22-9b46-5353d454d988"
Response
The complete pronunciation dictionary.
A workspace-owned named pronunciation dictionary with its complete contents.
Service-assigned resource name in the form workspaces/{workspace}/pronunciationDictionaries/{uuid}.
"workspaces/my-workspace/pronunciationDictionaries/2d470a1e-0262-4f22-9b46-5353d454d988"
Non-blank human-readable dictionary name, containing at most 64 Unicode code points.
1 - 64"Product names"
Complete dictionary contents. A dictionary can contain up to 1,000 entries and must remain within the 512 KiB encoded dictionary limit. Entries must be unique after language-aware lexical canonicalization.
1000Show child attributes
Show child attributes
Optimistic-concurrency token. Include the current value when updating or deleting the dictionary.
Time at which the dictionary was created.
Time at which the dictionary's metadata or contents last changed.