For Summer’23 release upgrade, Salesforce have originally announced that they will stop supporting API (Soap, REST, Bulk) version from version 21.0 to 30.0.
Salesforce Platform API Versions 21.0 through 30.0 Retirement
For information, as you can see in recent Summer’23 related communications, these versions will be retired but will continue to run technically until Salesforce Summer’25 release !
That extra-time gives every Salesforce teams 2 years to update all API usages to newest API versions, and concomitantly ensure in the meantime that the « oldest » API are not used anymore by applications or tools connected to Salesforce (to push data to Salesforce, or get data from Salesforce), in your clients IT landscapes (ETL/ESB, data visualization tools, Salesforce custom API requests from client websites or mobile applications…).
https://developer.salesforce.com/blogs/2023/05/an-important-update-to-our-legacy-api-retirement-plan
To prepare for the API retirement, for our clients, we may organize technical discovery sessions with application owner (of all the applications connected to Salesforce) to discover which API version is used by these applications / these usages… but you will need to investigate technically as well through all the applications connected to Salesforce.
To get all these usages, you may use a VS Code extension like SFDX-Hardis (and especially Detect Legacy API use function)
I wanted to highlight a special usage I identified about a very well-known (and used) data visualization application : Microsoft Power BI.
Microsoft Power BI connection to Salesforce uses default v29.0 version, when the vesion is not explicitly configured in the report source.
To be able to make PowerBI use the desired Salesforce APEX API version, Data or Business consultants have to mention the API version to use, directly in the connexion configuration (Salesforce Login URL could be replaced by the domain name URL of the concerned Salesforce instance) :
Source = Salesforce.Data("https://login.salesforce.com/", [ApiVersion=57.0])
Just be cautious about :
- Always work with the version of your production environment
In Salesforce release preview periods, you may have preview sandboxes on version N+1, although your production and non-preview sandboxes are in version N. It would generate errors if a configured API connection, based on the sandboxes you are testing the reports with, are deployed in order to connect with the production instance. Always leverage on the API version of the production instance.
To read more about
- Last Salesforce update about v21.0 to v30.0 versions retirement :
- Salesforce Platform API Versions 21.0 through 30.0 Retirement
- An Important Update to Our Legacy API Retirement Plan by Philippe Ozil, on Salesforce Developer’s blog
- SFDX-Hardis homepage : https://sfdx-hardis.cloudity.com/
- SFDX-Hardis extension how-to : Handle Salesforce API versions deprecation and retirement like a pro