At BADCamp 2019 I attended Michael Schmid’s presentation on decoupled web site building and hosting. There, I learned about the GraphQL module that's been developed to do decoupled Drupal, instead of JSON:API. When I first started experimenting with Gatsby I decided to try it, not really knowing anything about GraphQL at the time. This made my experience trickier than it needed to be. As it turned out, all the tutorials and examples I could find for Drupal + Gatsby had query examples for gatsby_source_drupal
with JSON:API. Once I got my head around GraphQL though, things were pretty slick.