Manager 9.3 OnPremise Release Notes-November 2018


Jira Integration

Send Test Log Attachments to Linked JIRA Defects

Attachments for Test Logs and Test Step Logs can now be automatically uploaded to linked Defects in Jira. This feature is enabled by default, but you can disable it by selecting the 'send attachments' checkbox in the JIRA auto-fill defect fields dialog. You will need to enable this feature in your Jira Configuration Settings

  • If you link a Defect to a Test Log, attachments of the overall Test Log and each Test Step Logs will be uploaded to the Defect.
  • If you link a Defect to a Test Step Log, only attachments from the Test Step Log and its previous steps are uploaded to the Defect.

Attachments sent from qTest will have the following identifiers in the JIRA Defect:

  • a prefix of "qTest" or "qTest_[Test Step#]"
  • comment with the name of the attachment and the qTest user who sent the attachment
  • comment in the event the attachment failed to upload properly

The maximum attachment size for qTest is 50MB, so you will need to configure your "JIRA Attachment Size" to be at least 50MB. If you remove an attachment in qTest, it will not remove the corresponding attachment from JIRA.

Jira Webhook Update

The Jira Webhook now includes a JQL which reduces the number of signals sent to qTest from the webhook when an update is made in Jira. Previously, for example, if only a Jira Story is configured as a qTest Requirement, but a task was updated in Jira, the webhook would still send a signal to qTest, although one was not needed. This change reduces unnecessary traffic from Jira to qTest.

As a result of this change, there is a known limitation:

If a Jira Issue is synced to qTest but moved to another project or issue type in Jira, that is not configured with qTest, it will become out of sync in qTest until you select the "Retrieve button" to manually sync data from Jira to qTest.

Jira Global Admin Permission

From 9.2 and later, the Jira Cloud integration will require a user who changes the config in qTest to have the Global Admin permission so that qTest can update the webhook. Therefore, you cannot revoke the Global Admin permission from a users integrated account.

Previously, if a user who set up the qTest connection assigned with the Global Admin role, and then the Global Admin permission was revoked, the integration would work fine. Now, the Jira Global Admin permission cannot be revoked for the user who established the connection. If it is revoked, the qTest Test Execution iFrame that displays on a Jira issue will not be displayed. 

Enhanced History Tab of Jira Requirement

When a linked Jira Requirement is changed in Jira, qTest will update the content on the linked Requirement, including logging an entry in the Requirement History. Entries in the History will show the qTest username to indicate who it was “Changed By.” 

  • If a Jira Requirement is automatically synced, it is recorded as having been updated by “Jira Integration.”
  • If a user manually clicks the Retrieve button to update a Jira Requirement, he/she is recorded as the user who made the change in the Requirement.

In addition to the qTest fields, changes to all Jira fields are recorded in the History tab with the Jira logo next to the Jira Field Name.

Known Limitation: Given you created a new custom field in Jira, but have not clicked the "Refresh Field Settings" button to sync the new field to qTest, and there is a Requirement change in qTest with the new field, a record will display in the History tab as "No change." Once you select the "Refresh Field Settings" button, qTest will begin storing the field value in our database and the History tab will show the value change accordingly.

Display Rich Text Formatting

Rich text formatting applied to Test Run Fields and Linked Jira Defect Fields will now display in the areas below.

Linked Jira Defect Field Areas

Only applicable to description and comment fields of linked defects from Jira in the following sections:

  • Defect Summary
    • Release
    • Test Cycle
    • Test Suite
  • Defects Tab
    • Test Run
    • TestPad

Progress Bar when Manually Fetching Jira Defect Data

A new progress bar has been added to the Jira Integration Configuration page that displays the total number of Defects that are being retrieved when you click the 'Fetch Jira Defects' button. You can close the dialog box without interrupting the 'fetch' as the process is handled in the background.


Search for JIRA Defects in Test Execution and the TestPad

You can now search JIRA Defects by free text as long as the 'Also populate JIRA defects that are not linked to Manager Test Runs' option is enabled in your JIRA Integration settings. This new feature is available in the TestPad and Test Execution grid.


The defects that return will match the search material, along with their issue types that you configure in your integration settings.

The search results grid provides you with:

      • Defect Name and Description 
      • Defect Status

Select the checkbox for the desired defect and Add. This adds the resulting defects to a Test Log.



