|

|  How to Integrate Microsoft Azure Cognitive Services with Zendesk

How to Integrate Microsoft Azure Cognitive Services with Zendesk

January 24, 2025

Learn to seamlessly integrate Microsoft Azure Cognitive Services with Zendesk to enhance your customer support experience effortlessly.

How to Connect Microsoft Azure Cognitive Services to Zendesk: a Simple Guide

 

Set Up Your Microsoft Azure Account

 

  • Sign up for an Azure account if you don't have one already. You can start with a free trial.
  •  

  • Create a new Cognitive Services resource. Navigate to the Azure portal and search for "Cognitive Services" in the marketplace, then follow the steps to create a new resource.
  •  

  • After creating your service, navigate to the resource's page to retrieve your API key and endpoint URL. You'll need these for Zendesk integration.

 

Set Up Your Zendesk Account

 

  • Log in to your Zendesk account. If you don’t have one, sign up for a free trial.
  •  

  • Ensure you have administrative access to modify settings and integrations.

 

Identify Integration Use Cases

 

  • Determine the specific Azure Cognitive Services you want to integrate, such as language understanding, sentiment analysis, or speech-to-text.
  •  

  • Identify the Zendesk events or processes you want to enhance with these services, such as ticket creation, ticket updating, or automating response suggestions.

 

Set Up a Middleware to Facilitate Integration

 

  • Choose a programming language or framework that you're comfortable with. Technologies like Python, Node.js, or .NET are popular choices for building middleware.
  •  

  • Set up your development environment by installing necessary libraries and SDKs for accessing both Zendesk and Microsoft Azure APIs.
  •  

  • Below is a sample code snippet in Python to set up a simple server using Flask to receive data from Zendesk and send it to Azure Cognitive Services:

 

from flask import Flask, request, jsonify
import requests

app = Flask(__name__)

# Replace with your Azure endpoint and API key
azure_endpoint = "https://your-endpoint.cognitiveservices.azure.com/text/analytics/v3.1/sentiment"
headers = {"Ocp-Apim-Subscription-Key": "your_api_key"}

@app.route('/analyze', methods=['POST'])
def analyze_text():
    data = request.json
    documents = {"documents": [{"id": "1", "language": "en", "text": data["text"]}]}
    response = requests.post(azure_endpoint, headers=headers, json=documents)
    return jsonify(response.json())

if __name__ == '__main__':
    app.run(debug=True, port=5000)

 

Configure Zendesk to Communicate with Middleware

 

  • Access the Zendesk Admin Center, and set up a webhook or an HTTP target. This will allow Zendesk to send ticket data to your middleware.
  •  

  • Specify the target URL of your middleware, e.g., `http://:5000/analyze`, and configure it to trigger whenever a new ticket is created or updated.

 

Integrate Middleware with Azure Cognitive Services

 

  • Utilize Azure SDKs or REST APIs in your middleware to send requests to the desired Azure Cognitive Service, using the API key and endpoint URL you obtained earlier.
  •  

  • Process the responses received from Azure to derive actionable insights, such as analyzing sentiment scores or entity recognition results.

 

Implement Actions Based on Azure Cognitive Insights

 

  • Develop logic in your middleware to perform actions based on the insights received from Azure. For example, route tickets differently based on sentiment analysis or apply specific tags based on language understanding results.
  •  

  • Utilize Zendesk's API to update tickets with these insights directly from your middleware.

 

Test the Integration Thoroughly

 

  • Create test tickets in Zendesk and monitor the interactions between Zendesk, your middleware, and Azure Cognitive Services.
  •  

  • Ensure that data flows correctly and that actions like tagging, updating ticket fields, or routing are executed as expected.

 

Monitor and Maintain the Integration

 

  • Set up logging and monitoring in your middleware to capture any errors or failures in the integration process.
  •  

  • Regularly update your middleware and libraries to incorporate any improvements or security patches from both Zendesk and Azure.

 

Omi Necklace

The #1 Open Source AI necklace: Experiment with how you capture and manage conversations.

Build and test with your own Omi Dev Kit 2.

How to Use Microsoft Azure Cognitive Services with Zendesk: Usecases

 

Enhancing Customer Support with Microsoft Azure Cognitive Services and Zendesk

 

  • Integrate Microsoft Azure's Speech Recognition service with Zendesk to automatically transcribe and analyze customer support calls. Transcriptions can be stored as Zendesk tickets for further processing and analysis.
  •  

  • Utilize Azure's Text Analytics to perform sentiment analysis on incoming Zendesk tickets, calls, or chat messages. This can help prioritize tickets based on customer sentiment, allowing support teams to address urgent issues promptly.
  •  

  • Leverage Azure's Translator service to enable real-time translation of customer inquiries in various languages within Zendesk, expanding the accessibility of support services to a global audience.
  •  

  • Implement Azure's Facial Recognition service in support kiosks or applications to automatically identify and authenticate users, pulling up their Zendesk support history for a more personalized support experience.
  •  

  • Employ Azure's Custom Vision in analyzing customer-submitted images within Zendesk tickets to identify issues or product defects, streamlining the support process by providing accurate identification and routing of tickets.

 


