Please create a speech service in the azure portal using the following link.
Below is the sample code using Node.js. We are able to execute successfully as shown below.

// To install dependencies, run: npm install
const xmlbuilder = require('xmlbuilder');
// request-promise has a dependency on request
const rp = require('request-promise');
const fs = require('fs');
const readline = require('readline-sync');
// Gets an access token.
function getAccessToken(subscriptionKey) {
let options = {
method: 'POST',
uri: 'https://eastus.api.cognitive.microsoft.com/sts/v1.0/issueToken',
headers: {
'Ocp-Apim-Subscription-Key': subscriptionKey
}
}
return rp(options);
}
// Converts text to speech using the input from readline.
function textToSpeech(accessToken, text) {
// Create the SSML request.
let xml_body = xmlbuilder.create('speak')
.att('version', '1.0')
.att('xml:lang', 'en-us')
.ele('voice')
.att('xml:lang', 'en-us')
.att('name', 'en-US-Guy24kRUS') // Short name for 'Microsoft Server Speech Text to Speech Voice (en-US, Guy24KRUS)'
.txt(text)
.end();
// Convert the XML into a string to send in the TTS request.
let body = xml_body.toString();
let options = {
method: 'POST',
baseUrl: 'https://eastus.tts.speech.microsoft.com/',
url: 'cognitiveservices/v1',
headers: {
'Authorization': 'Bearer ' + accessToken,
'cache-control': 'no-cache',
'User-Agent': 'YOUR_RESOURCE_NAME',
'X-Microsoft-OutputFormat': 'riff-24khz-16bit-mono-pcm',
'Content-Type': 'application/ssml+xml'
},
body: body
}
let request = rp(options)
.on('response', (response) => {
if (response.statusCode === 200) {
request.pipe(fs.createWriteStream('TTSOutput.wav'));
console.log('\nYour file is ready.\n')
}
});
return request;
};
// Use async and await to get the token before attempting
// to convert text to speech.
async function main() {
// Reads subscription key from env variable.
// You can replace this with a string containing your subscription key. If
// you prefer not to read from an env variable.
// e.g. const subscriptionKey = "your_key_here";
const subscriptionKey = process.env.SPEECH_SERVICE_KEY;
if (!subscriptionKey) {
throw new Error('Environment variable for your subscription key is not set.')
};
// Prompts the user to input text.
const text = readline.question('What would you like to convert to speech? ');
try {
const accessToken = await getAccessToken(subscriptionKey);
await textToSpeech(accessToken, text);
} catch (err) {
console.log(`Something went wrong: ${err}`);
}
}
// Run the application
main()
https://github.com/Azure-Samples/Cognitive-Speech-TTS/tree/master/Samples-Http/NodeJS