

In addition to these integrations, many other integrations are possible by implementing them within an AWS Lambda function and using Lambda’s own integration to connect to it from AppSync.

Choosing AppSync usually means lower cost thanks to its pay-per-use model, high scalability, and reduced development time when building GraphQL APIs. In particular, many Serverless applications that provide a GraphQL API rely on AWS AppSync to manage their API schemas and orchestrate their resolvers and data sources. GraphQL APIs are a popular choice when building Serverless-powered web applications. Why is AppSync an important part of the Serverless ecosystem? Amplify achieves this by providing a library of reusable components and utilities. In addition to the core AppSync service, AWS provides the Amplify Framework, which makes it easy to build mobile and web applications powered by GraphQL APIs. The AppSync interface allows developers to define the schema of the GraphQL API and attach resolver functions to each defined request type. The supported request types are queries (for getting data from the API), mutations (for changing data via the API), and subscriptions (long-lived connections for streaming data from the API). Under the hood, AppSync consists of a GraphQL proxy-a service that receives and parses all the GraphQL requests-and of multiple subsystems for handling each specific request type. AppSync allows developers to build GraphQL APIs without much of the usual work it handles the parsing and resolution of requests as well as connecting to other AWS services like AWS Lambda, NoSQL and SQL data stores, and HTTP APIs to gather backend data for the API.

This GraphQL API layer must be able to parse the GraphQL requests, know where to get the data for each portion, and merge the data to produce a response.ĪWS AppSync is a fully managed GraphQL API layer developed by Amazon Web Services.

Instead, the backend is usually composed of multiple microservices, and the GraphQL API layer is responsible for gathering all the necessary data from the various applications and returning the combined result to the API requester. The system supplying data to a GraphQL API is rarely a single application. This model reduces the complexity of web applications and improves the experience for website visitors with faster load times. Rather than making requests to various endpoints to get different parts of the data needed to build a webpage, developers can issue a single request to a GraphQL API and immediately get back all the data they need. The fundamental idea of a GraphQL API is that all API functionality is available via a unified query language (the Graph Query Language) under a single endpoint.
