Overview

The Salesforce Opportunity Celebrations app brings your Closed Won Opportunities from Salesforce to your screens. Each new win appears as a celebration card with the Opportunity Owner, the Account, and the Amount. The app can also recap the day’s top wins or show a weekly or monthly leaderboard of your biggest Opportunities.
Before You Start
Before you create the Salesforce Opportunity Celebrations app, make sure you have the following:
- A Salesforce account with administrator access and access to Salesforce Setup, so you can create an External Client App.
- Opportunities in Salesforce that reach the Closed Won stage, with the Amount, Opportunity Owner, and Account filled in. The app reads this data.
- A Yodeck account on the Premium or Enterprise plan.
What the App Shows
The app reads the Closed Won Opportunities that match the Record Type and Opportunity Type you select. Depending on the Mode you choose, it plays these slides:
- Win card (Daily): a celebration card for each Opportunity closed today, with the Opportunity Owner, the Account and the Amount.
- Today’s Wins (Daily): a recap of the Opportunities closed today, ranked by Amount. It appears at the Recap Frequency you set.
- Leaderboard (Weekly or Monthly): the top Opportunities closed this week or this month, ranked by Amount. It updates as new Opportunities close.
- Top Recent Wins (all modes): your biggest recent wins. The app shows them until a new Opportunity closes in the current day, week or month, so the screen never stays empty.
Today’s Wins, the leaderboard, and Top Recent Wins list up to the number of Opportunities you set in Recap & Top Deals. When more Opportunities closed, the slide shows how many more, for example, +2 opportunities.

Creating an External Client App in Salesforce
The Salesforce Opportunity Celebrations app connects to Salesforce through an External Client App that uses the Client Credentials Flow. This is the same connection method the Salesforce app and the Salesforce Sales Dashboards app use. Follow the five steps below in Salesforce, then enter the resulting credentials in Yodeck.
ℹ️If you already created an External Client App for the Salesforce app or the Salesforce Sales Dashboards app, you can reuse its Consumer Key, Consumer Secret, and custom host here. First, make sure its Run As user has the View All permission on Opportunity, as described in Step 3, then skip to Creating a Salesforce Opportunity Celebrations App.
Step 1: Create an External Client App
- Log in to Salesforce.
- Click the gear icon in the top-right corner and select Setup.
- Go to Apps > App Manager.
- Click New External Client App.
ℹ️You can also manage your External Client Apps from Apps > External Client Apps > External Client App Manager.


Step 2: Configure the OAuth settings
Fill in the required fields:
- External Client App Name: for example,
Yodeck Integration - API Name: this fills in automatically
- Contact Email: enter your email address
In the same form:
- Scroll to API (Enable OAuth Settings).
- Enable OAuth Settings.

