Designing an integration

Pick the right service for a real requirement, then design a schema before writing any handler.

Checked against Graph Horizon (2025-12-11)

Last read 2026-08-30 Due again 2026-11-30

Every protocol claim below was read at these sources on 2026-08-30. Where they disagree with each other, the entry says so.

Design before you build. This is the exercise that saves the most time later, and it requires no code.

Design one real integration

  • Write down, in one sentence, the question your application needs answered from chain data.
  • Run it through the decision order. Say which service you land on and why the layer above it does not suffice.
  • If the answer is a subgraph: list your entities and, for each, say what its ID is and why that ID is stable across every event that touches it.
  • Write the GraphQL query your most important screen will make. Check that your schema actually supports it.
  • Identify the contracts you will watch. Check whether any is a proxy, and note what happens to your mapping if it is upgraded.
  • Estimate how much history you need and be honest about whether a handler loop can cover it in acceptable time.
  • Budget the curation signal you will post so that somebody actually indexes it.
  • Write down what your application does when a query returns empty, distinguishing no data from not indexed yet from broken.

Then build it

Where next

  • Making sure somebody actually indexes your work: curator.
  • What the operators serving your subgraph are dealing with: indexer.
  • Getting an endpoint into production and paying for it: app builders.