Een API maken
Een API makenEen API-hiërarchie aanmaken

Een API-hiërarchie aanmaken

Aangepaste endpoints en persistente queries kunnen worden georganiseerd in een hiërarchie. Dit wordt bereikt wanneer ze een bovenliggende entiteit declareren, waarbij de endpoint-paden het endpoint-pad van de bovenliggende entiteit uitbreiden.

We kunnen bijvoorbeeld deze hiërarchie aanmaken:

  • Bovenliggende persistente query: /graphql-query/posts/
  • Onderliggende persistente query: /graphql-query/posts/english/
  • Onderliggende persistente query: /graphql-query/posts/french/

Het aantal niveaus is onbeperkt, dus we kunnen ook het volgende aanmaken:

  • /graphql-query/posts/
  • /graphql-query/posts/mobile-app/
  • /graphql-query/posts/mobile-app/english/
  • /graphql-query/posts/mobile-app/french/
  • /graphql-query/posts/website/
  • /graphql-query/posts/website/english/
  • /graphql-query/posts/website/french/

Bekijk de gids Strategieën voor API-hiërarchieën voor mogelijke configuraties.

Overerving van eigenschappen

Onderliggende aangepaste endpoints en persistente queries erven eigenschappen van de bovenliggende entiteit.

Aangepaste endpoints en persistente queries

Onderliggende aangepaste endpoints en persistente queries erven de schemaconfiguratie van de bovenliggende entiteit.

Alleen persistente queries

Onderliggende persistente queries erven ook de GraphQL-query en variabelen van de bovenliggende entiteit. Waarden voor variabelen kunnen per variabele worden overschreven door de onderliggende entiteit.

Als de bovenliggende entiteit bijvoorbeeld deze variabelen declareert:

{
  "limit": 5,
  "offset": 0
}

En de onderliggende entiteit declareert deze variabelen:

{
  "limit": 10
}

Dan zijn de berekende variabelen voor de onderliggende entiteit:

{
  "limit": 10,
  "offset": 0
}

Een API-hiërarchie aanmaken

In het aangepaste endpoint of de persistente query, in de Documentinstellingen, is er een sectie Paginakenmerken met een dropdown van alle andere entiteiten, om als bovenliggende entiteit te selecteren:

API-overerving

Persistente queries

Bij het selecteren van een bovenliggende entiteit biedt de persistente query een nieuwe optie: "Inherit query from ancestor(s)?"

Stel deze optie in op Ja, zodat de onderliggende persistente query de GraphQL-query van de bovenliggende entiteit erft:

API-overerving

Voorbeeld

Deze persistente query definieert zijn GraphQL-query en declareert variabele $limit met waarde 1:

Bovenliggende persistente query

Een onderliggende persistente query breidt deze uit, erft de GraphQL-query en overschrijft de waarde van variabele $limit naar 2:

Onderliggende persistente query