Resources · n8n integration

Zammad n8n integrationAutomate Zammad with n8n.

How far can a Zammad n8n integration go without writing code? The node ships with n8n and exposes 21 operations across 4 resources: tickets, users, groups and organizations. No Zammad trigger exists, so a Schedule Trigger or a webhook starts the run. For support and ops teams.

Verified Trustpilot reviews · AI, automation & growth agency

Why automate

What does the Zammad n8n integration actually cover?

The Zammad node ships with n8n and calls the Zammad API on four objects: tickets, users, groups and organizations. That is 21 operations, the usual create, read, update and delete on each, plus one shortcut that returns the account behind the credential. No Zammad trigger node exists, so something else in n8n starts the workflow and the Zammad node does the work.

Start with the alerting path, because it is the one teams build first. A monitoring service posts to an n8n Webhook node, the workflow shapes the payload, and ticket.create opens a ticket in the right queue with the raw details as a first article. Nobody copies a stack trace into a form anymore. The same pattern works from a form, from a shared mailbox read by the Gmail node, or from any tool that can call a URL.

The second path is reporting. A Schedule Trigger fires each morning, ticket.getAll returns the open tickets, and the list goes out as a digest to Slack or as rows in Google Sheets. Support leads get the numbers without an export, and the spreadsheet becomes the shared view that dashboards never quite replace.

The third one is keeping people and companies in sync. When a deal closes, organization.create puts the account in the help desk, user.create adds the contacts, and user.update keeps email addresses and company assignments correct over time. Tickets then land already attached to a company instead of to a stray address.

Reach for the HTTP Request node when the operation is not in the list. The node covers four resources, and Zammad exposes more than that. Since the Zammad credential works with HTTP Request through predefined authentication, calling another endpoint costs one extra node, not a second connection. Two of the public Zammad templates do exactly this, mixing the node with HTTP Request.

Known limits are worth stating up front. There is no trigger, so reaction time depends on how often your Schedule Trigger runs, and the delete operations are wired for cleanup rather than for daily traffic. If you are still choosing a platform, the n8n review goes through the trade-offs, and the n8n training covers building these workflows hands on.

Connect

How do you connect Zammad to n8n?

  1. 01

    Turn on API Token Access in Zammad

    Token auth is the method Zammad recommends, and it has to be switched on before any token exists. Open Settings, then System, then API, and enable API Token Access. Basic auth works too and needs nothing enabled, but it carries a real login, so most teams keep it for a quick test and move on.

  2. 02

    Create the access token with the right permissions

    Any user holding the user_preferences.access_token permission can generate one from their avatar, then Profile, then Token Access, then Create. The token only does what you tick. For everything the node can do, select admin.group, admin.organization, admin.user, ticket.agent and ticket.customer.

  3. 03

    Add the credential in n8n

    In n8n, a credential is saved once under the Credentials menu and reused by every workflow. Create a Zammad credential, paste the Base URL of your instance and the Access Token. With basic auth, the fields are Base URL, Email and Password instead. The node then offers the credential in its dropdown.

Actions

What can the Zammad node do?

The Zammad node exposes 21 operations across 4 resources. For each one: the node as you configure it in n8n, the required fields, and our field notes.

Resources × operations matrix
ResourceCreateGetGet ManyUpdateDeleteGet Self
Group✓✓✓✓✓
Organization✓✓✓✓✓
Ticket✓✓✓✓✓
User✓✓✓✓✓✓

Group

5 operations
01

Create a group

group.create

What you see in n8n

Notes & use cases

Groups are the queues a ticket lands in, and this operation adds one from a workflow rather than from the admin screen. Handy when a new team or a new product line needs its own inbox.

Key parameters

  • Group Name: the only required field, the label agents see in the queue picker, often fed by an expression such as {{ $json.team }}.
  • Additional Fields: three optional entries, Active to open or freeze the queue right away, Notes for an internal description, Custom Fields for anything your instance added.
Use cases
onboarding a client who gets a dedicated queue, created in the same run that sets up the rest of their account.
02

