Home / Companies / LogRocket / Blog / Post Details
Content Deep Dive

When to use multiple endpoints in GraphQL

Blog post from LogRocket

Post Details
Company
Date Published
Author
Leonardo Losoviz
Word Count
2,206
Language
-
Hacker News Points
-
Summary

GraphQL traditionally uses a single endpoint to query data, but there are scenarios where having multiple endpoints with customized schemas can be advantageous, allowing distinct behaviors for different users or applications. This approach is not akin to REST APIs, which provide access to predefined resources, as multiple GraphQL endpoints still allow access to all data within their schemas. Unlike schema stitching or federation, which unify multiple data sources into a single graph, multiple endpoints maintain independence among schemas. This setup is beneficial when different products or applications require separate APIs, such as when a company expands into a new business domain or needs internal and external APIs with varying access to tools and data. Implementing multiple endpoints involves defining various schemas and configuring the server to use the appropriate schema based on the requested endpoint, often facilitated by tools like GraphQL Helix. This method helps in scenarios like separating admin and public schemas for security, providing different behaviors to applications, generating sites in multiple languages, testing new schemas before production, and supporting the Backend-for-Frontends approach.