Ask questions, share tips, and discuss best practices with community peers.
Recently active
Observation: We have not identified a way to configure maximum deadlines for actions such as an agent disputing a review or for a review to be marked as "seen" by the agent. Analysis: We actively searched for settings that would allow us to establish time-based rules for the QA process stages. The documentation explains how to perform disputes and how review time is measured, but it does not offer options to define and automate deadline controls for these actions. The absence of this functionality makes it difficult to manage internal Service Level Agreements (SLAs) for our QA process. Request: Is it possible to configure deadlines for the review, feedback, and dispute stages in Zendesk QA? If not, is there a recommended workaround for managing these timelines?
Observation: We were unable to configure a custom, multi-level hierarchical structure, such as "Agent > Leader > Manager," using distinct roles with escalating permissions. Analysis: The Zendesk QA documentation describes a set of predefined roles (Admin, Manager, Lead, Reviewer, and Agent) with specific permissions. Although the broader Zendesk platform allows for the creation of custom roles, we found no feature within the QA module that supports the creation of a custom hierarchy. The permission structure appears to be fixed, preventing us from replicating our team's organizational chart. Request: We would like to confirm if creating custom hierarchical levels, such as the "Agent > Leader > Manager" model, is not currently supported in Zendesk QA.
In the parent form, there should be an option to select the ‘respective group’ (which already exists) and a ‘Description section’ so that side conversations are created automatically instead of needing to raise them separately. This will save time and improve the ticketing system, allowing agents to process tickets more quickly.
Ask: What methods do you employ to improve email ticket triaging based on product (or other ticket properties) when using a shared email address that covers multiple multiple products? Context: Many of our customer still utilize email regularly to contact support. We mostly use separate brands and email addresses for each of our products. However, we have two product groups for which we did not want to require users to juggle multiple product-specific email addresses, so those groups use a shared email address for multiple products. We want to improve our ability to automate triaging of these email tickets by product. We currently employ a few very limited keyword based triggers and an entity detection field, but there is a lot of overlap in terminology between some of these products. Our other challenge is that our users and orgs are not currently clean enough to route based on a user or org field. I would love to hear about ways in which other teams may hav
The Problem We found ourselves breaching on SLA tickets in which we wouldn’t consider to be a true breach. For example, let’s consider the following scenario: Customer writes into Support Support confirms it’s a bug & escalates it to engineering Support lets the customer know we’ll be back in touch by EOD Friday with an update Customer responds and simply says “thank you,” triggering the Next Response SLA target Since the customer didn’t ask any additional questions and we’ve already communicated clear next steps, the customer isn’t actually expecting a response back from us immediately, yet the Next Response SLA Target is. We could send a public response back to the customer that says something similar to “Of course! We’ll be back in touch shortly.” But what happens when the customer responds back to that email with yet another “Thank you” message? All of a sudden, we feel caught in the middle of a “no, you hang up” scenario. The Goal We wanted a way to be able to
Description:We publish Zendesk Guide articles, then prepare draft updates ahead of coordinated product launches. Our product has in-app localized links, and we release all languages simultaneously, so we must localize these draft updates before launch.Currently, once an article is published, the API does not allow us to: Detect that unpublished changes exist Retrieve the draft body for localization/QA We’re forced to duplicate articles as a workaround, which risks broken links, wrong IDs, and launch errors.Expected: An API flag to indicate a draft exists (has_draft: true) Ability to retrieve draft content (title, body, metadata) via parameter or version selector (e.g., ?version=draft) No ID/URL change upon publish Impact: Delays localization, forcing English-only launches or post-launch fixes High risk of mismatched locales and broken in-product links Prevents synchronized multilingual releases This is critical for maintaining accuracy, consistency, and launch readiness across all loca
Hi all, Apologies if this needs to go into another community. I've created an app using the App Builder. The app essentially allows me to build a FlowChart for agents to follow and go through the chart using Yes / No answers. The chart will then provide a recommendation. The Flows I build save locally to my browser. So other agents can't view them. Is there a way I can save them so once built, all agents can view the flowcharts I've built? Also I can only get the app to show inside a Ticket > Apps side panel. How can I get the App to display in Support on the Main Left hand side bar?
Hello, is it possible to retrieve the email of the Facebook user, when creating a new ticket to transfer to an agent, to avoid creating a new user if it is already present in our zendesk database?
Hi, How can I verify my knowledgebase site with Google Search Console (formally Webmaster Tools)?
Hi! I am looking for a way to filter out internal end users from my organization in Google Analytics. Has anyone found a way to do this?
Hi, I am trying to solve an issue and I am not sure where to start. We sometimes have organizations that require special handling. We already display the customer Tier and support package in each ticket (as part of a churnzero app) but special handling are cases like: - An organization had many issues and support needs to be extra careful with them and talk to customer success first - The customer has a specific setup so when we help them to update to the latest version, support needs to review specific notes for this customer. -and, and and I created a field in the organization (customer requires special handling) and I was hoping we can find a way to display this field (which might have text and a URL in it) in each ticket so the support agent can easily see it. I am open to any other suggestion on how we let a support engineer know if they work on a ticket for an org that is requiring some different steps for them to follow or material to review first before they w
I'm implementing the feature "Enabling authenticated visitors for messaging with Zendesk SDKs". However, I'm encountering an issue where the Zendesk Messaging Widget displays the conversation history of the first authenticated user, even after logging in with a different user. The widget does not reset or reflect the new user's session correctly.
Hello, There is documentation on how access to knowledge base articles can be restricted per user, but how do these user permissions interact with the different AI features in Zendesk? For each AI feature (e.g. chatbot answers/article suggestion, procedures for auto assist):Are articles which the user has no access to downright ignored during processing?Or is there be instead room for information leaks (note that we count stating that an article exists as a potential information leak as well)? Moreover, what should we do about cases where AI actions should be informed/conditioned by knowledge base articles to which the requesting user has no access? Any recommendations?
I feel like I'm missing something really basic here. We have triggers set up to do some initial classification when a new ticket comes in. I don't see a way to add an initial outgoing message to the user at that stage. If I want new tickets that meet particular criteria to get a particular acknowledgement message, where can I manage that? I can send it as a macro but I have to do that manually. I'd like to automate it.
Our organization provides a SAAS platform for employers to provide benefits to their employees. We want to build out our knowledge base so we can leveraged AI Agents, Message (chat) bots, and other AI tools. We want to ensure that users outside of our platform cannot see these articles but we do not want to have the users take an additional step to log into Zendesk to see the articles. Additionally, we do not want any random person to be able to create a Zendesk Guide account to be able to view our articles that would be protected behind the login. How can we connect our own database to authenticate if a user is logged into our platform to both provide them access to the private knowledge base articles and not have them have to log into Zendesk on their end to view them. Additionally, we want to connect our user database to zendesk so we can auto-populate user profiles in Zendesk, can you provide the article for this?
Hi, I was wondering if it would be possible to configure messaging triggers based on which page the customer has started the conversation from using the widget. We are using the new widget. For example if someone was at our error page we would like the widget to provide a different first message(s). Or if someone was on our login page etc., We know proactive messaging can do this. However, we do not wish to use this feature. But if there is some way to use that functionality on normal messaging that would be great. Many thanks, Toby
Hello Zendesk Support Team, I am looking to create a script that retrieves all of my registered templates, along with the specific message that is sent to customers for each template in Relay. Could you please provide a detailed, step-by-step guide on how to accomplish this using the Zendesk API? Additionally, I would like to know if there is a single endpoint that returns all templates at once, or if there is a separate endpoint for fetching individual templates. Any best practices or documentation you can share would be greatly appreciated. Thank you in advance!
I'm trying to create a side conversation email with attachments from an earlier step. I've tried passing both tokens from uploads as well as audit.event.attachment.ids. In the documentation, JSON look like ""attachment_ids": ["s3-d2a3111e-26d9-4e1c-88b4-cf7c0649d81d"]. However I am unsure how or where to find that identifier: In the upload call, I get a token that looks like “9JKFuWB6keUmEciyMGqkcPGNe” In the ticket comment audit I get an integer that looks like "39944015826583" In an actual ticket, the file URL looks like “https://domain.zendesk.com/attachments/token/8f4pmH0EsE5utiGwwYlJ9rIlY/?name=file.txt” Also, based on the documentation, it looks like I would pass an array of strings. Is that correct?
We've recently rolling out omni-channel routing and agent states to our team and were excited to dig into the agent productivity metrics that come with this. However, we're hitting a wall with these metrics, as there is seemingly no way to combine ticket data with productivity metrics. For instance, we're able to report on Max and Min used capacity, but without knowing how many different tickets make up this capacity, the metric is useless. For instance, if we have two agents with a capacity of 3, and one is solving 3 per hour and one is solving 30 per hour (with new tickets being constantly assigned), they will both return the same max capacity of 3 for any one hour. In a perfect world, we'd love to see tickets solved per time in agent state. This would be hugely beneficial data for us to have and (in theory) is the relatively straightforward combination of two metrics and attributes that already exist within Zendesk. Also happy to hear if there is already a
Currently doing flow charts to re-do all of our company forms for Zendesk. One form is for product support. In some cases, the customer may use the form, or email in about multiple products. Often if the support request is different, the team will split the ticket for each product. But sometimes product A and product B from the same company can live on the same ticket. What is everyone else doing? I'm thinking of conditions that (if it works) the user or agent can fill in the first product, but then they have a box “need to add another product?” which then opens another product filed and so on. Is this the best way to do it? Or are there others? Open to ideas.
Hi, In Explore, you can add live data components to your dashboard. For example, solved tickets are shown in the last 30 minutes. Could this same time frame be applied to CREATED TICKETS, regardless of their status has been changed to: new, solved, pending, ...? Is there a plan to include the number of tickets in the live panels as almost immediate information? Thank you for your assistance. Best regards
Hi, I'm working on adding a new contact form to our help center and routing end users to specific ticket form based on where they clicked the submit a request link (thanks to help from Ifra Saqlain & the community!!). Now, I am hoping I can customize text above the request form based on the ticket form id (today we have one from with text above it without special logic). What I want now is: Have Ticket Form A show Text A above the form Have Ticket Form B to show Text B above the form Have Text C follow both Text A and Text B above the form. I've tried the code below but it's not working. Text A appears on both forms, and, it appears UNDER B. Does anyone know how to do this/what's up with my code? {{#each ticket_forms}}{{#is id 123}}<p>Text A</p>{{else}}<p>Text B</p>{{/is}}{{/each}}<p>Text C</p><br><div class="new-request-form">{{request_form}}</div>
When I bulk reply to tickets using a macro, the end result is that the formatting is removed from the text in each reply. This means that I need to manually copy in the dynamic content in order to bulk reply, which eats up time unnecessarily. Anyone else encountering this, and does anyone know if there is there something that I should be adding in the dynamic content or macro set up that would prevent this?
So I figured a way to add an external e-mail as a requester on using https://<mydomain>.zendesk.com/api/v2/tickets.json by using the "requester" attribute instead of "requester_id" on the body of the request (which I didn't see on the docs explicitly stated). But I would also like to add external e-mails CCed to the ticket when I create them. I was hoping the following would work but it doesn't. Help would be very much appreciated: { "ticket": { "subject": "Trying CCs, "comment": { "body": "Trying CCs..." }, "requester": "external@email.com", "email_cc": ["external@email2.com", "external@email3.com", "external@email4.com"] } }
Hi,Here is my ticket field{ ... "custom_field_options": [ { "id": 28680434333202, "name": "Category 1::Section::Article", "raw_name": "Category 1::Section::Article", "value": "category_1__section", "default": false }, { "id": 28680434333330, "name": "Category 2::Section::FAQ", "raw_name": "Category 2::Section::FAQ", "value": "category_2__section", "default": false } ] } and result from client.get('ticketFields:identifier.optionGroups') { "hasOptions": true, "isRequired": false, "isVisible": true, "label": "Broken zafClient optionGroups", "name": "custom_field_28680420306322", "requiredOnStatuses": [], "type": "tagger", "isEnabled": true, "options": [ { "value": "-", "isVisible": true, "isEnabled": true, "label": "-" }, { "value": "Section", "isVisible": true, "isEnabled": true, "label": "Category 1::Section" }, {
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.