REST API Reference

Version 1.9.3

Namespace: /wp-json/almightysupport/v1. The scan found 100 registered REST method callbacks.

GroupMethodRoutesCallbackPermission summaryPurposeSource
AdminDELETE/wp-json/almightysupport/v1/admin_agent<br>/wp-json/almightysupport/v1/admin_agent/{id}ALSP_REST_V1_Endpoint_Admin_Agent::delete()return $this->wpuser->has_cap('alsp_ticket_delete_agents');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_agent.php:63
AdminGET/wp-json/almightysupport/v1/admin_agent<br>/wp-json/almightysupport/v1/admin_agent/{id}ALSP_REST_V1_Endpoint_Admin_Agent::read()return $this->wpuser->has_cap('alsp_ticket_list_agents');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_agent.php:10
AdminPUT/PATCH/wp-json/almightysupport/v1/admin_agent<br>/wp-json/almightysupport/v1/admin_agent/{id}ALSP_REST_V1_Endpoint_Admin_Agent::edit()return $this->wpuser->has_cap('alsp_ticket_edit_agents');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_agent.php:20
AdminGET/wp-json/almightysupport/v1/admin_agent_department<br>/wp-json/almightysupport/v1/admin_agent_department/{id}ALSP_REST_V1_Endpoint_Admin_Agent_Department::read()return $this->wpuser->has_cap('alsp_ticket_list_departments');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_agent_department.php:10
AdminGET/wp-json/almightysupport/v1/admin_agent_stats<br>/wp-json/almightysupport/v1/admin_agent_stats/{id}ALSP_REST_V1_Endpoint_Admin_Agent_Stats::read()return current_user_can('manage_options');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_agent_stats.php:10
AdminGET/wp-json/almightysupport/v1/admin_config_menu<br>/wp-json/almightysupport/v1/admin_config_menu/{id}ALSP_REST_V1_Endpoint_Admin_Config_Menu::read()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_config_menu.php:6
AdminGET/wp-json/almightysupport/v1/admin_csat_responses<br>/wp-json/almightysupport/v1/admin_csat_responses/{id}ALSP_REST_V1_Endpoint_Admin_CSAT_Responses::read()return current_user_can('manage_options');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_csat_responses.php:10
AdminPOST/wp-json/almightysupport/v1/admin_csat_responses<br>/wp-json/almightysupport/v1/admin_csat_responses/{id}ALSP_REST_V1_Endpoint_Admin_CSAT_Responses::create()return current_user_can('manage_options');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_csat_responses.php:31
AdminGET/wp-json/almightysupport/v1/admin_dashboard<br>/wp-json/almightysupport/v1/admin_dashboard/{id}ALSP_REST_V1_Endpoint_Admin_Dashboard::read()return current_user_can('manage_options');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_dashboard.php:10
AdminDELETE/wp-json/almightysupport/v1/admin_department<br>/wp-json/almightysupport/v1/admin_department/{id}ALSP_REST_V1_Endpoint_Admin_Department::delete()return $this->wpuser->has_cap('alsp_ticket_delete_departments');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_department.php:159
AdminGET/wp-json/almightysupport/v1/admin_department<br>/wp-json/almightysupport/v1/admin_department/{id}ALSP_REST_V1_Endpoint_Admin_Department::read()return $this->wpuser->has_cap('alsp_ticket_list_departments');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_department.php:10
AdminPOST/wp-json/almightysupport/v1/admin_department<br>/wp-json/almightysupport/v1/admin_department/{id}ALSP_REST_V1_Endpoint_Admin_Department::create()return $this->wpuser->has_cap('alsp_ticket_manage_departments');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_department.php:20
AdminPUT/PATCH/wp-json/almightysupport/v1/admin_department<br>/wp-json/almightysupport/v1/admin_department/{id}ALSP_REST_V1_Endpoint_Admin_Department::edit()return $this->wpuser->has_cap('alsp_ticket_edit_departments');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_department.php:81
AdminDELETE/wp-json/almightysupport/v1/admin_label<br>/wp-json/almightysupport/v1/admin_label/{id}ALSP_REST_V1_Endpoint_Admin_Label::delete()return $this->wpuser->has_cap('alsp_ticket_delete_agents');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_label.php:86
AdminGET/wp-json/almightysupport/v1/admin_label<br>/wp-json/almightysupport/v1/admin_label/{id}ALSP_REST_V1_Endpoint_Admin_Label::read()return $this->wpuser->has_cap('alsp_ticket_list_agents');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_label.php:10
AdminPOST/wp-json/almightysupport/v1/admin_label<br>/wp-json/almightysupport/v1/admin_label/{id}ALSP_REST_V1_Endpoint_Admin_Label::create()Admin users bypass; otherwise see endpoint can_create implementation or missing method.Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_label.php:20
AdminPUT/PATCH/wp-json/almightysupport/v1/admin_label<br>/wp-json/almightysupport/v1/admin_label/{id}ALSP_REST_V1_Endpoint_Admin_Label::edit()return $this->wpuser->has_cap('alsp_ticket_edit_agents');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_label.php:52
AdminPOST/wp-json/almightysupport/v1/admin_license<br>/wp-json/almightysupport/v1/admin_license/{id}ALSP_REST_V1_Endpoint_Admin_License::create()return current_user_can('manage_options');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_license.php:271
AdminGET/wp-json/almightysupport/v1/admin_mailqueue<br>/wp-json/almightysupport/v1/admin_mailqueue/{id}ALSP_REST_V1_Endpoint_Admin_Mailqueue::read()return current_user_can('manage_options');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_mailqueue.php:10
AdminPOST/wp-json/almightysupport/v1/admin_mailqueue<br>/wp-json/almightysupport/v1/admin_mailqueue/{id}ALSP_REST_V1_Endpoint_Admin_Mailqueue::create()return current_user_can('manage_options');Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_mailqueue.php:25
AdminDELETE/wp-json/almightysupport/v1/admin_predefined_reply<br>/wp-json/almightysupport/v1/admin_predefined_reply/{id}ALSP_REST_V1_Endpoint_Admin_Predefined_Reply::delete()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_predefined_reply.php:106
AdminGET/wp-json/almightysupport/v1/admin_predefined_reply<br>/wp-json/almightysupport/v1/admin_predefined_reply/{id}ALSP_REST_V1_Endpoint_Admin_Predefined_Reply::read()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_predefined_reply.php:10
AdminPOST/wp-json/almightysupport/v1/admin_predefined_reply<br>/wp-json/almightysupport/v1/admin_predefined_reply/{id}ALSP_REST_V1_Endpoint_Admin_Predefined_Reply::create()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_predefined_reply.php:20
AdminPUT/PATCH/wp-json/almightysupport/v1/admin_predefined_reply<br>/wp-json/almightysupport/v1/admin_predefined_reply/{id}ALSP_REST_V1_Endpoint_Admin_Predefined_Reply::edit()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Admin endpoint for settings, dashboard, staff, departments, labels, mail queue, or management data.classes/api/rest/v1/admin_predefined_reply.php:45
Auth/AccountGET/wp-json/almightysupport/v1/account<br>/wp-json/almightysupport/v1/account/{id}ALSP_REST_V1_Endpoint_Account::read()return get_current_user_id() > 0;Authentication or account endpoint.classes/api/rest/v1/account.php:5
Auth/AccountPOST/wp-json/almightysupport/v1/account<br>/wp-json/almightysupport/v1/account/{id}ALSP_REST_V1_Endpoint_Account::create()return get_current_user_id() > 0;Authentication or account endpoint.classes/api/rest/v1/account.php:21
Auth/AccountGET/wp-json/almightysupport/v1/client_check<br>/wp-json/almightysupport/v1/client_check/{id}ALSP_REST_V1_Endpoint_Client_Check::read()return !get_current_user_id();Authentication or account endpoint.classes/api/rest/v1/client_check.php:10
Auth/AccountPOST/wp-json/almightysupport/v1/client_check<br>/wp-json/almightysupport/v1/client_check/{id}ALSP_REST_V1_Endpoint_Client_Check::create()return !get_current_user_id();Authentication or account endpoint.classes/api/rest/v1/client_check.php:30
Auth/AccountPOST/wp-json/almightysupport/v1/login<br>/wp-json/almightysupport/v1/login/{id}ALSP_REST_V1_Endpoint_Login::create()return !get_current_user_id();Authentication or account endpoint.classes/api/rest/v1/login.php:11
Auth/AccountPOST/wp-json/almightysupport/v1/refresh_token<br>/wp-json/almightysupport/v1/refresh_token/{id}ALSP_REST_V1_Endpoint_Refresh_Token::create()return TRUE;Authentication or account endpoint.classes/api/rest/v1/refresh_token.php:11
Auth/AccountPOST/wp-json/almightysupport/v1/register<br>/wp-json/almightysupport/v1/register/{id}ALSP_REST_V1_Endpoint_Register::create()// valid for guest only return !get_current_user_id();Authentication or account endpoint.classes/api/rest/v1/register.php:11
CSATPOST/wp-json/almightysupport/v1/csat_survey<br>/wp-json/almightysupport/v1/csat_survey/{id}ALSP_REST_V1_Endpoint_CSAT_Survey::create()return TRUE;Customer satisfaction endpoint.classes/api/rest/v1/csat_survey.php:10
ChatbotPOST/wp-json/almightysupport/v1/chatbot<br>/wp-json/almightysupport/v1/chatbot/{id}ALSP_REST_V1_Endpoint_Chatbot::create()return true;Chatbot endpoint.classes/api/rest/v1/chatbot.php:5
ChatbotDELETE/wp-json/almightysupport/v1/chatbot_rules<br>/wp-json/almightysupport/v1/chatbot_rules/{id}ALSP_REST_V1_Endpoint_Chatbot_Rules::delete()return false; }Chatbot endpoint.classes/api/rest/v1/chatbot_rules.php:72
ChatbotGET/wp-json/almightysupport/v1/chatbot_rules<br>/wp-json/almightysupport/v1/chatbot_rules/{id}ALSP_REST_V1_Endpoint_Chatbot_Rules::read()return false; } public function can_create() { return false; } public function can_edit() { return false; } public function can_delete() { return false; }Chatbot endpoint.classes/api/rest/v1/chatbot_rules.php:5
ChatbotPOST/wp-json/almightysupport/v1/chatbot_rules<br>/wp-json/almightysupport/v1/chatbot_rules/{id}ALSP_REST_V1_Endpoint_Chatbot_Rules::create()return false; } public function can_edit() { return false; } public function can_delete() { return false; }Chatbot endpoint.classes/api/rest/v1/chatbot_rules.php:24
ChatbotPUT/PATCH/wp-json/almightysupport/v1/chatbot_rules<br>/wp-json/almightysupport/v1/chatbot_rules/{id}ALSP_REST_V1_Endpoint_Chatbot_Rules::edit()return false; } public function can_delete() { return false; }Chatbot endpoint.classes/api/rest/v1/chatbot_rules.php:50
Email Piping AdminDELETE/wp-json/almightysupport/v1/admin_ep_forwarder<br>/wp-json/almightysupport/v1/admin_ep_forwarder/{id}ALSP_REST_V1_Endpoint_Admin_EP_Forwarder::delete()Admin users bypass; otherwise see endpoint can_delete implementation or missing method.Email-piping admin endpoint.classes/email-piping/classes/api/rest/v1/admin_ep_forwarder.php:69
Email Piping AdminPOST/wp-json/almightysupport/v1/admin_ep_forwarder<br>/wp-json/almightysupport/v1/admin_ep_forwarder/{id}ALSP_REST_V1_Endpoint_Admin_EP_Forwarder::create()Admin users bypass; otherwise see endpoint can_create implementation or missing method.Email-piping admin endpoint.classes/email-piping/classes/api/rest/v1/admin_ep_forwarder.php:10
Email Piping AdminPOST/wp-json/almightysupport/v1/admin_ep_gmail_check<br>/wp-json/almightysupport/v1/admin_ep_gmail_check/{id}ALSP_REST_V1_Endpoint_Admin_EP_Gmail_Check::create()return $this->alsp_user->is_admin();Email-piping admin endpoint.classes/email-piping/classes/api/rest/v1/admin_ep_gmail_check.php:10
Email Piping AdminPOST/wp-json/almightysupport/v1/admin_ep_imap_check<br>/wp-json/almightysupport/v1/admin_ep_imap_check/{id}ALSP_REST_V1_Endpoint_Admin_EP_Imap_Check::create()return $this->alsp_user->is_admin();Email-piping admin endpoint.classes/email-piping/classes/api/rest/v1/admin_ep_imap_check.php:10
Email Piping AdminPOST/wp-json/almightysupport/v1/admin_ep_me_check<br>/wp-json/almightysupport/v1/admin_ep_me_check/{id}ALSP_REST_V1_Endpoint_Admin_EP_Me_Check::create()return $this->alsp_user->is_admin();Email-piping admin endpoint.classes/email-piping/classes/api/rest/v1/admin_ep_me_check.php:10
Email Piping AdminGET/wp-json/almightysupport/v1/admin_ep_spam_quarantine<br>/wp-json/almightysupport/v1/admin_ep_spam_quarantine/{id}ALSP_REST_V1_Endpoint_Admin_EP_Spam_Quarantine::read()return current_user_can('manage_options');Email-piping admin endpoint.classes/email-piping/classes/api/rest/v1/admin_ep_spam_quarantine.php:10
Email Piping AdminPOST/wp-json/almightysupport/v1/admin_ep_spam_quarantine<br>/wp-json/almightysupport/v1/admin_ep_spam_quarantine/{id}ALSP_REST_V1_Endpoint_Admin_EP_Spam_Quarantine::create()return current_user_can('manage_options');Email-piping admin endpoint.classes/email-piping/classes/api/rest/v1/admin_ep_spam_quarantine.php:63
ProGET/wp-json/almightysupport/v1/pro_admin_department_ep<br>/wp-json/almightysupport/v1/pro_admin_department_ep/{id}ALSP_REST_V1_Endpoint_Pro_Admin_Department_EP::read()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_admin_department_ep.php:10
ProPOST/wp-json/almightysupport/v1/pro_admin_department_ep_gmail_check<br>/wp-json/almightysupport/v1/pro_admin_department_ep_gmail_check/{id}ALSP_REST_V1_Endpoint_Pro_Admin_Department_EP_Gmail_Check::create()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_admin_department_ep_gmail_check.php:10
ProPOST/wp-json/almightysupport/v1/pro_admin_department_ep_imap_check<br>/wp-json/almightysupport/v1/pro_admin_department_ep_imap_check/{id}ALSP_REST_V1_Endpoint_Pro_Admin_Department_EP_Imap_Check::create()return $this->alsp_user->is_admin();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_admin_department_ep_imap_check.php:10
ProPOST/wp-json/almightysupport/v1/pro_admin_department_ep_me_check<br>/wp-json/almightysupport/v1/pro_admin_department_ep_me_check/{id}ALSP_REST_V1_Endpoint_Pro_Admin_Department_EP_Me_Check::create()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_admin_department_ep_me_check.php:10
ProGET/wp-json/almightysupport/v1/pro_app<br>/wp-json/almightysupport/v1/pro_app/{id}ALSP_REST_V1_Endpoint_Pro_App::read()return true;Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_app.php:10
ProGET/wp-json/almightysupport/v1/pro_app_auth<br>/wp-json/almightysupport/v1/pro_app_auth/{id}ALSP_REST_V1_Endpoint_Pro_App_Auth::read()return is_user_logged_in();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_app_auth.php:14
ProPOST/wp-json/almightysupport/v1/pro_app_auth<br>/wp-json/almightysupport/v1/pro_app_auth/{id}ALSP_REST_V1_Endpoint_Pro_App_Auth::create()return true;Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_app_auth.php:18
ProDELETE/wp-json/almightysupport/v1/pro_app_push_token<br>/wp-json/almightysupport/v1/pro_app_push_token/{id}ALSP_REST_V1_Endpoint_Pro_App_Push_Token::delete()return true;Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_app_push_token.php:77
ProGET/wp-json/almightysupport/v1/pro_app_push_token<br>/wp-json/almightysupport/v1/pro_app_push_token/{id}ALSP_REST_V1_Endpoint_Pro_App_Push_Token::read()return TRUE;Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_app_push_token.php:12
ProPOST/wp-json/almightysupport/v1/pro_app_push_token<br>/wp-json/almightysupport/v1/pro_app_push_token/{id}ALSP_REST_V1_Endpoint_Pro_App_Push_Token::create()return TRUE;Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_app_push_token.php:14
ProGET/wp-json/almightysupport/v1/pro_awecommerce<br>/wp-json/almightysupport/v1/pro_awecommerce/{id}ALSP_REST_V1_Endpoint_Pro_AweCommerce::read()return ALSP_User::get_instance()->is_staff();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_awecommerce.php:10
ProGET/wp-json/almightysupport/v1/pro_edd<br>/wp-json/almightysupport/v1/pro_edd/{id}ALSP_REST_V1_Endpoint_Pro_EDD::read()// The endpoint does its own granular checks as well $this->wpuser = wp_get_current_user(); return $this->wpuser->has_cap('alsp_view_edd');Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_edd.php:11
ProDELETE/wp-json/almightysupport/v1/pro_staff_notes<br>/wp-json/almightysupport/v1/pro_staff_notes/{id}ALSP_REST_V1_Endpoint_Pro_Staff_Notes::delete()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_staff_notes.php:104
ProGET/wp-json/almightysupport/v1/pro_staff_notes<br>/wp-json/almightysupport/v1/pro_staff_notes/{id}ALSP_REST_V1_Endpoint_Pro_Staff_Notes::read()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_staff_notes.php:34
ProPOST/wp-json/almightysupport/v1/pro_staff_notes<br>/wp-json/almightysupport/v1/pro_staff_notes/{id}ALSP_REST_V1_Endpoint_Pro_Staff_Notes::create()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_staff_notes.php:51
ProPUT/PATCH/wp-json/almightysupport/v1/pro_staff_notes<br>/wp-json/almightysupport/v1/pro_staff_notes/{id}ALSP_REST_V1_Endpoint_Pro_Staff_Notes::edit()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_staff_notes.php:73
ProGET/wp-json/almightysupport/v1/pro_suggestions<br>/wp-json/almightysupport/v1/pro_suggestions/{id}ALSP_REST_V1_Endpoint_Pro_Suggestions::read()return TRUE;Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_suggestions.php:16
ProGET/wp-json/almightysupport/v1/pro_ticket_attachments<br>/wp-json/almightysupport/v1/pro_ticket_attachments/{id}ALSP_REST_V1_Endpoint_Pro_Ticket_Attachments::read()$can_access = FALSE; // Allow ticket attachment for non-loggedin. $this->wpuser = wp_get_current_user(); if (!$this->wpuser->ID) { $can_access = TRUE;Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_ticket_attachments.php:10
ProPOST/wp-json/almightysupport/v1/pro_ticket_attachments<br>/wp-json/almightysupport/v1/pro_ticket_attachments/{id}ALSP_REST_V1_Endpoint_Pro_Ticket_Attachments::create()return $this->can_read();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_ticket_attachments.php:29
ProPUT/PATCH/wp-json/almightysupport/v1/pro_ticket_private_notes<br>/wp-json/almightysupport/v1/pro_ticket_private_notes/{id}ALSP_REST_V1_Endpoint_Pro_Ticket_Private_Notes::edit()$this->wpuser = wp_get_current_user(); return $this->wpuser->has_cap('alsp_edit_private_notes');Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_ticket_private_notes.php:10
ProDELETE/wp-json/almightysupport/v1/pro_ticket_watcher<br>/wp-json/almightysupport/v1/pro_ticket_watcher/{id}ALSP_REST_V1_Endpoint_Pro_Ticket_Watcher::delete()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_ticket_watcher.php:87
ProGET/wp-json/almightysupport/v1/pro_ticket_watcher<br>/wp-json/almightysupport/v1/pro_ticket_watcher/{id}ALSP_REST_V1_Endpoint_Pro_Ticket_Watcher::read()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_ticket_watcher.php:11
ProPOST/wp-json/almightysupport/v1/pro_ticket_watcher<br>/wp-json/almightysupport/v1/pro_ticket_watcher/{id}ALSP_REST_V1_Endpoint_Pro_Ticket_Watcher::create()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Pro endpoint for app, integrations, attachments, watchers, private notes, or suggestions.classes/api/rest/v1/pro_ticket_watcher.php:39
SupportGET/wp-json/almightysupport/v1/admin<br>/wp-json/almightysupport/v1/admin/{id}ALSP_REST_V1_Endpoint_Admin::read()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Support workflow endpoint.classes/api/rest/v1/admin.php:6
SupportPUT/PATCH/wp-json/almightysupport/v1/admin<br>/wp-json/almightysupport/v1/admin/{id}ALSP_REST_V1_Endpoint_Admin::edit()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_admin();Support workflow endpoint.classes/api/rest/v1/admin.php:16
SupportGET/wp-json/almightysupport/v1/agents<br>/wp-json/almightysupport/v1/agents/{id}ALSP_REST_V1_Endpoint_Agents::read()return true;Support workflow endpoint.classes/api/rest/v1/agents.php:11
SupportGET/wp-json/almightysupport/v1/awedesk_client_log<br>/wp-json/almightysupport/v1/awedesk_client_log/{id}ALSP_REST_V1_Endpoint_Awedesk_Client_Log::read()return TRUE;Support workflow endpoint.classes/api/rest/v1/awedesk_client_log.php:10
SupportGET/wp-json/almightysupport/v1/departments<br>/wp-json/almightysupport/v1/departments/{id}ALSP_REST_V1_Endpoint_Departments::read()return get_current_user_id();Support workflow endpoint.classes/api/rest/v1/departments.php:11
SupportGET/wp-json/almightysupport/v1/labels<br>/wp-json/almightysupport/v1/labels/{id}ALSP_REST_V1_Endpoint_Labels::read()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Support workflow endpoint.classes/api/rest/v1/labels.php:11
SupportGET/wp-json/almightysupport/v1/labels_assignments<br>/wp-json/almightysupport/v1/labels_assignments/{id}ALSP_REST_V1_Endpoint_Labels_Assignments::read()return ALSP_User::get_instance()->is_staff();Support workflow endpoint.classes/api/rest/v1/labels_assignments.php:21
SupportPUT/PATCH/wp-json/almightysupport/v1/labels_assignments<br>/wp-json/almightysupport/v1/labels_assignments/{id}ALSP_REST_V1_Endpoint_Labels_Assignments::edit()return ALSP_User::get_instance()->is_staff();Support workflow endpoint.classes/api/rest/v1/labels_assignments.php:36
SupportGET/wp-json/almightysupport/v1/predefined_replies<br>/wp-json/almightysupport/v1/predefined_replies/{id}ALSP_REST_V1_Endpoint_Predefined_Replies::read()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Support workflow endpoint.classes/api/rest/v1/predefined_replies.php:10
SupportGET/wp-json/almightysupport/v1/preferences<br>/wp-json/almightysupport/v1/preferences/{id}ALSP_REST_V1_Endpoint_Preferences::read()return get_current_user_id() > 0;Support workflow endpoint.classes/api/rest/v1/preferences.php:14
SupportPUT/PATCH/wp-json/almightysupport/v1/preferences<br>/wp-json/almightysupport/v1/preferences/{id}ALSP_REST_V1_Endpoint_Preferences::edit()return get_current_user_id() > 0;Support workflow endpoint.classes/api/rest/v1/preferences.php:39
SupportPUT/PATCH/wp-json/almightysupport/v1/privacy_requests<br>/wp-json/almightysupport/v1/privacy_requests/{id}ALSP_REST_V1_Endpoint_Privacy_Requests::edit()return get_current_user_id() > 0;Support workflow endpoint.classes/api/rest/v1/privacy_requests.php:11
SupportDELETE/wp-json/almightysupport/v1/recent_tickets<br>/wp-json/almightysupport/v1/recent_tickets/{id}ALSP_REST_V1_Endpoint_Recent_Tickets::delete()return TRUE;Support workflow endpoint.classes/api/rest/v1/recent_tickets.php:9
SupportGET/wp-json/almightysupport/v1/sidebar_widgets<br>/wp-json/almightysupport/v1/sidebar_widgets/{id}ALSP_REST_V1_Endpoint_Sidebar_Widgets::read()return get_current_user_id() > 0;Support workflow endpoint.classes/api/rest/v1/sidebar_widgets.php:5
SupportPOST/wp-json/almightysupport/v1/sidebar_widgets<br>/wp-json/almightysupport/v1/sidebar_widgets/{id}ALSP_REST_V1_Endpoint_Sidebar_Widgets::create()return get_current_user_id() > 0;Support workflow endpoint.classes/api/rest/v1/sidebar_widgets.php:15
SupportGET/wp-json/almightysupport/v1/statuses<br>/wp-json/almightysupport/v1/statuses/{id}ALSP_REST_V1_Endpoint_Statuses::read()return true;Support workflow endpoint.classes/api/rest/v1/statuses.php:11
SupportGET/wp-json/almightysupport/v1/users<br>/wp-json/almightysupport/v1/users/{id}ALSP_REST_V1_Endpoint_Users::read()return current_user_can('administrator') \\ALSP_User::get_instance()->is_staff();Support workflow endpoint.classes/api/rest/v1/users.php:10
TicketsPOST/wp-json/almightysupport/v1/ticket_assign<br>/wp-json/almightysupport/v1/ticket_assign/{id}ALSP_REST_V1_Endpoint_Ticket_Assign::create()$this->wpuser = wp_get_current_user(); return $this->wpuser->has_cap('alsp_assign_ticket');Ticket workflow endpoint.classes/api/rest/v1/ticket_assign.php:10
TicketsGET/wp-json/almightysupport/v1/ticket_author<br>/wp-json/almightysupport/v1/ticket_author/{id}ALSP_REST_V1_Endpoint_Ticket_Author::read()return get_current_user_id() > 0;Ticket workflow endpoint.classes/api/rest/v1/ticket_author.php:11
TicketsPOST/wp-json/almightysupport/v1/ticket_closed<br>/wp-json/almightysupport/v1/ticket_closed/{id}ALSP_REST_V1_Endpoint_Ticket_Closed::create()$this->wpuser = wp_get_current_user(); return $this->wpuser->has_cap('alsp_close_ticket');Ticket workflow endpoint.classes/api/rest/v1/ticket_closed.php:10
TicketsGET/wp-json/almightysupport/v1/ticket_filter<br>/wp-json/almightysupport/v1/ticket_filter/{id}ALSP_REST_V1_Endpoint_Ticket_Filter::read()return get_current_user_id() > 0;Ticket workflow endpoint.classes/api/rest/v1/ticket_filter.php:11
TicketsDELETE/wp-json/almightysupport/v1/ticket_lock<br>/wp-json/almightysupport/v1/ticket_lock/{id}ALSP_REST_V1_Endpoint_Ticket_Lock::delete()$this->wpuser = wp_get_current_user(); return $this->wpuser->has_cap('alsp_lock_ticket');Ticket workflow endpoint.classes/api/rest/v1/ticket_lock.php:71
TicketsGET/wp-json/almightysupport/v1/ticket_lock<br>/wp-json/almightysupport/v1/ticket_lock/{id}ALSP_REST_V1_Endpoint_Ticket_Lock::read()$this->wpuser = wp_get_current_user(); return $this->wpuser->has_cap('alsp_lock_ticket');Ticket workflow endpoint.classes/api/rest/v1/ticket_lock.php:11
TicketsPOST/wp-json/almightysupport/v1/ticket_lock<br>/wp-json/almightysupport/v1/ticket_lock/{id}ALSP_REST_V1_Endpoint_Ticket_Lock::create()$this->wpuser = wp_get_current_user(); return $this->wpuser->has_cap('alsp_lock_ticket');Ticket workflow endpoint.classes/api/rest/v1/ticket_lock.php:31
TicketsGET/wp-json/almightysupport/v1/ticket_messages<br>/wp-json/almightysupport/v1/ticket_messages/{id}ALSP_REST_V1_Endpoint_Ticket_Messages::read()$this->wpuser = wp_get_current_user(); $this->alsp_user = ALSP_User::get_instance(); return $this->wpuser->has_cap('alsp_view_ticket');Ticket workflow endpoint.classes/api/rest/v1/ticket_messages.php:11
TicketsPOST/wp-json/almightysupport/v1/ticket_messages<br>/wp-json/almightysupport/v1/ticket_messages/{id}ALSP_REST_V1_Endpoint_Ticket_Messages::create()$this->wpuser = wp_get_current_user(); $this->alsp_user = ALSP_User::get_instance(); return $this->wpuser->has_cap('alsp_reply_ticket');Ticket workflow endpoint.classes/api/rest/v1/ticket_messages.php:40
TicketsPOST/wp-json/almightysupport/v1/ticket_reopen<br>/wp-json/almightysupport/v1/ticket_reopen/{id}ALSP_REST_V1_Endpoint_Ticket_Reopen::create()$this->wpuser = wp_get_current_user(); return $this->wpuser->has_cap('alsp_reopen_ticket');Ticket workflow endpoint.classes/api/rest/v1/ticket_reopen.php:10
TicketsDELETE/wp-json/almightysupport/v1/tickets<br>/wp-json/almightysupport/v1/tickets/{id}ALSP_REST_V1_Endpoint_Tickets::delete()$this->alsp_user = ALSP_User::get_instance(); return $this->alsp_user->is_staff();Ticket workflow endpoint.classes/api/rest/v1/tickets.php:459
TicketsGET/wp-json/almightysupport/v1/tickets<br>/wp-json/almightysupport/v1/tickets/{id}ALSP_REST_V1_Endpoint_Tickets::read()$can_access = FALSE; //@TODO: somehow like $this->request not always return a valid value, // since the WP REST API expected to run twice [https://github.com/WP-API/WP-API/issues/2Ticket workflow endpoint.classes/api/rest/v1/tickets.php:9
TicketsPOST/wp-json/almightysupport/v1/tickets<br>/wp-json/almightysupport/v1/tickets/{id}ALSP_REST_V1_Endpoint_Tickets::create()$can_access = FALSE; // Allow ticket submission for non-loggedin. $this->wpuser = wp_get_current_user(); if (!$this->wpuser->ID) { $can_access = TRUE;Ticket workflow endpoint.classes/api/rest/v1/tickets.php:24
TicketsPUT/PATCH/wp-json/almightysupport/v1/tickets<br>/wp-json/almightysupport/v1/tickets/{id}ALSP_REST_V1_Endpoint_Tickets::edit()$can_access = FALSE; $this->wpuser = wp_get_current_user(); $this->alsp_user = ALSP_User::get_instance(); // Allow ticket submission for non-loggedin. if (!$this->wpuser->ID) { $caTicket workflow endpoint.classes/api/rest/v1/tickets.php:239
TicketsPOST/wp-json/almightysupport/v1/tickets_bulk<br>/wp-json/almightysupport/v1/tickets_bulk/{id}ALSP_REST_V1_Endpoint_Tickets_Bulk::create()return ALSP_User::get_instance()->is_staff();Ticket workflow endpoint.classes/api/rest/v1/tickets_bulk.php:10
TicketsGET/wp-json/almightysupport/v1/tickets_count<br>/wp-json/almightysupport/v1/tickets_count/{id}ALSP_REST_V1_Endpoint_Tickets_Count::read()$can_access = FALSE; //@TODO: somehow like $this->request not always return a valid value, // since the WP REST API expected to run twice [https://github.com/WP-API/WP-API/issues/2Ticket workflow endpoint.classes/api/rest/v1/tickets_count.php:9

