Create an end user and open a ticket requested by that user.
Creates a Zendesk end user and then opens a new ticket that names the freshly created user as the requester, returning both the user id and the ticket id.
arazzo: 1.0.1
info:
title: Zendesk Create User and Open Ticket
summary: Create an end user, then open a support ticket with that user as the requester.
description: >-
A foundational Zendesk Support intake pattern. The workflow first creates an
end user from the supplied name and email, captures the new user id, and then
opens a ticket with that user set as the requester. Both Zendesk request
bodies are spelled out inline using the documented {user:{...}} and
{ticket:{...}} envelopes so the flow can be executed without opening the
underlying OpenAPI description.
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: create-user-and-ticket
summary: Create an end user and open a ticket requested by that user.
description: >-
Creates a Zendesk end user and then opens a new ticket that names the
freshly created user as the requester, returning both the user id and the
ticket id.
inputs:
type: object
required:
- name
- email
- subject
- commentBody
properties:
name:
type: string
description: The full name of the end user to create.
email:
type: string
description: The email address of the end user to create.
subject:
type: string
description: The subject line of the new ticket.
commentBody:
type: string
description: The body of the first public comment on the ticket.
priority:
type: string
description: Optional ticket priority (urgent, high, normal, low).
steps:
- stepId: createUser
description: Create the end user from the supplied name and email.
operationId: CreateUser
requestBody:
contentType: application/json
payload:
user:
name: $inputs.name
email: $inputs.email
role: end-user
successCriteria:
- condition: $statusCode == 201
outputs:
userId: $response.body#/user/id
- stepId: createTicket
description: Open a ticket with the new user as the requester.
operationId: CreateTicket
requestBody:
contentType: application/json
payload:
ticket:
subject: $inputs.subject
comment:
body: $inputs.commentBody
public: true
requester_id: $steps.createUser.outputs.userId
priority: $inputs.priority
successCriteria:
- condition: $statusCode == 201
outputs:
ticketId: $response.body#/ticket/id
ticketStatus: $response.body#/ticket/status
outputs:
userId: $steps.createUser.outputs.userId
ticketId: $steps.createTicket.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.