# Basic usage

In order to execute a GraphQL request against a GraphQL API:

- create your gql transport in order to choose the destination url and the protocol used to communicate with it

- create a gql `Client` with the selected transport

- parse a query using `gql`

- execute the query on the client to get the result

    from gql import Client, gql
    from gql.transport.aiohttp import AIOHTTPTransport

    # Select your transport with a defined url endpoint
    transport = AIOHTTPTransport(url="https://countries.trevorblades.com/")

    # Create a GraphQL client using the defined transport
    client = Client(transport=transport, fetch_schema_from_transport=True)

    # Provide a GraphQL query
    query = gql(
        """
        query getContinents {
          continents {
            code
            name
          }
        }
    """
    )

    # Execute the query on the transport
    result = client.execute(query)
    print(result)

Warning

Please note that this basic example won’t work if you have an asyncio event loop running. In some python environments (as with Jupyter which uses IPython) an asyncio event loop is created for you. In that case you should use instead the Async Usage example.