Integration with Jira Cloud

You can now establish a connection with Jira Cloud through the following:

  • Jira API token (new for 9.3)
  • Jira OAuth
  • Jira Username and Password (will be deprecated by Atlassian December 1st, 2018)

Previously, a connection could be established using the Jira username/password of a Jira Global Admin. However, Atlassian is deprecating the username/password authentication option on December 1, 2018. More details, check out this Atlassian Announcement: Deprecation Notice.

Therefore, the Jira Connection dialog has been updated to include 'Token' in the password field along with a link to instructions on how to create an API token in Jira.



Customers who are connected to Jira Cloud MUST edit their existing connection to switch from their basic password to use either the OAuth or the API Token. To avoid duplicating data, we recommend that users not create brand new connections. Instead, click into the Connection Name to modify the existing connection. In order to do this, you will need to be a qTest Project Admin and use the Jira Global Admin permission to edit your connection

We highly suggest you update your authentication connection as soon as possible to avoid a disruption in your integration, in the event you need help from QASymphony Support.

Read this article for instructions on Configuring your Jira Cloud Integration. 

Integration with Jira Server

Atlassian has not announced a plan to deprecate the basic authentication option (username and password), so you can continue to use your existing connection without any issues after December 1st. 

Jira Release Integration in Sync with qTest

The Jira Release Integration allows you to select which Release/Fix Versions or Sprints to sync with qTest with a status of "Unreleased". When a Fix Version was updated to "Released" in Jira, qTest would no longer update with the new "Released" status. This meant that the corresponding Release in qTest shows as "Unreleased" when in reality it is "Released" in Jira. 

This feature has been improved and will now display the correct Jira Status in qTest if you have configured your Jira Release Integration to retrieve only Unreleased Versions. 

      • If a Jira Release or Sprint has already been synced with qTest, it will update accordingly when an Unreleased Version is updated to Released.
      • If a Jira Release or Sprint has a Fix Version of Unreleased and it has not been previously synced to qTest, it will sync to qTest.
      • If a Jira Release or Sprint has a Fix Version of Released and it has not been previously synced to qTest, it will not sync to qTest.

Moving Jira Synced Issues

Note: The behavior is different between integration with Jira Cloud and Jira Server.

  • Jira Cloud: If a Jira issue is moved from Project A to Project B, and Project B is configured to qTest, the Jira issue is automatically synced to qTest. If B is not configured, the Jira issue is not automatically synced but can be manually synced.
  • Jira Server: This is more strict than integration with the Jira cloud. When a Jira issue is moved to another project or converted to another issue type, if that destination issue type is configured in qTest, then Jthe Jira issue is automatically synced. Otherwise, users will have to sync manually.

Global and Site Administration

The qTest Administration section has been enhanced with the following:

  • The 9-box is renamed to Product Navigator for this release. 
  • The Product Navigator has been added to the Administration section so you can access your qTest applications directly from any page within Administration.
    Note: You will not have access to your projects from within AdministrationYou must select Manager in the Product Navigator to gain access to your qTest projects.
  • A new UI for the header that includes the Administration tabs. The Action tabs are now grouped together by how they function for the system. Global Administration tabs are grouped on the left, while qTest Manager Administration tabs are on the right. 
  • The Licenses page has also been updated with a new UI and now houses the ability to update users' authentication systems during import.
  • A new tab for Groups has been added. Read below for further information. 


Private Values of Site Fields

Users are now able to manage Site fields more effectively with the ability to keep certain Site Field Values private in a project. Previously, upon applying a Site Fields template to projects, any value added to that Site Field Template would also then be added to any project(s) associated with that template.

Now, you can make site field values private and unique to a given project, and they will only be able to to be used internally within that specific project. This applies to System or Custom Site Fields that use a control type of combo box, or multiple selection combo boxes.

Note: While we do allow Site Administrators to keep values private to a project, they cannot create new private values within a project. Management of site field values must be handled in Site Fields from within Administration.


I have Template A applied to Projects 1,2,3,4 and 5. I decide that I want to add a site field value to projects 1-4, but not 5. I can now add that value to the Site Field template, but specify that it should only affect projects 1-4, and not 5. 

