What Is Salesforce Workbench - The Complete Developer Guide
What is Salesforce Workbench?
Salesforce Workbench is a tool that brings together a number of advanced features and capabilities into one place. A lot of these can be done in other ways too, but Workbench brings all these together into one interface and in many cases enhances usability.
When I speak to Salesforce admins out there, many have never heard of it and the majority of those that have to think that it is a tool for developers and not for admins. This is only partly true, as I would agree that the tools in Workbench are very useful for developers, there are also many things that can save the admin’s time and effort. I will outline a few of the features I think are of particular interest and are often overlooked by those that might get the most benefit from them.
Getting Logged In
Go to https://workbench.developerforce.com/login.php
Choose whether you want to log in to a production org, or a sandbox. Next, you need to select the API version. This may not be something we are used to seeing, as Salesforce gives these names for us such as Summer ’20, but underneath there is a version number like almost any other software system. Here are some examples.
- API Version 49.0 = Summer '20
- API Version 48.0 = Spring '20
- API Version 47.0 = Winter '20
- API Version 46.0 = Summer '19
- API Version 45.0 = Spring '19
- API Version 44.0 = Winter '19
- API Version 43.0 = Summer '18
Workbench always defaults to the latest released version, so when logging into a preview sandbox you may need to select a different version to get full access to the new elements. Read and accept the terms and conditions, and you are in.
Don't forget to check out: How To Lock Records In Salesforce | The Complete Guide
Firstly, editing an existing record. You can work with records in your org from the workbench, this is all kinds of records, not just with standard records you can access easily in the user interface such as Accounts.
Secondly, ever wanted a quick way to add or remove all system permissions from a profile without having to wear out another mouse-clicking all the checkboxes? This is particularly useful when you are auditing org access and want a profile with as close as possible to no access. There is still some clicking to do in the org of course, but this reduces it. Here I have found our example profile which was just cloned from the default read-only profile. I can click Update and then use my find and replace tool to set all those “true” permissions to “false”. You are bound to get some validation issues as you cannot tell from workbench if the value you are setting is actually valid for this record, but it is still quicker than clicking manually in a lot of cases.
In Salesforce Workbench, you can set the password of another user to a specific value. Great for those users who never seem to be able to log in or receive the password reset email. Go to Utilities, then Password Management. You get the screen below. You can choose Set or Reset. Reset behaves the same as a normal password reset, but the Set functionality is not available via a point and clicks in Salesforce Setup. Both options require you to enter the Id of a user in the User Id box. The Reset process has all it needs here, you simply hit change password and a normal reset process is fired. Selecting Set allows you to actually define what you want that user’s password to be. This is great as you can get them in easily with a known password. On their first login, it will ask them to set a password, so the risk associated with knowing user passwords is minimal. Normal password complexity rules apply here.
Workbench is as good a tool as any for your SOQL and SOSL queries and I actually think it is great as a learning tool as there is a point and click interface for building your query but it also lets you see the actual query text. In this way, it is good for understanding how queries are put together and learning how to quickly type them to check data in your org along with the syntax for filters or limits, etc.
Salesforce Workbench goes a step further in the query interface though. Have you ever written that perfect query in a developer console that shows exactly what you need and now you just want to get that data out of the system? In the developer console, while not impossible, it’s a bit onerous. Workbench can do it easily. Chose your output format using the View as radio buttons near the top of the query interface. In the example below I have checked that my query is doing what I expected by viewing the results in a list. I am happy with the output so now I change View as to Bulk CSV and the results are provided in a CSV file I can download. This is great for data update tasks that admins often end up having to do as you now have a perfectly formed CSV, much the same as you could get form Data Loader but more quickly.
Check out another amazing blog by Stimulus Consulting here: Marketing Cloud: Single Send Journeys versus Send Flows
Workbench can also do what Data Loader does in terms of Updates, Upserts, Inserts, Deletes, etc. Let’s expand on the example above and say that the query we ran and downloaded as CSV was because we need to update the hourly and daily rates on those accounts and assign them a new owner. We have a CSV so we can make the simple changes to the data we downloaded in a spreadsheet and now update the records in Salesforce. Go to Data, and in this case, we want to Update but the other options are there. On the Update, interface chose the object you want to update, in our example, it is Account and select the From File radio button and upload the edited CSV file.
We arrive on a data mapping screen similar to that in Data Loader or any other tool you might use where you can match the fields in the CSV to the Salesforce field. I mentioned we want to set the owner, but we didn’t extract that field in our query, so I added a column to my CSV before upload. All the other columns automatically matched to their correct Salesforce field, but the owner didn’t as I didn’t give it the correct API name so I can use the dropdowns in Workbench to map it. You’ll notice that the Owner field on the Account object here is called OwnerId but I don’t know the Id of the new owners, only their email address. This is where a clever Workbench feature called Smart Lookup comes in. This uses external Id fields on the target object to match without having to know the Salesforce Id. I should point out that many other tools can do this too, I just find the UI particularly quick and easy here. Before I uploaded my CSV I put the email address of my owner in the Owner column so I’ll choose that from the dropdown in the Smart Lookup column.
When I’m ready, I scroll to the bottom of the page and click Confirm Mapping and then confirm update on the next screen. After a short pause (almost instant for this small operation), I get the success screen and my data has been changed. I have only updated a small number of records in this example but this is a great way to update many thousands quickly using Salesforce Workbench.
There are many other things that can be done with Workbench and similar tools and this only just scratches the surface.
Why not contact us to see if there us anything else that might help your business.