"""Module for getting metadata from graphQL-product.""" import config from gql import Client, gql from gql.transport.requests import RequestsHTTPTransport from queries import product product_query = product.product_query def query_graphql(product_id): """Query graphQL-product.""" query = gql(product_query) transport = RequestsHTTPTransport( url=config.GRAPHQL_URL, use_json=True, headers={ 'Orchard-User-Id': config.OA_USER_ID }, verify=True ) client = Client( retries=3, transport=transport, fetch_schema_from_transport=False, ) try: query_return = client.execute( query, variable_values={'productId': product_id} ) product_metadata = query_return['product'] except Exception as e: return e return product_metadata