Utility method for making API calls to AppSync from Lambdas in AWS.
This library essentially implements the suggested approach outlined by AWS Amplify Docs in a nice package.
Install via NPM:
npm i @crft/appsync-gateway --save
then use like:
const {
GraphQLGateway,
IAMCredentialsStrategy,
APIKeyCredentialsStrategy,
AuthHeaderCredentialsStrategy
} = require('@crft/appsync-gateway');
// IAM Mode
const creds = new IAMCredentialsStrategy();
// API Key Mode
const creds = new APIKeyCredentialsStrategy(API_KEY);
// Auth Headers Mode
const creds = new AuthHeaderCredentialsStrategy(authHeader);
const gateway = new GraphQLGateway(
creds,
process.env.API_API_GRAPHQLAPIENDPOINTOUTPUT
);
const myQuery = `
query ListTodosOperation {
listTodos {
items {
title
}
}
}
`;
await gateway.runQuery({
operationName: 'ListTodosOperation',
query: myQuery,
variables: {
input: {}
}
});
npm build
- Run the typescript build