Original Publication Date - October 20, 2020
Updated - March 17, 2026
These API versions are deprecated (as of Summer ‘22 release), are no longer supported, and retired (as of the Summer '25 release). Applications that consume these versions will be disrupted because calls will fail and respond with an error that the requested endpoint is not found and can’t be processed by the platform. Below are the errors:
Note: API versions 7.0 through 20.0 were retired and made unavailable in the Summer ’22 release.
We are focusing our development efforts on enhancing the latest API versions to improve the overall Salesforce experience when building custom functionality via applications. To put things in perspective, API version 30 was from our Spring ‘14 release.
This retirement affects organizations using legacy integrations that call API versions 21.0 through 30.0. If your integration was built before Spring 2014 and hasn't been updated, you may be using these deprecated API versions.
This retirement affects any code, package, application, or integration executing a request of versions 21.0 through 30.0 SOAP, REST, or Bulk API.
Note: This retirement does not impact the following:
Please see the table below for some common places of impact and what actions were needed to take for each:
| Component | Action to take |
| Data Loader | Install a newer version |
| Web Services Connector | Upgrade to a current version |
| AJAX Toolkit | Update the version reference in the path of JavaScript references to the connection.js file to reflect a supported API (for example, /soap/ajax/58.0/connection.js). |
| Visualforce Pages that embed deprecated API calls via the AJAX Toolkit | See AJAX Toolkit above |
| SForceOfficeToolkit COM interface | Adopt a replacement solution that interacts with the latest Salesforce APIs |
| Force.com Toolkit for PHP | Adopt a replacement solution that interacts with the latest Salesforce APIs. |
| Return SOAP API calls from payloads generated by Outbound Messaging | If your Outbound Messaging listener is set up to make a return SOAP call to Salesforce using the EnterpriseURL or PartnerURL sent in the payload, you will need to either configure your client to modify the API URL to use a version greater than 30.0 or recreate the message in Salesforce Setup, which sets the API version to the latest available on the current release. When creating a new Outbound Messaging definition, you can attach it to an existing workflow rule and remove the previous outbound message from that workflow. |
| Connected apps | Check with the developer to either upgrade to a more recent version of the connected app or revise the implementation to interact with the latest Salesforce APIs. |
You would have gotten in touch with the developers of the applications you use to determine the API versions.
In addition, you can review API events in the free API Total Usage EventLogFile that report SOAP, REST, and Bulk API activity from Salesforce using either of the following two methods.
From within Setup, navigate to Security → Event Monitoring → Event Log Browser. Here you can view the event log files for the last 24 hours, or the last 30 days if you have activated Event Monitoring. You can then download individual event log files as CSV files to view the API events in them.
sf data query -q "SELECT Id, LogFile, EventType, CreatedDate FROM EventLogFile WHERE EventType IN ('ApiTotalUsage')" -o <your-username>
For each result, perform a REST API request to the endpoints in the query result to retrieve the event log data in that event log file*.
/services/data/v58.0/sobjects/EventLogFile/0AT3i000005vXpWGAU/LogFile
Paste the response body into an application to easily inspect the event log data as a CSV file.
Review all API Total Usage events (ApiTotalUsage EventType) with API_VERSION of 30 and below**
CONNECTED_APP_NAME, USER_NAME, CLIENT_NAME, API_FAMILY, API_RESOURCE, ENTITY_NAME
For more information on Event Monitoring, take the Event Monitoring Trailhead Module.
*For introductory information on performing a REST API request, see this Trailhead Use REST API.
**The “API Total Usage” event type consolidates relevant request information across the SOAP, Bulk, and REST APIs, including version information. See the event definition details here. API-enabled organizations have free access to the API Total Usage event log files with 1-day data retention. With Event Monitoring enabled, you can access this and all other event log file types with 30-day data retention.
You can also do the following to find Bulk API requests or SOAP API logins:
Note: Partners can leverage the Package Usage Logs for insights on their deprecated API consumption.
You can use Salesforce Code Analyzer to find where these legacy API versions are used in your code. Refer to this documentation.
Salesforce for Outlook
API calls originating from Salesforce for Outlook will have a CLIENT_NAME of “SfdcApplication/” in the API Total Usage EventLogFile. Upgrade to the latest version of Salesforce for Outlook which uses a supported API version.
Microsoft Power Query
If API calls from Microsoft Power Query are using these deprecated API versions, then follow these instructions to update the API version that Microsoft Power Query uses.
About the latest API versions supported, visit the Salesforce Developers site.
About APIs and outbound messaging:
/services/data/vXX.Y/ and /services/metadata/vXX.Y/ where XX.Y is the API version. This includes the “standard” Salesforce Platform REST API to work with sObjects and records, but also the following resources:
Observe the results of a REST request to GET /services/data/v30.0 or GET /services/metadata/v30.0 to understand the top-level resources affected when v30.0 and below endpoints are retired.
If you would like more information about this legacy API retirement, you can see An Important Update to Our Legacy API Retirement Plan .
For an explanation of API versions geared towards admins, listen to the podcast here (it’s a few years old, but the core information is still relevant): Why API Versions Matter with Kris Harrison .
I still need help. What can I do next?
To view all current and past retirements, see Salesforce Product & Feature Retirements . For more information about Salesforce’s approach to retiring products and features, read our Product & Feature Retirement Philosophy.
000389618

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.