Presenting ticket forms to end users (Professional add-on and Enterprise)

Return to top
Have more questions? Submit a request

90 Comments

  • Albert Aguilar

    Hi Jessie,

     

    I think the answer I want to know is we need to activate the Help Center to be able to present

    the ticket form to the end-users? Is that correct? This sample instance I gave you, the Help Centre is not activated and I cannot find a way to present the ticket form or the link to the end-users.  

    0
  • Nicole S.
    Zendesk Community Team

    Hey Albert - 

    Removing your duplicate comment to keep the stream organized. 

    To answer your question, yes, your Help Center must be active in order for your ticket form to be live. 

    0
  • Mark Johnson

    Is it possible to restrict visibility of a specific Ticket Form to a particular group of end-users. (Using something like user tags, assigned organization or segments?)

    So only a certain group of End-Users can see/select it - not all? 

    0
  • Nicole S.
    Zendesk Community Team

    Hi Mark -

    Your ability to restrict visibility of ticket forms is going to be dependent on your plan type and what add-ons you have enabled. But yes, there are ways to determine which form should be visible to which users based on things like organization.

    Here's some info on that:
    Hide ticket forms based on user's organization

    Creating ticket forms to support multiple request types

    Check those out and let us know if that helps or if you have additional questions.

    0
  • Krista Shaver

    Are ticket forms available for end-users that send a ticket via support@example.com? I'm wanting end-users to give us pertinent information from the start instead of having to go back and forth with them to get it, but most of our users just send in an email to the support desk.

    0
  • Brett Bowser
    Zendesk Community Team

    Hi Krista,

    Ticket forms are not available through the email channel unfortunately. That being said, you can create a trigger that sends an automatic reply to the sender requesting additional information. Or you can have the trigger redirect the user to your Submit A Request form in the Help Center. If you're unfamiliar with Triggers you can take a look at our Trigger Resources which I've linked for you.

    Cheers!

    0
  • Nicole Smith

    Hello!

    Is there any way to fetch the form's ID from the form object (without checking the URL) while you are on the contact page? From digging around, all I could find was `form_id="new_request"`, which isn't quite what I was hoping for.

    Also, can anyone confirm that all forms use the `new_requests_page.hbs` template? 

    0
  • Madison Davis
    Zendesk Community Team

    Hey Nicole! First, I can confirm that all ticket forms abide by the new_requests_page.hbs template. As for the first question, I'm hoping you can provide a little more context around what you'd like to do. I'd imagine you're looking to automate something based on form ID - but would love to hear your end goal to advise further! 

    0
  • Ann Gilligan

    I just wanted to check if it's possible to add an announcement box over the "Attachments" at the bottom of the form. I know announcements can be added at the beginning of the form in the script.js file but I specifically wanted to add text over the "Attachments" section.

    Is this at all possible?

    Thanks

    0
  • Nicole Smith

    Hi Madison,

    Thanks for the follow-up. I am indeed trying to figure out how to conditionally change the styling/messaging and automate a few things (eg. a help topic selection, etc) on the `new_requests_page.hbs` template, depending upon the form's id.

    I'm looking at having a ton of code in that single template. Other than the `page_path` helper, is there any other way to divide reusable code up into pieces that are fetchable throughout the help center for a signed-out user?

    0
  • Madison Davis
    Zendesk Community Team

    @Ann, does this look like what you're hoping to achieve? https://support.zendesk.com/hc/en-us/articles/115005956707-Can-I-add-a-disclaimer-to-a-specific-ticket-form-in-Help-Center- 

     

    @Nicole, I'm poking around to see if any other community members have ideas about ways to dynamically gather the info you're looking for! 

    0
  • Dan Ross
    Community Moderator

    Hey Nicole,

    So far, the only method I'm aware of to detect the selected form is the ID in the URL.

    You could check that easily enough with something like this on your requests page. 

    <script>
    var ticketForm = location.search.split('ticket_form_id=')[1];

    if(ticketForm == "YOUR_ID") {
    //Do the things, like setting value of a certain field
    };

    </script>

    I don't know if this would work, but you could try entering code in Dynamic Content blocks, which can be used as placeholders on pages. I know this works for HTML, but am not sure about inline JS.

    We're doing this on some of our pages, to conditionally display an informational modal upon selection of the form. So far, it's worked out for us.

    0
  • Dan Ross
    Community Moderator

    @Ann,

    Sorry I missed your question. My answer to Nicole is actually relevant in this case, the work we had to do for our Guide needed to modify the Attachments section. The annoying part was that there is no ID for the Attachments part of the code, only a label, which wasn't easy to address with CSS or jQuery, so we had to assign an ID to that element first. 

    <script>
    var ticketForm = location.search.split('ticket_form_id=')[1];

    if(ticketForm == "YOUR_ID") {

     $('label:contains("Attachments")').attr('id', 'attachments'); //add ID to attachments label so it's easier to address
    $('#attachments').append(`{{dc 'message_for_customers'}}`); //add notice above upload zone};

    </script>
    0
  • Ann Gilligan

    Thanks for the info @Dan Ross. Does this text need to be anywhere in particular in the .js file? I tried adding the following but I'm not seeing my test:

    <script>
    var ticketForm = location.search.split('ticket_form_id=2227')[1];

    if(ticketForm == "DO NOT USE") {

    $('label:contains("Attachments")').attr('id', 'attachments'); //add ID to attachments label so it's easier to address
    $('#attachments').append(`{{dc 'This is a test'}}`); //add notice above upload zone};

    </script>

    I don't know if this is because I'm doing something wrong or if it's part of a bigger issue, for some reaon my announcement boxes no longer display on forms. The code looks ok, I don't know if something was accidentally remove from the .js file or not, maybe I would be better to log a ticket with you guys.

    0
  • Dan Ross
    Community Moderator

    Hey Ann,

    If you put that in the scripts.js file, it'll probably throw a fit because of the <script> tags.

    Apologies my post wasn't clear, I inserted this directly into the new_request_form.hbs template, as the script is only relevant to the content there.

     

    Try this in the new request template:

    <script>
    var ticketForm = location.search.split('ticket_form_id=')[1]; //the [1] will end up populating with the actual ID of the current form you've selected, you don't need to enter it here

    //if the form ID  equals the form you want special things on (2227 in this example, then do the things)

    if(ticketForm == 2227") { 

    $('label:contains("Attachments")').attr('id', 'attachments'); //add ID to attachments label so it's easier to address
    $('#attachments').append(`{{dc 'This is a test'}}`); //add notice above upload zone};

    </script>
    0
  • Ann Gilligan

    Hey @Dan Ross, thanks for coming back to me. So I have a file called "new_request_page.hbs", I tried adding the code above to that file but still no luck, I'm afraid. 

    0
  • Dan Ross
    Community Moderator

    Hey Ann,

     

    Can you check your browser console for errors please? Also, are you certain the ticket form ID is just 2227? Looking at my IDs here and I'm seeing very large numbers, so 2227 seems very low indeed. You can get this by opening the form in the Admin->Ticket Forms->YourTicketForm and looking at the URL, the ID is after the /edit/ part. If the form you want to do this for is *not* 2227 then you'll need to update this line:

    if(ticketForm == 2227") { 

    with the full ID.

    Also, I try would try replacing 

    $('#attachments').append(`{{dc 'This is a test'}}`); //add notice above upload zone};

    with

    $('#attachments').append("this is a test"); //add notice above upload zone};

    The first example assumes the existence of Dynamic content being created so you can display the message in multiple languages. If that's not made, then it would error out. Sorry, that was another assumption on my part. 

    Hope this helps.

    0
  • Ann Gilligan

    Hey @Dan Ross

    OK, I have it now : )

    I had the code after the {{chat}} instead of before, also the code was missing opening quotes on the Your_ID and there was a missing closing bracket.

    All good now, thanks for your help!

    0
  • Ann Gilligan

    @Dan Ross, sorry I have one more question in relation to this. Is it possible to format the text that appears there? If I wanted to make it a different colour to make it stand out? I tried a few different things but nothing seemed to work, I know this file is a template file so wasn't sure if it was possible to include code for formatting text here.

    Thanks!

    0
  • Dan Ross
    Community Moderator

    Hey Ann, no worries.

    Earlier in the code, we had set an ID on the elements for the attachments section, since Zendesk doesn't provide one. You can use that ID in your style.css file to play with how it looks. Here's an example that should work. 

     

    #attachments{
        color: red;
        font-weight: bold;
    }
    1
  • Amanda Hoffman

    I don't think anyone has answered Mark's question here about restricting visibility of a specific Ticket Form to a particular group of end-users. We're looking for a similar solution. I'm aware that you can hide ticket forms based on a user's organization like in this article: https://support.zendesk.com/hc/en-us/articles/204579603?_ga=2.109194501.1803660818.1554833453-1307395242.1515519447 but our scenario is a bit different. We currently are using Zendesk as both a client facing tool as well as internally. I'd like to be able to do the reverse. ie restrict forms (14 of them) to anyone that's NOT in a particular organization. The reason for this is that we now have 3,500 client users that are not in an org and we cannot lump them all into one given the huge number of different domains that exist amongst them. We currently have our employees in an organization, but we need our employee forms to be hidden from the 3,500 users that are not in that group. Does anyone have any coding suggestions to help with this? 

    0
  • Madison Davis
    Zendesk Community Team

    Hi Amanda! It looks like another user added a comment on the post you included a link to with instructions for how to instead restrict the form based on user tags rather than a user's organization. Does that look like it might fit your needs?

    0
  • Amanda Hoffman

    Super helpful, Madison. I did browse through these comments the other day but I must have missed that one or didn't think it was relevant at the time. I have zero coding experience but have reached out to someone on my team who may be able to help implement that solution. 

    0
  • Denielle Barcelona

    Hi there,

    Is there a way to require customers to answer ticket fields when they write in to our support email address? Right now we have a 50/50 mix of things coming in via ticket forms in the Help Center, and those who write in directly to our support email address.

    What we're looking for is a way to require the customers to fill out specific ticket fields from within the autoresponder. Then based on the response, can update the existing ticket that was created in the first place. We don't want to direct them to a ticket form, because it will essentially create a duplicate ticket, correct? I know that we can put placeholders to make ticket field values visible, but is there an equivalent way for this so that the actual ticket field (dropdown, etc.) is visible to the user?

    Is there a workaround for this? I appreciate any help!

    0
  • Brett Bowser
    Zendesk Community Team

    Hey Denielle,

    Outside of creating triggers that will look for certain keywords in the customer's response and then setting the ticket values based on those keywords, I'm afraid there wouldn't be a way to require them to fill out specific fields.

    We typically recommend setting up the trigger that directs the user to the ticket form and then immediately solving the ticket out at the same time.

    If you need some assistance setting up this trigger let me know :)

    0
  • Bryan Smith

    I have the enterprise package and am unable to see the customer facing tickets as an end user profile

     

    it gives me page not found 

     

    any ideas?

    0
  • Brett Bowser
    Zendesk Community Team

    Hey Bryan,

    Can you confirm that you've activated your Help Center for end-users from the Guide Admin settings? I've seen an error page occur when accessing the My Activities page while the Help Center is inactive.

    Let me know!

    1
  • Bryan Smith

    Brett Bowser that was the issue thank you!

    0
  • Brett Bowser
    Zendesk Community Team

    Happy to help Bryan!

    0
  • Jennifer Neer

    Is it possible to add formatting to the end-user instructions? We would like to provide some instructions for the three forms we have, ideally just having each one on a line.  When I enter the information like that in the support admin as instructed above, all the text is still in one paragraph in the help center on the ticket forms.  I tried to add HTML to the text, but that doesn't seem to work either.  I can't find any information about this in the help center, has anyone been able to do this?

    0

Please sign in to leave a comment.

Powered by Zendesk