To mark a Site Field value as Private:

  1. From Administration, select the Site Fields tab.
  2. The Site Fields page loads, and select the Manage Site Fields button in the top, right.
  3. Select the appropriate Artifact in the left column to locate the Site Field you want to mark as private. 
  4. In the Display Name column, select the blue hyperlink for the Site Field name to edit.
  5. The Edit Site Field pop-up opens.
  6. Locate the site field value you want to mark as private and select the Gear icon in the Action column.
  7. The Configure Value pop-up displays and allows you to exclude this Site Field Value from a specific project(s.) 
  8. Select the Project from the 'Include this value in the following projects' list and then use the right-arrow to move the selected project to the 'Exclude this value from the following projects' project list. 
  9. Select OK to save, and now the selected Site Field value will be excluded from the selected project.

Read this article for further information about Site Fields.

User Groups

User Groups is a comprehensive tool that allows Site Administrators to better manage users and their permissions. You can simply assign a user to a User Group, and all permissions associated with that User Group are granted to that user. You will need the new permission, Manage User Groups, to manage and add users to User Groups. 

The User Group permissions exist above the project level. So, a user within a User Group will retain the permissions assigned no matter what project they may be working. To assign project-specific permissions, you will use User Profiles.

User Groups can also be used as permission-less groups to tag and better organize users. This allows Site Administrators to sort through and search for existing users. Project Administrators will be able to search for users using User Groups as filters.

qTest will offer system pre-defined User Groups, but also allows Site Administrators to create custom User Groups. The pre-defined User Groups and their permissions are as follows:

  • Administrators: Super users who can perform any site level configurations
  • qTest Insights Viewers: Users who can view reports in qTest Insights
  • qTest Insights Editors: Users who can define reports in qTest Insights
  • qTest Pulse Users: Users who can access qTest Pulse
  • qTest Launch Users: Users who can access qTest Launch


  • Administrators who have already set up Admin Profiles do not have to worry about the introduction of User Groups, as all existing Admin Profiles will be migrated into new Custom User Groups. This way, Project Administrators will not have to start from scratch in defining new sets of user permissions.
  • In a Sessions Only package, the only pre-defined User Group available is System Administrators. Administrators cannot modify or create new User Groups.

Read this article for more information on User Groups.


Batch Actions

Along with User Groups, Manager 9.3 offers Site Administrators a wider variety of Batch Actions. These Batch Actions help administrators manage and modify potentially large groups of users simultaneously. You will find the Batch Action button on the License Information page. 

The Batch Actions include:

  • Assign projects
  • Reset Passwords
  • Export Users
  • Update Users
  • Activate Users
  • Deactivate Users
  • Resend Invite Emails


If a Site Administrator wants to assign multiple users to multiple projects using the Batch Action feature, follow these steps:

  1. In qTest Manager, select Administration from the username drop-down menu.
  2. The Licenses tab page displays. Here, select the checkbox(es) associated with the users whom you want to be added to your project(s).
  3. Select the Batch Action icon. From the drop-down menu, select Assign to Projects.
  4. The "Add Users to Projects" dialog displays. Select the Project(s) from the menu on the left, and then select the right arrow. 
  5. Select Save. Your selected users have now been added to the selected project(s).

Site Administrators can now also bulk edit user profiles for one user within multiple projects. This can be helpful for adding a user to multiple projects. For example:

  • Use "Add to Projects" if a user has already been assigned to Project P-1 with user profile UP-1: If you add the user again to P-1 with another User Profile (i.e., UP-2), this will not affect the user. The user profile in P-1 is still UP-1.
  • Use"Edit Projects and Profiles:" As opposed to the above, this will update the user's user profile in P-1 to UP-2. This can also be used for adding a user to other projects.

The Batch Action associated with updating user information allows site administrators to export an Excel file from qTest. Users can then modify the Excel file and re-import the file into qTest. qTest will read the file and can update the following user information accordingly:

  • SSO username
  • LDAP username
  • First Name
  • Last Name
  • Status
  • Auth system
  • Projects (separated by a new-line character)
  • User profile
  • User Last Login (date and time of the most recent login, in the configured Internalization format)
  • Activation Link column - activation link for "New" users, only include the data if the status of the user is New
  • Reset Password Link - Active reset password links (active users have NOT accessed them to reset password)

Note: If an internal user was once authenticated by an SSO system, his or her old SSO username would be included in the export file.

