Achieve Architectural Efficiency with Event Relays

Salesforce Architects
Salesforce Architects

--

Vacasa is a vacation home rental service that uses an onboarding process which includes deep cleaning, inspections, and photo shoots for new rentals. Each step is recorded as a case in Salesforce. The cases themselves are managed by onboarding coordinators, but the Vacasa team also wanted to build a customer-facing app that could update homeowners about each step in the process.

Their initial approach relied on a request-response architecture, which consisted of periodic polling calls to Salesforce APIs. The system would check to see if the status of an action such as “Initial Cleaning” was changed from “Requested” to “In Progress.” and respond with any relevant updates.

Vacasa’s initial solution

While this approach technically worked, it lacked two things:

  • Architectural Efficiency: The system would return empty responses if no change had occurred since the last API call. This meant that developer efforts, data storage, and processing were not being used as efficiently as possible.
  • Real-Time Results: Due to performance implications associated with frequent API calls, updates could not be provided to homeowners in real-time. This created several issues, including the possibility of a vacation home being photographed without the homeowners being informed of a photographer being at their home.

To address these two issues, Vacasa decided to change their approach to one that utilized Event Relay.

Event Relay Solution

Event Relay is a new way to deliver Platform Events or Change Data Capture events. Instead of a request-response polling architecture, Event Relay uses event-driven architecture to stream data directly to Amazon EventBridge. This eliminates the need for middleware or custom code solutions like the one Vacasa had initially built. Instead, Event Relay allows developers to integrate their Salesforce products with AWS services through native, bi-directional, and event-driven integrations where events are automatically published to the Salesforce Event Bus and relayed to Amazon EventBridge.

Events represent any piece of data that might be important to the user. In Vacasa’s case:

  • An event is created anytime a case status is updated.
  • Events are automatically relayed to Amazon EventBridge, ready to be used by AWS services.

Because Vacasa’s cloud architecture resides fully in AWS, their team used Event Relay and AWS Lambda to build a solution that transformed the event payload to a standardized schema that matches their existing event patterns. This meant that data received from Salesforce could be used by any of their teams, with no Salesforce background necessary.

Solution Architecture for Vacasa’s Event-Relay based solution

This Event-driven architecture approach avoids API Polling that doesn’t return results. Instead, events are created and relayed to their Amazon EventBridge whenever onboarding coordinators make status updates. This means eliminates wasted data storage, processing power, and developer time.

Additionally, this architecture provides Vacasa’s systems with real-time information as events are immediately ready to be used where needed. Once a completed Salesforce case event is relayed to AWS, the Onboarding Tracker is able to progress the onboarding workflow by creating further work items and displaying the latest real time status to onboarding coordinators. This improves overall service efficiency and allows Vacasa to provide timely homeowner updates about the onboarding process.

Vacasa’s system sends hundreds of thousands of events weekly. Event Relay provides a real-time, scalable, event-driven integration, that improves their onboarding processes and communications, while empowering their teams to easily interact with Salesforce events.

Event Relay is a free service that is enabled in all Salesforce orgs (please see some limitations). Take a look at our documentation to learn more and started.

Further reading

About the Authors

  • Tyson Read is the Product Manager for Event Relay and works on event driven integration technologies at Salesforce.
  • Sasha Golubova is an Associate Product Manager at Salesforce that’s working on features for Sales Cloud and the Salesforce Platform.

--

--

Salesforce Architects
Salesforce Architects

We exist to empower, inspire and connect the best folks around: Salesforce Architects.