Tutorial: Send events to Salesforce from Amazon EventBridge - Amazon EventBridge

Tutorial: Send events to Salesforce from Amazon EventBridge

You can use EventBridge to route events to third-party services, such as Salesforce.

In this tutorial, you'll use the EventBridge console to create a connection to Salesforce, an API destination that points to Salesforce, and a rule to route events to Salesforce.

Prerequisites

To complete this tutorial, you'll need the following resources:

Step 1: Create connection

To send events to Salesforce, you'll first have to establish a connection to the Salesforce API.

To create the connection
  1. Open the Amazon EventBridge console at https://console.aws.amazon.com/events/.

  2. In the navigation pane, choose API destinations.

  3. Choose the Connections tab, and then choose Create connection.

  4. Enter a name and description for the connection. For example, enter Salesforce as a name, and Salesforce API Connection as a description.

  5. For Destination type, choose Partners and for Partner Destinations, select Salesforce from the drop-down list.

  6. For Authorization endpoint, enter one of these:

    • If you're using a production org, enter https://MyDomainName.my.salesforce.com./services/oauth2/token

    • If you're using a sandbox without enhanced domains, enter https://MyDomainName--SandboxName.my. salesforce.com/services /oauth2/token

    • If you're using a sandbox with enhanced domains, enter https://MyDomainName-- SandboxName.sandbox.my.salesforce.com/services/oauth2/token

  7. For HTTP method, choose POST from the drop-down list.

  8. For Client ID, enter the client ID from your Salesforce connected app.

  9. For Client secret, enter the client secret from your Salesforce connected app.

  10. For OAuth Http Parameters, enter the following key/value pair:

    Key Value

    grant_type

    client_credentials

  11. Choose Create.

Step 2: Create API destination

Now that you've created the connection, next you'll create the API destination to use as the target of the rule.

To create the API Destination
  1. Open the Amazon EventBridge console at https://console.aws.amazon.com/events/.

  2. In the navigation pane, choose API destinations.

  3. Choose Create API destination.

  4. Enter a name and description for the API destination. For example, enter SalesforceAD for the name, and Salesforce API Destination for the description..

  5. For API destination endpoint, enter https://MyDomainName.my.salesforce.com/services/data/v54.0/sobjects/MyEvent__e where Myevent__e is the platform event where you want to send information.

  6. For HTTP method, choose POST from the drop-down list.

  7. For Invocation rate limit, enter 300.

  8. For Connection, choose Use an existing connection and choose the Salesforce connection you created in step 1.

  9. Choose Create.

Step 3: Create rule

Next, you'll create a rule to send events to Salesforce when an Amazon S3 object is created.

To create a rule
  1. Open the Amazon EventBridge console at https://console.aws.amazon.com/events/.

  2. In the navigation pane, choose Rules.

  3. Choose Create rule.

  4. Enter a name and description for the rule. For example, enter SalesforceRule for the name, and Rule to send events to Salesforce for S3 object creation for the description.

  5. For Event bus, choose default.

  6. For Rule type, choose Rule with an event pattern.

  7. Choose Next.

  8. For Event source, choose Other.

  9. For Event pattern, enter the following:

    { "source": ["aws.s3"] }
  10. Choose Next.

  11. For Target types, choose EventBridge API destination.

  12. For API destination, choose Use an existing API destination, and then choose the SalesforceAD destination you created in step 2.

  13. For Execution role, choose Create a new for role for this specific resource.

  14. For Additional settings, do the following:

    1. For Configure target input, choose Input transformer from the drop-down list.

    2. Choose Configure input transformer

    3. for Sample events, enter the following:

      { "detail":[] }
    4. For Target input transformer do the following:

      1. For Input Path, enter the following:

        {"detail":"$.detail"}
      2. For Input Template, enter the following:

        {"message": <detail>}
    5. Choose Confirm..

  15. Choose Next.

  16. Choose Next.

  17. Review the details of the rule and choose Create rule.

Step 4: Test the rule

To test your rule, create an Amazon S3 object by uploading a file to an EventBridge-enabled bucket. The information about the created object will be sent to the Salesforce platform event.

Step 5: Clean up your resources

You can now delete the resources that you created for this tutorial, unless you want to retain them. By deleting AWS resources that you are no longer using, you prevent unnecessary charges to your AWS account.

To delete the EventBridge Connections(s)
  1. Open the API destination page of the EventBridge console.

  2. Choose the Connections tab.

  3. Select the Connection(s) you created.

  4. Choose Delete.

  5. Enter the name of the connection and choose Delete.

To delete the EventBridge API destination(s)
  1. Open the API destination page of the EventBridge console.

  2. Select the API destinations(s) you created.

  3. Choose Delete.

  4. Enter the name of the API destination and choose Delete.

To delete the EventBridge rule(s)
  1. Open the Rules page of the EventBridge console.

  2. Select the rule(s) that you created.

  3. Choose Delete.

  4. Choose Delete.