Admins can also check logs for exact error reports for each user. These logs can be exported into Excel, modified, and then re-imported back into qTest Manager to send an invitation with the correct information.

User Authentication

Site Administrators can now batch manage User Authentication. The following actions can be performed in batches: 

  • The system now supports admin importation of user info from an XLS file. Here, an admin can change auth system information.
  • Admins can now save the external username of an internal user. That way, the admin can reuse these usernames if there is a switch from LDAP to SSO authentication. Previously, these external usernames were not imported when changing the authentication system, and if changing back, the admin had to re-enter external usernames.
  • Users are automatically activated when an admin changes their authentication system from Internal to LDAP/SSO using the import tool.

Example Use Case:

When changing the authentication system from LDAP to SSO, in most cases, SSO usernames will be the same as LDAP usernames. The site admin may want to export users with LDAP usernames first and then re-use the LDAP usernames as SSO usernames.

In qTest, enabling SSO will automatically disable LDAP, and all LDAP usernames are cleared out. In this case, the site admin should export users BEFORE disabling LDAP or enabling SSO.

Test Execution

Ability to Modify Test Logs

You can now modify a Test Log provided you are the Tester of the Test Log or a Project Admin. 

To modify a Test log:

  1. From the Execution History grid, select the pencil icon in the Action column which will load the Test Log to the Test Pad.
  2. A notification will display at the top of the Test Pad that indicates which Test Log number you are modifying. 
  3. Once the Test Pad loads, you can modify the following Test Log data:
    • Test Log properties
    • status of the overall Test Log or each Test Step Logs (this will automatically update the Executed End Date to when you save the modification)
    • Link Defects
    • Add or remove attachments of the Test Log or Test Step Logs
  4. Save your changes.
  5. In Execution History, an asterisk will appear next to the Test Log number as a visual indicator that the Test Log was modified.

    IMPORTANT: You cannot modify the following items as they would create a new Test Case version:

    • Test Case description and precondition
    • Test Step description and expected result
    • Re-order, add or remove Test Steps
    • Add or remove Test Step attachments 


New Test Step Log Attachment Option and Column

A new option is available that allows you to upload an attachment to a Test Step Log without adding an attachment to the corresponding step of the Test Case. Previously, when adding an attachment to a Test Case step, a new Test Case version would be created.

You can upload attachments to a Test Step Log while:

  • Executing a Test Run in the TestPad
  • Viewing an executed Test Log from Execution History

Additionally, a new column is available for the Test Step Log in Test Execution that displays a 'paper clip' icon to indicate when an attachment is available for the Test Step Log.

Upload Screenshots from Clipboard

You can now paste screenshots from your clipboard to the Upload Attachments dialog of the Test Execution Tab. You can utilize any screen capture tool to add the screenshot to your clipboard.

Note: This feature will not work for Safari, IE or any browser running on MacOS.


View and Modify Test Run Properties from the TestPad

You are now able to view and modify Test Run properties from the Test Run page while executing a Test Run in the TestPad. The changes will save to the latest Test Run properties and the Test Log being executed.


View Linked Defects

You are now able to view all Defects linked to previous Test Logs or Test Logs of sibling Test Runs. These will display in the Defects tab of the TestPad. (Sibling Test Runs are considered to be other Test Runs from the same Test Case.)


Test Runs

Display Rich Text Formatting

Rich text formatting applied to Test Run Fields and Linked Jira Defect Fields will now display in the areas below

Test Run Field Areas

  • Test Runs grid of Release/Test Cycle/Test Suite
  • Execution History grid
  • Test Log Details grid

Update to the Test Run Page Attachments Tab

The Attachments tab located on the Test Run page has been updated to display the Attachment preview thumbnail, as well as the Attachments Grid. This allows the information displayed on the Test Run page to stay consistent with the information provided in the Attachments tab on the TestPad.



The following are new API's:

  • Add attachments to a Test Step Log.
  • Remove attachments from a Test Step Log.
  • Download attachments from a Test Step Log.

Rally and Version One Integrations

You are now able to customize Defects grids with all fields from Rally or Version One. You can customize the Defects grid in the following areas:

Defects Tab

  • Test Run
  • TestPad

Defect Summary Tab

  • Test Suite
  • Test Cycle
  • Release

