You can add custom fields to tickets and they can be visible to agents only or to both agents and end-users. You can include custom fields to your support request form by adding them as editable and visible.
After you create your custom ticket field, you can use it in triggers, automations, macros, and views. On Support Professional and Enterprise, you can report on custom ticket fields in Explore.
You must be an administrator to create custom ticket fields.
Topics covered in this article:
- How custom ticket fields work
- Adding a custom ticket field for agents and end-users
- Understanding the persistence of custom field data
Related articles:
How custom ticket fields work
Custom ticket fields are typically used to gather more information about the support issue or product or service. You can add custom fields to your tickets for agents and you can also add them to your Help Center Submit a Request form if you want end-users to see the custom field. Custom ticket fields can be required or optional.
- Drop-down
- Multi-select
- Text
- Multi-line
- Numeric
- Decimal
- Checkbox
- Date
- Regex
The drop-down list, multi-select, and checkbox custom fields generate tags that can also be used in automations, macros, triggers, reports, and views (see Understanding custom ticket fields, tags, and business rules). All custom fields can be referenced as placeholders (see Placeholders for custom fields).
Adding a custom ticket field for agents and end-users
You can add custom fields to tickets, and decide if they should be visible to agents only or to both agents and end-users. You can permit end-users to view the custom field in their Zendesk Support ticket by making the field visible, or you can add the custom field to the Support Request form by making the field both visible and editable.
Before you begin, see Optimizing your ticket form to understand ticket fields and do some planning to build an optimal ticket form.
You must be an administrator to create custom ticket fields.
- Click the Admin icon (
) in the sidebar, then select Manage > Ticket Fields.
- Click the Add field button.
- Click in the New Field at the top of the page, and enter a title for the field.
- Select the type of custom field you want to create.
Hover over the info icon (
) to view information about each field type. Also, see About custom field types.
During custom field creation, you can change the selected field type at any time, but you cannot change the field type after the new field has been saved.
- In Description, enter an optional description for the field, visible only to administrators.
- Under Permissions, select an option:
- Agent only: Only signed-in agents can view or edit the field. The field will appear in tickets for agents only.
- Editable for end-users: Agents and end-users can view or edit the field. The field will appear in tickets and in the support request form in Help Center.
- Read-only for end-users: Signed-in agents can view or edit the field; end-users can view the field. The field will appear in tickets.
If you have a single ticket form, the new field will automatically appear in your ticket form according to your settings here. If you have multiple ticket forms, you need to add the ticket field to any ticket forms where you want it to appear. You can do so in the last step of this procedure.
- Enter a Title shown to agent and a Title shown to end-users.
The title for end-users is not editable if you configured the field for agents only in the previous step.
- Select Required to solve a ticket if the field must be filled out by an agent before solving the ticket.
Note: When agents merge a ticket, they do not need to fill in required fields as merged tickets bypass Solved and go directly to Closed. This setting is also bypassed if a business rule changes the ticket to Solved, because a system process is solving the ticket rather than an agent.
- Select Required to submit a request if the field must be filled out by an end-user before submitting a ticket.
- Enter an optional Description shown to end-users if your field is configured for end-users.
This field is not editable if you configured the field for agents only above.
- Depending on the type of field you're creating, you may have the following settings to configure:
-
Field values (drop-down and multi-select fields only):
- Enter a Field option to include in the list, then click in the next value field to enter another option, and repeat as needed. You can bulk import field values if you have a large number to add. Click the X to remove a value.
- Click Show tags to view and edit the tags generated by each option.
- Click Order alphabetically to display the options in alphabetical order or use the drag-and-drop handle (
) to manually reorder.
- Delete a field value by clicking the X to the right of the value.
- To choose a default value for a drop-down field, hover over the value, then click Make default.
Note: The default value in a drop-down list applies to new tickets only. If you change an existing ticket form to one with a drop-down list with a default option, the default option is not displayed and is shown as blank.
- Field option (checkbox fields only, optional): Enter a tag to apply to a ticket when the ticket field checkbox is selected.
- Field validation (regex fields only): Enter a Ruby regular expression to create an input mask to validate entry.
-
Field values (drop-down and multi-select fields only):
- Click Preview to see how your custom field will appear to both agents and end-users.
You can enter or select options to see how the field functions. Click Close to return to the custom field screen.
- Click Save or, if you want to create another custom field, click the drop-down icon and select Save and add another.
The ticket field automatically appears in your ticket form if you have a single ticket form. If you have multiple ticket forms (Professional add-on and Enterprise), you need to manually add the ticket field to your ticket forms in the next step.
- (Multiple ticket forms only) To add the new field to multiple ticket forms, edit the ticket form where you want the custom field to appear, drag the new ticket field from the right onto the ticket form, then click Save.
You can repeat this step as needed for multiple ticket forms.
If your custom ticket field does not appear on a new ticket, you might need to restart your browser to see it. If a ticket field that you previously configured as required is not displayed on the ticket form, it does not need to be entered.
After you create your custom ticket field, you can use it in triggers, automations, macros, and views (see Using custom ticket fields in business rules). However, text or numeric custom ticket fields can only be used in views.
On Support Professional or Enterprise, you can report on custom ticket fields in Explore (see Reporting with custom fields).
Understanding the persistence of custom field data
If you delete a custom field, the data from the custom field is not preserved in existing tickets, including closed tickets. The data is preserved only if the custom field also adds a tag to a ticket. The three custom fields that add tags are the drop-down list, the checkbox, and multi-select fields. If you delete one of these custom fields, then the data in tickets persist as tags.
For example, suppose you have a drop-down list in your ticket form to associate tickets with different product names. After a while, a decision is made to stop providing support for one of the products. If you remove the product from the drop-down list, the product name persists in existing tickets as a tag. If however you use a text field to record a product ID and you delete the text field, the product ID is not preserved in your tickets.
154 Comments
Hi,
I have set up a custom ticket field but it doesn't then show up on my tickets, new or old. Can anyone help me? Is there something simple I've missed?
Thanks,
Conrad
Hey Conrad!
If you're on Enterprise, your custom ticket fields won't show up until you've added them to whichever ticket forms it should be a part of it. Just go to Gear icon > Manage > Ticket Forms. Click on each form, and drag the custom field over to it.
If you're on the Plus plan or lower, you probably just need to refresh your browser. Sometimes browser caching prevents these types of changes from showing up immediately.
Please let me know if you have any other questions!
Did something just change with the Name ticket field? Instead of filling in the customer name, it's showing the {{ticket.ticket_field_21694146}} text. I've double checked the field id to ensure that hasn't changed and it looks fine there.
Hi Kraven!
Quick point of clarification: is this a default system field, or a custom field that you created? Can you also point to what business rules you're using that placeholder in? I'd like to take a closer look.
Thanks!
Disregard. I was speaking about a custom field, yes, but the {{current_user.name}} placeholder was affected as well. It seems to have cleared itself up however. Thanks for checking in!
Great! Glad to hear it's been sorted out. :) Let us know if you need anything else!
When using the custom drop down field, it tags my tickets on the agent side however the select input does not reflect the users selection?
Hi Justin!
You'll want to go into your custom fields and make sure that the assigned tags line up with what you put in the field itself. If you went through and changed the contents of the fields at any point (for instance, to change the order they appear in the dropdown), I don't think it automatically updates the tag.
Let me know if that doesn't solve the problem!
Thanks Jessie but I my problem isn't with the tags. If a user selects, "blue" the ticket is tagged with blue. However if you look at the 2nd picture, the color drop down is not selected. It's value is "-". Shouldn't that be blue? If not, why is it there?
Hey Justin,
Thanks for the extra bit of clarification there.
It's awfully difficult to say exactly what's happening there with just a couple screenshots...what I'm understanding from your explanation is that your end-user is selecting a color from the drop-down field and the ticket is being tagged correctly, but on the agent end of things the field is showing the tag but no selection in the drop-down. Is that correct?
Is that happening on all tickets, or just a few of them, or just on the one you're using as an example? If you don't mind, I'd like to hop into your Zendesk to take a look at some things and see if I can duplicate the issue. Can you provide me with a couple ticket numbers where this issue has occurred?
Hi Jessie,
Can you change the requirement for the custom field to be mandatory on 'save' or update instead of 'solve' for an Agent..trying to drive the Agents to continue to populate prior to closing, as it impacts reporting of open tickets when they only add information on the backend close of a ticket.
Thanks
Martin
Apologies if this has been asked (and answered) before. I want to set up a custom ticket field for agents that has to be filled in upon solving. This field will basically be a root cause as to why the ticket was raised. As such, I'd like to make different drop down options according to ticket type. Is it possible to link the field to the ticket type?
Hi Tim,
You can accomplish this by using the Conditional Fields app. The app is available to customers on the Enterprise plan and to customers who have purchased the Productivity Pack Add-on.
Thanks!
Thanks Anna. What's the Productivity Pack Add on?
Add-ons are features that you can purchase on top of your Professional or Enterprise plan. You can learn more about them here:
https://support.zendesk.com/hc/en-us/articles/217547487
The Productivity Pack (that includes the Condition Fields app) is included with Enterprise plans and can be added-on to Professional plans.
Is there a way in zendesk where i can create a custom field and add computation to it.
Its like i don't want any one to fill in those field, I want that field to get auto calculated.
Eg:
My_Custom_Field = Submitted_Date - Closed_Date
Hi Daniel!
It's not possible to do that with custom fields. Can you go into more detail about what you're trying to accomplish? There might be another way to do it.
Well, i want to find out how many business days did it take for a ticket to be closed
So i want to create a custom ticket field to retain a calculated value of some formula.
example:
Ticket_Submitted_Date - Ticket_Closed_Date
Blocking dates in the calendar / formatting the calendar input field:
Zendesk seems to use the "PikaDay" Javascript library
Field title keeps getting switched to all lowercase.
I have MANY custom fields, and I was able to capitalize the first letters in all of them. Now, when I try to add a new custom field "Equipment Type", when I save it, it appears as "equipment type". I've cleared my cache and even switch browsers. No difference.
What gives? This doesn't look professional on the end user submit ticket page.
Nor can I delete the "Description (optional)" text. Nor can I change the case of the text for "Field title shown to end-users".
Cleared cache again and still no luck.
Hi Scayze! I see that you were able to get help with this in a ticket - looks like a bug that has since been fix. Let us know if you need anything else!
I have created a new custom date field, but the format is too long and in the wrong order.
At the moment it is like December 8, 2016, is there a way to get it to be 8 December 2016?
I can't do it in API because we get the information from Formstack submissions.
Longshot here - but I'm wondering if custom fields can be sent via SMTP headers when a ticket is opened by email?
Here's the use case - we send out alert notifications from our system to our end users, and would like to follow up on them from Zendesk. So we're thinking of CC-ing our support address on the email, which would open a ticket automatically (with the original recipient alerted on changed to that ticket). However - we'd like to pass some custom fields here which would not be present in the email itself (ie - account id).
Is there a way to do that?
Hi Guy!
Interesting question here! The supported method for automating the ticket creation and update process is the API. There is the possibility to update tickets using the Mail API, though this is still designed to be used by an individual Agent and not exactly a means of automation as it only works on forwarded emails originating from agents. Sadly, at this time, it is not possible to manipulate incoming emails and their headers to set custom fields.
There are other options however. For example, you could do a bulk user import that sets custom fields, like account id. You could also create the proactive alters directly from Zendesk Support or using the API and set these values upon creation passed in your payload made in the API request. In this case, Zendesk would do the "heavy lifting" for creating and managing the proactive alters as opposed to your email client. See our Create Many Tickets API resources; we also have a Proactive Tickets App that could be used depending on your plan.
Guy, You may want to look at this as well, not sure if it's the same use-case scenario though. https://support.zendesk.com/hc/en-us/community/posts/203459986-Hidden-text-in-emails-
Please sign in to leave a comment.