The Custom Menu Details
Revision as of 13:32, 16 July 2026 by Ashley DeBon (talk | contribs) (Created page with "== Retrieve Custom Menu Details == === Base URL === https://apimobile.callproof.com === Endpoint === /api/custom-menu/contact/{contact_id}/menu/{menu_id} === Purpose === Re...")
Contents
Retrieve Custom Menu Details
Base URL
https://apimobile.callproof.com
Endpoint
/api/custom-menu/contact/{contact_id}/menu/{menu_id}
Purpose
Returns the custom action menu available for a specific contact. The menu includes standard actions and event forms configured for the user’s company and menu list. Each menu item indicates whether it is valid for the contact’s account type, and may include a redirection URL or event form reference so the mobile app can present the correct next steps for that contact.
HTTP Method
GET
Headers
| Header | Required | Description |
|---|---|---|
| Authorization | Yes | Bearer access token |
Security
- Yes – Requires Bearer Token authentication.
Parameters
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| contact_id | string | Yes | Unique identifier of the contact for which the custom menu is requested |
| menu_id | string | Yes | Menu context identifier that controls which action items are included. When set to 1, edit-task actions are included. When set to 2, edit-appointment actions are included. Other values exclude those edit-specific actions |
Query Parameters
None.
Request Body
None.
Successful Response (200)
Indicates that the custom menu for the specified contact was retrieved successfully.
| Field | Type | Description |
|---|---|---|
| clientStatusCode | integer | Status indicator for the client (for example, 200) |
| user_id | integer | Identifier of the authenticated user |
| company_id | integer | Identifier of the authenticated user’s company |
| data | object | Custom menu payload |
| data.list_name | string | Name of the user’s custom menu list, when a non-default list is assigned; otherwise empty |
| data.dynamic_contact_menu | array | Ordered list of menu actions available for the contact |
| data.dynamic_contact_menu[].title | string | Display title of the menu action |
| data.dynamic_contact_menu[].regular_id | integer | Action type identifier used by the client to determine how the menu item behaves |
| data.dynamic_contact_menu[].account_id | string | Account number associated with the contact for certain redirected menu actions; otherwise "0" |
| data.dynamic_contact_menu[].event_form_id | integer | Related event form identifier, or 0 if not applicable |
| data.dynamic_contact_menu[].treat_as | integer | Event form “treat as” classification, or 0 if not applicable |
| data.dynamic_contact_menu[].redirection_url | string | External or internal redirection URL for the menu action, when configured |
| data.dynamic_contact_menu[].valid_id | integer | Whether the menu item is valid for this contact’s account type (1 = valid, 0 = not valid) |
| data.dynamic_contact_menu[].error_message | string | Explanation shown when the menu item is not valid for the contact’s account type; empty when valid |
| uri | string | Requested resource URI |
Error Responses
| Status Code | Meaning |
|---|---|
| 400 | Bad Request – the custom menu could not be retrieved (for example, contact not found) |
| 401 | Unauthorized – missing, invalid, or expired Bearer token |
- 400 – The specified contact was not found, or another error occurred while retrieving the custom menu.
- 401 – Authentication failed or the access token is missing/expired.