Hook And Filter Reference

Version 1.9.3

The source scan found 117 Awedesk-specific hook/filter names. Payloads are source-inferred, so inspect the listed source before using a hook for money-moving, privacy, or destructive automation.

GroupHook/filterTypePurposeEmittersBundled listeners
Generalalmighty_support_tbdfilterAwedesk extension point discovered in source.classes/api/rest/v1/pro_edd.php:144
Generalalsp_absolute_textdomain_pathfilterAwedesk extension point discovered in source.classes/compatibility/multilang.php:23
Frontend/templatesalsp_action_after_exec_templateactionFrontend rendering extension point discovered in source.classes/frontend/assets.php:375<br>classes/utilities/template.php:122
Frontend/templatesalsp_action_before_exec_templateactionFrontend rendering extension point discovered in source.classes/frontend/assets.php:369<br>classes/utilities/template.php:116
Emailalsp_action_process_mailqueueactionAwedesk extension point discovered in source.classes/email/email_queue.php:191
Users/capabilitiesalsp_action_user_role_changeactionAwedesk extension point discovered in source.classes/users/user.php:449
Generalalsp_agents_query_wherefilterAwedesk extension point discovered in source.classes/models/agents.php:44
Generalalsp_allowed_htmlfilterFilters optional HTML allowed by Awedesk sanitization.classes/utilities/string.php:58
Generalalsp_app_responsefilterAwedesk extension point discovered in source.classes/api/rest/v1/pro_app.php:81
Config/adminalsp_configfilterFilters admin setting field groups.classes/config/config.php:246classes/chatbot/config_chatbot.php:51<br>classes/config/config_advanced.php:45<br>classes/config/config_csat.php:135<br>classes/config/config_email.php:82<br>classes/config/config_license.php:35<br>classes/config/free_config_integrations.php:28<br>classes/config/free_config_notes.php:24<br>classes/config/free_config_signatures.php:35
Config/adminalsp_config_addactionRuns when an Awedesk setting is added.classes/config/config.php:56
Config/adminalsp_config_delactionRuns when an Awedesk setting is deleted.classes/config/config.php:73
Config/adminalsp_config_department_fieldsactionAdmin configuration extension point discovered in source.templates/admin/admin_departments.php:95
Config/adminalsp_config_descriptionfilterFilters setting help text.classes/config/config_panel.php:570classes/chatbot/config_chatbot.php:23<br>classes/config/config.php:186<br>classes/config/config.php:208<br>classes/config/config_advanced.php:24<br>classes/config/config_csat.php:101<br>classes/config/config_email.php:46<br>classes/config/config_license.php:19<br>classes/config/free_config_signatures.php:24
Config/adminalsp_config_menufilterFilters admin setting menu entries.classes/config/config.php:273<br>classes/config/config_panel.php:95classes/chatbot/config_chatbot.php:14<br>classes/config/config_advanced.php:14<br>classes/config/config_csat.php:91<br>classes/config/config_email.php:36<br>classes/config/config_license.php:24<br>classes/config/free_config_integrations.php:15<br>classes/config/free_config_notes.php:14<br>classes/config/free_config_signatures.php:14
Config/adminalsp_config_pagesfilterAdmin configuration extension point discovered in source.classes/config/config.php:325classes/pro/integrations/woocommerce/woo-integrations.php:110
Config/adminalsp_config_setactionRuns when an Awedesk setting is saved.classes/api/rest/v1/admin.php:29<br>classes/config/config.php:39classes/awecloud_client/awecloud_client.php:151<br>classes/config/pages.php:80<br>classes/email-piping/classes/config/config_ep_multi_inbox.php:46<br>classes/pro/integrations/cpt/cpt-integration.php:17<br>classes/pro/integrations/woocommerce/woo-integrations.php:39
Ticket lifecyclealsp_create_new_ticketactionTicket lifecycle, query, or rendering extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:750
Ticket lifecyclealsp_create_ticket_message_afteractionRuns after a ticket message is persisted.classes/api/rest/v1/ticket_messages.php:122<br>classes/api/rest/v1/tickets.php:184classes/pro/attachments/attachment.php:73
Generalalsp_cron_initactionAwedesk extension point discovered in source.classes/utilities/cron.php:35classes/email-piping/classes/config/config_ep_cron.php:34<br>classes/pro/advanced-email-piping/config/config_department_ep_cron.php:35<br>classes/pro/attachments/config/cron.php:51
Config/adminalsp_cron_interval_configfilterAdmin configuration extension point discovered in source.classes/config/config_advanced.php:50classes/pro/attachments/config/cron.php:36
CSATalsp_csat_response_admin_actionactionCustomer satisfaction extension point discovered in source.classes/api/rest/v1/admin_csat_responses.php:162
CSATalsp_csat_survey_base_urlfilterCustomer satisfaction extension point discovered in source.classes/models/csat_token.php:160
CSATalsp_csat_survey_createdactionCustomer satisfaction extension point discovered in source.classes/models/csat_hooks.php:49
CSATalsp_csat_survey_email_queuedactionCustomer satisfaction extension point discovered in source.classes/email/csat.php:56<br>classes/email/csat.php:63<br>classes/email/csat.php:69<br>classes/email/csat.php:84
CSATalsp_csat_survey_email_subjectfilterCustomer satisfaction extension point discovered in source.classes/email/csat.php:74
CSATalsp_csat_survey_email_templatefilterFilters the satisfaction survey email body.classes/email/csat.php:80
CSATalsp_csat_survey_readyactionRuns when a satisfaction survey is ready to send.classes/models/csat_hooks.php:60classes/email/csat.php:39
CSATalsp_csat_survey_scheduledactionCustomer satisfaction extension point discovered in source.classes/models/csat_hooks.php:56
CSATalsp_csat_survey_skippedactionCustomer satisfaction extension point discovered in source.classes/models/csat_hooks.php:27<br>classes/models/csat_hooks.php:44
CSATalsp_csat_survey_submittedactionRuns after a customer submits a satisfaction response.classes/api/rest/v1/csat_survey.php:49
CSATalsp_csat_survey_template_datafilterCustomer satisfaction extension point discovered in source.classes/frontend/csat_survey.php:70
CSATalsp_csat_survey_urlfilterCustomer satisfaction extension point discovered in source.classes/models/csat_token.php:140
Emailalsp_default_email_intensity_selectfilterAwedesk extension point discovered in source.classes/config/config_email.php:121
Generalalsp_departments_query_wherefilterAwedesk extension point discovered in source.classes/models/departments.php:27
Email pipingalsp_ep_allowed_email_selectfilterEmail-piping extension point discovered in source.classes/email-piping/classes/config/config_ep_general.php:81
Email pipingalsp_ep_allowed_users_selectfilterEmail-piping extension point discovered in source.classes/email-piping/classes/config/config_ep_general.php:80
Email pipingalsp_ep_connection_selectfilterEmail-piping extension point discovered in source.classes/email-piping/classes/config/config_ep_general.php:78<br>classes/pro/advanced-email-piping/config/config_department_ep.php:41
Email pipingalsp_ep_email_is_validfilterFilters whether an imported email should be accepted.classes/email-piping/classes/importer/ep_email.php:411
Email pipingalsp_ep_gmail_importer_attachmentsfilterEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_gmail_importer.php:203classes/pro/advanced-email-piping/advanced-email-piping.php:17
Email pipingalsp_ep_imap_importer_attachmentsfilterEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_imap_importer.php:161classes/pro/advanced-email-piping/advanced-email-piping.php:18
Email pipingalsp_ep_microsoft_exchange_importer_attachmentsfilterEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_me_importer.php:116classes/pro/advanced-email-piping/advanced-email-piping.php:19
Email pipingalsp_ep_piping_connectionsfilterEmail-piping extension point discovered in source.classes/email-piping/email-piping.php:107
Email pipingalsp_ep_reject_new_emailsactionEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:399
Email pipingalsp_ep_reject_reply_emailsactionEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:393
Email pipingalsp_ep_reject_user_pipeactionEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:407
Email pipingalsp_ep_spam_blockedactionEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:439
Email pipingalsp_ep_spam_check_resultfilterFilters email import spam detection results.classes/email-piping/classes/importer/ep_email.php:427classes/email-piping/classes/spam/spam_quarantine.php:334
Email pipingalsp_ep_spam_checkedactionEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:430
Email pipingalsp_ep_spam_detectedactionRuns when email import spam detection flags a message.classes/email-piping/classes/importer/ep_email.php:436classes/email-piping/classes/spam/spam_quarantine.php:21
Email pipingalsp_ep_spam_email_is_allowedfilterEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:451
Email pipingalsp_ep_spam_mode_selectfilterEmail-piping extension point discovered in source.classes/email-piping/classes/config/config_ep_spam.php:72
Email pipingalsp_ep_spam_quarantine_cleanedactionEmail-piping extension point discovered in source.classes/email-piping/classes/spam/spam_quarantine.php:427
Email pipingalsp_ep_spam_quarantine_recordedactionEmail-piping extension point discovered in source.classes/email-piping/classes/spam/spam_quarantine.php:139
Email pipingalsp_ep_spam_quarantine_releasedactionEmail-piping extension point discovered in source.classes/email-piping/classes/spam/spam_quarantine.php:342
Email pipingalsp_ep_spam_quarantine_sender_configuredactionEmail-piping extension point discovered in source.classes/email-piping/classes/spam/spam_quarantine.php:541
Email pipingalsp_ep_spam_quarantinedactionEmail-piping extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:441
Email pipingalsp_ep_spam_settingsfilterEmail-piping extension point discovered in source.classes/email-piping/classes/config/config_ep_spam.php:183
Generalalsp_fix_block_legacy_widgetfilterAwedesk extension point discovered in source.classes/frontend/assets.php:358<br>classes/utilities/template.php:105
Frontend/templatesalsp_frontend_datafilterFilters the frontend data object before it is printed for browser scripts.classes/frontend/assets.php:269classes/awecloud_client/awecloud_client.php:173<br>classes/frontend/pro_assets.php:3<br>classes/pro/integrations/woocommerce/woo-integrations.php:150
Generalalsp_get_urlfilterAwedesk extension point discovered in source.classes/frontend/assets.php:390
Generalalsp_getting_startedfilterAwedesk extension point discovered in source.classes/config/pages.php:49classes/pro/_PRO.php:29
Generalalsp_is_profilterFilters whether Pro behavior is enabled.classes/chatbot/chatbot_llm.php:147<br>classes/config/config.php:177<br>classes/config/config_advanced.php:86<br>classes/config/config_agent.php:20<br>classes/config/config_csat_responses.php:20<br>classes/config/config_dashboard.php:20<br>classes/config/config_department.php:31<br>classes/config/config_label.php:20classes/pro/_PRO.php:14
Generalalsp_is_pro_validfilterFilters whether Pro licensing is valid.classes/pro/_PRO.php:18
Generalalsp_loadmore_repeat_selectfilterAwedesk extension point discovered in source.classes/config/config_advanced.php:165
Generalalsp_loadmore_selectfilterAwedesk extension point discovered in source.classes/config/config_advanced.php:158
Emailalsp_mailqueue_addactionRuns when an email is queued.classes/email/email_queue.php:81
Emailalsp_mailqueue_add_datafilterFilters email queue payload data before storage.classes/email/email_queue.php:88
Emailalsp_mailqueue_afteractionRuns after queued email sending is attempted.classes/email/email_queue.php:265
Emailalsp_mailqueue_before_sendingfilterFilters a queued email row immediately before sending.classes/email/email_queue.php:249classes/email-piping/classes/config/config_ep_general.php:94
Generalalsp_message_create_succededactionAwedesk extension point discovered in source.classes/models/ticket_message.php:113<br>classes/models/ticket_message.php:114
Generalalsp_plugin_deactivatedactionAwedesk extension point discovered in source.alsp.php:205
Generalalsp_post_replyactionAwedesk extension point discovered in source.classes/email-piping/classes/importer/ep_email.php:596
Privacyalsp_privacy_data_inventoryfilterFilters the privacy data inventory used by export, erase, and policy guidance.classes/privacy/data_inventory.php:166
Privacyalsp_privacy_policy_contentfilterPrivacy/export/erase extension point discovered in source.classes/privacy/privacy.php:79
Privacyalsp_privacy_policy_sectionsfilterPrivacy/export/erase extension point discovered in source.classes/privacy/policy.php:23
Generalalsp_rest_pathsfilterFilters directories scanned by the REST endpoint router.classes/api/api.php:62<br>classes/api/api.php:135classes/boot/component.php:46<br>classes/email-piping/email-piping.php:70
Frontend/templatesalsp_templatefilterFilters frontend template output before rendering.classes/frontend/assets.php:335classes/pro/attachments/attachment.php:76
Frontend/templatesalsp_template_insertactionFrontend rendering extension point discovered in source.templates/admin/admin_departments.php:96<br>templates/admin/admin_departments_item.php:131<br>templates/ticket/message.php:27<br>templates/ticket/sidebar.php:122<br>templates/ticket/sidebar.php:176classes/pro/advanced-email-piping/config/config_department_ep.php:14<br>classes/pro/attachments/attachment.php:77<br>classes/pro/integrations/awecommerce/awecommerce-integrations.php:70<br>classes/pro/integrations/edd/edd-integrations.php:72<br>classes/pro/integrations/woocommerce/woo-integrations.php:146
Generalalsp_theme_selectfilterAwedesk extension point discovered in source.classes/config/config.php:112
Ticket lifecyclealsp_ticket_assignee_changedactionRuns when the assigned staff member changes.classes/api/rest/v1/admin_agent.php:110<br>classes/api/rest/v1/ticket_assign.php:39<br>classes/api/rest/v1/ticket_messages.php:175<br>classes/api/rest/v1/tickets.php:320<br>classes/api/rest/v1/tickets.php:347<br>classes/models/tickets_bulk.php:595<br>classes/models/tickets_bulk.php:836<br>classes/models/tickets_bulk.php:862classes/pro/integrations/slack/slack.php:35<br>classes/pro/watchers/classes/ticket_watchers.php:39
Ticket lifecyclealsp_ticket_attachment_query_wherefilterTicket lifecycle, query, or rendering extension point discovered in source.classes/pro/attachments/model/ticket_attachments.php:25
Ticket lifecyclealsp_ticket_bulk_agent_changedactionTicket lifecycle, query, or rendering extension point discovered in source.classes/models/tickets_bulk.php:613
Ticket lifecyclealsp_ticket_bulk_department_changedactionTicket lifecycle, query, or rendering extension point discovered in source.classes/models/tickets_bulk.php:788
Ticket lifecyclealsp_ticket_bulk_marked_spamactionTicket lifecycle, query, or rendering extension point discovered in source.classes/models/tickets_bulk.php:1065
Ticket lifecyclealsp_ticket_bulk_status_changedactionTicket lifecycle, query, or rendering extension point discovered in source.classes/models/tickets_bulk.php:492
Ticket lifecyclealsp_ticket_bulk_trashedactionTicket lifecycle, query, or rendering extension point discovered in source.classes/models/tickets_bulk.php:1193
Ticket lifecyclealsp_ticket_closedactionRuns when a ticket is closed.classes/api/rest/v1/ticket_closed.php:55<br>classes/tickets/tickets.php:108classes/models/csat_hooks.php:19<br>classes/pro/integrations/slack/slack.php:40
Ticket lifecyclealsp_ticket_create_succededactionTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket.php:339
Ticket lifecyclealsp_ticket_department_changedactionRuns when the department changes.classes/api/rest/v1/tickets.php:300<br>classes/models/tickets_bulk.php:757classes/pro/integrations/slack/slack.php:50
Ticket lifecyclealsp_ticket_filter_default_descfilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket_status.php:61
Ticket lifecyclealsp_ticket_filter_default_iconfilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket_status.php:104
Ticket lifecyclealsp_ticket_filter_default_namefilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket_status.php:42
Ticket lifecyclealsp_ticket_filter_iconfilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket_status.php:80
Ticket lifecyclealsp_ticket_filter_listfilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket_status.php:190
Ticket lifecyclealsp_ticket_filter_namefilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket_status.php:23
Ticket lifecyclealsp_ticket_marked_spamactionRuns when a ticket is marked as spam.classes/api/rest/v1/tickets.php:694<br>classes/models/tickets_bulk.php:1056
Ticket lifecyclealsp_ticket_messages_query_wherefilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket_messages.php:41
Ticket lifecyclealsp_ticket_newactionRuns after a ticket is created through the ticket form, chatbot, or email import.classes/api/rest/v1/chatbot.php:157<br>classes/api/rest/v1/tickets.php:183<br>classes/email-piping/classes/importer/ep_email.php:667classes/pro/integrations/slack/slack.php:25
Ticket lifecyclealsp_ticket_reopenedactionRuns when a closed ticket is reopened.classes/api/rest/v1/ticket_reopen.php:66classes/pro/integrations/slack/slack.php:45
Ticket lifecyclealsp_ticket_replyactionRuns after a reply is added to a ticket.classes/api/rest/v1/ticket_messages.php:121<br>classes/email-piping/classes/importer/ep_email.php:515classes/pro/integrations/slack/slack.php:30
Ticket lifecyclealsp_ticket_status_listfilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/ticket_status.php:153
Ticket lifecyclealsp_ticket_subject_updatedactionRuns when the subject changes.classes/api/rest/v1/tickets.php:548
Ticket lifecyclealsp_ticket_urifilterTicket lifecycle, query, or rendering extension point discovered in source.alsp.php:383classes/pro/integrations/woocommerce/woo-integrations.php:157
Ticket lifecyclealsp_tickets_query_joinfilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/tickets.php:176classes/pro/watchers/classes/ticket_watchers.php:28
Ticket lifecyclealsp_tickets_query_wherefilterTicket lifecycle, query, or rendering extension point discovered in source.classes/models/tickets.php:179classes/pro/watchers/classes/ticket_watchers.php:20
Generalalsp_urifilterAwedesk extension point discovered in source.alsp.php:395<br>alsp.php:402
Users/capabilitiesalsp_user_capabilities_agentfilterAwedesk extension point discovered in source.classes/utilities/wp_activation.php:749
Users/capabilitiesalsp_user_capabilities_clientfilterAwedesk extension point discovered in source.classes/utilities/wp_activation.php:782
Users/capabilitiesalsp_user_capabilities_fullfilterAwedesk extension point discovered in source.classes/utilities/wp_activation.php:680
Users/capabilitiesalsp_user_default_rolefilterFilters default Awedesk role assignment.classes/users/user.php:278
Generalalsp_validate_fieldfilterFilters setting validation results.classes/api/rest/v1/admin.php:22classes/config/config_csat.php:113<br>classes/config/config_email.php:61<br>classes/email-piping/classes/config/config_ep_multi_inbox.php:32<br>classes/email-piping/classes/config/config_ep_spam.php:35
Generalalsp_working_directoryfilterAwedesk extension point discovered in source.alsp.php:322
Generalalsp_working_urlfilterAwedesk extension point discovered in source.alsp.php:354
Generalautolink_max_lengthfilterAwedesk extension point discovered in source.classes/utilities/string.php:60
Generalawecloud_is_clientfilterAwedesk extension point discovered in source.classes/api/rest/v1/pro_app.php:22<br>classes/api/rest/v1/pro_app.php:66<br>classes/api/rest/v1/pro_app_auth.php:8<br>classes/awecloud_client/awecloud_client.php:176<br>classes/config/config.php:137<br>classes/config/config.php:151<br>classes/config/config.php:218<br>classes/config/config_advanced.php:49classes/awecloud_client/awecloud_client.php:495
Config/adminawedesk_config_getfilterFilters setting values after read and before return.classes/config/config.php:22<br>classes/config/config.php:26<br>classes/config/config.php:31<br>classes/config/config.php:34

