arazzo: 1.0.1
info:
title: Zendesk Reassign Ticket to Agent
summary: Find an agent by name or email, then reassign a ticket to that agent.
description: >-
A find-then-act assignment pattern for Zendesk Support. The workflow searches
users for the target agent, branches on whether a match was found, and when
found reassigns the ticket to that agent and reopens it. The update body uses
the documented {ticket:{...}} envelope and is spelled out inline.
version: 1.0.0
x-realizes-capability-ids:
- BC-430.10
x-capability-derivation:
method: 'deterministic join: sourceDescriptions -> per-tag OpenAPI -> tag/capability edge. No classification at this step.'
min_confidence: 0.7
sources:
- capability_id: BC-430.10
capability_name: Customer Inquiry Management
spec: zendesk-tickets-api-openapi.yml
confidence: 0.92
model: Turbo EA Capabilities by Vincent Verdet — Turbo EA, https://github.com/vincentmakes/turbo-ea-capabilities, CC BY 4.0
sourceDescriptions:
- name: ticketsApi
url: ../openapi/zendesk-tickets-api-openapi.yml
type: openapi
- name: usersApi
url: ../openapi/zendesk-users-api-openapi.yml
type: openapi
workflows:
- workflowId: reassign-ticket-to-agent
summary: Resolve an agent by query and reassign a ticket to them.
description: >-
Searches users for the agent, and when found reassigns the supplied ticket
to that agent and sets it open.
inputs:
type: object
required:
- agentQuery
- ticketId
properties:
agentQuery:
type: string
description: A name, email, or other query identifying the target agent.
ticketId:
type: integer
description: The id of the ticket to reassign.
steps:
- stepId: findAgent
description: Search users for the target agent.
operationId: SearchUsers
parameters:
- name: query
in: query
value: $inputs.agentQuery
successCriteria:
- condition: $statusCode == 200
outputs:
agentId: $response.body#/users/0/id
onSuccess:
- name: agentFound
type: goto
stepId: reassignTicket
criteria:
- context: $response.body
condition: $.users.length > 0
type: jsonpath
- stepId: reassignTicket
description: Reassign the ticket to the resolved agent and set it open.
operationId: UpdateTicket
parameters:
- name: ticket_id
in: path
value: $inputs.ticketId
requestBody:
contentType: application/json
payload:
ticket:
assignee_id: $steps.findAgent.outputs.agentId
status: open
successCriteria:
- condition: $statusCode == 200
outputs:
ticketId: $response.body#/ticket/id
assigneeId: $response.body#/ticket/assignee_id
outputs:
agentId: $steps.findAgent.outputs.agentId
reassignedTicketId: $steps.reassignTicket.outputs.ticketId
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.