# Zammad MCP connector

The Zammad connector lets Claude, ChatGPT, Cursor, and any MCP client look up and update Zammad customers, organizations, groups, roles, and SLAs on your behalf, with each request running under your own Zammad access and recorded in an audit log.

Source: https://elaichi.ai/connectors/zammad/

## Facts

| | |
| --- | --- |
| Application | Zammad |
| Category | Helpdesk |
| AI tools | 98 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 98 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Zammad is connected

- Show open tickets in the Support group this week.
- Which organizations filed the most tickets last month?
- List Zammad users added to the Billing group.

## Connect Zammad in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Zammad.
2. Optionally set Share with, then press Connect.
3. Paste a Zammad API key. One person generates a token in Zammad and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Zammad tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Zammad to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Zammad to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Zammad to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Zammad to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Zammad tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Zammad through Elaichi

### Find a customer before you reply

Support. Ask for a customer by name or email and get their Zammad profile, the organization they belong to, and the SLA that applies, all before you write the first line of a reply.

### Fix a customer record after a call

Support. When a caller gives you a new phone number, job title, or preferred name, say so in plain words and the Zammad user record is updated while you are still on the line.

### Set up a new client organization

Account management. Create the organization in Zammad, add its domain and notes, and confirm which customers are attached to it, without opening the admin area.

### Reorganize groups as the desk grows

Support operations. List every Zammad group, create a new one for a product line or region, and rename or retire groups that no longer match how the team works.

### Review who holds which role

IT. Pull the list of Zammad roles and the agents assigned to each, spot anyone with more access than their job needs, and adjust the role in a sentence.

### Check the SLA for an account

Customer success. Ask which SLA covers a given organization in Zammad and what response and update times it promises, so you can set expectations with the customer accurately.

## Frequently asked questions

### How do I connect Zammad to Claude?

First, open Elaichi, choose Zammad, and paste in an API key from your Zammad profile, which takes about a minute. There is no OAuth application to register and no client ID or secret to generate. Then in Claude go to Customize, then Connectors, then Add, and paste the endpoint https://api.elaichi.ai/mcp. Sign in as yourself and Zammad is available in your conversation.

### Does Zammad work with ChatGPT and Cursor as well as Claude?

Yes. Once Zammad is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client, and the Elaichi Agent. You connect Zammad once and every client you use picks it up.

### What can an AI agent actually do with my Zammad data?

With Zammad connected, an agent can find a customer by name or email, show which organization they belong to, update their contact details, create or edit organizations, manage groups and roles, and look up which SLA applies to an account. Short, concrete asks work best, such as "find the customer with this email in Zammad" rather than a long paragraph. Everything the agent does is limited to what your own Zammad account is allowed to do.

### Does connecting Zammad give the AI access to my whole helpdesk?

No. Every request to Zammad runs as the person who signed in, so the agent sees only the customers, organizations, groups, and roles that person can already see in Zammad. Elaichi can narrow that further, for example to read-only or to specific actions, but it can never grant more than your Zammad permissions allow.

### Can my team share one Zammad connection?

Yes. One administrator connects Zammad in Elaichi and shares the connection with a team, and nobody else ever handles the API key. Each teammate still signs in to Elaichi as themselves, so the audit log records exactly who looked up or changed a Zammad customer, organization, or role.

### Can I stop an agent from deleting or changing things in Zammad?

Yes. In Elaichi you can block individual actions on the Zammad connector, such as deleting a user, deleting an organization, or editing roles, while leaving lookups and updates available. A blocked action is never shown to Claude, ChatGPT, or any other client, so no prompt, accidental or otherwise, can trigger it.

### What happens to a Zammad connection when someone leaves?

When you offboard a person in Elaichi, their access to Zammad through every connected client ends immediately. If they were using a shared Zammad connection, it keeps working for everyone else on the team. If you want to remove Zammad entirely, disconnecting it once in Elaichi removes it from Claude, ChatGPT, Cursor, and every other client at the same time.

## All 98 Zammad tools

Every tool below is callable through https://api.elaichi.ai/mcp once Zammad is connected, subject to the toolbox it is in and the restrictions on the caller.

