Signals FAQ
What authentication method is required for Signals?
- A standard OAuth or FrontEnd integration is required for Rhythm partners. A standard OAuth integration has a 1-to-many relationship between the integration and the Salesloft customers who have authorized the application. Salesloft integrations that deviate from this pattern will be required to make changes before integrating with Rhythm. API key authentication is not supported.
As a partner or customer, can I use an integration I already have?
- Yes. Salesloft will need to know the Integration Name, Email Address of the Integration owner, or Integration ID (if available) for Test and Production.
Can customers create Signals for their Salesloft instance?
- Yes. Salesloft will support private/team signals as long as they are tied to an Oauth application (Connected App) or a FrontEnd integration (and integration that utilizes a Salesloft Iframe). Note that any changes made to Signal payload may affect any Plays using that Signal.
What’s the relationship between a Signal and an Integration?
- A Signal is registered to an integration, not an API key. An integration can have multiple signals, but they cannot be the same signal type or contain identical data sets. A partner or customer can register the same signal to multiple integrations, specifically when the integrations point to different environments on the client’s side. E.g., you might want to register the signal, “content_downloaded,” to your 2 integrations, Salesloft Test and Salesloft Prod. What’s the relationship between a Signal and a Play?
- Plays will turn Salesloft Signals into actions that appear in the seller’s Task queue. Play setup is only available for Salesloft admins or roles that have been granted access to this part of the platform. Rhythm applications will be able to register a default Play that an admin can tweak and turn on for the team. Partners and customers will be able to register Plays by using the elements that are available in the signal registration (i.e. the signal type and the signal indicators).
- Plays are triggered when an incoming signal matches the signal type and the signal indicators on that play. When an incoming signal matches the criteria, a task is generated and placed in the seller's queue. Indicator descriptions (signal engagement data) will be used to populate the explainability of the Task. Tasks will be prioritized by Salesloft’s patent-pending Conductor AI.
What are indicators, and how should I choose them?
- The signal indicator should capture the business value of the Signal with the
intention of driving a prescribed action in the workflow.
- For example, if a seller knew that a buyer made it all the way to the “Book A Meeting” page before leaving the site, they might take a different action or use different messaging when talking to buyers who left the site after 10 seconds. In this scenario, an integration may decide that “made it to booking” and “spent less than 10 seconds on the website” are two strong indicators for their website_engagement signal.
- Indicators are the main criteria used in Salesloft Plays. In the example above, the seller might have a Play configured that creates call Tasks for buyers who made it to the booking page. The other Play might create an email Task.
- Indicators act as true or false (boolean) values on the Signal registration. The event either happened or it didn’t. Indicators that were not met or reached should not be included on the Signal when it is sent.
- Indicator metadata should be present, but it cannot be used as evaluation data in Plays.
{
...
"indicators": [
{
"key": "Spent_less_than_10_seconds_on_website", // can be used in evaluation criteria
"description": {
"en": "Low engagement - Website was viewed for less than 10 seconds"
},
"metadata": {
"Time_spent_seconds": "8" //shou'd be present but cannot be used in evaluation criteria
}
}
]
...
}
Should I use several indicators on 1 signal or multiple signals with 1 indicator?
Both approaches can be successful in Rhythm, and we support both. However, your decision does affect the user experience in Salesloft Plays. Today, multiple signals cannot be combined to create 1 play. There’s a 1:1 relationship between a play and a signal.
- Using multiple indicators works best when the chosen attributes describe the level of engagement on an individual event. Avoid adding indicators that have different business value and are standalone events.
- We’ve seen the most success when individual events are broken into different signals. In the website_engagement example, meeting_booked could be an indicator of that signal, but since it’s a standalone event, it might be best to make it a different signal.
- If you think that a customer would want to apply AND logic to two indicators in a play, place those two indicators on the signal.
- Analytics and reporting for Signal providers will only be rolled up to the signal type. If you have multiple signals, you will receive a report for each signal separately.
- If you choose 1 signal with many indicators, note that a single Signal Description will be used for all Live Feed notifications.
What’s the difference between the signal description and an indicator description?
- Both are UI focused and should communicate the value that you want the user to
see in Salesloft. The Signal Description will be displayed in the Live Feed UI. It
acts as the primary Signal Notification, alerting users that something important
has happened.
- Signal Descriptions should start with a verb. Salesloft will concatenate the Person information passed in the signal along with the description to make a sentence.
- Ex. Signal description is viewed the page
page_name
on your website. Live Feed sentence would be “John Doe (Person) viewed the page Converting Leads on your website (Signal Description)”
- In the event that a task is created because Play criteria was met, the Indicator Description will be displayed on the task that was created. This tells the user why the task is in their queue, i.e. it met the necessary level of engagement to warrant this action.
How should I handle attribution for my Signal?
Signal attribution is done by using one or a combination of the below:
- user_guid
- email_tracked_content_id
- person_id
- account_id
- opportunity_id
From the Partner Signal attribution, the Play will use this attribution designation to assign a task to the person owner. Tasks must be assigned to a person owner and cannot be attributed to an account.
person_id | account_id (company_id) | email_tracked_content | user_guid | opportunity_id | default decision on finding the user id |
---|---|---|---|---|---|
✔️ | : person owner | ||||
✔️ | : account owner | ||||
✔️ | : opportunity owner | ||||
✔️ | : user who sent content (through the email sent) | ||||
✔️ | : we know what to do if we get user id | ||||
✔️ | ✔️ | : person owner (going to more specific info) | |||
✔️ | ✔️ | : user who sent content (through the email sent) | |||
✔️ | ✔️ | : user who sent content (through the email sent) | |||
✔️ | ✔️ | ✔️ | :user who sent content (through the email sent) |
If you are leveraging a Frontend Integration, we recommend you use both person_id and email_tracked_content_id.
Please note that if you use a combination of indicators (e.g. person and account) all Signals sent must have both a valid Account_Id and Person_Id. If one of these values is not present or valid, we will drop this Signal.
Keep in mind that right now, Rhythm is person-centric.
How should I retrieve IDs for Signal attribution?
- This all depends on a few factors, your use case and the identifying information that you have for a User, Person, or Account. But generally, the answer is to hit the Salesloft API to retrieve the necessary information and then make the call to post your signal.
- For example, if you decide that Person Attribution is best for your customers and their use case, hit the Salesloft API with the email address, name, phone number, etc., that you have for that buyer. Retrieve the correct Person and Person id, and post your signal with this attribution. Apply the same Logic for Accounts.
- Front-end integrations have the ability to use a Salesloft email_tracked_content that they passed to Salesloft when inserting content into an email. This attribution-type assumes that the user who sent the content is the user who should see the signal.
- Note that if a user or account does not exist, you cannot post a coinciding Person or Account signal for that object.
Tasks are person-centric in Salesloft. How will Account signals be assigned to buyers?
Account Tasks Assignment when Salesloft receives an Account Signal
- Relate the task to the most engaged Person on the Account in the Last 30 days (Highest Buyer Engagement Score)
- If there is no engagement, relate the task to the last person whose most recent contact was with the Account Owner
- If the Account Owner has not had contact with anyone, relate the task to the last Person contacted by anyone
How will urgency be used in Salesloft?
- The urgency field in the Signals payload will be ignored until further notice. This field was built with the intention of allowing partners to score an indicator or a set of multiple indicators. Salesloft may eventually use this field in the Rhythm architecture to drive prioritization.
What governance should my team implement for our Rhythm integration that uses Signals?
- Continue to monitor and be conscious of the Salesloft rate limit, it still applies here.
- As a partner, allow customers to toggle Signals on and off in your Platform. Customers may want to continue with the traditional experience you offer.
How will my signals be shown?
- Signals will show in the Rhythm Task Feed and the Salesloft Live Feed. It’s important for application owners to be strategic and nimble to reduce noise and customer frustration from excessive notifications.
- Signals that will create actions will require a Play. Whenever a task is created,
the Signal that triggered it will show as the explainability for that Task. (Ex. Email
John because he did X).
- Signals will be included in the Buyer engagement score after they’ve been consistently sent for over 4-6 months.


