Can we call lambda function from outside aws without using API Gateway? I want to call lambda function directly from outside aws services is it possible?
Looks like an ability to directly call Lambdas over the Internet without an API Gateway was just added to the SDK. Function URLs are available using the Lambda API and are supported in CloudFormation, AWS SAM and AWS CDK.
You can create a web API with an HTTP endpoint for your Lambda function by using Amazon API Gateway. API Gateway provides tools for creating and documenting web APIs that route HTTP requests to Lambda functions. You can secure access to your API with authentication and authorization controls.
You can call Lambda directly (as shown in my example above). Or, you can call it via the AWS Command-Line Interface (CLI).
AWS Lambda functions can be triggered by:
From Supported Event Sources documentation:
In addition to invoking Lambda functions using event sources, you can also invoke your Lambda function on demand. You don't need to preconfigure any event source mapping in this case. However, make sure that the custom application has the necessary permissions to invoke your Lambda function.
For example, user applications can also generate events (build your own custom event sources). User applications such as client, mobile, or web applications can publish events and invoke Lambda functions using the AWS SDKs or AWS Mobile SDKs such as the AWS Mobile SDK for Android.
So, anything on the Internet can invoke a Lambda function, but it will need to use AWS credentials to authenticate.
You can also use an application load balancer to call the lambda. This option is useful when you have timeouts larger than 30 seconds. To use this option you need to add a trigger to the lambda function and select Application Load Balancer and then procede with the configuration which is not hard.
This is awful compare to using the API Gateway, because it creates a target group for each lambda but well... its sometimes useful.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With