Delete a group

group.delete

What you see in n8n

Notes & use cases

Removes a queue from the instance. This one belongs at the end of a cleanup workflow, not in a run that fires every hour, since there is no undo step in the node to pair it with.

Key parameters

  • Group ID: the identifier of the group, not its name. An expression is the usual way to fill it, for example {{ $json.id }} carried from a Get many groups step.
Use cases
a quarterly tidy-up that reads a list of retired queues from a spreadsheet and clears them in one execution, after someone has approved the list.
03

Get a group

group.get

What you see in n8n

Notes & use cases

Reads a single group and returns its record. A workflow uses it to confirm a queue exists, and to look at its notes, before routing anything into it.

Key parameters

  • Group ID: the group to retrieve. The field accepts an expression, so a value carried from an earlier node drops straight in.
Use cases
an escalation branch that checks the target queue is still active before it moves a ticket, instead of failing silently three steps later.
04

Get many groups

group.getAll

What you see in n8n

Notes & use cases

Returns the groups configured on the instance. It is the simplest way to turn queue names into the identifiers every other Group operation expects.

Key parameters

  • Return All: on, n8n keeps asking the Zammad API for the next page until every group is in. Off, the run stops at Limit.
  • Limit: the maximum number of groups returned when Return All stays off, useful while you shape a workflow.
Use cases
building a routing table once a night, so ticket creation picks a queue identifier instead of guessing a name.
05

Update a group

group.update

What you see in n8n

Notes & use cases

Edits a queue in place. Renaming a team or freezing a queue during a migration goes through here, rather than deleting and recreating the group and losing its identifier.

Key parameters

  • Group ID: identifies the queue to edit, required even when a single field changes.
  • Update Fields: four optional entries, Group Name for the new label, Active to freeze or reopen, Notes, Custom Fields.
Use cases
a seasonal queue that only accepts tickets during the campaign, flipped by two scheduled runs.

Organization

5 operations
06

Create an organization

organization.create

What you see in n8n

Notes & use cases

Companies live in Zammad as organizations. This operation creates one from whatever a CRM or a signup form sends, so later tickets attach to an account instead of to a lone email address.

Key parameters

  • Organization Name: required, the company label shown on every linked ticket.
  • Additional Fields: seven optional entries. Domain with Domain Assignment attaches users by their email domain, VIP flags a key account, then Shared, Active, Notes and Custom Fields.
Use cases
a deal closes and the account already exists in the help desk before the first support email arrives.
07

Delete an organization

organization.delete

What you see in n8n

Notes & use cases

Takes a company record out of the instance. Put it behind an approval step in a data hygiene workflow, because other records point at an organization and nothing in the node puts it back.

Key parameters

  • Organization ID: the record to remove, set through an expression when the value comes from a previous node.
Use cases
clearing duplicate company records that a nightly comparison flagged, once a human has ticked them off in a review sheet.
08

Get an organization

organization.get

What you see in n8n

Notes & use cases

Fetches one organization and returns its fields, including the notes and the VIP flag that an agent would otherwise open a browser tab to read.

Key parameters

  • Organization ID: the record to retrieve. A company name will not work here, the field expects the identifier.
Use cases
enriching an alert with the account name and its VIP status before the message reaches the on-call channel, so whoever picks it up knows what is at stake.
09

Get many organizations

organization.getAll

What you see in n8n

Notes & use cases

Reads the organization list. This is the export operation of the resource, the one that feeds reporting living outside the help desk.

Key parameters

  • Return All: enabled, every organization comes back page after page, which is what a complete export needs.
  • Limit: with Return All off, this caps how many organizations a single execution returns.
Use cases
a monthly account list pushed to a spreadsheet, so sales and support argue over the same company names instead of two different lists.
10

Update an organization

organization.update

What you see in n8n

Notes & use cases

Applies changes to a company that already exists. Nothing is required beyond the identifier, so a workflow can touch one field and leave the rest of the record untouched.

