---
schema_version: "1"
id: 92ebcfe41ccfde2f22bb0f81b768e0d58ff9a338a9f103457d7a2043e1fdd7ff
title: Deploy Apex Using Tooling API
collection: legacydeveloper
version: current
locale: en-us
portal_url: https://docs.salesforce.com/legacydeveloper/current/en-us/apexcode/apex_deploying_toolingAPI.md
canonical_url: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_deploying_toolingAPI.htm
source_site: developer.salesforce.com
content_type: documentation
content_hash: 0696cdb1ab7c331b1e9d9165045f1c918934055b24c4241a6d17c4c1b99c9b11
description: Use Tooling API to deploy Apex classes or Apex triggers. Because Tooling API allows you to change just one element within a complex type, it is easy to deploy using Tooling API.
---
# Deploy Apex Using Tooling API

Use Tooling API to deploy Apex classes or Apex triggers. Because Tooling API allows you to change just one element within a complex type, it is easy to deploy using Tooling API.

Use [ContainerAsyncRequest](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/tooling_api_objects_containerasyncrequest.htm) to compile and deploy the changes with ApexTriggerMember, ApexComponentMember, and ApexPageMember.

- [← Previous](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_deploying_metadataAPI.htm "Deploy Apex Using Metadata API")
- [Next →](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_deploying_DevOps.htm "Deploy Apex Using DevOps Center")

#### See Also

- [_Tooling API_: When to Use Tooling API](https://developer.salesforce.com/docs/atlas.en-us.264.0.api_tooling.meta/api_tooling/intro_tasks.htm "Tooling API: When to Use Tooling API - HTML (New Window)")