Then configure the following four settings:
| App Settings | Selected OAuth Scopes | Flow Enablement | Security |
| For the Callback URL, enter any valid URL, such as: ℹ️Salesforce requires this field, but Yodeck does not use it for the Client Credentials Flow. | Add these scopes: Access the identity URL service (id, profile, email, address, phone) Manage user data via APIs (api) | Enable Client Credentials Flow. | Enable Issue JSON Web Token (JWT)-based access tokens for named users. |
⚙️When you are done, click the Create button.
ℹ️Note: Salesforce may need 2 to 10 minutes to apply the changes.
Step 3: Configure the Client Credentials policy
After creating the app:
- Open your External Client App.
- Go to Policies and click Edit.
- Scroll to OAuth Policies > OAuth Flows and External Client App Enhancements.
- Enable Client Credentials Flow.
- In Run As (Username), enter the username of the Salesforce user whose access Yodeck should use.
- Click Save.
⚠️Important: The Run As user needs the View All permission on Opportunity. The app celebrates wins across your whole organization, and Salesforce returns only the records the Run As user can see. Without this permission, the app shows only that one user’s own wins.
To grant it, go to Setup > Users > Profiles, open the Run As user’s profile and, under Standard Object Permissions > Opportunity, check View All. You can also grant it through a Permission Set if you prefer not to edit the profile.
Step 4: Copy your Consumer Key and Consumer Secret
- Go to Setup > Apps > External Client Apps > External Client App Manager.
- Find your app.
- Open Settings > OAuth Settings.
- Click Consumer Key and Secret.
- Copy both values.
⚠️Important: Keep your Consumer Secret secure.
Step 5: Find your Salesforce custom host
Look at the Salesforce URL you use to sign in. It follows this format: https://your-custom-host.my.salesforce.com
For example, if your URL is https://mycompany.my.salesforce.com, your custom host is “mycompany“.
Creating a Salesforce Opportunity Celebrations App
To display Salesforce Opportunity Celebrations on your Yodeck screens, click on the Salesforce Opportunity Celebrations app within your app gallery to set it up, and complete the app details as follows:
- From the Main Menu, go to the Apps tab.
- Click Create App.
- Find the Salesforce Opportunity Celebrations app and click Use App.
- Enter a Name for the app and, optionally, a Description.
- Click Connect with Salesforce. In the Connect to Salesforce window, enter the Custom Host, Consumer Key, and Consumer Secret of your External Client App, then click Connect. The left side of the window summarizes the Salesforce steps from the previous section.
- Once the connection succeeds, two more fields appear. Select the Record Type the app should read and, optionally, an Opportunity Type to narrow the data further.
- Language: select the language of the app interface. See the F.A.Q. on which elements the Language drop-down translates.
- Mode: choose Daily, Weekly, or Monthly. Daily shows a win card for each Opportunity closed today, plus a Today’s Wins recap. Weekly and Monthly show a leaderboard of the top Opportunities closed this week or this month. See What the App Shows.
- Recap & Top Deals: choose how many Opportunities Today’s Wins, the leaderboard, and Top Recent Wins list: 3, 5, or 8. The default is 5. In Weekly and Monthly mode, this field is called Weekly Top Deals or Monthly Top Deals.
- Recap Frequency: set how often, in minutes, the Today’s Wins recap appears, from 10 to 1440. The default is 15. This field appears only in Daily mode.
- Slide Duration: set how many seconds each slide stays on screen, from 5 to 60. The default is 10.
- Theme: choose Light, Dark, or Custom. With Custom, you can set the Background Type (for example, Gradient with Gradient Color 1, 2, and 3), the Card Background Color, the Text Color, and the Font Family.
- Display Animations: turn this on to add animated effects to the slides. It is off by default.
- Tags: add tags to help organize and manage the app more easily.
- Default Duration: set the default duration for which the app appears in a playlist.
ℹ️The total duration of the app in a playlist depends on how many celebration cards are shown for that period. If there are no celebrations and the app is set to be skipped, the player moves to the next item. - Availability: set the app’s availability. For more information, see the Media Availability guide.
- Click Save, and your app is ready to use.



Salesforce Opportunity Celebrations App Final Result
The example below showcases how Yodeck displays the Salesforce Opportunity Celebrations app in its preview and on screens.

Troubleshooting
Check that:
- The Consumer Key and Consumer Secret are correct and complete
- The custom host contains only the subdomain (for example
mycompany), not the full URL - The Client Credentials Flow is enabled in both the OAuth Settings and the Policies of the External Client App
- A valid Run As (Username) is set in the Policies
- Salesforce had 2 to 10 minutes to apply your changes
Check that:
- The Run As user has the View All permission on Opportunity (see Step 3). Without it, the app shows only that user’s own wins
- The Opportunity is in the Closed Won stage in Salesforce
- The Opportunity belongs to the selected Record Type and matches the selected Opportunity Type
- At least 15 minutes have passed since the Opportunity closed, because Yodeck checks Salesforce for new wins every 15 minutes
F.A.Q.s
Got questions? We’ve got answers! This section addresses common questions about the Salesforce Opportunity Celebrations app.
The app shows only Closed Won Opportunities that match the Record Type and Opportunity Type you select. Recaps and leaderboards rank them by Amount, highest first.
Up to 15 minutes. Yodeck checks Salesforce for new Closed Won Opportunities every 15 minutes.
When no Opportunity has closed yet in the current day, week, or month, the app shows Top Recent Wins, a slide with your biggest recent wins. The new wins replace it as soon as an Opportunity closes.
Yes. Enter the same custom host, Consumer Key, and Consumer Secret in the Salesforce Opportunity Celebrations app. Make sure the Run As user of that External Client App has the View All permission on Opportunity; otherwise, the app shows only that user’s own wins.
The app uses the permissions of the user you set in the Run As (Username) field when you configure the Client Credentials policy in Salesforce. Only the Opportunities this user can see appear on screen, so give this user the View All permission on Opportunity.
The Salesforce Sales Dashboards app shows your sales numbers, such as revenue, pipeline, and team rankings. The Salesforce Opportunity Celebrations app celebrates each win as it closes. To show both on one screen, place them side by side in a layout.
No. The app celebrates only Closed Won Opportunities.
Yes. The app works as a standalone app and inside layouts.
Yes. The app adapts its layout to both landscape and portrait screens.
– Only Yodeck’s built-in text is translated. This includes: labels, headings, and any text generated directly by the Yodeck app.
– Content coming from external platforms or APIs is not translated by Yodeck. This includes:
Data retrieved from external services (e.g., quotes, calendar events), posts or media from social platforms, text or metadata supplied by the API source, and system messages generated by external platforms.
Need Help?
The Yodeck Support Team can help you out! Log in to your Yodeck account and send us a message from the bottom right corner!