# Example: Sentiment analysis on Zendesk ticket using Azure Text Analytics

from azure.ai.textanalytics import TextAnalyticsClient
from azure.core.credentials import AzureKeyCredential

def authenticate_client():
    ta_credential = AzureKeyCredential("<Your-Key>")
    text_analytics_client = TextAnalyticsClient(
        endpoint="<Your-Endpoint>", credential=ta_credential)
    return text_analytics_client

client = authenticate_client()

def sentiment_analysis_example(client, text):
    documents = [text]
    response = client.analyze_sentiment(documents=documents)[0]
    return {
        "Sentiment": response.sentiment,
        "ConfidenceScores": response.confidence_scores
    }

ticket_content = "The product was great but I had issues with setup."
sentiment_result = sentiment_analysis_example(client, ticket_content)
print(sentiment_result)

 

 

Automating Support Interactions with Azure Cognitive Services and Zendesk

 

  • Integrate Azure's Language Understanding (LUIS) with Zendesk to automatically categorize incoming support tickets based on the user's intent, streamlining ticket routing to the appropriate support teams.
  •  

  • Utilize Azure Bot Services alongside Zendesk to deploy chatbots that can handle common customer inquiries, reducing the workload on human agents and providing quick resolutions to customer issues.
  •  

  • Use Azure's Form Recognizer to process and digitize forms or documents submitted through Zendesk tickets, enabling faster data extraction and issue resolution.
  •  

  • Deploy Azure's Anomaly Detector to monitor support metrics and identify unusual patterns in Zendesk ticket data such as sudden spikes in issue volume, allowing preemptive actions to be taken by the support team.
  •  

  • Implement Azure's Video Analyzer to process and extract insights from video submissions in Zendesk tickets, providing additional context and enhancing the support team's ability to resolve complex issues.

 


# Example: Categorizing Zendesk tickets using Azure Language Understanding

from azure.cognitiveservices.language.luis.runtime import LUISRuntimeClient
from msrest.authentication import CognitiveServicesCredentials

def authenticate_client():
    credentials = CognitiveServicesCredentials("<Your-Key>")
    client = LUISRuntimeClient("<Your-Endpoint>", credentials)
    return client

client = authenticate_client()

def predict_intent(client, text):
    prediction_request = {"query": text}
    response = client.prediction.get_slot_prediction("<App-ID>", "Production", prediction_request)
    top_intent = response.prediction.top_intent
    return top_intent

ticket_content = "I need help with my account settings."
intent_result = predict_intent(client, ticket_content)
print(f"The top intent for this ticket is: {intent_result}")

 

Omi App

Fully Open-Source AI wearable app: build and use reminders, meeting summaries, task suggestions and more. All in one simple app.

Github →

Order Friend Dev Kit

Open-source AI wearable
Build using the power of recall

Order Now

Troubleshooting Microsoft Azure Cognitive Services and Zendesk Integration

How to connect Azure Cognitive Services to Zendesk for sentiment analysis?

 

Setup Azure API

 

  • Create an Azure account and subscribe to Cognitive Services. Obtain an API key from the Azure portal.
  •  

  • Create a Text Analytics resource for sentiment analysis. Note the endpoint URL and key.

 

Zendesk Trigger Configuration

 

  • In Zendesk, navigate to Admin > Triggers. Create a new trigger using ticket updates as the condition.
  •  

  • Configure the action to call an external HTTP target (your Azure service). Define with the URL obtained previously.

 

Integration Code Example

 

import requests
def analyze_sentiment(text):
  url = "https://<your_azure_endpoint>/text/analytics/v3.0/sentiment"
  headers = {"Ocp-Apim-Subscription-Key": "<your_key>", "Content-Type": "application/json"}
  data = {"documents": [{"id": "1", "language": "en", "text": text}]}
  return requests.post(url, headers=headers, json=data).json()

 

Process Zendesk Data

 

  • Modify your Zendesk webhook to send ticket data to your integration function.
  •  

  • Process and analyze each ticket's text for sentiment using Azure Cognitive Services.

 

Why is my Azure chatbot not responding in Zendesk?

 

Check API Key and Credentials

 

  • Ensure that the Azure chatbot API key and credentials are correctly set up in the Zendesk configuration. Mismatches or changes in these credentials can cause communication failures.

 

Test API Connectivity

 

  • Verify that Zendesk can connect to the Azure service. Use tools like Postman to test API endpoints and ensure they're responding correctly outside of Zendesk.

 

