From 2f86042c6d0ff1db4fbb694e52f5bf74470dc090 Mon Sep 17 00:00:00 2001 From: Roy Hill-Percival Date: Mon, 16 Jun 2025 06:58:54 -0400 Subject: [PATCH 1/2] Added the ability to set tags on a ticket when updating --- .../zendesk/actions/update-ticket/update-ticket.mjs | 10 +++++++++- components/zendesk/zendesk.app.mjs | 6 ++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/components/zendesk/actions/update-ticket/update-ticket.mjs b/components/zendesk/actions/update-ticket/update-ticket.mjs index f3e44b6566f68..30ec3693adf52 100644 --- a/components/zendesk/actions/update-ticket/update-ticket.mjs +++ b/components/zendesk/actions/update-ticket/update-ticket.mjs @@ -5,7 +5,7 @@ export default { name: "Update Ticket", description: "Updates a ticket. [See the documentation](https://developer.zendesk.com/api-reference/ticketing/tickets/tickets/#update-ticket).", type: "action", - version: "0.1.3", + version: "0.2.0", props: { app, ticketId: { @@ -38,6 +38,12 @@ export default { "ticketStatus", ], }, + tags: { + propDefinition: [ + app, + "tags", + ], + }, customSubdomain: { propDefinition: [ app, @@ -62,6 +68,7 @@ export default { ticketPriority, ticketSubject, ticketStatus, + tags, customSubdomain, } = this; @@ -77,6 +84,7 @@ export default { priority: ticketPriority, subject: ticketSubject, status: ticketStatus, + tags: tags, }, }, }); diff --git a/components/zendesk/zendesk.app.mjs b/components/zendesk/zendesk.app.mjs index f2b60ed78f3ba..781e730101ab1 100644 --- a/components/zendesk/zendesk.app.mjs +++ b/components/zendesk/zendesk.app.mjs @@ -144,6 +144,12 @@ export default { optional: true, options: Object.values(constants.TICKET_STATUS_OPTIONS), }, + tags: { + type: "string[]", + label: "Tags", + description: "Tags to apply to the ticket. You can specify multiple tags.", + optional: true, + }, sortBy: { type: "string", label: "Sort By", From 785a1cbe270e361325197c357ae379ee9511ea9d Mon Sep 17 00:00:00 2001 From: Roy Hill-Percival Date: Mon, 16 Jun 2025 07:24:49 -0400 Subject: [PATCH 2/2] Zendesk - only update ticket props that are actually changing --- .../actions/update-ticket/update-ticket.mjs | 30 +++++++++++++------ 1 file changed, 21 insertions(+), 9 deletions(-) diff --git a/components/zendesk/actions/update-ticket/update-ticket.mjs b/components/zendesk/actions/update-ticket/update-ticket.mjs index 30ec3693adf52..8561096ad6211 100644 --- a/components/zendesk/actions/update-ticket/update-ticket.mjs +++ b/components/zendesk/actions/update-ticket/update-ticket.mjs @@ -72,20 +72,32 @@ export default { customSubdomain, } = this; + const ticket = { + ...(ticketCommentBody && { + comment: { + body: ticketCommentBody, + }, + }), + ...(ticketPriority && { + priority: ticketPriority, + }), + ...(ticketSubject && { + subject: ticketSubject, + }), + ...(ticketStatus && { + status: ticketStatus, + }), + ...(tags !== undefined && { + tags, + }), + }; + const response = await this.updateTicket({ step, ticketId, customSubdomain, data: { - ticket: { - comment: { - body: ticketCommentBody, - }, - priority: ticketPriority, - subject: ticketSubject, - status: ticketStatus, - tags: tags, - }, + ticket, }, });