A ticket form is a set of predefined ticket fields for a specific type of support request. When you have multiple ticket forms available to end users, you can customize the instructions that direct end users to select the appropriate support request form or provide a link to the appropriate ticket form directly in your help center.
Customizing the presentation of ticket forms to end users
Without customization, when multiple ticket forms exist, users are presented with a drop-down list of forms to select from when submitting a request.
- You can change the order of the forms in the drop-down list.
- You can link directly to a ticket form in your help center to present a group of end users with a specific request form instead of asking them to select the appropriate form. If you require sign-in to submit tickets, the user will have to sign in to see the form.
- If you want to streamline the whole process for your users and agents, you can create automatically filled fields of the form for them. See Creating pre-filled ticket forms.
Changing the instructions for selecting a ticket form
Instead of using the standard instructions, you can customize the instructions provided to end users when submitting a request to help them select the appropriate ticket form.
- In Admin Center, click
Objects and rules in the sidebar, then select Tickets > Forms.
- Enter text in the End user instructions field.
You can use dynamic content in your end-user instructions. For more information see Creating dynamic content.
- Click Save.
Linking directly to a ticket form
In some cases, you can skip the step of users selecting their ticket form and provide them a direct link to a specific form.
- Get the URL for the ticket form you want to link to by doing one of the
following:
- Go to your support request form on your site, select a form from the drop-down list, then copy the URL.
- Go to the Ticket Forms admin page and click the ticket form to open it for
editing. The edit page for the ticket form opens. Look at the URL in the your
internet browser. The number at the end of the URL is the ID of the ticket
form.
Replace the ticket form ID (8613) in the example URL below with your ticket form ID:
https://mycompany.zendesk.com/hc/en-us/requests/new?ticket_form_id=8613.
- Present the link to customers so that they can open a specific request form in your
help center.Note: If you're on a Support Enterprise plan, you must also have at least a Guide Lite Legacy plan to be able to route users to the form.
If you require sign-in to submit tickets, the user will have to sign in to see the form.
73 comments
Dainne Kiara Lucena-Laxamana
Hi Hannah Lucid!
![](/hc/user_images/01HJT5C3DP9C46X8GATPJ729EY.png)
If you have multiple ticket forms for your (classic) Web Widget, your widget should load all the available ticket forms. So from there, your users should be able to pick a form which would look like this:
This is from my test account. More information can be found here for your reference. In terms of searching for a form like in the Help Center's search bar, that's not possible yet natively. However, you can create an article page where you can embed the Contact Form or add a hyperlink directly routing your users to that form.
Hope this helps!
0
Ben Fulton
I haven't seen this question answered yet. We have a ticket submission form that we would like to offer to *all* of our internal users, including some users who are agents in our Zendesk instance. However, the issue we are running into is that any Zendesk agent who follows a ticket form URL is taken to their agent homepage, not to the submission form. What can we do to override this behavior for at least some of our Zendesk agents?
0
Hannah Lucid
Ben Fulton there is a setting in the Guide Admin that allows Agents to manage requests from the Help Center:
Hopefully this helps!
0
Andres
How do I collect the user-specific info from a form (name, address, phone number) - in the form builder I just see fields related to the ticket.
0
Gab
I'm afraid there's no specific export option that would allow you to export user-specific data from a ticket form. You can, however, export user data depending on the type of account you have, there are different options to perform a full-ticket data export.
comment_events
in side-load.For more information on exporting your data, see the article: Exporting data to a JSON, CSV, or XML file.
0
Andres
Thanks @... - I don't want to export anything. I want to make this form - https://help.totalsolarmaintenance.com/hc/en-us/requests/new?ticket_form_id=23559900962324 - so that I can collect the user information (name, email, phone, etc) when I build the form it looks like all the fields relate to the ticket not the user.
0
Abdelhameed Khaled
Is it possible to send specific form URL with out enabling the drop down arrow meaning that the customer won't be able to choose different form ?
0
Gab
I'm afraid there is no export option available that is specifically catered to collecting user information from a specific form. That would be a great suggestion!
Alternatively, you can use the JSON export option that will still show the ticket form used in a ticket using the attribute ticket_form_id.
I encourage you to create a new post in the General Product Feedback topic in our community to engage with other users who have similar needs and discuss possible workarounds. Conversations with a high level of engagement ultimately get flagged for product managers to review when they go through roadmap planning.
Specific examples, details about impact, and how you currently handle things are helpful for our product teams to understand the full scope of the need when working on solutions. We truly value customer feedback and your voice and votes in the forums help influence future Zendesk functionality.
0
Andres
@... I appreciate you taking the time but I don't think I'm presenting my question correctly - I DO NOT WANT TO EXPERT ANYTHING - I just want a way to have a form on my help center to collect information.
The problem is that when building the form I only see options to gather information about the TICKET, not the user, so I don't understand how to get user-specific information (name, address, email, phone etc) into Zendesk (just from help center form to Zendesk, no exporting anything)
How can I collect information about the user that is about the user, not the specific ticket?
Thanks!
0
Gab
I'd like to take this into a ticket to discuss this further. I've opened a ticket on your behalf. Please check your email.
Thank you.
0
Josh Beckett
Is there anyway to dynamically have only one form out of my seven forms available to a customer. Right now I am trying to hide the other seven forms, but hiding is not working. It only disables them.
I followed this documentation here, but it is not working entirely:
https://support.zendesk.com/hc/en-us/articles/4408886229146-Workflow-Hide-ticket-forms-based-on-a-user-s-organization
Some snippets from the code:
<!-- Include jQuery -->
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<div class="container-divider"></div>
<div class="container">
<h3>
Create a support ticket
<span class="follow-up-hint">
{{follow_up}}
</span>
</h3>
<div id="user-tier" style="margin-bottom: 20px;">
Loading user tier...
</div>
<div style="width: 100%;
padding: 30px;
background: #f7f7f9;
border-radius: 6px;
box-shadow: 0 1px 3px rgba(55, 60, 80, 0.05);">
{{request_form wysiwyg=true}}
</div>
</div>
<script type="text/javascript">
let avnzd = {};
(function () {
const req = new XMLHttpRequest();
req.addEventListener("load", (e) => {
try {
if (req.status === 200 && req.response) {
let res = JSON.parse(req.response);
avnzd.tier = res.user.phone;
avnzd.rdr = !window.location.search.match('rdr=no');
// Display the user's tier in the HTML element
document.getElementById('user-tier').innerText = `User Tier: ${avnzd.tier}`;
// Now that avnzd.tier is available, handle the form removal based on the tier
let formIDs = [];
switch (avnzd.tier.toLowerCase()) {
case 'basic':
formIDs = [REDACTED];
break;
case 'priority':
formIDs = [REDACTED];
break;
case 'business':
formIDs = [REDACTED];
break;
case 'enterprise':
formIDs = [REDACTED];
break;
case 'essential':
formIDs = [REDACTED];
break;
case 'advanced':
formIDs = [REDACTED];
break;
case 'premium':
formIDs = [REDACTED];
break;
default:
console.log("Tier not recognized");
formIDs = [];
}
// Iterate over the array of form IDs and remove them from dropdowns
formIDs.forEach(function(formID) {
// Remove the form option with the specified value
$('#request_issue_type_select option[value="' + formID + '"]').remove();
// Remove the form ID from the nesty-panel when it's dynamically inserted
$('.nesty-panel').on('DOMNodeInserted', function(e) {
$(this).children('ul').children().remove('#' + formID);
});
});
}
} catch (error) {
console.error('Error parsing response:', error);
document.getElementById('user-tier').innerText = 'Failed to load user tier';
}
});
req.open("GET", "https://" + window.location.host + "/api/v2/users/me", true);
req.send();
})();
</script>
0
Travis Short
Maybe I'm in the wrong place but I'll ask here anyways.
I want to be able to be able to drop a form to a user who I have a thread with in support.
How can I make that happen?
So Joe sends in an email, which I receive in support. Then I want them to fill in a repair request form which I've made. I want to send that through our support thread and when he submits the form I can move that data wherever I need. I would love to push it to get tags and add to a google sheet I have for repair.
0
Michelle Nebel
Is there a way to shorten the URL of a ticket form? Such as shortening it into something that is easy to verbalize to someone or easy to copy down. I handle a lot of phone call inquiries and would love to be able to tell someone a short form link over the phone!
0