Growing up GraphQL
2022-05-25 / Élénie Godzaridis
…with
377
how many GraphQL schemas Wealthsimple has today
September 2016
when Wealthsimple got its first GraphQL API
Today’s Agenda
What’s GraphQL
GraphQL query example
Reusable
Concise
What about all the REST?
We used to have REST APIs.
Most likely, so did you.
Then…
The payloads got pretty large and it felt frustratingly inefficient (especially for mobile).
We didn’t like dealing with adding large numbers of optional parameters.
We wanted a schema registry.
Once upon a time…
Major Departures from REST
(the way we did)
API Documentation
API Documentation
Good Tools, Bad Tools, Best Tools
The Guild (https://www.the-guild.dev/about-us)
“We do open source slow but well.”
We use
Tracing and monitoring
We looked at
https://www.apollographql.com/docs/federation/
Front-end, backend, odds and ends
Mock API servers
Schema registries and naming things
ws-schemas
Schema stitching
Schema #1
Schema #2
Schema #3
Gateway schema
End User App
What’s wrong with GraphQL and does it matter?
Gotchas people find
Not really true. Requires different monitors.
You can give examples in documentation. GitHub’s does. In general, GraphQL APIs aren’t as opinionated on intended use.
We learned that one the hard way where when possible you want common types, common errors, etc.
Next up
How using GraphQL is changing our architecture