Search code examples
azurepostmantext-to-speechazure-cognitive-services

Azure Cognitive services - TTS


I got an API keys for Azure Cognitive services, but I can't find any documentation how I am calling this service through postmen. Anybody has experience with this?


Solution

  • Seems you are trying to call Text To Speech service with your keys. There are two steps for that.

    1. Need Access Token

    You have to get your token like this format:

    Request URL: https://YourResourceEndpoint/sts/v1.0/issuetoken
    Method: POST
    Hearder: Content-Type:application/x-www-form-urlencoded
    Ocp-Apim-Subscription-Key:YourKeys
    

    See The Screen shot for clarity:

    enter image description here

    Code Snippet:

    public async Task<string> GetSpeechServiceToken()
            {
                try
                {
                    string tokenUrl = $"https://YourServiceURL.cognitiveservices.azure.com/sts/v1.0/issuetoken";
                    var tokenRequest = new HttpRequestMessage(HttpMethod.Post, tokenUrl);
                    tokenRequest.Headers.Add("Ocp-Apim-Subscription-Key", "subscriptionKey");
                    using (var client = new HttpClient())
                    {
                        var tokenResponse = await client.SendAsync(tokenRequest);
    
                        var token = await tokenResponse.Content.ReadAsStringAsync();
    
                        return token;
                    }
    
                }
                catch (Exception ex)
                {
    
                    ex.Message.ToString();
                }
                return null;
    
            }
    

    You could have a look on official Docs

    2. Get List Of Voices With Token You Have Received Earlier

    You can request for Text To Speech voice list Like below:

    Request URL: https://centralus.tts.speech.microsoft.com/cognitiveservices/voices/list
    Method : GET
    Authorization: Bearer Token Paste Your Token Here
    

    See the screen shot for clarity

    enter image description here

    You could find more details here

    Note: In case of your test account You can create here

    enter image description here

    Update:

    I would sent a request and somehow I got an uri or something where I can hear it? is this possible?

    Yeah its possible. But in that case you have to use sdk. Here Is the complete sample.