Bladeren, inschakelen en uitschakelen van modules
Alle functionaliteit in Gato GraphQL wordt geleverd via modules. Je opent ze door op "Modules" in het menu van de plugin te klikken:

Elke module kan worden in- of uitgeschakeld. De status is zichtbaar in de tabel:
- Ingeschakelde modules hebben een gekleurde achtergrond
- Uitgeschakelde modules hebben een witte achtergrond
Een module in-/uitschakelen
Als je de muis over de naam van een uitgeschakelde module beweegt, verschijnt er een link "Enable". Door erop te klikken schakel je de module in:

Evenzo verschijnt er bij het bewegen van de muis over de naam van een ingeschakelde module een link "Disable". Door erop te klikken schakel je de module uit.
In bulk
Als alternatief kun je het selectievakje bij elke module aanvinken en "Enable" of "Disable" kiezen uit de vervolgkeuzelijst "Bulk actions":

Modules uitschakelen in publieke en privé-endpoints
Het uitschakelen van modules stelt ons in staat om bepaalde functionaliteit van de GraphQL-server te verwijderen (bijv. de single endpoint), of een element uit het GraphQL-schema te verwijderen (bijv. een type, een veld of een directive).
"Schema-modules" zijn die modules die typen/velden/directives aan het GraphQL-schema toevoegen (te vinden onder de categorieën "Schema Type" en "Schema Directive" op de pagina Modules). We kunnen de beveiliging van de GraphQL API verhogen door alle "Schema-modules" uit te schakelen die niet nodig zijn, zodat gegevens die niet geconsumeerd mogen worden, nooit worden blootgesteld.
Als we bijvoorbeeld de module "Users" uitschakelen, worden de gebruikersvelden (QueryRoot.users, Post.author en andere) uit het GraphQL-schema verwijderd.
Het uitschakelen van endpoints (zoals uitgelegd in de vorige sectie) heeft altijd effect op de publieke endpoints:
- Single endpoint
- Custom endpoints
- Persisted queries
We willen echter mogelijk de toegang tot de "Schema-modules" alleen beperken voor bezoekers (d.w.z. op publieke endpoints), maar niet voor de beheerder van de site op privé-endpoints, zodat de mogelijkheid om toegang te krijgen tot het volledige GraphQL-schema voor interne taken niet wordt beperkt.
De privé-endpoints zijn:
- Endpoint
wp-admin/edit.php?page=graphql_api&action=run_query(die de GraphiQL- en Interactive Schema-clients van de beheerder aanstuurt, en kan worden aangeroepen in de WordPress-editor om gegevens aan blokken te leveren) - Custom private endpoints (ook gebruikt om gegevens aan blokken te leveren, maar waarmee je de configuratie via PHP-hooks kunt vergrendelen)
- GraphQL queries die intern worden uitgevoerd (via de klasse
GraphQLServerin PHP)
Om de "Schema-modules" ook uit te schakelen op de privé-endpoints, moeten we dit configureren op het tabblad "Plugin Configuration > Private Endpoints" op de pagina Instellingen, door het item "Disable "Schema modules" in the private endpoints?" aan te vinken.

Module-afhankelijkheden
Elke module kan afhankelijk zijn van een andere module. In dat geval worden de afhankelijke modules ook uitgeschakeld als de module waarvan ze afhankelijk zijn wordt uitgeschakeld.
Deze informatie is zichtbaar in de kolom "Depends on" van de moduletabel:

Als de module "Schema Configuration" bijvoorbeeld wordt uitgeschakeld, wordt de module "Schema Namespacing" ook uitgeschakeld.
Modules filteren
Modules zijn gegroepeerd op categorie:
- Plugin Management
- Endpoint
- Schema Configuration
- Access Control
- Versioning
- User Interface
- Performance
- Operational
- Client
- Schema Type
Door op een categorie te klikken worden alleen de bijbehorende modules weergegeven.

De documentatie van een module bekijken
Je kunt de documentatie van een module lezen door op de link "View details" onder de beschrijving van de module te klikken:

De instellingen van een module openen
Als je over de naam van de module beweegt, wordt een link "Settings" zichtbaar (tenzij de module geen instellingen heeft).
Door erop te klikken wordt de pagina Instellingen geopend, gericht op het tabblad van de module:
