EdX

Exploring GraphQL: A Query Language for APIs (edX)

Exploring GraphQL: A Query Language for APIs (edX)

Learn about GraphQL, an alternative to REST, and practice GraphQL queries in an interactive playground. GraphQL is revolutionizing the way developers are building websites… but what exactly does that mean? GraphQL is an open source query language and a runtime to fulfill those queries with your existing data. In this course, you’ll learn what GraphQL is and why it is getting so much attention from software engineers.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

You’ll learn what its advantages are over REST, what types of web architecture to use it with, and why it benefits both frontend and backend developers. You’ll get the chance to practice GraphQL queries in an interactive playground. You’ll also learn advanced topics such as how to implement a GraphQL server on the backend, how to use a GraphQL server with a client, and how to keep your GraphQL server secure. The course content was originally created by Prisma, and updated and maintained by Novvum.
If you are a programmer, this course will help you gain the skills you need to get started using GraphQL for a small project or professionally in production. You’ll feel comfortable getting started with the right tools for your use case.
If you are nontechnical, this course will help you communicate with developers and participate in conversations about GraphQL. You will understand when and why to use GraphQL for a project.
Start your GraphQL journey today!

What you'll learn

  • WhatGraphQL is and how it works
  • When to use GraphQL
  • What advantages GraphQL has over other paradigms, such as REST

Syllabus

Welcome!
Chapter 1. GraphQL Fundamentals
Chapter 2. Advanced Tutorial: Clients
Chapter 3. Advanced Tutorial: Server
Chapter 4. Advanced Tutorial: More GraphQL Concepts
Chapter 5. Advanced Tutorial: Tooling and Ecosystem
Chapter 6. Advanced Tutorial: Security
Chapter 7. Common Questions
Final Exam

Prerequisites:
It is helpful to have some general knowledge about how websites get information from servers, but it is not required.
Familiarity with web architecture, such as clients and servers
Familiarity with web development concepts such as caching, HTTP requests, build-time, etc.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Approximation Algorithms Part I (Coursera) Coursera
École normale supérieure

Approximation Algorithms Part I (Coursera)

How efficiently can you pack objects into a minimum number of boxes? How well can you cluster nodes so as to cheaply separate a network into components around a few centers? These are examples of NP-hard combinatorial optimization problems. It is most likely impossible to solve such problems efficiently, so our aim is to give an approximate solution that can be computed in polynomial time and that at the same time has provable guarantees on its cost relative to the optimum.

Nov 23rd 2026
5-12 Weeks
Programming in Scratch (edX) EdX
Harvey Mudd College,HarveyMuddX

Programming in Scratch (edX)

See how easy learning computer science can be. Use Scratch to create games, animations, stories and more. Want to learn computer programming, but unsure where to begin? This is the course for you! Scratch is the computer programming language that makes it easy and fun to create interactive stories, games and animations and share them online.

No sessions available
5-12 Weeks
Introduction to Software Product Management (Coursera) Coursera
University of Alberta

Introduction to Software Product Management (Coursera)

This course highlights the importance and role of software product management. It also provides an overview of the specialization, as well as its goals, structure, and expectations. The course explains the value of process, requirements, planning, and monitoring in producing better software. Upon successful completion of this course, you will be able to: relate software product management to better software products; recognize the role of a software product manager; reflect on how Agile principles will improve your own projects.

Nov 23rd 2026
2 Weeks
CS50's Introduction to Computer Science (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Computer Science (edX)

An introduction to the intellectual enterprises of computer science and the art of programming. This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50 teaches students how to think algorithmically and solve problems efficiently.

Self Paced
Self-Paced
Introduction to Computer Science and Programming Using Python (edX) EdX
MIT,MITx

Introduction to Computer Science and Programming Using Python (edX)

An introduction to computer science as a tool to solve real-world analytical problems using Python 3.5. This course is the first of a two-course sequence: Introduction to Computer Science and Programming Using Python, and Introduction to Computational Thinking and Data Science. Together, they are designed to help people with no prior exposure to computer science or programming learn to think computationally and write programs to tackle useful problems.

Jan 24th 2024
5-12 Weeks
AP Computer Science A: Java Programming Loops and Data Structures (edX) EdX
Purdue University,PurdueX

AP Computer Science A: Java Programming Loops and Data Structures (edX)

AP Computer Science A from Purdue University. In this computer science course, you will learn the basics of programming in the Java language, and cover topics relevant to the AP Computer Science A course and exam. This course will cover repetition statements (for, while, do-while and for-each), the array data structure, methods and recursion.

No sessions available
5-12 Weeks
Introduction to Computer Science and Programming (edX) EdX
Tokyo Institute of Technology,TokyoTechX

Introduction to Computer Science and Programming (edX)

The term “Computation” refers to the action performed by a computer. A computation can be a basic operation and it can also be a sophisticated computer simultation requiring a large amount of data and substantial resources. This course aims at introducing learners with no prior knowledge to basics and key concepts of computer science. By following the lectures and exercises of this course you will have an understanding of algorithms and you will get a real experience of programming using the language Ruby.

Self Paced
Self-Paced
Manage the cyber threat for finance professionals (edX) EdX
ACCA

Manage the cyber threat for finance professionals (edX)

In this course, we use scenarios/examples to examine the threat of a cyber-attack and good practices on mitigating the risk. This course is designed for accountancy, finance and business professionals working in all organisations from small business, large corporates or financial services or who are just interested in learning more about the vulnerabilities organisations are exposed to and the options available to protect their organisation.

Self Paced
Self-Paced