Key parameters

  • Organization ID: which record to edit.
  • Update Fields: seven optional entries, the same set as creation. VIP and Active change how the account is treated, Domain and Domain Assignment change who gets attached to it.
Use cases
a customer moves to a higher support tier and the VIP flag flips the same night.

Ticket

5 operations
11

Create a ticket

ticket.create

What you see in n8n

Notes & use cases

Most Zammad workflows end on this operation. It opens a ticket in a chosen queue, for a known customer, with a first message attached.

Key parameters

  • Title: required, what agents scan in the queue.
  • Group Name or ID: required, the queue that owns the ticket. Pick it from the list, First-Level Helpdesk for instance, or pass an ID by expression.
  • Customer Email Name or ID: required, the email address of the customer concerned, such as {{ $json.email }}.
  • Article: required, the first message, with Body, Article Type (chat, email, fax, note, phone or sms) and Visibility, where internal stays with the help desk.
Use cases
a monitoring alert becomes a ticket carrying the full payload as an internal note.
12

Delete a ticket

ticket.delete

What you see in n8n

Notes & use cases

Deletes a ticket by identifier. Rarely part of a routine flow, more often a cleanup step for test tickets or for items a loop created twice.

Key parameters

  • Ticket ID: the ticket to delete, given as an identifier through an expression when it comes from an earlier step.
Use cases
a staging instance that wipes the tickets generated by an integration test after each run, so the queue stays readable for the people testing next to you.
13

Get a ticket

ticket.get

What you see in n8n

Notes & use cases

Retrieves one ticket with its current fields. That is how a workflow reads state, owner and priority before deciding what to do next.

Key parameters

  • Ticket ID: the ticket to retrieve, passed as an identifier, usually {{ $json.id }} from the item that opened the branch.
Use cases
a reminder workflow that checks whether a ticket is still open before it pings the owner a second time, which is the difference between useful and annoying.
14

Get many tickets

ticket.getAll

What you see in n8n

Notes & use cases

Lists tickets from the instance. Paired with a Schedule Trigger, it is as close as this node gets to a trigger, since Zammad has no trigger node in n8n.

Key parameters

  • Return All: on, n8n keeps requesting pages until the whole list is retrieved, which reporting runs need.
  • Limit: with Return All off, this sets the maximum number of tickets returned, enough for a daily digest.
Use cases
every morning, pull the open tickets and post a short summary to the support channel.
15

Update a ticket

ticket.update

What you see in n8n

Notes & use cases

Day-to-day automation mostly sits here. One call can reassign, reprioritize, change the state and drop an internal note on the same ticket.

Key parameters

  • Ticket ID: the only required value.
  • Update Fields: nine optional entries. State, Priority, Owner, Group and Customer come from lists or expressions, Note adds an internal comment, Title rewrites the subject.
  • Pending Time: the date and time a pending ticket becomes active again, required for the pending reminder, pending close and snooze states.
Use cases
an unanswered ticket climbs a priority level and lands on a lead agent.

User

6 operations
16

Create a user

user.create

What you see in n8n

Notes & use cases

Adds a person to Zammad. Two names are enough to get a record in, everything else rides along in the optional collection.

Key parameters

  • First Name and Last Name: the two required fields, John and Smith in the node placeholders.
  • Additional Fields: 13 optional entries. Email Address matters most, since ticket creation identifies a customer by email, then Organization Name or ID, Phone (Mobile), Department, VIP and Verified.
Use cases
a signup form fills the help desk with real contacts, so the first ticket already has a name on it.
17

Delete a user

user.delete

What you see in n8n

Notes & use cases

Erases a user record. The identifier is the only input, which makes this operation easy to wire and easy to fire by mistake. Put a filter in front of it.

Key parameters

  • User ID: the record to remove, specified through an expression when the value arrives from a previous node.
Use cases
an offboarding workflow that clears the accounts of people who left, running from a list that HR has already confirmed.
18

Get a user

user.get

What you see in n8n

Notes & use cases

Single-record lookup. Returns the person behind an identifier, with the organization, the contact details and the flags that were filled in.

Key parameters

  • User ID: the identifier of the user to read, not the email address.
