Can anyone suggest a tool/app to extract the salesforce metadata? I was able to find a tool that only extracts objects and relationships, I need metadata for all salesforce data(workflows, approvals, classes).
Salesforce Stack Exchange is a question and answer site for Salesforce administrators, implementation experts, developers and anybody in-between. It only takes a minute to sign up.Sign up to join this community
Disclaimer: I work for Gearset.
You can use Gearset (https://gearset.com) to run a backup of your org. It'll create a zip file that you can download that contains all of your org's metadata. It's a paid-for tool, but there's a free 30 day trial, you can sign up in a couple of clicks, and you run as many backups (as well as org comparisons, deployments, etc.) as you like for free in that time :)
I'd love to know what you need the full metadata for!
Any Salesforce IDE (integrated development environment) can help you do this and offers a graphical interface to reduce the amount of
package.xml manipulation you have to do to use the Metadata API.
The Force.com IDE is one option, which is free. After installing the IDE (which, fair warning, isn't terribly difficult but does involve a number of steps in the rather unintuitive Eclipse software), you'd create a new Saleforce project and connect it up to your organization.
During the project creation, or afterwards if you right-click the project and choose Force.com and Add/Remove Components, you have a chance to select which metadata items from the set that can be accessed via the Metadata API that you want to sync. You can simply select everything and choose Apply, at which point the Force.com IDE will go fetch all of those items from the server and save them to your project directory in their source format, which is XML for most non-Apex components.
Be advised, of course, that once you have this set up you have the power to make changes. If you edit and save any of those files, Eclipse will attempt to save your changes up to the server, so tinker carefully.
Other Salesforce IDEs generally operate in similar ways. MavensMate, despite that it's no longer supported, is still usable. You'd want the desktop application. MavensMate is also free and open source.
For your purposes, you wouldn't even have to install a text editor to go with the MavensMate core - you'd just create a new project and authenticate with your credentials in MavensMate Desktop, and then select all of the available component types when MavensMate asks you what you what subscriptions you want.
That choice makes the individual components available when you're asked what to sync in the next step, and again, you can choose all of the components to have it synced down to your MavensMate project directory as soon as you finish the new-project wizard.
If you don't mind rolling up your sleeves, the Force.com migration tool (https://developer.salesforce.com/docs/atlas.en-us.daas.meta/daas/forcemigrationtool_install.htm) can do the job for you. Uses the metadata API directly to download the metadata in XML format. So, you can manipulate that any way you want to. Workbench (https://workbench.developerforce.com/login.php) can give you the same as well.
That said, I work for a company called Metazoa (www.metazoa.com). Our solution would enable you to take a full backup of your Org configuration, report on what's being used (or not), diff between Orgs (or by time), migrate whatever pieces you prefer etc. We offer a 2 week trial if you want to give it a whirl.