curl -X POST "https://your-azure-service.com/api/messages" -H "Authorization: Bearer <your_token>"

 

Inspect Integration Settings

 

  • Double-check that the integration settings in Zendesk for the Azure chatbot are properly configured. This includes webhook URLs, request/response formats, and content types.

 

Review Logs and Troubleshoot

 

  • Look at both Azure and Zendesk logs for any error messages or warning signs that could indicate communication problems.

 

Verify Bot Activity

 

  • Ensure the bot is operational and not paused or disabled in the Azure portal.

 

How to set up language translation in Zendesk using Azure Cognitive Services?

 

Set Up Azure Cognitive Services

 

  • Sign in to the Azure portal and navigate to Azure Cognitive Services to create a Translator resource.
  • Obtain the Subscription Key and Endpoint from the Keys and Endpoint section.

 

Configure Zendesk

 

  • Log in to your Zendesk account and go to your admin center.
  • Navigate to SettingsExtensionsTargets and add an HTTP target.

 

Create Translation Script

 

import requests

def translate_text(text, api_key, endpoint, target_lang):
    url = f"{endpoint}/translate?api-version=3.0&to={target_lang}"
    headers = {"Ocp-Apim-Subscription-Key": api_key, "Content-type": "application/json"}
    body = [{"text": text}]
    response = requests.post(url, headers=headers, json=body)
    return response.json()[0]["translations"][0]["text"]

 

Integrate with Zendesk

 

  • Use Zendesk triggers to automate translation. Configure the trigger to call your target with placeholders for ticket information and decoded translations.
  • Validate translations by verifying the response from Azure's API in Zendesk, ensuring language accuracy.

 

Don’t let questions slow you down—experience true productivity with the AI Necklace. With Omi, you can have the power of AI wherever you go—summarize ideas, get reminders, and prep for your next project effortlessly.

Order Now

Join the #1 open-source AI wearable community

Build faster and better with 3900+ community members on Omi Discord

Participate in hackathons to expand the Omi platform and win prizes

Participate in hackathons to expand the Omi platform and win prizes

Get cash bounties, free Omi devices and priority access by taking part in community activities

Join our Discord → 

OMI NECKLACE + OMI APP
First & only open-source AI wearable platform

a person looks into the phone with an app for AI Necklace, looking at notes Friend AI Wearable recorded a person looks into the phone with an app for AI Necklace, looking at notes Friend AI Wearable recorded
a person looks into the phone with an app for AI Necklace, looking at notes Friend AI Wearable recorded a person looks into the phone with an app for AI Necklace, looking at notes Friend AI Wearable recorded
online meeting with AI Wearable, showcasing how it works and helps online meeting with AI Wearable, showcasing how it works and helps
online meeting with AI Wearable, showcasing how it works and helps online meeting with AI Wearable, showcasing how it works and helps
App for Friend AI Necklace, showing notes and topics AI Necklace recorded App for Friend AI Necklace, showing notes and topics AI Necklace recorded
App for Friend AI Necklace, showing notes and topics AI Necklace recorded App for Friend AI Necklace, showing notes and topics AI Necklace recorded

OMI NECKLACE: DEV KIT
Order your Omi Dev Kit 2 now and create your use cases

Omi Dev Kit 2

Endless customization

OMI DEV KIT 2

$69.99

Make your life more fun with your AI wearable clone. It gives you thoughts, personalized feedback and becomes your second brain to discuss your thoughts and feelings. Available on iOS and Android.

Your Omi will seamlessly sync with your existing omi persona, giving you a full clone of yourself – with limitless potential for use cases:

  • Real-time conversation transcription and processing;
  • Develop your own use cases for fun and productivity;
  • Hundreds of community apps to make use of your Omi Persona and conversations.

Learn more

Omi Dev Kit 2: build at a new level

Key Specs

OMI DEV KIT

OMI DEV KIT 2

Microphone

Yes

Yes

Battery

4 days (250mAH)

2 days (250mAH)

On-board memory (works without phone)

No

Yes

Speaker

No

Yes

Programmable button

No

Yes

Estimated Delivery 

-

1 week

What people say

“Helping with MEMORY,

COMMUNICATION

with business/life partner,

capturing IDEAS, and solving for

a hearing CHALLENGE."

Nathan Sudds

“I wish I had this device

last summer

to RECORD

A CONVERSATION."

Chris Y.

“Fixed my ADHD and

helped me stay

organized."

David Nigh

OMI NECKLACE: DEV KIT
Take your brain to the next level

LATEST NEWS
Follow and be first in the know

Latest news
FOLLOW AND BE FIRST IN THE KNOW

thought to action

team@basedhardware.com

company

careers

events

invest

privacy

products

omi

omi dev kit

personas

resources

apps

bounties

affiliate

docs

github

help