Suvinya Mullaseril - Zendesk Basics
module-name: "Zendesk Basics"
area: "Customer Service"
maintainers:
- support operations
- support managers
Introduction
Zendesk is the primary support platform we use for managing customer interactions and support requests. This module is designed to help you, as a GitLab Support Engineer, get up to speed with Zendesk.
Expected Outcomes
By the end of this module, you will be able to:
- Configure your Zendesk profile
- Understand Zendesk ticket metadata and SLAs
- Learn how GitLab is using Zendesk
- Use Zendesk to manage and process support tickets efficiently
- Access and use the Customers Portal to search for customer and account information
General Timeline and Expectations
- Read about our Support Onboarding process; the page also shows you the different modules you'll need to complete as part of your Onboarding.
- This module should take you 1-2 days to complete.
Stage 1: Prerequisites
-
Done with Stage 1
Tasks: click to expand/contract
Review the Zendesk resources listed below:-
Complete Zendesk Agent training -
Sign up at Zendesk University. You'll receive an email with information on accessing the Zendesk courses -
Complete the On-Demand: Introduction to Foundational Support course (approx. 10 min)
-
-
Review additional Zendesk resources:
Stage 2: Configuring your Zendesk Agent Profile
-
Done with Stage 2
Tasks: click to expand/contract
-
Check how your personal Zendesk signature looks like. -
In Zendesk, click your user icon in the upper-right corner, select View Profile and check the Signature field. -
(Optional) Consider if you would like to personalize your display name and signature by using an alias and/or adding your GitLab handle to your signature.
-
-
(optional) Determine if you want personalized salutation such as ThanksorBest regardsin your Zendesk signature- You can add these by editing your support team yaml file file, but it's better to end each message with words that match the situation of that ticket.
-
(optional) Consider configuring notifications in your Zendesk profile -
In Zendesk, click your user icon in the upper-right corner, select View Profile and check the Notify me field. Review the available notification settings such as comments, soon to breach tickets, and other relevant updates to determine which notifications you want to receive.
-
Stage 3: Understanding Ticket Metadata and SLAs
-
Done with Stage 3
Tasks: click to expand/contract
-
Review the diagram on overall triage flow to understand when to reach out to Support Operations for help. -
GitLab: Browse through tags to get an idea of what they do. Generally speaking, you should defer to #support_operations if tags, SLA, or other metadata is inaccurate. Attempting to fix tags on your own can result in customers not getting the appropriate SLA and delayed responses. -
Learn about our GitLab Support Service Levels. Every ticket should have the correct SLA assigned to ensure it receives the appropriate level of attention. -
Understand our definitions of support impact and how a customer's chosen severity aligns with our SLAs.
- Does the selected priority match the voice the customer is using? For example, is the ticket marked as low priority but the customer has a sense of urgency where they are blocked? Did the customer select high priority but they are asking a clarifying question about our documentation?
-
If you will be on the CMOC or Emergency on-call rotation, ensure that you are familiar with how customers engage with emergency support, and become familiar with the provide emergency address macro. Seperate modules are available for On-Call Basics and Customer Emergency On-Call
Stage 4: Studying ticket lifecycle
-
Done with Stage 4
Tasks: click to expand/contract
This section describes the common lifecycle of a ticket and explains how to use some Zendesk features while working on tickets.After this section, you will find some hands-on exercises. Be sure to complete all of them to fully understand Zendesk’s behavior in each scenario.-
Understanding Zendesk Ticket statuses
- Read the documentation about ticket statuses to understand how we use them in GitLab Support.
-
Learn how customers and agents can create tickets in Zendesk: a. How customers create tickets
To submit a support ticket, GitLab customers must first sign in to the Support Portal. Once logged in, the available ticket forms will depend on whether the customer is a named contact or not and will also display based on the products associated with their subscription. For example, a GitLab.com customer will not see Self-Managed related forms if they do not have a Self-Managed subscription.
- Named Contacts – If the customer is a named contact, they will have access to forms specific to their subscription, as well as ticket forms that do not require association, such as L&R, Support Ops, Billing, Emergency, and SaaS Account (except for 2FA removal and name squatting).
- Non-Named Contacts – If the customer is not a named contact, they will only have access to forms that do not require association. Additionally, they will see instructions on how to become a named contact before they can submit a ticket.
b. How support agents can create tickets on behalf of customers
Support Engineers may need to create a new ticket on behalf of a customer in certain cases, such as:
- Creating a follow-up ticket for an emergency
- Splitting a long ticket containing multiple issues into separate tickets
Read the documentation on how to properly open a new ticket for a customer for detailed instructions.
Notes:
- It is important to use the
Create new ticket pluginapp when creating a new ticket for a customer. Manually creating a ticket outside the plugin can cause issues with routing and SLA assignment. - For CMOCs, there is a specific process for creating outbound requests in Zendesk. For more detailed steps, read Creating tickets for outbound requests.
-
Modifying CC list in tickets. To add yourself or another GitLab team member to the CC list of a ticket: - Open the ticket in the agent interface.
- Type in or copy/paste the email address you need to add in the
CCsfield. - Click
Submit
If you need to remove yourself from the CC list:
- Open the ticket in the agent interface.
- In the
CCsfield, click thexicon next to your email 3. ClickSubmit
Notes:
- Any text entered in the "Public reply" or "Internal note" field will be saved. If you enter text in the "Public reply" field, it will be sent to the customer when the ticket is submitted, regardless of whether the status remains the same or not.
- Zendesk will send only public replies to non-GitLab users who are included in the CC list of a ticket, whereas it will send all replies, public or internal, to the Support Agents in the CC list.
Important reminder: Do not add external users or customers to the CC list. If a customer wants to include their colleagues or other users in the ticket CC, they must do so themselves by logging into the support portal. For detailed instructions, refer to Adding Additional Participants (CCs) to Your Ticket.
-
Changing the ticket form
- Start by reviewing the ticket triage workflow for applying the correct form.
- Handling Incorrect Forms - If a ticket is submitted using an incorrect form or needs to be moved to a non-support form (e.g., Billing, Accounts Receivable), apply the
General::Forms::Incorrect form usedmacro.Support Operations will handle the reassignment from there.
-
Using macros in tickets A macro is a message template or a predefined set of actions that you can use when creating or updating tickets. Macros are commonly used in situations, such as:
- You need to change the form of a ticket from Self-Managed to GitLab.com or vice versa.
- You need to provide a CE user with information about free support resources.
- You need to explain to a GitLab.com user what they can do to reset 2FA.
- After the call with a customer, you would like to summarize everything that was done during the call.
To add a macro to your reply:
- Open a ticket.
- Click the
Apply Macroin the bottom toolbar. - Select a macro from the list or type in the name of the macro that you want to apply.
- Click the macro and it will be automatically added to the comment field of your ticket.
Note: After applying the macro, it's important to review and edit the message content to ensure it matches your personal tone and is relevant to the specific ticket.
-
Using Unbabel to translate customer replies: Unbabel is a translation tool integrated into Zendesk as an app. It allows support agents to communicate seamlessly with customers in multiple languages by automatically translating incoming and outgoing messages.
If a customer's reply is in a supported non-English language, Unbabel should be used to translate both the customer’s message and the agent’s response. However, do not use Unbabel with test tickets, as translations are billed per use.
Unbabel is configured to only translate tickets submitted in our supported languages.
You can find the recorded training session and slides provided by Unbabel when it was first introduced to GitLab.
-
Merging tickets: Sometimes customers create duplicate tickets. In order to avoid confusion it is best to merge them into one.
When merging tickets, make sure that the "Requester can see this comment" option remains unchecked in the ticket being merged into. This prevents the merge comment from being made public, which is important for maintaining the SLA.
Important: Double-check everything before merging tickets, as merges are permanent and cannot be undone.
-
Using Dev Pulse in tickets: Dev Pulse is a set of scripts and Zendesk configurations used to monitor issues and merge requests related to bug fixes or feature requests implementation. It ensures that a support ticket stays updated based on the progress of the related issue or merge request.
Read how to use Dev Pulse for detailed guidelines on setup and usage.
-
Marking tickets as spam: In some cases, tickets may be identified as spam or unsolicited emails. Marking a ticket as spam not only removes it from the queue but also suspends the end-user, preventing them from submitting further tickets or accessing the Service Desk.
For detailed steps on how you can mark tickets as spam, read marking tickets as spam in Zendesk.
-
Viewing original email message: Sometimes you will see that there is an envelope icon in the upper right part of the customer’s comment. It can contain some useful information such as:
- original formatting of the e-mail message
- the list of recipients that the customer added to CC
- replies to questions that the customer has placed inline in the quoted text
To view the original email message, follow the steps in How can I view the original recipients of a ticket I received in Zendesk Support?
Hands-on Exercises:
Log in to the Zendesk Sandbox and use the login credentials from 1Password to complete the exercises.
[ ] Practice 1: Create a support ticket as a customer with support entitlement.
- Log in to the Zendesk Global Sandbox Support Portal using the login credentials for
Zendesk Global Sandbox - Customerfound in 1Password. - Click
Submit a Request - Use the following values for each field:
| FIELD NAME | VALUE |
|---|---|
| Choose the reason why you are reaching out to us today? | Support for a self-managed GitLab instance |
| Subject | Practice 1 - ZD Basics Onboarding - YOUR_NAME |
| Description | Creating a ticket as a customer with support entitlement |
| GitLab Install Type | None of the above |
| GitLab Version | 17.7.1 |
| What is the ticket severity? | Severity 4 |
| Priority | High |
- Click
Submit - Once done, you will see how the support ticket looks like to the customer in the support portal.
[ ] Practice 2: Create a support ticket as an unassociated contact (customer with no entitlement)
- Log in to the Zendesk Global Sandbox Support Portal using the login credentials for
Zendesk Global Sandbox - Unassociated customerfound in 1Password - Click
Submit a Request - You should see a notification banner showing that you are not currently associated with an organization and how you can contact Support Operations.
- Use the following values for each field:
| FIELD NAME | VALUE |
|---|---|
| Choose the reason why you are reaching out to us today? | Support portal related matters |
| Subject | Practice 2 - ZD Basics Onboarding - YOUR_NAME |
| Description | I’d like to be added as a support contact |
| What type of product are you using? | GitLab.com |
| Email associated with your subscription | not_associated@example.com |
- Click "Submit"
[ ] Practice 3: Adding external users in the CC list as a customer
- Log in to the Zendesk Global Sandbox Support Portal using the login credentials for
Zendesk Global Sandbox - Unassociated customerfound in 1Password - Locate and open the ticket that you just created with subject
Practice 2 - ZD Basics Onboarding - YOUR_NAME - At the bottom of the page, click the “Add to conversation” box
- Add example@example.com in the CC list
- Type anything in the comment box
- Click
Submit
[ ] Practice 4: Adding internal users in the CC list as an agent
- Log in to Zendesk Global Sandbox using the login credentials for `Zendesk Global Sandbox - Support Agent' found in 1Password
- Using the Zendesk search bar, locate and open the ticket you created with subject
Practice 2 - ZD Basics Onboarding - YOUR_NAME - In the comment box, click
Public Replythen add your GitLab email address in the CC list. - Click
Submit
[ ] Practice 5: Using a macro and handling tickets using an incorrect form
- Log in to Zendesk Global Sandbox as an agent using the login credentials found in 1Password
- Using the Zendesk search bar, locate and open the ticket you created with subject
Practice 1 - ZD Basics Onboarding - YOUR_NAME - Apply the
General::Forms::Incorrect form usedmacro - Click
Submit as Open
[ ] Practice 6: Sending replies and assigning tickets
- Log in to Zendesk Global Sandbox as an agent using the login credentials found in 1Password.
- Locate your ticket with subject
Practice 2 - ZD Basics Onboarding - YOUR_NAME - Assign the ticket to yourself by clicking the
take itbutton - Send a public reply and submit the ticket as
Solved
[ ] Practice 7: Merging Tickets
- Log in to the Zendesk Global Sandbox Support Portal as a customer with support entitlement using the login credentials found in 1Password.
- Create a new ticket using the following values:
| Field | Value |
|---|---|
| Choose the reason why you are reaching out to us today | Support for a self-managed GitLab instance |
| Subject | Practice 7 - ZD Basics Onboarding - YOUR_NAME |
| Description | Duplicate - Creating a ticket as a customer with support entitlement |
| GitLab Install Type | None of the above |
| GitLab Version | 17.7.1 |
| What is the ticket severity? | Severity 4 |
| Priority | Medium |
- Once you’re done creating a new ticket, log in to Zendesk Global Sandbox as an agent using the login credentials found in 1Password
- Locate your previously created ticket with subject
Practice 1 - ZD Basics Onboarding - YOUR_NAMEand merge it intoPractice 7 - ZD Basics Onboarding - YOUR_NAME - Add a public reply and submit the ticket as
Solved
Stage 5: Learn how we use Zendesk at GitLab Support
-
Done with Stage 5
Tasks: click to expand/contract
-
Review the Support Operations documentation page for Zendesk to understand the different Zendesk features we use, how they are configured, and how we apply them at GitLab Support. -
Support Engineers help maintain Zendesk content by collaborating on automations, triggers, macros, views and articles. Read the documentation on Working on Zendesk automations, triggers, macros, views, etc. to see how you can contribute.
Stage 6: Zendesk Instances
-
Done with Stage 6
Tasks: click to expand/contract
-
Read about the different Zendesk instances. -
If you are a U.S. Citizen, you may be working in the U.S. Federal instance in addition to the standard instance. All other team members should be aware that there is a U.S. Federal instance and who it's for. -
If you see a US Federal ticket in the general Support portal views, you can follow the instructions detailed here: US Federal tickets in Global Support Portal.
Stage 7: Looking up Customer & Account Information
-
Done with Stage 7
Tasks: click to expand/contract
We use several tools to look up customer & account information.Customer Portal and LicenseDot App
-
Familiarize yourself with the workflow for looking up customer information. -
Read about and be aware of the CustomersDot, and the LicenseDot apps.
If you will primarily focus on License & Renewals, you should be given access to the above tools, along with training on the License & Renewals workflows.
Stage 8: Other requests and miscellaneous
-
Done with Stage 8
Tasks: click to expand/contract
-
Read about gratis support for free, expired, and prospect customers. -
Read about other request types and how to redirect them. -
Use the Security:All Security Questionsmacro for general security and compliance questions (such as requests for SOC documents)
Congratulations! You made it, and now have a basic understanding of using Zendesk for ticket management!
You are now ready to continue on your onboarding path to tackle the next module in line based on your role. Reach out to your manager or onboarding buddy if it is not assigned to you yet; you can check the onboarding page or your New Support Team Member Start Here issue to see the list of all modules under the Onboarding pathway.
Please also submit MRs for any improvements to this training that you can think of. The file is located in an issue template in the support-training repository.