Skip to main content
The Salesforce Marketing Cloud integration is available on the Enterprise plan.
Radar can send events to Salesforce Marketing Cloud to trigger journeys in Journey Builder. Use the Salesforce Marketing Cloud integration to send location-triggered messages to increase engagement and conversion.

Configuration

On the Salesforce Marketing Cloud Setup menu, under Installed Packages, click New. Add an installed package with the name Radar. On the package details page, add an API Integration component with the Server-to-Server integration type and all permissions for the Automation, Contacts, Cross Cloud Platform, and Data scopes. Copy your Client ID, Client Secret, Authentication Base URI, and REST Base URI. Then, on the Radar Integrations page under Salesforce Marketing Cloud, set Enabled to Yes and paste these values. When you click Save, Radar will create an event definition and data extension with the specified event definition key (radar-event by default). Whenever events are generated, Radar will send events to your Salesforce Marketing Cloud data extension to trigger journeys. In Salesforce Marketing Cloud’s Contact Builder, under Data Designer, connect the Radar data extension to your data model by linking the Customer Data’s Contact Key field to the Radar Data Extension’s contactKey field in a one to many relationship. To map a Radar user to a Salesforce Marketing Cloud contact, you must specify a custom mapping by setting Radar metadata.salesforceContactKey.
let contactKey = SFMCSdk.mp.contactKey()
Radar.setMetadata(["salesforceContactKey": contactKey])

Verify integration data delivery

To test that the integration is configured correctly and can deliver data, use the Simulator to generate events. Click View on an event row and scroll down to the Logs section on the details page to verify delivery. Perform a similar process via a test app build with Radar location tracking enabled by spoofing location or moving into the relevant boundary. Salesforce Verify Integration Gi Additionally, check the Radar data extension in Salesforce’s Contact Builder to verify records are delivering. All integration delivery can be monitored via the integration’s event logs by clicking View event logs on the Integrations page.

Example use cases

Send a personalized push notification when a user arrives at a store#

  1. Create Geofences in Radar with the geofence tag set to store. The geofence tag will be used to trigger messages for the subset of geofence entries where this tag is present.
  2. Create a Salesforce Journey triggered by an API Event from the Radar data extension. The Radar data extension will be filtered on user.entered_geofence as the type attribute and store as the geofenceTag attribute.
Salesforce Radar Triggered Message Pn

Message all users who have been nearby a store

  1. Create Geofences in Radar to represent nearby store boundaries with geofence tag set to nearby-store. The geofence tag will be used to target messages for the subset of geofences where this tag has been present on an event in the last 7 days.
  2. Create a Salesforce Mobile List filtered on the Radar data extension attributes of type equal to user.entered_geofence, geofenceTag equal to nearby and createdAt set to the last 7 days.
  3. Create a Salesforce MobilePush Message with audience targeting set to the Salesforce Mobile List created in the step above.
Salesforce Message All Users Pn

Event mapping

user.entered_geofence

Radar Event FieldSalesforce Event AttributeTypeExample
typetypestring"user.entered_geofence"
user.userIduserUserIdstring (max length 100)"1"
user.deviceIduserDeviceIdstring (max length 100)"10974a2ee035770b9"
geofence._idgeofenceIdstring"5b2c0906f5874b001aecfd8e"
geofence.descriptiongeofenceDescriptionstring (max length 100)"Store #123"
geofence.taggeofenceTagstring (max length 100)"store"
geofence.externalIdgeofenceExternalIdstring (max length 100)"123"
geofence.metadatageofenceMetadatastring (max length 4,000)'{"parking":false}'
confidenceconfidencestring"high"
foregroundforegroundbooleantrue
If Regions is enabled, Radar will also send the following attributes:
Radar Event FieldSalesforce Event AttributeTypeExample
country.codecountryCodestring"US"
country.namecountryNamestring"United States"
state.codestateCodestring"MD"
state.namestateNamestring"Maryland"
dma.codedmaCodestring"26"
dma.namedmaNamestring"Baltimore"
postalCode.codepostalCodestring"21014"

user.exited_geofence

Radar Event FieldSalesforce Event AttributeTypeExample
typetypestring"user.exited_geofence"
user.userIduserUserIdstring (max length 100)"1"
user.deviceIduserDeviceIdstring (max length 100)"10974a2ee035770b9"
geofence._idgeofenceIdstring"5b2c0906f5874b001aecfd8e"
geofence.descriptiongeofenceDescriptionstring (max length 100)"Store #123"
geofence.taggeofenceTagstring (max length 100)"store"
geofence.externalIdgeofenceExternalIdstring (max length 100)"123"
geofence.metadatageofenceMetadatastring (max length 4,000)'{"parking":false}'
confidenceconfidencestring"high"
durationdurationnumber (minutes)42.1``foreground
foregroundforegroundbooleantrue
If Regions is enabled, Radar will also send the following attributes:
Radar Event FieldSalesforce Event AttributeTypeExample
country.codecountryCodestring"US"
country.namecountryNamestring"United States"
state.codestateCodestring"MD"
state.namestateNamestring"Maryland"
dma.codedmaCodestring"26"
dma.namedmaNamestring"Baltimore"
postalCode.codepostalCodestring"21014"

