"""GraphqlGateway connections.""" from gql import Client from gql import gql as gql_query from gql.transport.requests import RequestsHTTPTransport from ... import config def make_request(headers, query, params=None): """Make gql request. Args: headers (dict): request headers query (str): gql query params (dict): query params Returns: gql response object """ env = config.QA_ENVIRONMENT \ if config.ENVIRONMENT == config.DEV_ENVIRONMENT else config.ENVIRONMENT url = f'https://{env}-graphql-router.theorchard.io/graphql' transport = RequestsHTTPTransport( url=url, use_json=True, headers=headers, verify=True, timeout=30, ) client = Client( transport=transport, fetch_schema_from_transport=False, ) query = gql_query(query) return client.execute(query, variable_values=params)