- **Zammad users get me** (Get). Get the currently authenticated Zammad user. Returns: active, address, authorization_ids, city, country, created_at, created_by_id, department, email, fax, firstname, group_ids, id, image, image_source, last_login, lastname, login, login_failed, mobile, note, organization_id, organization_ids, out_of_office, out_of_office_end_at, out_of_office_replacement_id, out_of_office_start_at, overview_sorting_ids, phone, preferences, role_ids, source, street, two_factor_preference_ids, updated_at, updated_by_id, verified, vip, web, zip.
- **List all Zammad users** (List). List Zammad users. Returns per user: id, login, email, firstname, lastname, active, organization_id, role_ids, preferences, created_at, updated_at. Returns: active, address, authorization_ids, city, country, created_at, created_by_id, department, email, fax, firstname, group_ids, id, image, image_source, last_login, lastname, login, login_failed, mobile, note, organization_id, organization_ids, out_of_office, out_of_office_end_at, out_of_office_replacement_id, out_of_office_start_at, overview_sorting_ids, phone, preferences, role_ids, source, street, two_factor_preference_ids, updated_at, updated_by_id, verified, vip, web, zip.
- **Update a Zammad user by ID** (Update). Update a Zammad user by id with attributes such as phone, department, and address. Returns the updated user object including id, login, email, firstname, lastname, active, role_ids, created_at, updated_at. Returns: active, address, authorization_ids, city, country, created_at, created_by_id, department, email, fax, firstname, group_ids, id, image, image_source, last_login, lastname, login, login_failed, mobile, note, organization_id, organization_ids, out_of_office, out_of_office_end_at, out_of_office_replacement_id, out_of_office_start_at, overview_sorting_ids, phone, preferences, role_ids, source, street, two_factor_preference_ids, updated_at, updated_by_id, verified, vip, web, zip. Required: id.
- **Delete a Zammad user by ID** (Delete). Delete a Zammad user by id. This is a permanent removal that cannot be undone and may also remove related references such as tickets. Returns an empty 200 response with {} on success. Returns: empty response. Required: id.
- **Zammad users search** (Search). Search Zammad users by query string. Returns matching user records including id, login, firstname, lastname, email, organization_id, active, vip, created_at, updated_at, role_ids, and group_ids. Returns: active, address, authorization_ids, city, country, created_at, created_by_id, department, email, fax, firstname, group_ids, id, image, image_source, last_login, lastname, login, login_failed, mobile, note, organization_id, organization_ids, out_of_office, out_of_office_end_at, out_of_office_replacement_id, out_of_office_start_at, overview_sorting_ids, phone, preferences, role_ids, source, street, two_factor_preference_ids, updated_at, updated_by_id, verified, vip, web, zip. Required: query.
- **List all Zammad organizations** (List). List all organizations in Zammad. Returns: active, created_at, created_by_id, domain, domain_assignment, id, member_ids, name, note, secondary_member_ids, shared, updated_at, updated_by_id, vip.
- **Get single Zammad organization by ID** (Get). Get a single Zammad organization by id. Returns: active, created_at, created_by_id, domain, domain_assignment, id, member_ids, name, note, secondary_member_ids, shared, updated_at, updated_by_id, vip. Required: id.
- **Create a Zammad organization** (Create). Create a new organization in Zammad. Returns: active, created_at, created_by_id, domain, domain_assignment, id, member_ids, name, note, secondary_member_ids, shared, updated_at, updated_by_id, vip. Required: name.
- **Update a Zammad organization by ID** (Update). Update an existing Zammad organization by id. Returns: active, created_at, created_by_id, domain, domain_assignment, id, member_ids, name, note, secondary_member_ids, shared, updated_at, updated_by_id, vip. Required: id.
- **Delete a Zammad organization by ID** (Delete). Delete a Zammad organization by id. This is a permanent removal that cannot be undone. Organizations with references in activity streams or users cannot be deleted. Returns an empty 200 response with {} on success. Required: id.
- **Zammad organizations search** (Search). Search Zammad organizations by query string. Returns matching organizations with id, name, shared, domain, domain_assignment, active, note, vip, member_ids, secondary_member_ids, created_at, and updated_at. Returns: active, created_at, created_by_id, domain, domain_assignment, id, member_ids, name, note, secondary_member_ids, shared, updated_at, updated_by_id, vip. Required: query. Supports sort_by and order_by for result sorting, and full/expand to include related assets.
- **List all Zammad groups** (List). List all Zammad groups. Returns: active, assignment_timeout, created_at, created_by_id, email_address_id, follow_up_assignment, follow_up_possible, id, name, note, signature_id, updated_at, updated_by_id, user_ids.
- **Get single Zammad group by ID** (Get). Get a single Zammad group by id. Returns: active, assignment_timeout, created_at, created_by_id, email_address_id, follow_up_assignment, follow_up_possible, id, name, note, signature_id, updated_at, updated_by_id, user_ids. Required: id.
- **Create a Zammad group** (Create). Create a new Zammad group. Returns the created group with id, name, active, follow_up_possible, user_ids, created_at, updated_at. Returns: active, assignment_timeout, created_at, created_by_id, email_address_id, follow_up_assignment, follow_up_possible, id, name, note, signature_id, updated_at, updated_by_id, user_ids. Required: name. Subgroup names use :: as delimiter (e.g. Sales::Europe::South). follow_up_possible accepts yes or new_ticket.
- **Update a Zammad group by ID** (Update). Update a Zammad group by id. Returns the updated group with id, name, active, follow_up_possible, user_ids, created_at, updated_at. Returns: active, assignment_timeout, created_at, created_by_id, email_address_id, follow_up_assignment, follow_up_possible, id, name, note, signature_id, updated_at, updated_by_id, user_ids. Required: id, name. Subgroup names use :: as delimiter (e.g. Sales::Europe::South).
- **Delete a Zammad group by ID** (Delete). Delete a Zammad group by id. This is a permanent removal that cannot be undone; groups with references in tickets or activity streams cannot be deleted. Returns an empty 200 response with {} on success. Required: id.
- **Zammad groups search** (Search). Search Zammad groups by query string. Returns an array of group objects including id, name, name_last, active, follow_up_possible, parent_id, signature_id, email_address_id, shared_drafts, created_at, updated_at, and user_ids. Supports expand, full, sort_by, and order_by parameters for richer or sorted results. Returns: active, assignment_timeout, created_at, created_by_id, email_address_id, follow_up_assignment, follow_up_possible, id, name, note, signature_id, updated_at, updated_by_id, user_ids. Required: query.
- **List all Zammad roles** (List). List Zammad roles. Returns: active, created_at, created_by_id, default_at_signup, group_ids, id, knowledge_base_permission_ids, name, note, permission_ids, preferences, updated_at, updated_by_id.
- **Get single Zammad role by ID** (Get). Get a single Zammad role by id. Returns: active, created_at, created_by_id, default_at_signup, group_ids, id, knowledge_base_permission_ids, name, note, permission_ids, preferences, updated_at, updated_by_id. Required: id.
- **Create a Zammad role** (Create). Create a new Zammad role. Returns the created role with id, name, active, note, default_at_signup, permission_ids, group_ids, created_at, updated_at. Returns: active, created_at, created_by_id, default_at_signup, group_ids, id, knowledge_base_permission_ids, name, note, permission_ids, preferences, updated_at, updated_by_id.
- **Update a Zammad role by ID** (Update). Update an existing Zammad role by id. Returns the updated role with id, name, active, note, default_at_signup, permission_ids, group_ids, created_at, updated_at. Returns: active, created_at, created_by_id, default_at_signup, group_ids, id, knowledge_base_permission_ids, name, note, permission_ids, preferences, updated_at, updated_by_id. Required: id.
- **Zammad roles search** (Search). Search Zammad roles by query string. Returns matching roles with id, name, active, note, default_at_signup, permission_ids, group_ids, created_at, updated_at. Returns: active, created_at, created_by_id, default_at_signup, group_ids, id, knowledge_base_permission_ids, name, note, permission_ids, preferences, updated_at, updated_by_id. Required: query.
- **List all Zammad slas** (List). List Zammad SLAs. Returns: calendar_id, condition, created_at, created_by_id, first_response_time, id, name, response_time, solution_time, update_time, updated_at, updated_by_id.
- **Get single Zammad SLA by ID** (Get). Get a single Zammad SLA by id. Returns: calendar_id, condition, created_at, created_by_id, first_response_time, id, name, response_time, solution_time, update_time, updated_at, updated_by_id. Required: id.
- **Create a Zammad SLA** (Create). Create a new Zammad SLA. Returns: calendar_id, condition, created_at, created_by_id, first_response_time, id, name, response_time, solution_time, update_time, updated_at, updated_by_id. Required: name. SLAs depend on Zammad Calendars.
- **Update a Zammad SLA by ID** (Update). Update an existing Zammad SLA by id. Returns: calendar_id, condition, created_at, created_by_id, first_response_time, id, name, response_time, solution_time, update_time, updated_at, updated_by_id. Required: id.
- **Delete a Zammad SLA by ID** (Delete). Delete a Zammad SLA by id. This is a permanent removal and cannot be undone. Returns an empty 200 response on success. Required: id.
- **List all Zammad calendars** (List). List all Zammad calendars used for SLA calculations. Returns: business_hours, created_at, created_by_id, default, ical_url, id, last_log, last_sync, name, public_holidays, timezone, updated_at, updated_by_id.
- **Get single Zammad calendar by ID** (Get). Get a single Zammad calendar by id. Returns: business_hours, created_at, created_by_id, default, ical_url, id, last_log, last_sync, name, public_holidays, timezone, updated_at, updated_by_id. Required: id.
- **Create a Zammad calendar** (Create). Create a new Zammad calendar with business hours, timezone, and public holiday configuration. Returns: business_hours, created_at, created_by_id, default, ical_url, id, last_log, last_sync, name, public_holidays, timezone, updated_at, updated_by_id.
- **Update a Zammad calendar by ID** (Update). Update an existing Zammad calendar's name, timezone, business hours, public holidays, iCal URL, or note. Returns: business_hours, created_at, created_by_id, default, ical_url, id, last_log, last_sync, name, public_holidays, timezone, updated_at, updated_by_id. Required: id.
- **Delete a Zammad calendar by ID** (Delete). Delete a Zammad calendar by id. This is a permanent removal that cannot be undone. Calendars referenced by SLA configurations cannot be deleted. Returns an empty 200 response with {} on success. Required: id.
- **List all Zammad tickets** (List). List Zammad tickets. Returns: article_count, close_at, close_diff_in_min, close_escalation_at, close_in_min, create_article_sender_id, create_article_type_id, created_at, created_by_id, customer_id, escalation_at, first_response_at, first_response_diff_in_min, first_response_escalation_at, first_response_in_min, group_id, id, last_contact_agent_at, last_contact_at, last_contact_customer_at, last_owner_update_at, note, number, organization_id, owner_id, pending_time, preferences, priority_id, state_id, time_unit, title, type, update_diff_in_min, update_escalation_at, update_in_min, updated_at, updated_by_id.
- **Get single Zammad ticket by ID** (Get). Get a single Zammad ticket by id. Returns: article_count, close_at, close_diff_in_min, close_escalation_at, close_in_min, create_article_sender_id, create_article_type_id, created_at, created_by_id, customer_id, escalation_at, first_response_at, first_response_diff_in_min, first_response_escalation_at, first_response_in_min, group_id, id, last_contact_agent_at, last_contact_at, last_contact_customer_at, last_owner_update_at, note, number, organization_id, owner_id, pending_time, preferences, priority_id, state_id, time_unit, title, type, update_diff_in_min, update_escalation_at, update_in_min, updated_at, updated_by_id.
- **Create a Zammad ticket** (Create). Create a new Zammad ticket with an optional initial article. Returns the created ticket including id, number, title, group_id, customer_id, article_ids, ticket_time_accounting_ids, created_at, updated_at. Returns: article_count, article_ids, close_at, close_diff_in_min, close_escalation_at, close_in_min, create_article_sender_id, create_article_type_id, created_at, created_by_id, customer_id, escalation_at, first_response_at, first_response_diff_in_min, first_response_escalation_at, first_response_in_min, group_id, id, last_contact_agent_at, last_contact_at, last_contact_customer_at, last_owner_update_at, note, number, organization_id, owner_id, pending_time, preferences, priority_id, state_id, ticket_time_accounting_ids, time_unit, title, type, update_diff_in_min, update_escalation_at, update_in_min, updated_at, updated_by_id. Required: title, group, customer.
- **Update a Zammad ticket by ID** (Update). Update a Zammad ticket by id, optionally adding a new article. Returns the updated ticket including id, number, title, group_id, state_id, priority_id, article_ids, ticket_time_accounting_ids, updated_at. Returns: article_count, article_ids, close_at, close_diff_in_min, close_escalation_at, close_in_min, create_article_sender_id, create_article_type_id, created_at, created_by_id, customer_id, escalation_at, first_response_at, first_response_diff_in_min, first_response_escalation_at, first_response_in_min, group_id, id, last_contact_agent_at, last_contact_at, last_contact_customer_at, last_owner_update_at, note, number, organization_id, owner_id, pending_time, preferences, priority_id, state_id, ticket_time_accounting_ids, time_unit, title, type, update_diff_in_min, update_escalation_at, update_in_min, updated_at, updated_by_id. Required: id.
- **Delete a Zammad ticket by ID** (Delete). Permanently delete a Zammad ticket by id. All articles and attachments are lost and cannot be restored. Returns an empty 200 response with {} on success. Required: id.
- **Zammad tickets search** (Search). Search Zammad tickets by query string. Returns an array of ticket objects including id, number, title, group_id, priority_id, state_id, owner_id, customer_id, article_count, created_at, and updated_at. Supports expand to resolve relation IDs to names, full to include all related assets, and sort_by/order_by for sorting. Returns: article_count, close_at, close_diff_in_min, close_escalation_at, close_in_min, create_article_sender_id, create_article_type_id, created_at, created_by_id, customer_id, escalation_at, first_response_at, first_response_diff_in_min, first_response_escalation_at, first_response_in_min, group_id, id, last_contact_agent_at, last_contact_at, last_contact_customer_at, last_owner_update_at, note, number, organization_id, owner_id, pending_time, preferences, priority_id, state_id, time_unit, title, type, update_diff_in_min, update_escalation_at, update_in_min, updated_at, updated_by_id. Required: query.
- **Get single Zammad ticket article by ID** (Get). Get a single Zammad ticket article by id. Returns: attachments, body, cc, content_type, created_at, created_by, created_by_id, from, id, in_reply_to, internal, message_id, message_id_md5, origin_by_id, preferences, references, reply_to, sender, sender_id, subject, ticket_id, time_unit, to, type, type_id, updated_at, updated_by, updated_by_id. Required: id.
- **Create a Zammad ticket article** (Create). Create a new article on an existing Zammad ticket. Returns the created article object including id, ticket_id, type, sender, subject, body, internal, created_at, and attachments. Returns: attachments, body, cc, content_type, created_at, created_by, created_by_id, from, id, in_reply_to, internal, message_id, message_id_md5, origin_by_id, preferences, references, reply_to, sender, sender_id, subject, ticket_id, to, type, type_id, updated_at, updated_by, updated_by_id. Required: ticket_id. Use origin_by_id to create articles on behalf of other users.
- **List all Zammad ticket articles** (List). List all ticket articles for a specific Zammad ticket. Returns: attachments, body, cc, content_type, created_at, created_by, created_by_id, from, id, in_reply_to, internal, message_id, message_id_md5, origin_by_id, preferences, references, reply_to, sender, sender_id, subject, ticket_id, time_unit, to, type, type_id, updated_at, updated_by, updated_by_id. Required: ticket_id.
- **Get single Zammad ticket attachment by ID** (Get). Download a specific ticket attachment file from Zammad. Returns the raw binary content of the attachment file (content type depends on the uploaded file). Required: ticket_id, article_id, id.
- **List all Zammad ticket states** (List). List all ticket states in Zammad. Returns: active, created_at, created_by_id, default_create, default_follow_up, id, ignore_escalation, name, next_state_id, note, state_type_id, updated_at, updated_by_id.
- **Get single Zammad ticket state by ID** (Get). Get a single Zammad ticket state by id. Returns: active, created_at, created_by_id, default_create, default_follow_up, id, ignore_escalation, name, next_state_id, note, state_type_id, updated_at, updated_by_id. Required: id.
- **Create a Zammad ticket state** (Create). Create a new ticket state in Zammad. Returns the created state with id, name, state_type_id, active, ignore_escalation, and timestamps. Returns: active, created_at, created_by_id, default_create, default_follow_up, id, ignore_escalation, name, next_state_id, note, state_type_id, updated_at, updated_by_id. Required: name, state_type_id. The state_type_id is instance-specific and must be obtained via the Rails console as no API endpoint lists state types.
- **Update a Zammad ticket state by ID** (Update). Update a Zammad ticket state by id. Returns the updated state with id, name, state_type_id, note, active, and timestamps. Returns: active, created_at, created_by_id, default_create, default_follow_up, id, ignore_escalation, name, next_state_id, note, state_type_id, updated_at, updated_by_id. Required: id.
- **Delete a Zammad ticket state by ID** (Delete). Delete a Zammad ticket state by id. Returns an empty 200 response with {} on success. Required: id. Removal is permanent; states referenced by tickets cannot be deleted via the API.
- **List all Zammad ticket priorities** (List). List all ticket priorities in Zammad. Returns: active, created_at, created_by_id, default_create, id, name, note, ui_color, ui_icon, updated_at, updated_by_id.
- **Get single Zammad ticket priority by ID** (Get). Get a single Zammad ticket priority by id. Returns: active, created_at, created_by_id, default_create, id, name, note, ui_color, ui_icon, updated_at, updated_by_id. Required: id.
- **Create a Zammad ticket priority** (Create). Create a new ticket priority in Zammad. Returns the created priority with id, name, default_create, ui_icon, ui_color, note, active, created_at, updated_at. Returns: active, created_at, created_by_id, default_create, id, name, note, ui_color, ui_icon, updated_at, updated_by_id. Required: name.
- **Update a Zammad ticket priority by ID** (Update). Update a Zammad ticket priority by id. Returns the updated priority with id, name, default_create, ui_icon, ui_color, note, active, created_at, updated_at. Returns: active, created_at, created_by_id, default_create, id, name, note, ui_color, ui_icon, updated_at, updated_by_id. Required: id.
- **Delete a Zammad ticket priority by ID** (Delete). Delete a Zammad ticket priority by id. This is a permanent removal that cannot be undone; priorities referenced by existing tickets cannot be deleted. Returns an empty 200 response on success. Required: id.
- **List all Zammad tags** (List). List tags attached to a Zammad ticket by object type and id. Returns: tags. Required: object, o_id.
- **Zammad tags add** (Add). Add a tag to a Zammad ticket object. The tag is created if it does not already exist. Returns: empty response. Required: item, object, o_id.
- **Zammad tags remove** (Delete). Remove a tag from a Zammad ticket object. Returns: empty response. Required: item, object, o_id.
- **List all Zammad tag list** (List). List all tags in Zammad's administration scope. Returns: id, name, count.
- **Create a Zammad tag list** (Create). Create a new tag in Zammad. Required: name. Returns an empty object on success. Returns: empty response.
- **Update a Zammad tag list by ID** (Update). Rename a tag in Zammad by id. Required: id, name. Returns an empty object on success. Returns: empty response.
- **Delete a Zammad tag list by ID** (Delete). Delete a tag in Zammad by id. Required: id. Returns an empty object on success. Returns: empty response.
- **List all Zammad online notifications** (List). List online notifications in Zammad, with optional expand to resolve object references. Returns: id, o_id, object_lookup_id, type_lookup_id, user_id, seen, updated_by_id, created_by_id, created_at, updated_at.
- **Get single Zammad online notification by ID** (Get). Get a single online notification by id in Zammad. Returns: id, o_id, object_lookup_id, type_lookup_id, user_id, seen, updated_by_id, created_by_id, created_at, updated_at. Required: id.
- **Update a Zammad online notification by ID** (Update). Update an online notification's seen status by id in Zammad. Returns: id, o_id, object_lookup_id, type_lookup_id, user_id, seen, updated_by_id, created_by_id, created_at, updated_at. Required: id.
- **Delete a Zammad online notification by ID** (Delete). Delete an online notification by id in Zammad. Returns an empty 200 response on success. Required: id.
- **Zammad online notifications mark all as read** (Action). Mark all online notifications as read in Zammad. Returns an empty 200 response on success.
- **List all Zammad object manager attributes** (List). List all Zammad object manager attributes. Returns: active, created_at, created_by_id, data_option, data_option_new, data_type, display, editable, id, name, object_lookup_id, position, screens, to_config, to_create, to_delete, to_migrate, updated_at, updated_by_id.
- **Get single Zammad object manager attribute by ID** (Get). Get a single Zammad object manager attribute by id. Returns: active, created_at, created_by_id, data_option, data_option_new, data_type, display, editable, id, name, object_lookup_id, position, screens, to_config, to_create, to_delete, to_migrate, updated_at, updated_by_id. Required: id.
- **Create a Zammad object manager attribute** (Create). Create a new Zammad object manager attribute. Returns: active, created_at, created_by_id, data_option, data_option_new, data_type, display, editable, id, name, object, object_lookup_id, position, screens, to_config, to_create, to_delete, to_migrate, updated_at, updated_by_id. Required: name, object, display, data_type, data_option.
- **Update a Zammad object manager attribute by ID** (Update). Update a Zammad object manager attribute by id. Returns: active, created_at, created_by_id, data_option, data_option_new, data_type, display, editable, id, name, object_lookup_id, position, screens, to_config, to_create, to_delete, to_migrate, updated_at, updated_by_id. Required: id, data_option. Object type cannot be changed after creation.
- **Delete a Zammad object manager attribute by ID** (Delete). Delete a Zammad object manager attribute by id. Returns an empty 200 response on success. Required: id.
- **Zammad object manager attributes execute migrations** (Execute). Execute pending database migrations for Zammad object manager attributes. Returns an empty 200 response on success. A Zammad restart is mandatory after executing migrations.
- **List all Zammad user access token** (List). List user access tokens in Zammad. Returns: permissions, tokens.
- **Create a Zammad user access token** (Create). Create a new user access token in Zammad. Returns the generated API token string, which is provided only once after creation and cannot be retrieved later. Returns: token. Required: name, permission.
- **Delete a Zammad user access token by ID** (Delete). Delete a user access token in Zammad by id. Returns an empty response on success. Required: id.
- **Create a Zammad data privacy task** (Create). Create a Zammad data privacy task to permanently delete a user and related data such as tickets. Returns: id, state, deletable_type, deletable_id, preferences, updated_by_id, created_by_id, created_at, updated_at. Required: deletable_type, deletable_id.
- **Get single Zammad data privacy task by ID** (Get). Get a Zammad data privacy task by id to check its state and verify completion. Returns: id, state, deletable_type, deletable_id, preferences, updated_by_id, created_by_id, created_at, updated_at. Required: id. Task execution may take some time.
- **List all Zammad time accountings** (List). List time accounting entries for a Zammad ticket. Returns: created_at, created_by_id, id, ticket_article_id, ticket_id, time_unit, type_id, updated_at. Required: ticket_id.
- **Get single Zammad time accounting by ID** (Get). Get a single time accounting entry for a Zammad ticket by id. Returns: created_at, created_by_id, id, ticket_article_id, ticket_id, time_unit, type_id, updated_at. Required: ticket_id, id.
- **Create a Zammad time accounting** (Create). Create a time accounting entry for a Zammad ticket. Returns the created entry including id, ticket_id, ticket_article_id, time_unit, type_id, created_by_id, created_at, and updated_at. Returns: created_at, created_by_id, id, ticket_article_id, ticket_id, time_unit, type_id, updated_at. Required: ticket_id, time_unit.
- **Update a Zammad time accounting by ID** (Update). Update a time accounting entry for a Zammad ticket by id. Returns the updated entry including id, ticket_id, ticket_article_id, time_unit, type_id, created_by_id, created_at, and updated_at. Returns: created_at, created_by_id, id, ticket_article_id, ticket_id, time_unit, type_id, updated_at. Required: ticket_id, id.
- **Delete a Zammad time accounting by ID** (Delete). Delete a time accounting entry for a Zammad ticket by id. Returns an empty 200 response on success. Required: ticket_id, id.
- **List all Zammad ticket shared drafts** (List). Show the shared draft for a Zammad ticket. Returns: shared_draft_id, assets. Required: ticket_id.
- **Create a Zammad ticket shared draft** (Create). Create or replace a shared draft for a Zammad ticket. Returns: shared_draft_id, assets. Required: ticket_id, form_id.
- **Zammad ticket shared drafts bulk delete** (Delete). Delete the shared draft for a Zammad ticket. Returns: shared_draft_id. Required: ticket_id.
- **List all Zammad links** (List). List ticket links for a specific object in Zammad. Returns: links, assets. Required: link_object, link_object_value.
- **Zammad links add** (Add). Create a link between two Zammad tickets. Returns: id, link_type_id, link_object_source_id, link_object_source_value, link_object_target_id, link_object_target_value, created_at, updated_at. Required: link_type, link_object_target, link_object_target_value, link_object_source, link_object_source_number. The target value must be a ticket ID; the source number must…
- **Zammad links remove** (Delete). Remove a link between two Zammad tickets. Returns an empty 201 response on success. Required: link_type, link_object_source, link_object_source_value, link_object_target, link_object_target_value. Returns: empty response.
- **List all Zammad mentions** (List). List mentions in Zammad. Returns: mentions.
- **Create a Zammad mention** (Create). Create a mention in Zammad for the current session user on a mentionable object. Returns true on successful creation. Returns: empty response. Required: mentionable_type, mentionable_id.
- **Delete a Zammad mention by ID** (Delete). Delete a mention in Zammad by id. Returns: created_at, created_by_id, id, mentionable_id, mentionable_type, updated_at, updated_by_id, user_id. Required: id.
- **Zammad knowledge bases init** (Action). Initialize a new knowledge base in Zammad, returning a comprehensive overview of the created knowledge base and all related entities. Returns: KnowledgeBase (id, iconset, color_highlight, active), KnowledgeBaseTranslation, KnowledgeBaseLocale, KnowledgeBaseCategory, KnowledgeBaseCategoryTranslation, KnowledgeBaseAnswer, KnowledgeBaseAnswerTranslation, and User entity collections.
- **Get single Zammad knowledge base by ID** (Get). Get a single Zammad knowledge base by id. Returns the full knowledge base object including id, iconset, color_highlight, color_header, color_header_link, homepage_layout, category_layout, active, show_feed_icon, custom_address, created_at, updated_at, and related entity ID arrays. Required: id.
- **Update a Zammad knowledge base by ID** (Update). Update settings for a Zammad knowledge base by id, such as show_feed_icon and custom_address. Returns the updated knowledge base object including id, iconset, color settings, layout configuration, active status, show_feed_icon, custom_address, created_at, updated_at, and related entity ID arrays. Required: id.
- **Zammad knowledge bases get permissions** (Get). Get the permission configuration for a Zammad knowledge base, including which roles have reader or editor access and any inherited permissions. Returns: roles_reader, roles_editor, permissions, inherited. Required: knowledge_base_id.
- **Zammad knowledge bases reorder root categories** (Action). Reorder the root-level categories of a Zammad knowledge base by providing the complete ordered list of all top-level category IDs. Returns: KnowledgeBaseCategory, KnowledgeBase, KnowledgeBaseLocale, KnowledgeBaseTranslation, KnowledgeBaseCategoryTranslation. Required: knowledge_base_id, ordered_ids. Must provide the complete order of all top-level categories (categories with no parent).
- **Zammad knowledge bases bulk update** (Update). Update the permission configuration for a Zammad knowledge base by specifying a map of role ids to access levels (editor or reader). Returns: roles_reader, roles_editor, permissions, inherited. Required: knowledge_base_id, permissions_dialog.
- **Get single Zammad kb category by ID** (Get). Get a single Zammad knowledge base category by id. Returns: id, knowledge_base_id, parent_id, category_icon, position, created_at, updated_at, translation_ids, answer_ids, child_ids, permission_ids, permissions_effective. Required: knowledge_base_id, id.
- **Create a Zammad kb category** (Create). Create a new Zammad knowledge base category under a specific knowledge base. Returns: id, created_at, updated_at. Required: knowledge_base_id, translations_attributes.
- **Update a Zammad kb category by ID** (Update). Update a Zammad knowledge base category by id, including its icon, parent, and translations. Returns: id, created_at, updated_at. Required: knowledge_base_id, id.
