DEV Community

Cover image for Bridging the Gap: Integrating Microsoft Copilot with Zendesk Using Sunshine Conversations
Hari Krishnan
Hari Krishnan

Posted on

Bridging the Gap: Integrating Microsoft Copilot with Zendesk Using Sunshine Conversations

Introduction

In today's digital landscape, seamless integration between various tools is essential for efficient operations and enhanced user experience. Recently, we embarked on a journey to integrate Microsoft Copilot with Zendesk, despite the lack of direct connectivity. This blog post details our collaborative effort with Zendesk and Microsoft, leveraging Sunshine Conversations to achieve this integration.

The Challenge

Microsoft Copilot is a powerful tool for automating tasks and enhancing productivity. However, it does not have native connectivity to Zendesk, a popular customer service platform. This posed a significant challenge, as no existing solutions or community efforts had addressed this gap.

The Solution

To overcome this challenge, we worked closely with both Zendesk and Microsoft. Our solution involved leveraging Sunshine Conversations, a powerful API for integrating various messaging channels. The process was as follows:

Sequence of API Calls: When an agent interaction is initiated, we trigger a series of API calls – createUser, createConversation, and postMessage. These calls create a ticket in Zendesk and pass all basic information, including the conversation transcript.

**Webhook Creation: **We developed a webhook using JavaScript/TypeScript and deployed it on a serverless solution. This webhook is responsible for sending and receiving messages between Copilot and Zendesk via Sunshine Conversations.

Event Handling: The webhook listens for the ticket:closed event from Zendesk. Upon receiving this event, the webhook ends the conversation on our side, ensuring a seamless closure.

Step-by-Step Implementation

Step 1: Sequence of API Calls

When a user requests to talk to an agent, the following API calls are made:

createUser: This API call creates a new user in the Sunshine Conversations platform.
createConversation: This call initiates a new conversation for the user.
postMessage: Finally, this API sends the initial message from Copilot to the newly created conversation.

This sequence ensures that all relevant information is captured and a ticket is created in Zendesk.

Step 2: Webhook for Message Handling

We developed a webhook that handles communication between Copilot and Zendesk. The webhook performs the following tasks:

Sends messages from Copilot to Zendesk via Sunshine Conversations.
Receives responses from Zendesk and relays them back to Copilot.
The webhook is deployed on a serverless platform, ensuring scalability and reliability.

Step 3: Event Handling

The webhook listens for the ticket:closed event from Zendesk. When this event is detected, the webhook performs necessary actions to end the conversation on our side, maintaining consistency and ensuring a smooth user experience.

Conclusion

By collaborating with Zendesk and Microsoft, and leveraging Sunshine Conversations, we successfully bridged the gap between Microsoft Copilot and Zendesk. This integration enables seamless communication and enhances the overall efficiency of our customer service operations.

Our journey demonstrates the power of collaborative efforts and innovative solutions in overcoming technical challenges. We hope this blog post provides valuable insights and inspiration for your own integration projects.

Top comments (0)