Browser Request Example

wp.apiRequest({
  path: '/almightysupport/v1/tickets',
  method: 'GET'
}).then((response) => {
  console.log(response);
});

Custom REST Endpoint Example

File structure:

my-awedesk-extension/
  my-awedesk-extension.php
  rest/v1/account_health.php
// my-awedesk-extension.php
add_filter('alsp_rest_paths', function (array $paths): array {
    $paths[] = plugin_dir_path(__FILE__) . 'rest/v1';
    return $paths;
});
// rest/v1/account_health.php
class ALSP_REST_V1_Endpoint_Account_Health extends ALSP_REST_V1_Endpoint {
    public function read(WP_REST_Request $request) {
        $user_id = absint($request->get_param('user_id'));
        return rest_ensure_response([
            'user_id' => $user_id,
            'health' => my_company_account_health($user_id),
        ]);
    }

    public function can_read() {
        $user = ALSP_User::get_instance();
        return $user->is_staff();
    }
}

REST Security Pattern

class ALSP_REST_V1_Endpoint_My_Admin_Action extends ALSP_REST_V1_Endpoint {
    public function create(WP_REST_Request $request) {
        $ticket_id = absint($request->get_param('ticket_id'));
        if (!$ticket_id) {
            return new WP_Error('my_missing_ticket', 'Missing ticket ID.', ['status' => 400]);
        }

        return rest_ensure_response(['ok' => true]);
    }

    public function can_create() {
        return ALSP_User::get_instance()->is_manager();
    }
}