You can also drag and drop the columns to reorder, however, the ID column cannot be moved. Once a column order is set, it will remain static on all other Defect grids until you change the order again. Select the 'gear' icon in the Defects tab to add or remove the available fields.

Known Limitation: Rich text formats visible in Rally/V1 data will not display correctly in qTest, and will appear as html tags. It is recommended you do not include Rally or Version One rich text editor fields in your Defect Summary grid or Defect Tab. 


Progress Notification when Copying Objects

A progress notification will display when you copy/paste more than 20 objects (Requirements, Test Cases or Test Runs) or at least one container (such as Module or Test Suite) on the left, folder tree. The notification will provide the total number of objects being copied.


Bug Fixes and Improvements

Ticket Component Description
20008 Performance/Test Cases The Test Steps and Assignee Fields load much faster.
21685 Performance/Requirements Requirements now load much faster.
NA Performance/Data Query

The Test Case result query has been improved.

NA Performance/Jira  Custom Fields for JIRA Requirements that sync to qTest displays the "Content Change" hyperlink in the History tab.  Previously, the JIRA API would return a long JSON string. 
NA Performance/Security

Passwords have been updated from SHA-1 to SHA-3. This is an update to the hashing algorithm. This only applies to native password manager and not for SAML integrated users. You will need to reset your password for this change to take effect. 

NA Performance/Security

The SSO login method has been made more secure.

NA Performance/Security Cross-site scripting (XXS)
15933 Test Runs

These hyperlinks available in a Rich Text Editor or URL Field of a Test Run:

  • Rich Text Editor Field: right-click and select open in a new tab/window.
  • URL Field:
    • View Mode-click directly in the link to open in a new tab, or right-click to open in new tab/window.
    • Edit Mode-URL will not be clickable until you select the 'checkmark' icon to save
      Note: This functionality existed on other objects. This was a bug fix to implement expected behavior on these Test Run fields. 
15954 Rich Text Editor Hyperlinks in the Rich Text Editor now opens when you click on the URL. Previously, to open the URL you would need to also select the Shift key. This has been fixed.
15998 Fields Multiple Selection fields will now show the first two selections followed by the total number of selections in parentheses. Multiple Selection combo boxes will show the total number of selections in the display field. 
16835 TestPad The scroll bar on a TestPad is now displaying properly.
17337, 19325 TestPad Previously, if a user had an apostrophe in their username the TestPad would be in a constant loading pattern when trying to open in a new window. This has been fixed.
18612 Release Releases were not being created if 'link to requirements' checkbox is selected. This is resolved.
17902 Unlinked Jira Defects You will now see all of your unlinked JIRA Defects in Insights. 
17738, 16061 Passwords You will now receive one password reset reminder email per day when it is close to your password expiration deadline.  Previously, some users were receiving multiple emails per day. This is resolved. 
19057 Requirements Previously, when importing requirements via JIRA integration, that included a special character would display as HTML code in the folder name. This is fixed.
18636 Test Suite In the Test Suite view, column sorting did not work properly and would provide a 500 error when ID was not the first column in the grid. This has been resolved.
17164 Site Fields You can now use drag and drop to reorder Site Fields while in Site Administration.
18755 Reports

Users can now successfully email Test Run Summary by Assignees reports. Previously, this feature was not working properly. 

18352, 18639, 18018 SSO

Previously, the SAML Token expired after eight hours which caused customers who signed on via SSO to have trouble logging in without routinely clearing their cache.

The timeout configuration has been extended from eight hours to one week. This allows customers who need longer log-in sessions to login via SSO without routinely clearing their cache information. 

20264 Jenkins/Cucumber

Cucumber results from Jenkins builds now successfully send to qTest. Previously, if a child folder existed under a module containing the cucumber features, those results would fail to send from Jenkins to qTest.

19644 Test Execution Data concerning the percentage of passed tests are consistent between the Test Execution summary and the Statistics tab. Previously, values were rounded in the Test Execution summary but truncated in the Statistics tab.
18518 Requirements

When retrieving requirements using the Gets multiple requirements endpoint, qTest no longer produces incorrect results. Previously, both duplicate requirements were populated, and some requirements were missing.

