Ask questions, share tips, and discuss best practices with community peers.
Recently active
Hello, it appears that NotebookLM (by Google) may encounter challenges when attempting to gather data from a Zendesk Help Center, even if the Help Center is configured for public access. In a few words, it says that my HC URL is not valid, that is NOT true. Same result by providing the zendesk native domain (not host-mapped)… It looks like Zendesk is blocking any web scraping action from an external bot… Anyone has experienced the same issue? Just to be clear: I don't want to upload the Help Articles Manually to NotebookLM (or any other LLM engine). Thanks!
I am trying to pull which user segment the current logged in end user belongs to. I am currently using the "GET /api/v2/users/me" to retrieve the current users ID and using that ID to try to pull the user segments. (Code below, it's working for admins but not for end users, I also masked the email and tokenID for this forum purposes) $.getJSON('/api/v2/users/me', function(data) { console.log("got data", data); getUserSegment(data.user.id);});function getUserSegment(userID){ // fetch UserSegment API. $.ajax ({ url: '/api/v2/help_center/users/'+userID+'/user_segments.json', headers: { "Authorization": "Basic email-address/token:tokenID" }, beforeSend: function (xhr){xhr.setRequestHeader('Authorization', "Basic "+ btoa("email-address/token:tokenID")); }, secure: true, type: 'GET', contentType: "application/json", dateType: 'json', su
Since deprecation of web widget (classic) and not available for new Zendesk customers like myself, we are not able to simply embed form managed in Zendesk portal into our website pages e.g. contact us or support ticket creation from a web form. We have to custom code our own form, fields and values then submit to Zendesk API. This is doubling up work and slowing down the process of form, field and values changes by non-technical staff and requires developers to update continuously. Is there a method to simply load the form (including fields, values and dependencies) already existing in Zendesk so we're just loading it outside of the Zendesk chat bubble. We just want it as a basic web page form that is dynamically integrated like the old embed web widget (classic) feature.
I'm using AWS Cognito as the OAuth provider for a Zendesk support app. The OAuth flow completes successfully, and the ZIS token is correctly issued. However, after authentication, the browser shows:"OAuth authentication has been completed successfully. You can close the current browser window and continue with the app installation page." At this point, the window doesn't close, and the app setup page doesn't proceed.Inspecting the HTML/JS, I see that window.opener is null, so window.opener.postMessage() fails, and the parent window isn't notified that authentication completed. This issue does not occur with Azure AD, where everything works as expected. It seems specific to AWS Cognito. Has anyone else experienced this behavior? Is there something Cognito is doing (e.g., setting Cross-Origin-Opener-Policy or using a redirect that breaks opener references) that could cause this?Looking for guidance on how to ensure the OAuth window can communicate back to the parent page c
Hi Zendesk team, We’re a Zendesk tech alliance partner working on tools that interact with Help Center articles. With the introduction of article multiplacement (ability to publish the same article in multiple sections), we’ve encountered a technical issue when retrieving article data through the API. Currently, when an article is placed in multiple sections, the API returns separate entries with different artidle IDs for each placement — even though they all point to the same content. As a result, there’s no straightforward way to tell that these are actually the same article. For our use case, this leads to duplicated content in the data layer, making it difficult to manage and accurately report on articles. We’ve searched through the API response but haven’t found any attribute or reference that links these placements together as instances of the same article. Are we missing something? It would be incredibly helpful if there were a way to identify that article ID
We utilize a messaging AI Agent with business hours as 7AM-4PM. Within the AI's configured “Answers” we have a condition at the top to flow to a set of answers depending on what time the chat was initiated. During open, most chats end up being routed to a ticket. I'm running into an issue where chats are being initiated at 3:59PM for example but the user doesn't make it to the step in the flow to create a ticket until 4:02PM at which point our support staff is gone for the day. Support has confirmed that the AI Agent doesn't have a way to natively be aware of the business hours status changing mid-chat. If the Answers flow builder allowed me to do something like “route to step *" or “Restart Answers”, I'd be able to insert a business hours check before our ticket creation step and route these back to the beginning to be handled by our main business hours condition. Does anyone have a suggestion for working around this issue?
I built a simple report to track the number of times each month that 5 specific customers submit Zendesk tickets. I believe that if one of these customers was to submit zero tickets, then this customer would not show on the report. How can I design my report to ensure that if, for example, Customer E was to submit zero tickets in a month they would not be excluded from this report and would instead listed with a value of zero?
Hello Community, I'm facing a strange issue with a custom script located in my script.js file in the Zendesk Guide theme.When I load an article page, my script initializes and works perfectly. However, if I stay on that same page for a while, the script's functionality suddenly stops working. This can happen when navigating to another article and back again but not always the case. It appears to happen after a short period of time, or possibly after some other element loads onto the page. It feels as if the event listeners my script created have been detached or that the DOM elements they were attached to have been altered. I'm using the browser's Sources panel to verify whether the script.js file is actually included when the page loads. My question is:What could cause a script's functionality to "disappear" like this on a single page? Could it be another component loading asynchronously (like a widget, cookie banner, or the comments section) and altering the DOM? Is th
Good day! Has anyone with a non-zendesk knowlegde base portal implemented the AI Agent for Messaging bot on their product / platform? I am curious to find out:CONSIDERATIONS: Your organization has a web based product + a 3rd party Help / Knowledge Base platform + the bot being installed on the product. Your observations leading to the Go-Live Has volume increased after implementing the bot on your product / platform? Are users bypassing the knowledge base to create tickets with your support team? Have you seen this as a temporary phase and does the volume continue to rise (OR) has this normalised to pre-bot period?
Hi! In the Help Center, is there a way to move the comment section in the article page to the sidebar, so the viewers don't have to scroll down to leave a comment?
Hello,I'm hoping someone can help walk me through if the following scenario for an integration is possible. Essentially, I'm wanting to create an integration (I believe a webhook) with Discord, where if I add the tag “Escalate” and put the ticket on hold, it will get sent to a specific Discord Server and channel and create a Discord Thread with at least the most recent public reply. I want people to be able to discuss freely in the thread, but have the option to post a private note in the Zendesk ticket by using a command, something like "!reply" in Discord. If the above scenario is possible, I would have one other similar scenario I’d like to explore involving the same process but also incorporating a Zendesk custom field to determine which Discord channel to send the ticket info to, instead of a tag.
You can add sorting to your HTML tables in guide using the Jquery TableSorter plug-in. Although this script includes many options and customizations, only basic sorting is described below for simplicity. I used the download and documentation provided on the following site: Sorting Tables with Tablesorter. There are many other resources as well. Review the documentation and download the tablesorter-master.zip. Now you can modify your Help Center. First, edit your theme and add the following plug-in assets: jquery.tablesorter.js theme.blue.css (or whatever theme you choose) To learn how to add assets, see Using your own theme assets. Next you need to instruct Zendesk to use the tablesorter plug-in for all of your tables. Edit your theme. Open the template document_head.hbs. Under your stylesheet links, add the following lines, and save. <script src="{{asset 'jquery.tablesorter.js'}}"></script><link rel="stylesheet
We're currently using On-Hold Time as our main metric when it comes to measuring how fast our internal teams are responding. Currently, the On-Hold Time metric counts the cumulative time a ticket has spent in the On-Hold status. We want to obtain the average difference in the intervals of the responses from our internal teams (through agent comments (either public or private)). How can we do this? Thank you for your support!
I've searched for this and found some similar threads, but I can't quite find what I'm looking for. We have a submit a request form for customers who can't find the answer to their questions. At the moment it's just a form of fields without any introduction text - which would be very handy to set the scene of what our support function can/can't help with. Is there a way of adding some wording/links below the "Submit a request" header, and before the form fields? Thanks
Can Guide articles be marked as "favorites"? Some of my agents would like quick access to the articles they use most.
for a url ${baseUrl}/users/${user.id}.json where baseUrl = ‘https://{subdomain}.zendesk.com/api/v1’I was able to run PUT request on Postman to edit custom field in the data with ease.The authentication method I used was [Basic Auth]username: {email}/tokenpassword: API token I generated And yet, for a bulk update over the json data, (user list) using either of the script I am getting 401 error1. pm.sendRequest({ url: `${baseUrl}/users.json`, method: 'GET', header: { 'Content-Type': 'application/json', 'Authorization': pm.environment.get('auth') }2. ----the rest same---- header: { 'Content-Type': 'application/json', 'Authorization': pm.request.headers.get('Authorization') }Does anyone have advise? Thank you
Hi! I need to know how to hide a form from the 'submit a request' page drop down option, we don't want customers able to select it from the list (we are currently doing a trial by sending them a hyperlink to it through email contact). Customers are not required to sign in to submit a form so we can't use the option of hiding dependant on organisation (saw an article recommending this). Does anyone know how I can do this please? Newbie coder here so not sure how to go around doing this!
I hope I chose the correct topic: Regarding creating Tickets from email. I am using two tags in my emails to Zendesk #assignee and #status The #status tag is working well. I read on the support site that the #assignee should assign the ticket to proper owner. (it is always myself and i am listed as a technician) The email is spelled correctly. I would like to figure out why it's not putting me (the sender) as the Assignee.
I've been asked to create an escalation workflow to send a critical alert notification to our IT Team. I will be looking for certain keywords like “Network error”, “not working”, etc. I've got that part. I need to identify these issue types repeated during a certain time period. If these conditions are met, I would execute a notification sending a message to our IT Team. For example if we receive 10 network errors within an hour, I would send the notification to IT. My challenge is how to keep track of these occurrences with specific thresholds and believe that I would execute an automation since it is time-based. Any recommendations on how to have a counter to see if these conditions exists, if so take the appropriate action. If not, reset the counter back to zero. I've been analyzing on the best practice how to approach this workflow. Any help would be greatly appreciated. Thank you!
We are looking at our reopen % in hopes of decreasing it. To do this, we want to look at the individual agents and their own reopen %. In the tickets dataset, it attributes the reopened ticket to the person currently assigned. However, if the ticket reopened and another agent picked it up, this doesn't allow us to accurately see who solved the ticket first (and in theory, caused the reopen). Is there a more accurate way to look at reopened tickets based on who was assigned when it was reopened?
I thought this one would be super obvious, but I can't seem to find an appropriate trigger from the drop down. Use case: whenever an existing ticket is updated with a new message from the requester (not from any of the agents) it triggers a Slack message into a channel to notify an agent that they should check the new response in Zendesk. What I've tried so far: Assignee | is | [agent's name]Ticket status | Changed to | OpenUpdated via | is | Web formUpdated via | is | Email But this does not work. Also, it doesn't matter if the customer updates the ticket via email or any other method, I just want the update itself to be the trigger.Any ideas?
Hello Zendesk Community, I have been trying to get a metric that will show me how many Open tickets we had at the start of the day (8am) and how many were Open at the end of the day (11pm). Is this possible with the ‘Support - Tickets’ or ‘Support - Updates history’ datasets? Thank you!
Hello everyone, I'm new on Zendesk and I want to "format" the description shown to end users. This is what I have : This is the format I want : I don't know if it's clear but I want a line break between each parts. Tell me if you need more informations and have a good week-end Regards, Loïc Bouvet
Hello, we create users through an api call when they sign up for our service, but when a user wants to visit the portal they have to use the “forgot password” to setup a password, I would like to send them a 1 time password to initially log into the portal, then they have to reset their password when they log in, is that possible using the set password api? or does it just allow them to continue to use the password?
Hi! In legacy chat mobile SDKs we had a logic that checks if there is an active chat with the user (in order not to block the app by timeout, what we usually do). We used the below code: chat.providers()?.chatProvider()?.chatState?.isChatting == true How should it look like in Messaging? We can not find relevant documentation
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.