user.dwelled_in_geofence

Radar Event FieldSalesforce Event AttributeTypeExample
typetypestring"user.exited_geofence"
user.userIduserUserIdstring (max length 100)"1"
user.deviceIduserDeviceIdstring (max length 100)"10974a2ee035770b9"
geofence._idgeofenceIdstring"5b2c0906f5874b001aecfd8e"
geofence.descriptiongeofenceDescriptionstring (max length 100)"Store #123"
geofence.taggeofenceTagstring (max length 100)"store"
geofence.externalIdgeofenceExternalIdstring (max length 100)"123"
geofence.metadatageofenceMetadatastring (max length 4,000)'{"parking":false}'
confidenceconfidencestring"high"
durationdurationnumber (minutes)5
foregroundforegroundbooleantrue
If Regions is enabled, Radar will also send the following attributes:
Radar Event FieldSalesforce Event AttributeTypeExample
country.codecountryCodestring"US"
country.namecountryNamestring"United States"
state.codestateCodestring"MD"
state.namestateNamestring"Maryland"
dma.codedmaCodestring"26"
dma.namedmaNamestring"Baltimore"
postalCode.codepostalCodestring"21014"

user.entered_place

Radar Event FieldSalesforce Event AttributeTypeExample
typetypestring"user.entered_place"
user.userIduserUserIdstring (max length 100)"1"
user.deviceIduserDeviceIdstring (max length 100)"10974a2ee035770b9"
place._idplaceIdstring"59302bcf8f27e8a156bd4f91"
place.nameplaceNamestring"Starbucks"
place.chain.slugplaceChainSlugstring"starbucks"
place.chain.nameplaceChainNamestring"Starbucks"
place.chain.metadataplaceChainMetadatastring (max length 4,000)'{"parking":false}'
place.categoriesplaceCategoriesstring (comma-separated)"food-beverage,cafe,coffee-shop"
confidenceconfidencestring"high"
foregroundforegroundbooleantrue
If Regions is enabled, Radar will also send the following attributes:
Radar Event FieldSalesforce Event AttributeTypeExample
country.codecountryCodestring"US"
country.namecountryNamestring"United States"
state.codestateCodestring"MD"
state.namestateNamestring"Maryland"
dma.codedmaCodestring"26"
dma.namedmaNamestring"Baltimore"
postalCode.codepostalCodestring"21014"

user.exited_place

Radar Event FieldSalesforce Event AttributeTypeExample
typetypestring"user.exited_place"
user.userIduserUserIdstring (max length 100)"1"
user.deviceIduserDeviceIdstring (max length 100)"10974a2ee035770b9"
place._idplaceIdstring"59302bcf8f27e8a156bd4f91"
place.nameplaceNamestring"Starbucks"
place.chain.slugplaceChainSlugstring"starbucks"
place.chain.nameplaceChainNamestring"Starbucks"
place.chain.metadataplaceChainMetadatastring (max length 4,000)'{"parking":false}'
place.categoriesplaceCategoriesstring (comma-separated)"food-beverage,cafe,coffee-shop"
confidenceconfidencestring"high"
durationdurationnumber (minutes)42.1
foregroundforegroundbooleantrue
If Regions is enabled, Radar will also send the following attributes:
Radar Event FieldSalesforce Event AttributeTypeExample
country.codecountryCodestring"US"
country.namecountryNamestring"United States"
state.codestateCodestring"MD"
state.namestateNamestring"Maryland"
dma.codedmaCodestring"26"
dma.namedmaNamestring"Baltimore"
postalCode.codepostalCodestring"21014"

user.entered_region_country

Radar Event FieldSalesforce Event AttributeTypeExample Value
typetypestring"user.entered_region_country"
user.userIduserUserIdstring"1"
user.deviceIduserDeviceIdstring"10974a2ee035770b9"
region.coderegionCodestring"US"
region.nameregionNamestring"United States"
confidenceconfidencestring"high"
foregroundforegroundbooleantrue

user.exited_region_country

Radar Event FieldSalesforce Event AttributeTypeExample Value
typetypestring"user.exited_region_country"
user.userIduserUserIdstring"1"
user.deviceIduserDeviceIdstring"10974a2ee035770b9"
region.coderegionCodestring"US"
region.nameregionNamestring"United States"
confidenceconfidencestring"high"
foregroundforegroundbooleantrue

user.entered_region_state

Radar Event FieldSalesforce Event AttributeTypeExample Value
typetypestring"user.entered_region_state"
user.userIduserUserIdstring"1"
user.deviceIduserDeviceIdstring"10974a2ee035770b9"
region.coderegionCodestring"MD"
region.nameregionNamestring"Maryland"
confidenceconfidencestring"high"
foregroundforegroundbooleantrue

