"""Generate jwt token and expiration time""" import http.client import json import os import dotenv import datetime import time print('Start here') # Load environment variables from a .env file dotenv.load_dotenv('.env') url = '{}-orchard.auth0.com'.format(os.getenv('Environment', 'qa')) conn = http.client.HTTPSConnection(url) payload = { "client_id": os.environ.get('AUTH0_M2M_CLIENT_ID'), "client_secret": os.environ.get('M2M_CLIENT_SECRET_NAME'), "audience": os.environ.get('AUTH0_API_AUDIENCE'), "grant_type": "client_credentials" } payload = json.dumps(payload) headers = {'content-type': "application/json"} print('Generate JWT token') conn.request("POST", "/oauth/token", payload, headers) res = conn.getresponse() data = res.read() json_data = json.loads(data.decode("utf-8")) print('JWT token generated') token_expiration_time = str( datetime.datetime.utcnow() + datetime.timedelta( seconds=json_data['expires_in'])) print('JWT Token: ' + json_data['access_token']) print('JWT Token Expiration Time: ' + token_expiration_time)