Use cases
before a satisfaction survey goes out, read the requester record and skip anyone whose account is no longer active, which keeps the bounce rate down and the numbers honest.
19

Get many users

user.getAll

What you see in n8n

Notes & use cases

Searches the user base and returns a list. This operation carries a Filters collection the other list operations do not have, which makes it a search rather than a dump.

Key parameters

  • Query: a search string such as user.firstname:john, which narrows the result set before it reaches n8n.
  • Sort: orders the results on the way out.
  • Return All and Limit: every match, or a capped number while you refine the query.
Use cases
listing every contact at a company before a maintenance notice goes out.
20

Get currently logged-in user

user.getSelf

What you see in n8n

Notes & use cases

Returns the account the credential authenticates as, with its identifier and its details as Zammad stores them. There is nothing to configure: no record ID, no expression, no optional collection. That makes it the fastest way to prove a credential actually works before building anything on top of it.

Use cases
drop it as the first node when setting up a new Zammad credential, or run it on a schedule as a health check that warns the team the day a token stops answering, rather than the day a ticket goes missing.
21

Update a user

user.update

What you see in n8n

Notes & use cases

Keeps a contact record current. The identifier decides who changes, the optional collection decides what, and untouched fields stay as they were.

Key parameters

  • User ID: required, the record to edit.
  • Update Fields: 15 optional entries, the widest collection in the node. Organization Name or ID moves someone to another company, Email Address, Phone (Landline) and Website refresh contact details, Active retires an account without deleting it.
Use cases
a CRM sync that pushes job changes into the help desk.
Need help

Need help automating Zammad with n8n?

A person reads every message.

FAQ

Zammad and n8n, the questions that come next

01Is the Zammad n8n integration free?
Yes on the n8n side. The Zammad node is built into n8n, so there is nothing to install and nothing extra to pay for the node itself, whether you run n8n Cloud or a self-hosted instance under the Community Edition and its Sustainable Use licence. A workflow built on one runs the same on the other. What Zammad costs you depends on your own plan or your own server, and that sits outside what the n8n node changes. The 21 operations are all available from the moment a credential is saved.
02What credentials do you need to connect Zammad to n8n?
Two methods work. Basic auth needs the Base URL of your instance, the email address you log in with and your password. Token auth, the method Zammad recommends, needs the Base URL and an Access Token, and API Token Access has to be enabled first under Settings, System, API. Any user with the user_preferences.access_token permission can then create a token from their avatar, Profile, Token Access. Tick admin.group, admin.organization, admin.user, ticket.agent and ticket.customer to cover everything the node does. Both methods offer Ignore SSL Issues for instances behind a self-signed certificate.
03What are the limits of the Zammad node in n8n?
The node covers four resources: tickets, users, groups and organizations. Anything outside those four resources goes through the HTTP Request node instead, which calls any endpoint of the Zammad API and reuses the same credential through predefined authentication. Two of the public Zammad templates already combine both. On list operations, Return All pages through the API until everything is returned, while leaving it off caps the result at Limit, which is the usual reason an export looks incomplete. There is also no trigger node, which is the next question.
04Does the Zammad node react in real time?
No, because Zammad has no trigger node in n8n. A workflow that concerns Zammad starts somewhere else: a Schedule Trigger running at a fixed interval, an n8n Webhook node called by another service, or the trigger of another tool entirely. In practice, teams pair a Schedule Trigger with Get many tickets and check the queue on a rhythm that matches their support hours. The other direction is immediate: when an external event hits an n8n Webhook, Create a ticket opens the ticket as soon as the workflow runs.
05n8n or Make for Zammad?
Depends on where your data can live and how you want to pay. Make is hosted only and billed per operation, so a workflow that loops through hundreds of tickets has a cost you can calculate in advance. n8n runs on n8n Cloud or on your own server through Docker or npm, which matters when the help desk holds customer data you would rather keep in house, and pricing does not follow the number of operations the same way. Both give you a visual editor. The honest tiebreaker is usually hosting, not features.