You can set up a ticket form that has pre-filled values in specific fields (such as the Subject or Description fields). This can save time for your end users and get them closer to a resolution. It also benefits your support agents by ensuring they have accurate and specific input from customers.
For example, if an article in your help center explains how to troubleshoot a coffee maker, you can create a link at the end of that article that opens a ticket form pre-populated with the coffee maker model and issue. Users who click this link will have much less information to fill out when submitting their ticket.
This article includes the following sections:
Related articles:
Configuring a pre-filled ticket form
When you create pre-filled ticket forms, you add parameters for the fields that you want to pre-fill to the URL of the form. If you have multiple ticket forms, you’ll also include the specific ticket form ID in the URL.
To configure pre-filled fields in a form
- Copy the URL for the ticket form that end users see when they click
Submit a request and paste it into a text editor file. It should resemble this, where mycompany is your subdomain: https://mycompany.zendesk.com/hc/en-us/requests/new?Note: If you have host mapping, your URL will look different from the previous example (see Host mapping - changing the URL of your help center).
- (Multiple ticket forms only) In Admin Center, click Objects and rules in the sidebar, then select Tickets > Forms. Select the ticket form you want to pre-fill, then copy the form ID from the URL in Support and paste the ID to the end of the URL in your text editor.
-
In Admin Center, click
Objects and rules in the sidebar, then select Tickets >
Fields. Copy the field values you want to pre-fill and
paste them along with values to the end of the URL in your text
editor.
For system values, copy the title of the field (for example "Subject"). Use the following format to paste the title at the end of the URL that you are building, along with the value that you want to assign to the field:
&tf_{title}={value}
For custom values, copy the Field ID of the field (for example, “12345”). Use the following format to paste the Field ID at the end of the URL that you are building, along with the value that you want to assign to the field:
&tf_[fieldID}={value}
- Continue adding fields and values to the end of the URL in your text editor
as needed.
The parameters should be similar to the following example:
&tf_subject=Faulty charger 999 recall&tf_12345=USA
- Copy the URL from the text editor and paste it wherever you want to link end
users to the pre-filled form. Your final URL should resemble one of the
following examples:
- Single ticket form:
https://www.example.zendesk.com/hc/en-us/requests/new?tf_subject=Faulty charger 999 recall&tf_12345=USA
- Multiple ticket
form:
https://www.example.zendesk.com/hc/en-us/requests/new?ticket_form_id=1500000300222&tf_subject=Faulty charger 999 recall&tf_12345=USA
- Single ticket form:
Parameter keys and values
The URL parameter keys and values differ based on what type of field you want to pre-fill. There are two different field types that are used in a request ticket form:
-
System fields - are the default fields in a ticket and have a unique name.
-
Custom fields - are fields that you can create to supplement the information that is already being gathered from the existing system fields.
System fields
The URL parameter of system fields uses the prefix tf_
followed
by the field name. For example tf_subject
. For more
information, see System ticket fields. Use the
following parameters for the Zendesk system fields:
-
Email:
tf_anonymous_requester_email
-
Priority: Include the value type (low, norm, high, urgent), after
the field name, for example
tf_priority=high
-
Type: Include the value type after the field name, for example
tf_type=incident
-
Description:
tf_description
-
Subject:
tf_subject
-
Due date: (Used when Type=task) Use the canonical date format
YYYY-MM-DD, for example
tf_due_at
-
Cc: (Used when a user is logged in). Separate the emails with a
comma, not a space, for example
tf_collaborators=name1@example.com,name2@example.com
-
Organization ID: Include the value type after the field name, for
example
tf_organization_id=123456789
Custom fields
The URL parameter of custom fields uses the prefix tf_
followed
by the field ID. For example tf_40630945
. For more information,
see About custom field types. With custom
objects, you can create the following custom fields:
- Multi-select: Use field tags as the values and separate them with a comma, not a space, for example blue,green,red.
-
Drop-down menu: Use the tag associated with the value. For
example
tf_40630945=dog_beagle
. - Checkbox: Use the value true/false
- Decimal: Use integers and non-integers (for example, -8.012345679). Do not use commas.
- Date: Use the canonical date format: YYYY-MM-DD
Using pre-filled ticket forms with SSO authentication
When you use pre-filled ticket forms in environments with single sign on (SSO) authentication, end users must be logged in before they can submit a ticket. This means that if an end user accesses the pre-filled ticket form from another source (for example, website or QR code), they must be logged in to see the initial values in the pre-filled ticket form. If they are not logged in, they will be prompted to log in before being directed to the ticket form. Because users are accessing the form from the login page rather than from the original link or QR code, the pre-filled ticket values no longer appear. Users can still fill out the form and submit the ticket, but they will not see any pre-filled values.
To ensure that users can access pre-filled ticket forms at all times, you can choose to not require user authentication prior to access the ticket form. Alternatively if your environment requires user authenticaion in all cases, you can include content for users wherever they access the link, instructing them to return to this link after they log in to the environment. Once they are logged in, they can click the link or use the QR code to access the pre-filled ticket forms.
122 comments
Mon Quindoza
Heya
EDIT: Reason this is not working because we are using theme v1
This is awesome but somehow it also does not work on our case. Also does not work even if JavaScript is disabled in browser.
https://luxor.zendesk.com/hc/en-us/requests/new?tf_subject=hello
Any thoughts?
Thank you
0
Ran Geller
Hi,
Is it possible (using this feature) to prefill custom ticket fields that are for agents only? (NOT editable for end-users).
Thanks!
0
Eric Gao
Hi SundaySky Israel,
The pre-filled ticket form feature is intended for end-users and will be applicable to end-user editable fields. Since agent-only fields will not be visible on the Help Center request form they cannot be prefilled by this feature.
Eric G. Gao | Technical Support Architect | Zendesk
-1
Ran Geller
Thank you, Eric!.
Is there a plan to add this functionality to the feature?
Any idea how can I automatically update agent-only fields during/after a ticket was created from the help center contact support form?
Ran
1
Eric Gao
Hi Ran,
Unfortunately there are no immediate plans to add this functionality to the pre-fill ticket form feature, but you could potentially set up some triggers to auto-populate fields on those tickets upon creation: https://support.zendesk.com/hc/en-us/articles/203662246
Eric G. Gao | Technical Support Architect | Zendesk
0
Karen D Snyder
@... It seems that the ticket field parameters after the ticket form ID are not preserved if the user has to sign in.
The prefill URL (https://helpdesk.asmnet.com/hc/en-us/requests/new?ticket_form_id=360001129171&tf_subject=New Add Manufacturer Request from Instep&tf_description=Please add [manufacturer_name] to the system&tf_360035346351=customer_account_-_add/change_adv_erp_ax) is successful if I'm already signed in.
However, when I tested it in an incognito window, after I signed in, my browser navigated to https://helpdesk.asmnet.com/hc/en-us/requests/new?ticket_form_id=360001129171, therefore no prefilling was done.
Is it possible to get this to work so that if the user has to log in, the parameters are preserved?
Thanks,
Karen Snyder
0
Albert Khasky
Without having to create my own form and use the API, is it possible to set the value of a hidden custom field based on a url param? I'd like it to be a private/agent only field, but given the responses above, it seems unlikely. As a possible workaround, could I stick some custom js that sets the value and hides that particular field? I'm using the Copenhagen theme.
Any guidance would be most appreciated.
Thanks in advance!
1
Dave Dyson
Hi Albert, as indicated above, only end-user editable fields can be pre-filled this way. For visibility to our Product team, would you be willing to post to our Feedback on Guide topic, and use our template there to format your feedback?
0
Amos
How to change ticket form from TEXT to Drop-down option? I cannot find edit option.
0
Cheeny Aban
Hi bo_zhang
I believe you are pertaining to the fields in your Ticket Form and that will be your Ticket fields. To change a specific field, you need to edit them under your Ticket fields by going to Support>Manage>Ticket Fields. You can check Editing and managing your ticket fields for more information.
-1
Ravindra Singh Test
Can someone please help me with the code suppose I want auto-filled customer field then how to do for the following customer field, please provide example along with screenshot.
1.Drop-down menu
2.Checkbox
3. Decimal
1
Sabra
Hey @...! Let's say we have a ticket form (ID 1001) to collect information about donations. The form has the following fields:
If I wanted to create a pre-filled form where there was an anonymous $75.50 donation to the Local Food Pantry, here is how I would make the URL:
1
Nidhi Bali
I am trying to use the pre fill feature to set the brand name but its not working.Not sure if any more information is needed to be passed in the url.
https://help.askmediagroup.com/hc/en-us/requests/new?ticket_form_id=360000386952&tf_360019469232=ask
0
Trudy Slaght
Has anyone else had this functionality stop working? I have a ticket open w/Zendesk right now, but I am hoping that someone else may have encountered this and have a solution. I have previously used it without issue but the URL which previously worked is no longer working.
0
Dave Dyson
0
Trudy Slaght
Hi @... Yes, thanks, it's been resolved now. It had been functioning in September and early October so I didn't realize that there was a recent deprecation of API v1 for the feature. It would be nice if there had been a notification that pre-filled forms were going to stop working on the v1 prior to the change happening.
0
Dave Dyson
0
Anita Rajkumar
It's not prefilling the location field. please suggest
0
Brett Bowser
I'm going to create a ticket on your behalf so our Customer Care team can look into this further with you.
You'll receive an email shortly stating your ticket has been created.
Cheers!
0
Andrea Rochira
Hi there,
We are in much need of this feature to optimize a work flow, but I'm concerned about what some users commented on this other support article: https://support.zendesk.com/hc/en-us/articles/4408820214554-About-Guide-templating-versions
How can we know if a migration to the "Templating API v2" will go smooth? What checks are recommended to perform in advance? Do you suggest to open a ticket with Zendesk in order to be assisted?
Thanks a lot for the feedback
0
Greg Katechis
Hi Andrea! We don't have a specific checklist, but we do have these docs that you can use to see if you're utilizing any of those elements within your themes. With respect to the dropdown issues noted there, it's likely that this was a result of the update to drop-downs that we made. It's possible that their implementations of drop-downs were upset as a result of this, but it is difficult to know for sure. If you run into any questions while you go through the above documentation, let me know!
0
Andrea Rochira
Hi Greg Katechis,
Thanks for pointing me in the right direction, but I'm still a bit confused about the next step.
Am I supposed to switch to the new Copenaghen theme (and eventually import custom code, if any, from the current one)?
I don't see how I can maintain the current theme (theme version 1.2.0 and API v1) and not incurring into issues while trying to update the manifest.json file to use API v2. I actually tried to follow this article, "Importing and downloading your theme and manifest file", but I ended up getting 16 errors related to template files while attempting to import it back in Help Center (very likely due to the new helpers supported by API v2). So, I guess that a simple update of the current theme is not feasible for compatibility reasons with the new template files.
Two quick questions:
1) if we switch to the new Copenaghen theme, will I still find the old theme available in case I need to roll back to it?
2) if we have added the Zendesk Support widget to a company website, is there anything to update on that end too?
0
Lacy
This is not working for me. I'm able to pre-fill the Description but not the Subject. What am I doing wrong?
I'm adding &tf_360015811134=Delete Account to the end of my URL but to no avail. I also tried just using &tf_subject=Delete Account. I did the same thing for description and it worked, what is happening?
0
Andrea Rochira
In our environment, this feature is working great for end-users, but not for agents.
If an agent clicks on the link of a pre-filled form, it opens the Zendesk Support dashboard and that's it. If an end-user clicks on that same link, it works as expected.
Not sure what we are missing... any thought?
0
Matt Taylor
Hi
We have dynamic content enabled for our fields. What would the expected description be for fields using dynamic content, or is this unsupported?
0
Kasper Sørensen
Hi Matt Taylor
Dynamic content is used for the display name of the field, but for setting it's value in the URL you would use it's ID, so something like
Where "43278425432" is the field's ID.
0
Matt Taylor
Thanks @...
Would this mean that we amend the URL with something along the lines of:
or
(Using &tf_43278425432 instead of the actual ID)
0
Kasper Sørensen
Ah, I think I understand your point now. The parameter value (part after the equals sign) is not evaluated as a DC expression. So you will need to translate that string on the page that contains the link.
0
Gail
Hello - what if I wanted to have a pre-filled subject that also included the date/time of the end user opening the form URL - something like:
&tf_subject=Complaint YYYY.MM.DD
Is there a way to do this? thanks!
0
Sam
Hello,
We have enable the single sign-on connection, via JWT token.
When we access to a form with a prefilled ticket form, (like tf_123456=lopsem), if end user is already connected, it's working well.
However, if end user is not connected, after connection and redirect to the form url, the prefilled ticket form parameter disappeared from the form url
Exemple of workflow :
How can we keep tf_ parameter when end user is redirected after connection ?
2