Sample repo: freshworks-developers/interface-method-samples
Features demonstrated: client.interface.trigger() across Freshdesk, Freshservice, CTI, and CRM placeholders
TechServe Global is a B2B SaaS company using Freshdesk for customer support, Freshservice for internal IT, and Freshworks CRM for sales follow-ups. Agents and admins need to drive the product UI programmatically — open tickets, populate dropdowns, show toasts, control CTI widgets, and launch CRM records — without custom browser extensions.
Scenario: Tier-2 agents must restrict priority choices and clear stale status values before escalation.
Use Case: From the ticket sidebar Ticket fields tab, setOptions narrows the priority dropdown and clearValue resets status. showToast confirms the action without blocking the page.
Scenario: Incident commanders jump between related tickets and requester profiles during outages.
Use Case: The Navigation tab calls openTicket, openRequester, and click with IDs from the input row — no manual URL construction.
Scenario: Consultants must start and stop ticket timers consistently across Freshdesk and Freshservice.
Use Case: The Timer tab triggers start, stop, and toggle on id=timer from the sidebar playground.
Scenario: HR tickets should not allow agents to change the outbound mailbox on replies.
Use Case: On Freshservice, open Reply then use Reply editor → disableElement on the reply window from field.
Scenario: Contact-center leads hide the dialer during training and surface missed-call counts on the CTI widget.
Use Case: In cti_global_sidebar, the CTI tab calls show/hide on softphone and missedCall.
Scenario: Support qualifies upsell opportunities and opens CRM records without switching tabs manually.
Use Case: From CRM entity menus, the CRM tab opens add-record windows (open lead/contact/account/deal/calllog) or navigates to detail pages (show with record ID).
Scenario: Agents need inline forms that do not dim the ticket — with optional doc links and tinted backgrounds.
Use Case: The Modals tab demonstrates showModal with nobackdrop, linkText + linkUrl, and bgColor.
| Surface | File |
|---|---|
| Ticket sidebar (Freshdesk / Freshservice) | app/views/playground.html + playground.js |
| CTI global sidebar (Freshdesk) | Same view on common.cti_global_sidebar |
| CRM entity menus | Same view on deal / contact modules |
fdk run