17232 Test Design Previously, in Test Design when a user would tab from a step description to the expected result description, they could not type into the field as the rich text editor closes. This has been resolved.
18166 Data Query When exporting a data query to excel, a title of 'null' was given to the excel file when a data query name was not provided. This has been resolved.
18830 API's Previously, when using the API the PUT request would have missing values in the rich text field, of a Requirement and Release object. This has been fixed. 
17832 Field Settings

Users can use Korean in Profile Details. Previously, users could not add Korean in the "Field name" section of My Profile.

16994 Test Steps

 If users add a Test Step in between existing steps, tabbing no longer skips the newly added step. Previously, tabbing skipped this new step.

20644 Query Users can now query by requirements with Target Release/Build by "N/A." 
21599 Test Cases Previously, changing the status of a Test Case and saving fails to update the test case. "Saving failed. Please try again later" message would appear. This has been resolved.
21783, 21708 API

 Previously, the 'auto-test-logs'API endpoint failed to create Test Runs correctly. This has been resolved. 

22074, 22077, 22140, 22163, 21905 Test Cases Users can now add Test Steps correctly when using IE11. Previously, the Test Step description was lost when focusing out of the rich text editor.
14943 Test Runs

Unable to move on to creating new test runs for a test case that has parameters when creating multiple runs. Resolved.

If multi-selected, it would like to be changed to display the selection target instead of 'Multiple Selection' in the UI. Resolved.

16386 Fields Issues wth the "Execution Tpe" field have been resolved.
16543 Custom Fields Custom Fields are no longer being improperly deleted.
17594 General You can now move forward between cells using TAB key in Firefox, IE11.
17489 General Users can now combine sorting and check-box selection in the add-project-users window.
NA API No longer does the send API update TestRun to change to previous test case version and change the status in the tree to "Unexecuted."
NA Test Runs

Input data is validated when assigning a value to parameters while creating Test Runs.

19398 Appearance The color black has been removed and replaced with dark slate gray from the 'Test Run Status' color pad because the status label could not be read if a user selected black.
17611 Site Fields The "Configuration" Site Field for a Test Run will now save properly.
17840 Data Query You can now add a value up to 59.9 for the 'Planned Time' field when using a data query to batch edit test runs. Previously, you could not enter a value higher than 2.99.
17977 Test Cases Test Cases can now be copied from one project to another without resulting in an error.
20030 Site Templates

Having a custom site template applied to a project where the site template contains many custom values no longer impacts performance.

20037 API Get Request for a specific version of a test case now returns the proper values.
20211 Site Fields Deleted values and field in Site Field no longer return after version upgrade.
NA Test Case/Site Fields

You can now copy/paste a Test Case with Site Field Custom Values to a destination project correctly.

NA Data Query

The request to fetch the detailed resource (i.e Test Case) of a Requirement no longer queries all Requirements in a project.

NA Site Fields

Enabling a Site Field template for a project no longer causes 'select n+1 issue' for custom field values.


Previously, a 500-Internal Server Error with SQL query was returned on JSON response when sending request "Gets all Users in a Project" with inactive=false. This has been fixed.

 NA  Site Admin

The Configurations section in Site Administration will now require the Display Name value to be entered before you can save. Previously, you could save a new Configuration without a display name value entered, which would result in an error.

 NA  Permissions

There are no longer issues with dragging, dropping, or moving Permissions To Relocate Requirements for QA Role.


There are no longer issues selecting data rows and specifying the range of rows.

 NA  Field Settings

Default values are now shown when previewing Field Settings


  Tasktop is now supported


The API token for Jenkins integration has been updated.

NA Test Cases/Test Runs

You can now create Test Runs from a Test Case that contains Parameters.

NA Fields

There is no longer an issue saving after updating the "Assign to" field for a Requirement, Test Suite, or Defect in the case that the artifact has a combo box type site/custom field with an empty value.

Known Limitations

  1. If you had submitted test logs from a Jenkins Project to qTest before, you should pay attention to avoid setting the "Parent Module" (in Automation Settings > CI Tool) to be one of the descendant modules (if any) of qTest's Automation Module (automatically created by Jenkins on the first build). Otherwise, that will cause an infinite loop, causing the Web UI to crash. We are working to prevent that from happening in a future hotfix.
  2. Site Fields
    • For other fields, only the private values show up as Italicized in the project's Field Settings. For an Environment field, all values are italicized.
    • You cannot configure an Environment field's value to exclude from specific projects
Powered by Zendesk