user.exited_region_state

Radar Event FieldSalesforce Event AttributeTypeExample Value
typetypestring"user.exited_region_state"
user.userIduserUserIdstring"1"
user.deviceIduserDeviceIdstring"10974a2ee035770b9"
region.coderegionCodestring"MD"
region.nameregionNamestring"Maryland"
confidenceconfidencestring"high"
foregroundforegroundbooleantrue

user.entered_region_dma

Radar Event FieldSalesforce Event AttributeTypeExample Value
typetypestring"user.entered_region_dma"
user.userIduserUserIdstring"1"
user.deviceIduserDeviceIdstring"10974a2ee035770b9"
region.coderegionCodestring"26"
region.nameregionNamestring"Baltimore"
confidenceconfidencestring"high"
foregroundforegroundbooleantrue

user.exited_region_dma

Radar Event FieldSalesforce Event AttributeTypeExample Value
typetypestring"user.exited_region_dma"
user.userIduserUserIdstring"1"
user.deviceIduserDeviceIdstring"10974a2ee035770b9"
region.coderegionCodestring"26"
region.nameregionNamestring"Baltimore"
confidenceconfidencestring"high"
foregroundforegroundbooleantrue

user.started_trip

Radar Event AttributeSalesforce Event AttributeTypeExample Value
trip.externalIdtripExternalIdstring (max length 100)"299"
trip.metadatatripMetadatastring (max length 4,000)'{"Car Model":"Green Honda Civic"}'
trip.destinationGeofenceTagtripDestinationGeofenceTagstring (max length 100)"store"
trip.destinationGeofenceExternalIdtripDestinationGeofenceExternalIdstring (max length 100)"123"
foregroundforegroundbooleantrue

user.updated_trip

Radar Event AttributeSalesforce Event AttributeTypeExample Value
trip.externalIdtripExternalIdstring (max length 100)"299"
trip.metadatatripMetadatastring (max length 4,000)'{"Car Model":"Green Honda Civic"}'
trip.destinationGeofenceTagtripDestinationGeofenceTagstring (max length 100)"store"
trip.destinationGeofenceExternalIdtripDestinationGeofenceExternalIdstring (max length 100)"123"
foregroundforegroundbooleantrue

user.approaching_trip_destination

Radar Event AttributeSalesforce Event AttributeTypeExample Value
trip.externalIdtripExternalIdstring (max length 100)"299"
trip.metadatatripMetadatastring (max length 4,000)'{"Car Model":"Green Honda Civic"}'
trip.destinationGeofenceTagtripDestinationGeofenceTagstring (max length 100)"store"
trip.destinationGeofenceExternalIdtripDestinationGeofenceExternalIdstring (max length 100)"123"
foregroundforegroundbooleantrue

user.arrived_at_trip_destination

Radar Event AttributeSalesforce Event AttributeTypeExample Value
trip.externalIdtripExternalIdstring (max length 100)"299"
trip.metadatatripMetadatastring (max length 4,000)'{"Car Model":"Green Honda Civic"}'
trip.destinationGeofenceTagtripDestinationGeofenceTagstring (max length 100)"store"
trip.destinationGeofenceExternalIdtripDestinationGeofenceExternalIdstring (max length 100)"123"
foregroundforegroundbooleantrue

user.stopped_trip

Radar Event AttributeSalesforce Event AttributeTypeExample Value
trip.externalIdtripExternalIdstring (max length 100)"299"
trip.metadatatripMetadatastring (max length 4,000)'{"Car Model":"Green Honda Civic"}'
trip.destinationGeofenceTagtripDestinationGeofenceTagstring (max length 100)"store"
trip.destinationGeofenceExternalIdtripDestinationGeofenceExternalIdstring (max length 100)"123"
foregroundforegroundbooleantrue

user.entered_beacon

Radar Event AttributeSalesforce Event AttributeTypeExample Value
beacon._idbeaconIdstring"5b2c0906f5874b001aecfd8f"
beacon.descriptionbeaconDescriptionstring (max length 100)"Store #123 - Drive-Thru"
beacon.tagbeaconTagstring (max length 100)"drive-thru"
beacon.externalIdbeaconExternalIdstring (max length 100)"123"
beacon.metadatabeaconMetadatastring (max length 4,000)'{"type":"parking"}'
confidenceconfidencestring"high"
foregroundforegroundbooleantrue

user.exited_beacon

Radar Event AttributeSalesforce Event AttributeTypeExample Value
beacon._idbeaconIdstring"5b2c0906f5874b001aecfd8f"
beacon.descriptionbeaconDescriptionstring (max length 100)"Store #123 - Drive-Thru"
beacon.tagbeaconTagstring (max length 100)"drive-thru"
beacon.externalIdbeaconExternalIdstring (max length 100)"123"
beacon.metadatabeaconMetadatastring (max length 4,000)'{"type":"parking"}'
confidenceconfidencestring"high"
durationdurationnumber (minutes)1.42
foregroundforegroundbooleantrue
I