GraphQL is one of the hottest topics in the API development world, and that’s for good reasons: GraphQL APIs address many of the issues that we had with Restful and SOAP APIs.
This article goes through the best GraphQL clients you can use today to develop and use GraphQL API.
Table of Contents
- Tl;dr
- Testfully
- Insomnia
- Postman
- GraphiQL
- Altair
- Hoppscotch
- TestMace
- Apollo Studio Sandbox Explorer
- GraphQL Playground
- FireCamp
- Comparison table
- Anatomy of GraphQL requests
Tl;dr
Area of Assessment | UI & UX | API Testing | API Monitoring | GraphQL client |
---|---|---|---|---|
Testfully.io | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐ |
Postman | ⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ |
Insomnia | ⭐⭐⭐⭐ | ⭐⭐⭐ | - | ⭐⭐⭐⭐ |
GraphiQL | ⭐⭐ | - | - | ⭐⭐⭐ |
Altair | ⭐⭐⭐⭐ | - | - | ⭐⭐⭐⭐ |
Hoppscotch | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | - | ⭐⭐⭐⭐⭐ |
TestMace | ⭐⭐⭐ | ⭐⭐⭐ | - | ⭐⭐ |
Apollo Studio Sandbox Explorer | ⭐⭐⭐⭐⭐ | - | - | ⭐⭐ |
GraphQL Playground | ⭐⭐⭐⭐⭐ | - | - | ⭐⭐⭐ |
Firecamp | ⭐⭐⭐ | ⭐⭐ | - | ⭐⭐ |
Testfully
Website: Testfully.io | Pricing: Free, Paid plans start from $49 a month.
Testfully is a fully-fledged API testing and monitoring platform. Leverage Testfully to send requests to your GraphQL API and automate your GraphQL API testing & monitoring using a set of rich features.
Hassle-free GraphQL API testing & monitoring is what Testfully offers.
Testfully pros
- Offers a free plan with unlimited users and tests
- Import from Postman
- Global and Environment variables supported
- Multi-step GraphQL tests
- Integrates with your CI/CD
- Powerful alerting system
- Easy API monitoring and API testing
- Collections and Folders for better organization
Testfully cons
- No syntax highlighting or auto-completion of GraphQL queries
- Does not load GraphQL schema
- No syntax highlighting or auto-completion of GraphQL queries
- Does not load GraphQL schema
Insomnia
Website: insomnia.rest | Pricing: Free, Paid plans start from $50 a year/ Individual.
Insomnia (part of Kong) is an open-source API client (Windows, Mac, and Linux) with a set of features to help you test your GraphQL APIs. If you’re familiar with Postman, you should feel at home when using Insomnia.
Insomnia is a fast & reliable API client with GraphQL support. In addition, Insomnia’s Restful API features are also available for GraphQL APIs.
Insomnia pros
- Load remote and JSON GraphQL schemas
- Supports environment variables
- Syntax highlighting and auto-completion for GraphQL queries
- Import & export GraphQL requests
- Folders & Collections for better organization
- Dark themes supported
Insomnia cons
- Team collaboration is only available on paid plans.
- To write tests for your GraphQL API, you need to define the API via Open API specification.
Postman
Website: postman.com | Pricing: Free, Paid plans start from $12 a month/ per user.
Postman is a powerful API client that supports GraphQL. As a result, many of Postman’s features for Restful APIs are also available to GraphQL counterparts. That said, Postman does not offer many exclusive features for GraphQL APIs. If you’re a Postman user, we highly recommend reading our Postman alternatives article for some great options for Postman.
Postman is a great Restful API client, but Postman’s GraphQL support is behind other tools in this space.
Postman pros
- Supports Global and Environment variables
- Auto-completion and Syntax highlighting for GraphQL queries
- Import schemas from file or Github repositories
- It supports the setup (pre-request) script. You can write it in Javascript.
- Import & export your data
- Collections and folders for better organization
- Dark themes supported
Postman cons
- Postman doesn’t support multi-step (chained) requests.
- Cannot load GraphQL schemas from a URL
GraphiQL
Website: electronjs.org/apps/graphiql | Pricing: Free & Open-source.
GraphiQL is an open-source GraphQL client from the core GraphQL team; it was the first released GraphQL client after the original release of GraphQL specification.
The GraphiQL IDE is the desktop version of GraphiQL, which is available for Windows, Mac, and Linux. GraphiQL does a decent job of sending GraphiQL queries and exploring the schema of any GraphQL API.
GraphiQL is a good option for personal projects that need essential features.
GraphiQL pros
- Free & open-source, maintained by core GraphQL team.
- Loads schema of GraphQL API from the API
- Easy to use UI for exploring GraphQL schema
- Auto-completion and Syntax Highlighting for better DX
GraphiQL cons
- No import or export feature
- GraphQL schema from file is not supported
- Environment Variables not supported
- No collaboration with team members
- No dark theme
- Lack of folders for better organization
Altair
Website: altair.sirmuel.design | Pricing: Free & Open-source.
Altair is a beautiful, feature-rich free & open-source GraphQL client for all platforms (Desktop and Browser) that allows you to create and execute queries against the GraphQL APIs.
Even if you’re not planning to use Altair, keep an eye on it. Great project with a bright future.
Altair pros
- Setup (pre-request) and tear-down (post-request) scripts supported.
- Environment Variables supported
- Export & Import your data
- Binary files supported
- Loads GraphQL schema automatically from URLs
- Auto-completion and syntax-highlighting for GraphQL queries
- Auto-generated GraphQL queries based on the schema
- It offers you query refactoring and compressing features.
- Completely free & open-source
- Dark themes supported
Altair cons
- Cannot load the schema from a file
- Import from other tools like Postman not supported
- Lack of folders for better organization
Hoppscotch
Website: hoppscotch.io | Pricing: Free & open-source.
Hoppscotch is another free & open-source API client with a dedicated UI for GraphQL APIs. You can write GraphQL queries effortlessly with the auto-completion and highlighted syntax editor and save them in a collection and folders to be organized.
Hoppscotch is a fantastic API client with great GraphQL support. Team collaboration makes an ideal choice for software teams.
Hoppscotch pros
- GraphQL query auto-completion and Syntax highlighting
- Loads GraphQL schema from URLs
- Easy to use UI for exploring schema
- Environment Variables supported
- Collections and folders for better organization
- Simple and easy-to-use UI
- Team collaboration through workspaces
- Supports dark themes
Hoppscotch cons
- It doesn’t support importing and exporting from a third-party app.
- You can’t load a schema from a file.
TestMace
Website: testmace.com | Pricing: Free, Paid plans start from $4 a month/ per user.
TestMace is another cross-platform and modern API client that supports GraphQL with a fluent and dedicated Interface. Similar to Testfully, you can leverage TestMace for GraphQL API testing as well.
TestMace is a good option for automated GraphQL API testing.
TestMace pros
- Environment variables supported.
- GraphQL editor auto-completion and Syntax highlighting.
- TestMace supports the assertion.
- Scripting (pre-request and post-request) supported.
- Automatic schema loading.
- Schema documentation supported.
- Auto-generating GraphQL queries based on the schema.
- Import and export your queries.
- Folders for better organization.
- A dedicated query variables editor.
- Multi-step (chained) requests supported.
- Dark theme supported.
TestMace cons
- Incomplete documentation.
- It doesn’t view the schema documentation defining the API endpoint using environment variables.
- It doesn’t load the schema from a file.
Apollo Studio Sandbox Explorer
Website: studio.apollographql.com/sandbox/explorer | Pricing: Free.
Apollo Studio Sandbox Explorer is a version of the Apollo Studio Explorer that doesn’t need an account, and it’s free but doesn’t include some features like schema history.
Sandbox Explorer is a great way to quickly explore any GraphQL API in the browser. However, as a GraphQL client, this article has better options.
Please remember that Sandbox Explorer is a GraphQL API Explorer. It fetches the schema automatically, So you can create GraphQL queries easily with the built-in schema explorer and run them against your chosen environment.
Apollo Studio Sandbox pros
- Great UI to explore GraphQL schema
- Auto-completion and Syntax highlighting is provided
- Set query variables and quickly provide values
- Request headers support
- Loads schema automatically and pulls for any new change
- History of the past requests
- You can define the explorer setting such as connection, environment variables, preflight script, default headers, and more from the setting section.
- Apollo supports team collaboration.
- Variables in queries can be auto-created if you set this option in the setting.
- Displays data in both tree and tabular format.
Apollo Studio Sandbox cons
- No folders or collections for better organization
- It doesn’t support any assertions.
- It doesn’t support importing and exporting.
- Many features are only available to paid users.
GraphQL Playground
Did you know that many GraphQL API deployments offer a web-based client out of the box as well? GraphQL playgrounds are often available via /graphql or /playground URLs. Please check The Rick & Morty GraphQL API playground for a working example.
GraphQL Playground pros
- Great UI to explore GraphQL schema
- Auto-completion and Syntax highlighting is provided
- Set query variables and quickly provide values
- Request headers support
- Loads schema automatically and pulls for any new change
- History of the past requests
Apollo Studio Sandbox cons
- No folders or collections for better organization
- No collaboration
- You may lose your queries
FireCamp
Website: firecamp.io | Pricing: basic plan Free, Paid pro plan $7 a month.
FireCamp is a powerful cross-platform API testing tool that offers the GraphQL client and other dedicated GUI features to test your APIs.
FireCamp helps even a rookie write GraphQL queries and leverage GraphQL explorer to test an API.
FireCamp pros
- Built-in GraphQL explorer.
- Set the query variables from a file.
- Environment variables supported.
- Schema documentation supported.
- GraphQL editor syntax highlighting.
- Imports and exports supported.
- History of requests
- Team collaboration
- Collection for better organization.
FireCamp cons
- Multi-step (chained) requests not supported.
- No automatic schema loading.
- No editor auto-completion syntax.
Comparison table
When picking a GraphQL client, it’s essential to choose the tools based on what you need. The table below should help you find the ideal GraphQL client for your need.
GraphQL clients | Postman | Insomnia | GraphiQL | Altair | Hoppscotch | Testfully | TestMace | FireCamp | Apollo Studio Sandbox |
---|---|---|---|---|---|---|---|---|---|
Free | No | No | Yes | Yes | Yes | No | No | No | No |
Open-source | No | Yes | Yes | Yes | Yes | No | No | No | |
Syntax highlighting | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes |
Schema Documentation | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes |
Saving GraphQL queries | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes | Yes |
Testing Capabilities | Yes | Yes | No | Yes | Yes | Yes | Yes | No | No |
Auto-completion | Yes | Yes | Yes | Yes | Yes | No | Yes | Yes | Yes |
Environment variables | Yes | Yes | No | Yes | Yes | Yes | Yes | Yes | No |
Anatomy of GraphQL requests
Have you ever thought about how a GraphQL client sends requests to a GraphQL API? Some might think there will be some magic happening under the hood, but in reality, a GraphQL request is nothing but a simple HTTP POST request.
A
GraphQL
query is aPOST
request to an endpoint.
Field Name | Description | Mandatory | Type |
---|---|---|---|
query | The query field in the request body (usually JSON) carries the GraphQL query or mutation | Yes | String |
variables | The variables field in the request body carries values for any variables in the provided GraphQL Query. | No | Object |