Deploy AppSync API's in minutes using this Serverless plugin.
Contact me @linkedin
9.2M+ total downloads since Jan 2018
Interactive charts (weekly trends, year-by-year since 2018): npm.chart.dev ↗ · npm-stat (from Jan 2018) ↗ · npmjs.com ↗
npm install serverless-appsync-plugin
service: my-app
plugins:
- serverless-appsync-plugin
provider:
name: aws
appSync:
name: my-api
authentication:
type: API_KEY
resolvers:
Query.user:
dataSource: my-table
dataSources:
my-table:
type: AMAZON_DYNAMODB
config:
tableName: ${sls:stage}-data- General config
- DataSources
- Resolvers
- Pipeline Functions
- Authentication
- API keys
- Custom Domain
- Variable Substitutions
- Caching
- Web Application Firewall (WAF)
- Testing Resolvers
This plugin adds some useful CLI commands. See CLI commands documentation
| Command | Description |
|---|---|
sls appsync validate-schema |
Validate the GraphQL schema |
sls appsync get-introspection |
Export the introspection schema (JSON or SDL) |
sls appsync flush-cache |
Flush the API cache |
sls appsync console |
Open the AWS AppSync console |
sls appsync cloudwatch |
Open CloudWatch logs |
sls appsync logs |
Stream logs to stdout |
sls appsync evaluate |
Evaluate a JS resolver or VTL template without deploying |
sls appsync env get |
Get runtime environment variables of the deployed API |
sls appsync env set |
Set a runtime environment variable on the deployed API |
sls appsync domain * |
Manage custom domains |
This plugin exports some handy variables that you can use in your yml files to reference some values generated by CloudFormation:
${appsync:id}: The id of the AppSync API${appsync:url}: The URL of the AppSync API${appsync:arn}: The ARN of the AppSync API${appsync:apiKey.[NAME]}: An API key
Example:
provider:
environment:
APPSYNC_ID: ${appsync:id}
APPSYNC_ARN: ${appsync:arn}
APPSYNC_URL: ${appsync:url}
APPSYNC_API_KEY: ${appsync:apiKey.myKey}
appSync:
name: my-api
authentication:
type: API_KEY
apiKeys:
- name: myKeyTo upgrade form v1 of this plugin, follow this guide
If you have any questions, issue, feature request, please feel free to open an issue.
You are also very welcome to open a PR and we will gladly review it.
- Mapping Tool: Quickly Build and Debug AppSync & API Gateway Mapping Templates
- GraphBolt: A professional desktop app solution for building, testing, and debugging AppSync APIs.
- AppSync Resolver Autocomplete: VSCode extension. Autocomplete support for VTL template files.
Thanks goes to these wonderful people 👏
This project follows the all-contributors specification. Contributions of any kind welcome!