Migrating to GraphQL on Android with Apollo
summary
Pinterest migrates roughly 878 Android endpoints and about 5,800 migrated fields to GraphQL using Apollo Kotlin, with three engineers supporting 459 million monthly users. Client surfaces run full GraphQL logic, using a normalized cache and a “god query” that lets a single converter map normalized Apollo entries back to legacy REST models, so UI cache watchers get automatic updates. The approach reduces many converters and works in practice, though end‑to‑end Apollo→Apollo notification wiring stays manual for developers.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 1:06What is GraphQL
- 3:11GraphQL schema basics
- 5:16Pinterest’s migration overview
- 7:25REST to GraphQL challenges
- 9:33First migration approach
- 11:20Why abstraction failed
- 12:44Apollo Kotlin architecture
- 13:47Normalized cache
- 16:34God queries and cache
- 18:20REST/GraphQL converters
- 20:46GraphQL to REST reverse
- 23:19Future plans
- 24:45Q&A
related talks
39mOur ongoing journey from REST to GraphQL on Android
45mOur ongoing journey from REST to GraphQL on Android
41mOur ongoing journey from REST to GraphQL on Android
52mOur ongoing journey from REST to GraphQL on Android
28mGraphQLifying React Native App
43mExploring GraphQL on Android
36mImplementing an Android client that brings out GraphQL’s strengths
37mGraphQL on Android is here!