Ticket Lifecycle Examples

add_action('alsp_ticket_new', function (int $ticket_id, int $message_id): void {
    $ticket = new ALSP_Model_Ticket($ticket_id);
    $item = $ticket->get_item();

    // Send ticket metadata to a CRM, queue a background job, or tag the customer.
    my_crm_sync_awedesk_ticket($item);
}, 10, 2);
add_action('alsp_ticket_reply', function ($ticket, int $message_id): void {
    $ticket_id = is_object($ticket) && isset($ticket->id) ? (int) $ticket->id : (int) $ticket;
    my_audit_log(sprintf('Reply %d added to ticket %d', $message_id, $ticket_id));
}, 10, 2);
add_action('alsp_ticket_closed', function ($ticket, $actor): void {
    $ticket_id = is_object($ticket) && isset($ticket->id) ? (int) $ticket->id : (int) $ticket;
    my_billing_hold_release_for_ticket($ticket_id);
}, 10, 2);

Frontend Data Example

add_filter('alsp_frontend_data', function (array $data): array {
    if (!is_user_logged_in()) {
        return $data;
    }

    $data['my_company'] = [
        'supportTier' => get_user_meta(get_current_user_id(), 'support_tier', true) ?: 'standard',
    ];

    return $data;
});

Template Injection Example

add_action('alsp_template_insert', function (string $slot): void {
    if ($slot !== 'ticket/sidebar/2') {
        return;
    }

    echo '<section class="my-awedesk-panel">';
    echo esc_html__('Account health checked by CRM.', 'my-extension');
    echo '</section>';
});