Create Ticket
zammad.create_ticket
ActionBusiness appsconnection required
Calls the Zammad API with the connection's credentials.
Open a ticket in a group, optionally with its first article.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- API key
- Providers
- Zammad
- Secret shape
- the API token, or {"api_token": "…"}
- Config it needs
- base_url
- Resolved by
- config.connection_id, else node.connection_id
Configuration
12 fields, 3 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
title The ticket's title, as it appears in the agent's list. | string | Yes | — | — | Printer in reception is offline |
group The group the ticket is routed to, by name or by id. | string | Yes | — | — | Users |
customer The customer the ticket belongs to, by email address or by id. | string | Yes | — | — | david@example.com |
article_body Body of the article to post as the ticket's first message. Leave blank to change nothing but the ticket's own attributes. | string | No | — | — | Thanks for getting in touch — we are looking into this now. |
article_subject Subject line for that article. | string | No | — | — | Re: printer offline |
article_type Zammad's article type, such as note, email or phone; every install defines its own set, so this is free text. | string | No | — | — | note |
article_sender Whether the article is written as the customer or as an agent. | string | No | — | one of "Customer", "Agent" | — |
article_internal Keep the article internal, so the customer never sees it. | boolean | No | false | — | — |
state The state to open the ticket in, by name or by id; Zammad uses 'new' when this is blank. | string | No | — | — | new |
priority The ticket's priority, by name or by id. | string | No | — | — | 2 normal |
owner The agent to assign the ticket to, by login, email address or id. | string | No | — | — | agent@acme.com |
fields Any further ticket attributes, including this install's custom object attributes, as a JSON object such as {"note": "Imported from the old desk"}. | object | No | — | — | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"article_body": "Thanks for getting in touch — we are looking into this now.",
"article_internal": false,
"article_subject": "Re: printer offline",
"article_type": "note",
"customer": "david@example.com",
"group": "Users",
"owner": "agent@acme.com",
"priority": "2 normal",
"state": "new",
"title": "Printer in reception is offline"
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
id The ticket's numeric id. | number | — |
number The ticket number people quote, such as '67001'. | string | — |
title The ticket's title. | string | — |
group_id Id of the group the ticket is routed to. | number | — |
state_id Id of the ticket's state. | number | — |
priority_id Id of the ticket's priority. | number | — |
owner_id Id of the agent the ticket is assigned to. | number | — |
customer_id Id of the customer the ticket belongs to. | number | — |
organization_id Id of the customer's organization. | number | — |
created_at When the ticket was opened, as an ISO 8601 stamp. | string | — |
updated_at When the ticket last changed, as an ISO 8601 stamp. | string | — |
article_ids Ids of the articles on the ticket. | array | — |
ticket_time_accounting_ids Time accounting entries, if any. | array | — |
{
"article_ids": [],
"created_at": "",
"customer_id": 0,
"group_id": 0,
"id": 0,
"number": "",
"organization_id": 0,
"owner_id": 0,
"priority_id": 0,
"state_id": 0,
"ticket_time_accounting_ids": [],
"title": "",
"updated_at": ""
}Notes
- Zammad takes a name or an id for group, customer, state, priority and owner; whichever you write is sent through unchanged.
- The article is only sent when 'article_body' has something in it.
See Create Ticket run in a workflow.
In a technical demo we add the Zammad connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.