Generate list of api endpoints & stack outputs for consumption in other applications + service discovery.
This will output to .serverless/manifest.json file.
Add to plugins array in serverless.yml
service: my-example-service
plugins:
- serverless-manifest-pluginThe plugin will automatically create the manifest when you run sls deploy
You can also manually generate the manifest at anytime with
sls manfifest
Using the json flag will pipe the stdout of the manifest. You can use this with a tool like jq to do something programatic with the data.
sls manfifest --json
Outputs urls, functions, outputs etc.
.serverless/manifest.json
{
"dev": {
"urls": {
"base": "https://abc-123.execute-api.us-west-1.amazonaws.com/dev",
"byPath": {
"track": {
"url": "https://abc-123.execute-api.us-west-1.amazonaws.com/dev/track",
"method": [
"post"
]
},
"identify": {
"url": "https://abc-123.execute-api.us-west-1.amazonaws.com/dev/identify",
"method": [
"post"
]
}
},
"byFunction": {
"track": {
"url": "https://abc-123.execute-api.us-west-1.amazonaws.com/dev/track",
"method": [
"post"
]
},
"identify": {
"url": "https://abc-123.execute-api.us-west-1.amazonaws.com/dev/identify",
"method": [
"post"
]
}
},
"byMethod": {
"post": [
"https://abc-123.execute-api.us-west-1.amazonaws.com/dev/track",
"https://abc-123.execute-api.us-west-1.amazonaws.com/dev/identify"
]
}
},
"functions": {
"track": {
"name": "my-example-service-dev-track",
"arn": "arn:aws:lambda:us-west-1:123456:function:my-example-service-dev-track:3",
"runtime": "nodejs8.10",
"triggers": [
[
"http"
]
],
"dependancies": {
"direct": [
"analytics-node"
],
"nested": [
"uuid",
"remove-trailing-slash"
]
}
},
"identify": {
"name": "my-example-service-dev-identify",
"arn": "arn:aws:lambda:us-west-1:123456:function:my-example-service-dev-identify:3",
"runtime": "nodejs8.10",
"triggers": [
[
"http"
]
],
"dependancies": {
"direct": [
"analytics-node"
],
"nested": [
"uuid",
"remove-trailing-slash"
]
}
}
},
"outputs": [
{
"OutputKey": "TrackLambdaFunctionQualifiedArn",
"OutputValue": "arn:aws:lambda:us-west-1:123456:function:my-example-service-dev-track:3",
"Description": "Current Lambda function version"
},
{
"OutputKey": "DomainName",
"OutputValue": "1234abcd.cloudfront.net"
},
{
"OutputKey": "HostedZoneId",
"OutputValue": "abcdef"
},
{
"OutputKey": "IdentifyLambdaFunctionQualifiedArn",
"OutputValue": "arn:aws:lambda:us-west-1:123456:function:my-example-service-dev-identify:3",
"Description": "Current Lambda function version"
},
{
"OutputKey": "ServiceEndpoint",
"OutputValue": "https://abc-123.execute-api.us-west-1.amazonaws.com/dev",
"Description": "URL of the service endpoint"
},
{
"OutputKey": "ServerlessDeploymentBucketName",
"OutputValue": "my-example-service-serverlessdeploymentbuck-abc123"
}
]
}
}