About SOAP API

Salesforce provides programmatic access to your org’s information using simple, powerful, and secure application programming interfaces. Before reading more about SOAP API, you should have a basic familiarity with software development, web services, and the Salesforce user interface.

Any functionality described in this guide is available if your org has the API feature enabled. This feature is enabled by default for Performance, Unlimited, Enterprise, and Developer Editions. Some Professional Edition orgs have the API enabled. If you can’t access the features you see in this guide, contact Salesforce.

Salesforce offers several APIs in addition to SOAP API. If you’re wondering whether SOAP API is the right tool to use, check out Which API Do I Use? in Salesforce Help.

Salesforce SOAP API is designed to work with Salesforce objects. See the Object Reference for the Salesforce Platform for an introduction and more information about Salesforce objects.

Tip

Customize, Integrate, and Extend Your Salesforce Solutions

The Lightning Platform allows you to customize, integrate, and extend your Salesforce organization using the language and platform of your choice:

  • Customize Salesforce with custom fields, links, objects, page layouts, buttons, record types, s-controls, and tabs to meet specific business requirements.
  • Integrate Salesforce with your org’s ERP and finance systems. Deliver real-time sales and support information to company portals and populate critical business systems with customer information.
  • Extend Salesforce in presentation, business logic, and data services with new functionality that reflects the business requirements of your org.

For more information about Lightning Platform solutions and developer resources, go to Salesforce Developers.

Supported Editions and Required Permissions

To use SOAP API, your org must use Enterprise Edition, Performance Edition, Unlimited Edition, or Developer Edition. If you’re an existing Salesforce customer and want to upgrade to Enterprise, Unlimited, or Performance Edition, contact your account representative.

To protect the configuration and live data in your production org, we recommend building and testing all solutions and changes in an isolated environment, such as a Developer Edition, sandbox, or scratch org.

Developer Edition provides access to all features available with Enterprise Edition, but is constrained by the number of users and the amount of storage space in each org. Sign up for a free Developer Edition. Sandboxes create copies of your existing org into separate environments. For more information, see Sandboxes: Staging Environments for Customizing and Testing. A scratch org is a source-driven and disposable deployment that’s fully configurable, allowing you to emulate different Salesforce editions with different features and preferences. For more information, see Scratch Orgs

In all supported editions, a user must have the API Enabled permission turned on in the user profile they’re assigned. This permission is enabled by default on some profiles, including many profiles available in Developer Edition orgs. In supported editions, you can also use the Salesforce Integration user license to grant system-to-system integration users org access while limiting them to API-only operations. For more information, see Salesforce Help: Give Integration Users API Only Access.

Standards Compliance

SOAP API is implemented to comply with the following specifications:

Standard Name Website
Simple Object Access Protocol (SOAP) 1.1 https://www.w3.org/TR/2000/NOTE-SOAP-20000508/
Web Service Description Language (WSDL) 1.1 http://www.w3.org/TR/2001/NOTE-wsdl-20010315
WS-I Basic Profile 1.1 http://www.ws-i.org/Profiles/BasicProfile-1.1-2004-08-24.html

Development Platforms

SOAP API works with current SOAP development environments, including, but not limited to, Visual Studio .NET 2005. In this document, we provide examples in Java and C# (.NET). The Java examples are based on WSC 20.0 (WSC) and JDK 6 (Java Platform Standard Edition Development Kit 6). Other versions of WSC are available at https://github.com/forcedotcom/wsc and https://mvnrepository.com/artifact/com.force.api/force-wsc. To see a complete list of compatible development platforms and more sample code, go to developer.salesforce.com.

Development platforms vary in their SOAP implementations. Implementation differences in certain development platforms might prevent access to some or all features of the API. If you’re using Visual Studio for .NET development, we recommend that you use Visual Studio 2003 or higher.

Note

SOAP API Support Policy

Salesforce recommends that your new client applications use the most recent version of the Lightning Platform WSDL file to fully exploit the benefits of richer features and greater efficiency. You can navigate to the most recent WSDL for your organization from Setup by entering API in the Quick Find box, then selecting API. When a new version is released, use the following steps in Quick Start to update your WSDL:

Compatibility

Each new Salesforce release consists of two components:

  • A new release of platform software that resides on Salesforce systems
  • A new version of SOAP API

For example, the Winter ’24 release included SOAP API version 59.0 and the Spring ’24 release included SOAP API version 60.0. For more information about API versions, see Find Salesforce Edition and API version.

Salesforce does not guarantee that an application written against one SOAP API version will work with future SOAP API versions: Changes in method signatures and data representations are often required as we continue to enhance SOAP API. However, we strive to keep SOAP API consistent from version to version with minimal, if any, changes required to port applications to newer SOAP API versions.

For information about Salesforce Platform API versions that are deprecated or retired, see Salesforce Platform API Versions 21.0 through 30.0 Retirement .

Choosing a WSDL

There are two Lightning Platform Web services for which you can obtain WSDL files for API access:

  • Lightning Platform Enterprise WSDL—This API is for most enterprise users who are developing client applications for their org. The enterprise WSDL file is a strongly typed representation of your org’s data. It provides information about your schema, data types, and fields to your development environment, allowing for a tighter integration between it and the Lightning Platform Web service. This WSDL changes if custom fields or custom objects are added to, renamed, or removed from, your org’s Salesforce configuration. If you are downloading an enterprise WSDL and you have managed packages installed in your organization, you need to take an extra step to select the version of each installed package to include in the generated WSDL.
    Note the following when generating the enterprise WSDL:
    • If new custom fields or objects are added to, renamed, or removed from your org’s information, you must regenerate the WSDL file to access them.
    • The generated WSDL contains the objects and fields in your org, including those available in the selected versions of each installed package. If a field or object is added in a later package version, you must generate the enterprise WSDL with that package version to work with the object or field in your API integration.
  • Lightning Platform Partner WSDL—This API is for Salesforce partners who are developing client applications for multiple orgs. As a loosely-typed representation of the Salesforce object model, the partner WSDL can be used to access data within any org.