---
schema_version: "1"
id: 8bc4dcecd2d880ed6ee54a5cdb6d3c2508f278a0fdbc1628250ae940537e2303
title: Prerequisites to Build Client Applications
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/api_meta/meta_quickstart_prereqs.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_quickstart_prereqs.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: 8a88f16de03e7db0cb10dfba1dbba9419e660c997c0a8dac1270ab55fe1e1fff
description: Make sure that you complete these prerequisites before you start using Metadata API.
---
# Prerequisites to Build Client Applications

Make sure that you complete these prerequisites before you start using Metadata API.

- Create a development environment.
    
    We strongly recommend that you use a sandbox, which is an exact replica of your production organization. Enterprise, Unlimited, and Performance Editions come with free developer sandboxes. For more information, see [http://www.salesforce.com/platform/cloud-infrastructure/sandbox.jsp](http://www.salesforce.com/platform/cloud-infrastructure/sandbox.jsp).
    
    Alternatively, you can use a Developer Edition (DE) org. A DE org provides access to all features that are available with Enterprise Edition, but is limited by the number of users and the amount of storage space. A DE org isn’t a copy of your production org/ It provides an environment where you can build and test your solutions without affecting your organization’s data. Developer Edition accounts are available for free at [https://developer.salesforce.com/signup](https://developer.salesforce.com/signup).
- Identify a user that has the API Enabled permission and the Modify Metadata Through Metadata API Functions permission or Modify All Data permission. These permissions are required to access Metadata API calls.
    
    ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/images/icon_note.png)
    
    #### Note
    
    If a user requires access to metadata but not to data, enable the [Modify Metadata Through Metadata API Functions](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_metadata_perm.htm "To use Metadata API, a user must have these things.") permission. Otherwise, enable the Modify All Data permission.
- Install a SOAP client. Metadata API works with current SOAP development environments, including, but not limited to, Visual Studio® .NET and the Web Service Connector (WSC).
    
    In this document, we provide Java examples based on WSC and JDK 6 (Java Platform Standard Edition Development Kit 6). To run the samples, first download the latest force-wsc JAR file and its dependencies from [mvnrepository.com/artifact/com.force.api/force-wsc/](http://mvnrepository.com/artifact/com.force.api/force-wsc/ "HTML (New Window)"). Dependencies are listed on the page when you select a version.
    
    ![Note](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/images/icon_note.png)
    
    #### Note
    
    Development platforms vary in their SOAP implementations. Implementation differences in certain development platforms can prevent access to some or all features in Metadata API.