Can I send Signals without Live Feed Notifications?
- Yes. When sending a Signal, you may send a field called broadcast_notification and set it to false.
How will my signals be prioritized?
- The Buyer Engagement (Conductor AI) model will prioritize tasks based on buyers and accounts that are the most engaged. This is the model that will be used to prioritize everything in the Rhythm focus zone. This model will need to collect signals for about 4-6 months before it can begin incorporating Signals in the Buyer Engagement Score. The model will need to examine the signals and how they affect outcomes.
My Signal is tested and ready, how can we go-live?
- The Salesloft product team will review your signal and offer feedback when you are ready for review. Consider doing this twice, once before development and once after testing. Please email the Salesloft Alliances team (partners@salesloft.com) when you are ready. We will then go through our allowlisting process, where we will review your JSON, view your marketplace updates, and look at any demo videos.
Errors and Issues
(As a customer) How do I know if I’m receiving Signals?
- Presence of Partner Notifications in the Live Feed
- Tasks being Created from Partner Plays
- Signals showing in the API measurement platform (Coming Soon)
(As a customer) Where should I turn Rhythm Signals on or off?
- All partner integrations should provide an option for you to turn Signals on or off in their platform. Since your integration is the source of Signal data, you will need to turn these notifications on or off in their platform.
Is there an option for me to receive signals but not get notifications?
- Not yet. Salesloft plans to allow customers to silence Live Feed notifications by integration or signal type at some time in the future.
Why aren’t my Signals showing in the Live Feed?
Here’s a list of possible errors a partner or customer could receive when our platform is posting to the Live Feed
-
Can't get the user_guid:
Error: could not retrieve user_guid for tenant_id=17, integration_id=99, error=invalid_status
-
Can't get the person_id:
Error: could not retrieve person_id for tenant_id=17, integration_id=99, user_guid=ef458ff7-8d24-4217-ab82-9ba817c63b70, error=unauthorized
-
Can't get the user's locale:
Error: could not retrieve locale for tenant_id=17, integration_id=99, user_guid=ef458ff7-8d24-4217-ab82-9ba817c63b70
-
Only 1 locale was provided but it isn't English:
Error: could not retrieve message (description) for tenant_id=17, integration_id=99, user_guid=ef458ff7-8d24-4217-ab82-9ba817c63b70, error=en-us was not provided
-
Multiple locales were provided, but neither the user's locale nor and English translation were provided:
Error: could not retrieve message (description) for tenant_id=17, integration_id=99, user_guid=ef458ff7-8d24-4217-ab82-9ba817c63b70, error=neither locale=fr-fr or 'en-us' descriptions were provided in signal
-
Issues getting the icon_url:
Error: could not retrieve icon url for tenant_id=17, integration_id=99, user_guid=ef458ff7-8d24-4217-ab82-9ba817c63b70, error=Unable to find requested integration
Error: could not retrieve icon url for tenant_id=17, integration_id=99, user_guid=ef458ff7-8d24-4217-ab82-9ba817c63b70, error=Unable to reach integrations upstream server
Error: could not retrieve icon url for tenant_id=17, integration_id=99, user_guid=ef458ff7-8d24-4217-ab82-9ba817c63b70, error=Frontend integration with ID 99 does not have a square icon URL