import requests, uuid, json from settings import TRANSLATION_API_KEY, TRANSLATION_TEXT_ENDPOINT, TRANSLATION_SERVICE_LOCATION path = '/translate' constructed_url = TRANSLATION_TEXT_ENDPOINT + path headers = { 'Ocp-Apim-Subscription-Key': TRANSLATION_API_KEY, # location required if you're using a multi-service or regional (not global) resource. 'Ocp-Apim-Subscription-Region': TRANSLATION_SERVICE_LOCATION, 'Content-type': 'application/json', 'X-ClientTraceId': str(uuid.uuid4()) } def get_translation(text, to_language): params = { 'api-version': '3.0', 'from': 'en', 'to': to_language } # You can pass more than one object in body. body = [{'text': text_item} for text_item in text] request = requests.post(constructed_url, params=params, headers=headers, json=body) response = request.json() return json.dumps(response, sort_keys=True, ensure_ascii=False, indent=4, separators=(',', ': '))