skillfed

gql

GraphQL client for Python

gql Permissive license MIT Active 1,679 v4.0.0 released

Install

gql on PyPI

pip

pip install gql

uv

uv add gql

poetry

poetry add gql

Package facts

License MIT (permissive)
Python support supports the current Python release (>=3.8.1)
Install friction low — pure-Python wheel
Runtime dependencies 4 — graphql-core, yarl, backoff, anyio
Maintenance actively maintained — 361 days since the last release
Last repo commit
First released
Popularity one of the top 1,000 most-downloaded packages on PyPI (30-day window, as of 2026-08-13)
Known vulnerabilities none known (OSV.dev, checked 2026-08-13)

Evidence: gql-4.0.0-py3-none-any.whl

Keywords: api, graphql, protocol, rest, relay, gql, client

Development Status :: 5 - Production/StableIntended Audience :: DevelopersProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: PyPyTopic :: Software Development :: Libraries

About gql

from the package's own PyPI description — quoted content, verbatim

GQL

This is a GraphQL client for Python. Plays nicely with graphene, graphql-core, graphql-js and any other GraphQL implementation compatible with the GraphQL specification.

GQL architecture is inspired by React-Relay and Apollo-Client.

GitHub-Actions (image) pyversion (image) pypi (image) Anaconda-Server Badge (image) codecov (image)

Documentation

The complete documentation for GQL can be found...

Read as markdown · JSON record · Source repository · Homepage

AI interpretation — verify before relying

AI-generated interpretation of the package facts above; every digit, version, license, or vulnerability id it cites is grounded in the facts already shown on this page

GQL is a GraphQL client for Python that executes queries, mutations, and subscriptions against GraphQL servers using multiple transport protocols (HTTP, WebSockets, and others), with support for both sync and async execution.

Low install friction with a pure-wheel distribution (gql-4.0.0-py3-none-any.whl) and only four runtime dependencies. The package is actively maintained with a recent release on 2025-08-17 and an active GitHub repository.

MIT license is permissive, allowing commercial and private use with minimal restrictions—you may use, modify, and distribute GQL freely as long as you include the license notice.

Usage

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

transport = AIOHTTPTransport(url="https://example.com/graphql")
client = Client(transport=transport)
query = gql("query { example }")
result = client.execute(query)

Requires Python >=3.8.1; async usage requires an asyncio event loop or use of async context managers; transport modules (e.g., aiohttp) are optional extras not included in the base install.

Verdict: GQL is a production-stable, actively maintained GraphQL client with low install friction and permissive licensing. Its broad protocol support and dual sync/async capability make it suitable for most GraphQL integration scenarios. No known vulnerabilities reported.

Needs verification

  • Whether optional transport extras (aiohttp, websockets, etc.) are required for typical use cases or if the base install suffices
  • Performance characteristics or throughput limits compared to alternatives in real-world workloads
graphql client pythongraphql query executiongraphql mutations subscriptionsasync graphql requestsgraphql http websocketgraphql-core clientpython graphql api

Similar packages