grafbase-sdk 0.21.2

An SDK to implement extensions for the Grafbase Gateway
Documentation

Grafbase SDK for Gateway Extensions

docs.rs

This crate provides building blocks for creating Grafbase Gateway extensions.

There exist four kinds of extensions today:

  • [AuthenticationExtension]: Authenticates clients before any GraphQL processing, generating a token with custom data for further extensions.
  • [AuthorizationExtension]: Control access to certain fields, objects, interfaces, scalars or enums.
  • [ResolverExtension]: Called by the gateway to resolve data for a field from a GraphQL subgraph.
  • [HooksExtension]: Called by the gateway to perform actions before receiving a request, or right before sending a response.
  • [ContractsExtension]: Called by the gateway to identify which elements should be part of a schema contract given subgraph directives and the contract key.

Each extension has its dedicated documentation and tutorial you can follow through.