Custom Endpoints
Custom EndpointsAangepaste Endpoints

Aangepaste Endpoints

Included in the “Power Extensions” bundle

Maak aangepaste schema's met aangepaste toegangsregels voor verschillende gebruikers, elk beschikbaar via een eigen endpoint.

Beschrijving

Een GraphQL-server biedt normaal gesproken één enkel endpoint voor het ophalen en versturen van data.

Naast ondersteuning voor het enkele endpoint maakt Gato GraphQL het ook mogelijk om aangepaste endpoints te maken, met verschillende schemaconfiguraties om te voldoen aan de behoeften van verschillende doelgroepen, zoals:

  • Een specifieke client of gebruiker
  • Een groep gebruikers met meer toegang tot functies (zoals PRO-gebruikers)
  • Een van de verschillende applicaties, zoals een mobiele app of website
  • Externe API's
  • Andere gevallen

De aangepaste endpoint is een Custom Post Type, en zijn permalink is het endpoint. Een endpoint met de titel "My endpoint" en slug my-endpoint is bereikbaar via /graphql/my-endpoint/.

Editor voor aangepaste endpoints

Clients

Elke aangepaste endpoint heeft zijn eigen set clients om mee te communiceren:

âś… Een GraphiQL-client, beschikbaar via het endpoint + ?view=graphiql (bijv.: /graphql/my-endpoint/?view=graphiql).

Module GraphiQL for Custom Endpoints moet ingeschakeld zijn.

GraphiQL-client van de aangepaste endpoint

âś… Een Interactieve schemaclient, beschikbaar via het endpoint + ?view=schema (bijv.: /graphql/my-endpoint/?view=schema).

Module Interactive Schema for Custom Endpoints moet ingeschakeld zijn.

Interactief schema van de aangepaste endpoint

Een Aangepaste Endpoint Aanmaken

Door op de link Aangepaste Endpoints in het menu te klikken, wordt de lijst met alle aangemaakte aangepaste endpoints weergegeven:

Aangepaste Endpoints in het beheerderspaneel
Aangepaste Endpoints in het beheerderspaneel

Een aangepaste endpoint is een custom post type (CPT). Om een nieuwe aangepaste endpoint te maken, klik je op de knop "Add New GraphQL endpoint", waarmee de WordPress-editor wordt geopend:

Een nieuwe Aangepaste Endpoint aanmaken

Wanneer de aangepaste endpoint klaar is, publiceer je deze en wordt de permalink de endpoint-URL. Links naar de endpoint (en bron en clients) worden weergegeven in het zijpaneel "Custom Endpoint Overview":

Overzicht van de Aangepaste Endpoint

Door ?view=source aan de permalink toe te voegen, wordt de configuratie van de endpoint weergegeven (zolang de gebruiker is ingelogd en de gebruikersrol er toegang toe heeft):

Bron van de aangepaste endpoint

Standaard heeft de aangepaste endpoint het pad /graphql/, en deze waarde is configureerbaar via de Instellingen:

Instellingen voor aangepaste endpoints
Instellingen voor aangepaste endpoints

Schemaconfiguratie

Het bepalen welke elementen het schema bevat en welke toegang gebruikers daartoe hebben, wordt gedefinieerd in de schemaconfiguratie.

Daarom moeten we een schemaconfiguratie aanmaken en deze vervolgens selecteren uit het dropdown-menu:

De schemaconfiguratie selecteren

Aangepaste Endpoints Organiseren per Categorie

In het zijpaneel "Endpoint categories" kun je categorieën toevoegen om de Aangepaste Endpoint beter te beheren:

Endpointcategorieën bij het bewerken van een Aangepaste Endpoint

Zo kun je bijvoorbeeld categorieën maken om endpoints te beheren per client, applicatie of andere gewenste informatie:

Lijst van endpointcategorieën

In de lijst met Aangepaste Endpoints kun je hun categorieën bekijken, en door op een categorielink te klikken of het filter bovenaan te gebruiken, worden alleen de vermeldingen voor die categorie weergegeven:

Lijst van Aangepaste Endpoints met hun categorieën

Aangepaste Endpoints filteren op categorie

Privé-endpoints

Door de status van de Aangepaste Endpoint in te stellen op private, is de endpoint alleen toegankelijk voor de beheerder. Zo voorkom je dat je data per ongeluk wordt gedeeld met gebruikers die er geen toegang toe zouden mogen hebben.

Zo kun je bijvoorbeeld privé Aangepaste Endpoints maken die helpen bij het beheer van de applicatie, zoals het ophalen van data voor het genereren van rapporten met je statistieken.

Privé Aangepaste Endpoint

Met wachtwoord beveiligde endpoints

Als je een Aangepaste Endpoint maakt voor een specifieke client, kun je er een wachtwoord aan toewijzen om een extra beveiligingslaag toe te voegen, zodat alleen die client toegang heeft tot de endpoint.

Met wachtwoord beveiligde Aangepaste Endpoint

Bij het eerste bezoek aan een met wachtwoord beveiligde endpoint (of je nu de endpoint zelf bezoekt, of de GraphiQL- of Interactive Schema-clients), verschijnt er een scherm met het verzoek om het wachtwoord in te voeren:

Met wachtwoord beveiligde Aangepaste Endpoint: Eerste toegang

Zodra het wachtwoord is ingevoerd en geverifieerd, krijgt de gebruiker pas toegang tot de beoogde endpoint of client:

Met wachtwoord beveiligde Aangepaste Endpoint: Na autorisatie