Glossaries not working with Azure Translator

Vandanaa Sankaranarayanan 5 Reputation points
2025-08-08T05:42:03.5233333+00:00

Hi,

I am using Azure Translate service for my Bot that translates Customer query to English for the Agent and English to detected language for the Customer. There are certain words whose meaning needs to be preserved. To achieve that I have uploaded my glossary file (TSV) in Azure Blob Storage and appending the Glossary URL. The below URL is not taking or referring my glossary file. Glossary URL: https://<<blob storage name>>.blob.core.windows.net/<<containername>>/<<filename.tsv>>?<<SaSToken>

Endpoint: https://api.cognitive.microsofttranslator.com/translate?api-version=3.0&from=<<Fromlanguage>>&to=<<target language>>

**Body **: [ { "text":"<<User query with glossary words>>", "customization":{ "glossaries":[ { "format":"tsv", "url":"<<Glossary URL>>" } ] } } ]

In Headers passing the Keys.

Azure AI Translator
Azure AI Translator
An Azure service to easily conduct machine translation with a simple REST API call.
0 comments No comments
{count} vote

1 answer

Sort by: Most helpful
  1. Amira Bedhiafi 41,111 Reputation points Volunteer Moderator
    2025-10-27T14:49:26.7933333+00:00

    Hello Vandanaa !

    Thank you for posting on Microsoft Learn Q&A.

    The glossary URL you’re passing is being ignored because the translate API doesn’t accept a glossaries file in the request body.

    TSV glossaries are only supported by the document translation API and for real time text calls you have 2 options:

    • use the dynamic dictionary markup inline
    • deploy a Custom Translator model and pass its category id

    https://learn.microsoft.com/en-us/azure/ai-services/translator/document-translation/how-to-guides/create-use-glossaries

    If you need real time chat translation (you can keep using POST and remove the customization.glossaries block and it’s not a supported field for this endpoint.

    You can use dynamic dictionary markup for the terms you must preserve, and you must specify from= or, if the terms list is large and stable, you can train a custom translator model and pass &category=<your-custom-model-id> on the query string.

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.