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.
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 | ⭐⭐⭐⭐⭐ | - | - | ⭐⭐⭐ |
Firecamp | ⭐⭐⭐ | ⭐⭐ | - | ⭐⭐ |
Testfully
Website: testfully.io | Pricing: From $5/user a month | Last reviewed on: 2024-02-22
Testfully is a fully-fledged API testing and monitoring platform with an automated API testing superpower, available as a Cloud-native and Offline-only solution for Mac, Windows, Linux or via a modern browser. 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
- Multi-step GraphQL tests
- Smooth transition from Postman, thanks to our Postman Importer
- Global and Environment variables supported
- Cloud and Offline storage is supported, unlike Postman. Learn more
- Well defined access control, a a private & secure vault for each workspace user that eases Team collaboration
- Integrates with your CI/CD
- Powerful alerting system
- Easy API monitoring and API testing
- Collections and Folders for better organization
- Dark theme supported
Testfully cons
- Testfully does not offer a free plan.
- No auto-completion of GraphQL queries
- Does not load GraphQL schema
Postman
Website: postman.com | Pricing: Free, Paid plans start from $19 a month/ per user | Last reviewed on: 2024-02-22
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. If you’re a Postman user, we highly recommend reading our Postman alternatives article for some great options for Postman.
Postman pros
- Supports Global and Environment variables
- Can load GraphQL schemas from a URL
- 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 theme supported
Postman cons
- Postman doesn’t support multi-step (chained) requests.
Insomnia
Website: insomnia.rest | Pricing: Free, Paid plans start from $5 a month/ per user | Last reviewed on: 2024-02-22
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.
GraphiQL
Website: github.com/graphql/graphiql | Pricing: Free & Open-source | Last reviewed on: 2024-02-22
GraphiQL is an open-source in-browser GraphQL client from the core GraphQL team; it was the first released GraphQL client after the original release of GraphQL specification.
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
- Dark themes supported
GraphiQL cons
- No import feature
- GraphQL schema from file is not supported
- Environment Variables not supported
- No collaboration with team members
- Lack of folders for better organization
Altair
Website: altairgraphql.dev | Pricing: Free & Open-source | Last reviewed on: 2024-02-22
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 theme supported
Altair cons
- Cannot load the schema from a file
- Import from other tools like Postman not supported
Hoppscotch
Website: hoppscotch.io | Pricing: Free & open-source | Last reviewed on: 2024-02-22
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 theme
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 $5 a month/ per user | Last reviewed on: 2024-02-22
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 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.
- GraphQL Client is only available in paid plans
- Light theme is only available in paid plans
- 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. | Last reviewed on: 2024-02-22
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.
FireCamp
Website: firecamp.io | Pricing: Free, Paid plans start from $59 a month | Last reviewed on: 2024-02-22
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.
- Dark theme supported
FireCamp cons
- Multi-step (chained) requests not supported.
- No automatic schema loading.
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 | Yes | No |
Syntax highlighting | Yes | Yes | Yes | Yes | Yes | Yes | 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 |
Free GraphQL APIs
You might want to play around with some free GraphQL APIs to improve your experience with the top GraphQL clients mentioned above. These APIs offer a great way of practicing and exploring the features of the different GraphQL clients mentioned in this blog. Here are a few suggested free GraphQL APIs:
Rick and Morty API
Documentation: Rick and Morty API Documentation
The Rick and Morty API provides data on characters, episodes, and locations from the popular TV show Rick and Morty. It’s an excellent resource for exploring GraphQL queries in a fun and engaging way.
Countries API
Documentation: Countries API Documentation
The Countries API provides detailed information about countries, including their names, capitals, currencies, and more. It’s a useful tool for geographical data queries and exploring the world of GraphQL.
Pokemon GraphQL API
Documentation: Pokemon GraphQL API Documentation
The Pokemon GraphQL API offers data on various Pokémon, their abilities, types, and more. It’s a great resource for fans of the Pokémon series and provides a rich dataset for practicing GraphQL queries.