Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

GraphQL
GraphQL

5K
4.3K
+ 1
257
JsonAPI
JsonAPI

33
23
+ 1
0
Add tool

GraphQL vs JsonAPI: What are the differences?

What is GraphQL? A data query language and runtime. GraphQL is a data query language and runtime designed and used at Facebook to request and deliver data to mobile and web apps since 2012.

What is JsonAPI? A specification for building apis in json. t is a format that works with HTTP. A main goal of the specification is to optimize HTTP requests both in terms of the number of requests and the size of data packages exchanged between clients and servers.

GraphQL and JsonAPI can be categorized as "Query Languages" tools.

GraphQL is an open source tool with 11.7K GitHub stars and 753 GitHub forks. Here's a link to GraphQL's open source repository on GitHub.

According to the StackShare community, GraphQL has a broader approval, being mentioned in 561 company stacks & 750 developers stacks; compared to JsonAPI, which is listed in 8 company stacks and 3 developer stacks.

No Stats
- No public GitHub repository available -

What is GraphQL?

GraphQL is a data query language and runtime designed and used at Facebook to request and deliver data to mobile and web apps since 2012.

What is JsonAPI?

t is a format that works with HTTP. A main goal of the specification is to optimize HTTP requests both in terms of the number of requests and the size of data packages exchanged between clients and servers.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose GraphQL?
Why do developers choose JsonAPI?
    Be the first to leave a pro

    Sign up to add, upvote and see more prosMake informed product decisions

      Be the first to leave a con
      What companies use GraphQL?
      What companies use JsonAPI?

      Sign up to get full access to all the companiesMake informed product decisions

      What tools integrate with GraphQL?
      What tools integrate with JsonAPI?
        No integrations found

        Sign up to get full access to all the tool integrationsMake informed product decisions

        What are some alternatives to GraphQL and JsonAPI?
        gRPC
        gRPC is a modern open source high performance RPC framework that can run in any environment. It can efficiently connect services in and across data centers with pluggable support for load balancing, tracing, health checking...
        Falcor
        Falcor lets you represent all your remote data sources as a single domain model via a virtual JSON graph. You code the same way no matter where the data is, whether in memory on the client or over the network on the server.
        React
        Lots of people use React as the V in MVC. Since React makes no assumptions about the rest of your technology stack, it's easy to try it out on a small feature in an existing project.
        graphql.js
        Lightest GraphQL client with intelligent features. You can download graphql.js directly, or you can use Bower or NPM.
        MongoDB
        MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
        See all alternatives
        Decisions about GraphQL and JsonAPI
        Collins  Ogbuzuru
        Collins Ogbuzuru
        Front-end dev at One shirt | 8 upvotes 13.4K views
        GraphQL
        GraphQL
        Prisma
        Prisma
        AWS Lambda
        AWS Lambda

        We are starting to build one shirt data logic, structure and as an online clothing store we believe good ux and ui is a goal to drive a lot of click through. The problem is, how do we fetch data and how do we abstract the gap between the Front-end devs and backend-devs as we are just two in the technical unit. We decided to go for GraphQL as our application-layer tool and Prisma for our database-layer abstracter.

        Reasons :

        GraphQL :

        1. GraphQL makes fetching of data less painful and organised.

        2. GraphQL gives you 100% assurance on data you getting back as opposed to the Rest design .

        3. GraphQL comes with a bunch of real-time functionality in form of. subscriptions and finally because we are using React (GraphQL is not React demanding, it's doesn't require a specific framework, language or tool, but it definitely makes react apps fly )

        Prisma :

        1. Writing revolvers can be fun, but imagine writing revolvers nested deep down, curry braces flying around. This is sure a welcome note to bugs and as a small team we need to focus more on what that matters more. Prisma generates this necessary CRUD resolves, mutations and subscription out of the box.

        2. We don't really have much budget at the moment so we are going to run our logic in a scalable cheap and cost effective cloud environment. Oh! It's AWS Lambda and deploying our schema to Lambda is our best bet to minimize cost and same time scale.

        We are still at development stage and I believe, working on this start up will increase my dev knowledge. Off for Lunch :)

        See more
        Divine Bawa
        Divine Bawa
        at PayHub Ghana Limited | 13 upvotes 121.9K views
        Node.js
        Node.js
        GraphQL
        GraphQL
        MySQL
        MySQL
        Prisma
        Prisma
        graphql-yoga
        graphql-yoga
        React
        React
        styled-components
        styled-components
        Next.js
        Next.js
        Apollo
        Apollo

        I just finished a web app meant for a business that offers training programs for certain professional courses. I chose this stack to test out my skills in graphql and react. I used Node.js , GraphQL , MySQL for the #Backend utilizing Prisma as a database interface for MySQL to provide CRUD APIs and graphql-yoga as a server. For the #frontend I chose React, styled-components for styling, Next.js for routing and SSR and Apollo for data management. I really liked the outcome and I will definitely use this stack in future projects.

        See more
        Johnny Bell
        Johnny Bell
        Senior Software Engineer at StackShare | 9 upvotes 123.2K views
        atStackShareStackShare
        jQuery
        jQuery
        React
        React
        ES6
        ES6
        JavaScript
        JavaScript
        MobX
        MobX
        GraphQL
        GraphQL
        Apollo
        Apollo
        #Hooks馃帲
        #Context

        We are always building new features and replacing old code at StackShare. Lately we have been building out new features for the frontend, and removing a lot of old jQuery code (sorry jQuery but it's time to go).

        We've mainly been using React, ES6 and JavaScript on the frontend to build out the components, and we've been slowly removing some legacy MobX and using GraphQL and Apollo for our state management, if we need to control state further than GraphQL and Apollo allows us to we use just plain React with #context , or the new fancy React #hooks馃帲 .

        As we've moved towards the above tech, its really made smashing out new features and updating legacy code super fast, and really fun!

        See more
        Malthe J酶rgensen
        Malthe J酶rgensen
        CTO at Peergrade | 13 upvotes 55.2K views
        atPeergradePeergrade
        PostgreSQL
        PostgreSQL
        Django
        Django
        GraphQL
        GraphQL
        Graphene
        Graphene
        Amazon RDS
        Amazon RDS

        We recently switched from MongoDB and the Python library MongoEngine to PostgreSQL and Django in order to:

        • Better leverage GraphQL (using the Graphene library)
        • Allow us to use the autogenerated Django admin interface
        • Allow better performance due to the way some of our pages present data
        • Give us more a mature stack in the form of Django replacing MongoEngine, which we had some issues with in the past.

        MongoDB was hosted on mlab, and we now host Postgres on Amazon RDS .

        See more
        Seun Kola
        Seun Kola
        CTO at Virtualrobe Limited | 7 upvotes 9.6K views
        GraphQL
        GraphQL
        React
        React
        Prisma
        Prisma
        Apollo
        Apollo

        Using GraphQL for queries and mutation on React app and Prisma database is so cool, easy and fast to learn. i often use Apollo client to integrate both ends. Most times working has a frontend developer and trying to build a MVP product quickly requires tools that require less setup on both production and development in order to test functionalities, and using GraphQL for queries surpasses Rest queries for me because of the flexibility in requesting the data you actually need and not requesting the whole dataset everytime.

        But in all, Rest is still the king since most public api support its CRUD processes more than GraphQL but lot of top companies are using it and am definitely using it for various project including my recent pet project(Delivery buddy - A platform that allows pair-to-pair delivery service).

        See more
        Seun Kola
        Seun Kola
        CTO at Virtualrobe Limited | 2 upvotes 8K views
        React
        React
        React Native
        React Native
        Prisma
        Prisma
        GraphQL
        GraphQL
        Apollo
        Apollo
        ExpressJS
        ExpressJS

        Have been working on a side project that focuses on sharing economy, allowing users to pickup and deliver groceries for others. Have already started working on the frontend for the web dashboard using React and plan to use React Native for the mobile app. But am in a dilemma, whether to build the backend myself for the MVP or use firebase for the backend. I need advise, has anyone use Firebase for such project and what are the pros and cons, what issues will i faced.

        Note: My proposed stack for the backend is a Prisma database, GraphQL , Apollo and ExpressJS

        Thanks in advance to everyone.

        See more
        Munkhtegsh Munkhbat
        Munkhtegsh Munkhbat
        Software Engineer Consultant at LoanSnap | 9 upvotes 26.1K views
        graphql-yoga
        graphql-yoga
        Prisma
        Prisma
        PostgreSQL
        PostgreSQL
        styled-components
        styled-components
        Heroku
        Heroku
        React
        React
        Apollo
        Apollo
        GraphQL
        GraphQL
        #Backend
        #Frontend

        In my last side project, I built a web posting application that has similar features as Facebook and hosted on Heroku. The user can register an account, create posts, upload images and share with others. I took an advantage of graphql-subscriptions to handle realtime notifications in the comments section. Currently, I'm at the last stage of styling and building layouts.

        For the #Backend I used graphql-yoga, Prisma, GraphQL with PostgreSQL database. For the #FrontEnd: React, styled-components with Apollo. The app is hosted on Heroku.

        See more
        Michael Mota
        Michael Mota
        CEO & Founder at AlterEstate | 6 upvotes 13.5K views
        atAlterEstateAlterEstate
        Graphene
        Graphene
        Django
        Django
        GraphQL
        GraphQL

        We recently implemented GraphQL because we needed to build dynamic reports based on the user preference and configuration, this was extremely complicated with our actual RESTful API, the code started to get harder to maintain but switching to GraphQL helped us to to build beautiful reports for our clients that truly help them make data-driven decisions.

        Our goal is to implemented GraphQL in the whole platform eventually, we are using Graphene , a python library for Django .

        See more
        Michael Mota
        Michael Mota
        CEO & Founder at AlterEstate | 4 upvotes 1.4K views
        Django
        Django
        GraphQL
        GraphQL
        Graphene
        Graphene
        Next.js
        Next.js

        I've been using Django for quite a long time and in my opinion I would never switch from it. My company is currently using Django with REST framework and a part in GraphQL using Graphene. On the frontend we use Next.js and so far everything has been running quite good. I've found limitations but manage to solve it.

        As someone mentioned before, if you are comfortable with Django, don't switch. There's no need since with django you can basically achieve anything. Of course this will depend on the project you want to build, but the scalability and flexibility django can offer it's just out of this world. (Don't want to sound like a fan boy haha but it really is).

        See more
        Interest over time
        Reviews of GraphQL and JsonAPI
        No reviews found
        How developers use GraphQL and JsonAPI
        Avatar of jasonmjohnson
        jasonmjohnson uses GraphQLGraphQL

        GraphQL will be used as the public API for the data persistence layer. It communicates nicely with all other languages and can provide API responses in the format specified in the request.

        Avatar of Nick De Cooman
        Nick De Cooman uses GraphQLGraphQL

        Applied GraphQL in a side-project I'm currently working on. Using the Apollo GraphQL implementation for both server-side and React client.

        Avatar of Hevelop
        Hevelop uses GraphQLGraphQL

        From Magento 2.3 GraphQL is provider by a core implementation, this is used to implement PWA frontend.

        Avatar of Told
        Told uses GraphQLGraphQL

        We use GraphQL as our transport standard for all API calls.

        Avatar of Bengala
        Bengala uses JsonAPIJsonAPI

        Ember.js, ember-data jsonapi adapter is sweet!

        Avatar of Michael Manges
        Michael Manges uses GraphQLGraphQL

        Connecting my Gatsby site to GraphCMS.

        How much does GraphQL cost?
        How much does JsonAPI cost?
        Pricing unavailable
        Pricing unavailable
        News about JsonAPI
        More news