Reputation: 69
Here is my serverless.yml file:
service: investor-bot
provider:
name: aws
runtime: python3.9
stage: dev
functions:
post:
handler: handler.hello
events:
- http:
path: ita-investor-bot
method: get
Here is code (even with this code it does not work):
def hello(event, context):
return {"statusCode": 200}
I exported my AWS credentials and ran serverless deploy:
Serverless: Packaging service...
Serverless: Excluding development dependencies...
Serverless: Uploading CloudFormation file to S3...
Serverless: Uploading artifacts...
Serverless: Uploading service investor-bot.zip file to S3 (12.77 MB)...
Serverless: Validating template...
Serverless: Updating Stack...
Serverless: Checking Stack update progress...
.......................................
Serverless: Stack update finished...
Service Information
service: investor-bot
stage: dev
region: us-east-1
stack: investor-bot-dev
resources: 11
api keys:
None
endpoints:
GET - https://933zcto8tc.execute-api.us-east-1.amazonaws.com/dev/ita-investor-bot
functions:
post: investor-bot-dev-post
layers:
None
Serverless: Removing old service artifacts from S3...
Serverless: Deprecation warning: Resolution of lambda version hashes was improved with better algorithm, which will be used in next major release.
Switch to it now by setting "provider.lambdaHashingVersion" to "20201221"
More Info: https://www.serverless.com/framework/docs/deprecations/#LAMBDA_HASHING_VERSION_V2
Toggle on monitoring with the Serverless Dashboard: run "serverless"
I see nothing at the AWS account in API Gateway. I can not access endpoint:
Upvotes: 0
Views: 1085
Reputation: 5554
If anyone is finding this question in 2023, I encountered this problem as well and found that the API gateway is not created if you only define the function (just define the handler). The API gateway will be created when you add the keys events
-> http
-> path
+ method
to your function definition.
Upvotes: 0
Reputation: 3777
There's definitely a deployed API Gateway. You've deployed your stack in us-east-1, my best guess is that you're using the AWS console in another region.
When logged in to the AWS console, use the region switcher on the top-right to switch to us-east-1, from there you should see your API Gateway, lambda function, and cloudwatch logs.
Upvotes: 1