---
schema_version: "1"
id: 6de496faa9f60006f427a17e7001545c5af310ab7dedfbc168d5b89adaa834ed
title: Set Apex Class Access from Profiles
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/platform/264-0-0/users_profiles_apex_access.md
canonical_url: https://help.salesforce.com/s/articleView?id=platform.users_profiles_apex_access.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: a4cd7d9e5cb09d6c050dad1c9e5da4a8138f9060f9c0bd8b1c856ecbfa09ba7e
description: Specify which methods in a top-level Apex class are executable for a profile.
products:
  - Salesforce Platform
release: "264"
---
# Set Apex Class Access from Profiles

Specify which methods in a top-level Apex class are executable for a profile.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: Salesforce Classic and Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: <strong>Performance</strong>, <strong>Unlimited</strong>, <strong>Developer</strong>, <strong>Enterprise</strong>, and <strong>Database.com</strong> Editions</td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small permission">
        <colgroup>
          <col style="width:50%">
          <col style="width:50%">
        </colgroup>
        <thead class="slds-text-title_caps ">
          <tr class="">
            <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d33642e75">User Permissions Needed</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d33642e75 ">To edit profiles:</td>

            <td class="slds-cell-wrap" style="vertical-align:top;" headers="d33642e75 ">Manage Profiles and Permission Sets</td>

          </tr>
        </tbody>
      </table>

These settings apply only to Apex class methods. For example, apply the settings to Web service methods or any method used in a custom Visualforce controller or controller extension applied to a Visualforce page. Triggers always fire on trigger events (such as `insert` or `update`), regardless of profile settings.

1. From Setup, enter Profiles in the Quick Find box, then select **Profiles**.
2. Select a profile, and click its name.
3. In the Apex Class Access page or related list, click **Edit**.
4. Select the Apex classes that you want to enable from the Available Apex Classes list and click **Add**. Or select the Apex classes that you want to disable from the Enabled Apex Classes list and click **Remove**.
5. Click **Save**.

#### See Also

- [Set Apex Class Access from the Class List Page](https://help.salesforce.com/s/articleView?id=platform.code_apex_access_via_list.htm&release=264.0.0&type=5 "Limit which users can execute methods in a particular top-level Apex class based on their profiles.")
- [Set Apex Class Access from the Class Detail Page](https://help.salesforce.com/s/articleView?id=platform.code_apex_access_via_detail.htm&release=264.0.0&type=5 "Limit which users can execute methods in a particular top-level Apex class based on their profiles.")
- [Set Apex Class Access from Permission Sets](https://help.salesforce.com/s/articleView?id=platform.perm_sets_setting_apex_access.htm&release=264.0.0&type=5 "You can specify which methods in a top-level Apex class are executable for a permission set.")