Tooling API exposes objects used in developer tooling that you can access through REST or SOAP, and works just like the Salesforce REST API and SOAP API.
Use Tooling API to perform the following tasks:
- Manage working copies of Apex classes and triggers and Visualforce pages and components using the ApexClassMember, ApexTriggerMember, ApexPageMember, ApexComponentMember and MetadataContainer objects.
- Manage working copies of static resource files using the StaticResource object.
- Check for updates and errors in working copies of Apex classes and triggers and Visualforce pages and components, and commit changes to your organization using the ContainerAsyncRequest object.
- Set heap dump markers using the ApexExecutionOverlayAction object.
- Overlay Apex code or SOQL statements on an Apex execution using the ApexExecutionOverlayAction object.
- Execute anonymous Apex.
- Set checkpoints to generate log files for yourself or for other users using the TraceFlag object.
- Access debug log and heap dump files using the ApexLog and ApexExecutionOverlayResult objects.
- Manage custom fields on custom objects using the CustomField object.
- Access code coverage results using the ApexCodeCoverage and ApexCodeCoverageAggregate objects.
- Manage validation rules and workflow rules using the ValidationRule and WorkflowRule objects.