How to use IBM App Connect with AWS Lambda

AWS Lambda is an event-driven, serverless computing platform offered by Amazon Web Services (AWS). It allows you to run code for applications or backend services without provisioning or managing servers.

Availability:
  • App Connect Enterprise as a Service connector
  • A local connector in a Designer instance of IBM App Connect in containers (Continuous Delivery release)Local connector in containers (Continuous Delivery release) 12.0.5.0-r4 or later
  • A local connector in a Designer instance of IBM App Connect in containers (Support Cycle 2)Local connector in containers (Long Term Support Cycle-2 release)

Supported product and API versions

To find out which product and API versions this connector supports, see Detailed System Requirements on the IBM Support page.

Connecting to AWS Lambda

Complete the connection fields that you see in the App Connect Designer Catalog page or flow editor. If necessary, work with your AWS Lambda administrator to obtain these values.

AWS Lambda connection fields:
Table 1. Connection fields and their description
Connection field Description
Secret access key The secret access key of your AWS Lambda account. Get the secret access key from the Security Credentials page in the AWS Management Console.
Access key ID The access key ID of your AWS Lambda account. Get the access key ID from the Security Credentials page in the AWS Management Console.
Region The region of your AWS Lambda instance, for example, us-east-1.
Tip: For more information, see AWS service endpoints on the AWS documentation page.
To obtain the connection values (Secret access key and Access key ID) for AWS Lambda and to connect to App Connect, do the following steps:
  1. Log in to your AWS account.
    Note: You can choose between Root user or IAM user based on your role.
    • Root user: Account owner that performs tasks requiring unrestricted access.
    • IAM user: User within an account that performs daily tasks.
    Note: AWS recommends using identity-based managed policies to attach permission sets and roles to an identity and grant only the permissions the user needs. These policies control what actions that identity can perform, on which resources, and under what conditions. While setting the permissions for an identity in IAM, you can decide whether to use an AWS-managed policy, a customer-managed policy, or an inline policy.

    An AWS-managed policy is a standalone policy that is created and administered by AWS. The following are some examples of AWS-managed policies that are specific to AWS Lambda:

    • AWSLambda_FullAccess grants full access to AWS Lambda actions and other AWS services used to develop and maintain AWS Lambda resources.
    • AWSLambda_ReadOnlyAccess grants read-only access to AWS Lambda resources.
    • AWSLambdaRole grants permissions to invoke AWS Lambda functions.
    For more information about AWS-managed policies that are specific to AWS Lambda, see Identity-based IAM policies for Lambda on the AWS documentation page.
  2. On the navigation menu, click Users.
  3. Select your applicable user name or account name.
  4. Click the Security credentials tab, and then click Create access key.
  5. To view the new access key, click Show.
    Note: You can retrieve the secret access key only when you create the key pair for the first time.
  6. For more information, see AWS Account and Access Keys on the AWS documentation page.

To connect to an AWS Lambda endpoint from the App Connect Designer Catalog page for the first time, expand AWS Lambda, then click Connect. For more information, see Managing accounts.

Tip:

Before you use the account that is created in App Connect in a flow, rename the account to something meaningful that helps you to identify it. To rename the account on the Catalog page, select the account, open its options menu (⋮), then click Rename Account.

General considerations

Before you use App Connect Designer with AWS Lambda, take note of the following considerations:

  • (General consideration) You can see lists of the trigger events and actions that are available on the Catalog page of the App Connect Designer.

    For some applications, the events and actions in the catalog depend on the environment and whether the connector supports configurable events and dynamic discovery of actions. If the application supports configurable events, you see a Show more configurable events link under the events list. If the application supports dynamic discovery of actions, you see a Show more link under the actions list.

  • (General consideration) If you are using multiple accounts for an application, the set of fields that is displayed when you select an action for that application can vary for different accounts. In the flow editor, some applications always provide a curated set of static fields for an action. Other applications use dynamic discovery to retrieve the set of fields that are configured on the instance that you are connected to. For example, if you have two accounts for two instances of an application, the first account might use settings that are ready for immediate use. However, the second account might be configured with extra custom fields.

Events and actions

AWS Lambda events

These events are for changes in this application that trigger a flow to start completing the actions in the flow.

Note: Events are not available for changes in this application. You can trigger a flow in other ways, such as at a scheduled interval or at specific dates and times.

AWS Lambda actions

Your flow completes these actions on this application.

Functions
Create function
Retrieve functions
Update function
Delete function
Invoke function

Examples

Dashboard tile for a template that uses AWS Lambda

Use templates to quickly create flows for AWS Lambda

Learn how to use App Connect templates to quickly create flows that perform actions on AWS Lambda. For example, open the Templates gallery, and then search for AWS Lambda.

AWS Lambda flow in detailed view

Use IBM® App Connect to build flows that integrate with AWS Lambda.

Read the blog in the IBM Community to learn how to invoke a function from AWS Lambda whenever an opportunity gets created in Salesforce. Click Read the blog to go to the blog.