{"id":20541070,"url":"https://github.com/netways/notify_zammad","last_synced_at":"2026-01-07T15:14:21.877Z","repository":{"id":218953983,"uuid":"728084344","full_name":"NETWAYS/notify_zammad","owner":"NETWAYS","description":"A notification plugin for Icinga to open and manage tickets in Zammad","archived":false,"fork":false,"pushed_at":"2025-06-02T07:41:25.000Z","size":62,"stargazers_count":4,"open_issues_count":1,"forks_count":1,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-06-02T19:06:00.582Z","etag":null,"topics":["icinga","notifications","plugin","zammad"],"latest_commit_sha":null,"homepage":"https://www.netways.de/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NETWAYS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2023-12-06T07:38:44.000Z","updated_at":"2025-06-02T07:41:22.000Z","dependencies_parsed_at":"2024-06-03T07:55:58.488Z","dependency_job_id":"b0f5edb7-48a7-452b-8148-ab5084187f51","html_url":"https://github.com/NETWAYS/notify_zammad","commit_stats":null,"previous_names":["netways/notify_zammad"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/NETWAYS/notify_zammad","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fnotify_zammad","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fnotify_zammad/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fnotify_zammad/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fnotify_zammad/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NETWAYS","download_url":"https://codeload.github.com/NETWAYS/notify_zammad/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NETWAYS%2Fnotify_zammad/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267610524,"owners_count":24115440,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-28T02:00:09.689Z","response_time":68,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["icinga","notifications","plugin","zammad"],"created_at":"2024-11-16T01:19:12.851Z","updated_at":"2026-01-07T15:14:21.834Z","avatar_url":"https://github.com/NETWAYS.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# notify-zammad\n\n\u003e [!IMPORTANT]\n\u003e Due to [breaking API changes](https://github.com/zammad/zammad/blob/develop/BREAKING_CHANGES.md#changes-to-search-api-endpoints) this program only works with Zammad \u003e 6.5 \n\nA notification plugin for (mostly) Icinga which manages problems as Zammad tickets.\n\nThis plugin opens/updates/closes Zammad tickets via the Zammad API. The user/token for this plugin needs at least the `ticket.agent` permission.\n\nProblem notifications will open a new ticket if none exists. The ticket will be in state `new`. If a ticket exists the plugin will add an article to the this ticket.\n\nAcknowledgement notifications will add an article to an existing ticket.\nThis will also set the ticket state to `open`.\nIf no ticket exists nothing will happen.\n\nDowntime/Flapping notifications will add an article to an existing ticket.\nIf no ticket exists nothing will happen.\n\nRecovery notifications will close an existing ticket.\nThis will set the ticket state to `closed`.\nIf no ticket exists nothing will happen.\n\nTo track tickets the plugin uses two custom field attributes:\n\n- icinga_host\n- icinga_service\n\nThe plugin is currently designed to update the last created ticket with matching icinga_host and icinga_service.\n\n**Why not use Zammad's built-in Icinga integration?** The built-in integration uses mails received by Zammad to open/close tickets. We had the requirement to solve the same feature without the use of mail.\n\n## Usage\n\n```bash\nAn Icinga notification plugin for Zammad\n\nUsage:\n  notify_zammad [flags]\n\nFlags:\n  -H, --zammad-hostname string        Address of the Zammad instance (NOTIFY_ZAMMAD_HOSTNAME) (default \"localhost\")\n  -p, --zammad-port int               Port of the Zammad instance (default 443)\n  -s, --secure                        Use a HTTPS connection\n  -T, --token string                  Token for server authentication (NOTIFY_ZAMMAD_TOKEN)\n  -u, --user string                   Specify the user name and password for server authentication \u003cuser:password\u003e (NOTIFY_ZAMMAD_BASICAUTH)\n      --ca-file string                Specify the CA File for TLS authentication (NOTIFY_ZAMMAD_CA_FILE)\n      --cert-file string              Specify the Certificate File for TLS authentication (NOTIFY_ZAMMAD_CERT_FILE)\n      --key-file string               Specify the Key File for TLS authentication (NOTIFY_ZAMMAD_KEY_FILE)\n  -i, --insecure                      Skip the verification of the server\\'s TLS certificate\n  -t, --timeout int                   Timeout in seconds for the CheckPlugin (default 30)\n      --host-name string              Host name of the Icinga 2 Host object\n      --service-name string           Service name of the Icinga 2 Service Object (optional for Host Notifications)\n      --check-state string            State of the Object (Up/Down for hosts, OK/Warning/Critical/Unknown for services)\n      --check-output string           Output of the last executed check\n      --notification-type string      Type of the notification (Problem/Recovery/Acknowledgement)\n      --notification-author string    Name of an author for manual events\n      --notification-comment string   Comment for manual events\n      --notification-date string      Date when the event occurred\n      --zammad-group string           Custom Zammad Field for the group\n      --zammad-customer string        Custom Zammad Field for the customer\n  -h, --help                          help for notify_zammad\n  -v, --version                       version for notify_zammad\n```\n\nThe plugin respects the environment variables `HTTP_PROXY`, `HTTPS_PROXY` and `NO_PROXY`.\n\nVarious flags can be set with environment variables, refer to the help to see which flags.\n\n### Examples\n\nOpen a new Ticket at `https//zammad.example:8080`:\n\n```bash\nnotify_zammad \\\n--zammad-hostname zammad.example \\\n--zammad-port 8080 \\\n--secure \\\n--token NoTaReAlToken_CXXoPxX \\\n--notification-type Problem \\\n--host-name myPreciousHost01 \\\n--service-name hostalive \\\n--check-state Down \\\n--check-output \"CRITICAL - host unreachable\" \\\n--zammad-group Users \\\n--zammad-customer \"jon.snow@zammad\"\n```\n\nAcknowledge an existing Ticket at `https//zammad.example:8080`:\n\n```bash\nnotify_zammad \\\n--zammad-hostname zammad.example \\\n--zammad-port 8080 \\\n--secure \\\n--token NoTaReAlToken_CXXoPxX \\\n--notification-type Acknowledgement \\\n--host-name myPreciousHost01 \\\n--service-name hostalive \\\n--check-state Down \\\n--check-output \"CRITICAL - host unreachable\" \\\n--zammad-group Users \\\n--zammad-customer \"jon.snow@zammad\"\n```\n\nClose an existing Ticket at `https//zammad.example:8080`:\n\n```bash\nnotify_zammad \\\n--zammad-hostname zammad.example \\\n--zammad-port 8080 \\\n--secure \\\n--token NoTaReAlToken_CXXoPxX \\\n--notification-type Recovery \\\n--host-name myPreciousHost01 \\\n--service-name hostalive \\\n--check-state Up \\\n--check-output \"PING OK - Packet loss = 0%\" \\\n--zammad-group Users \\\n--zammad-customer \"jon.snow@zammad\"\n```\n\n## License\n\nCopyright (c) 2024 [NETWAYS GmbH](mailto:info@netways.de)\n\nThis program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public\nLicense as published by the Free Software Foundation, either version 2 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied\nwarranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License along with this program. If not,\nsee [gnu.org/licenses](https://www.gnu.org/licenses/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetways%2Fnotify_zammad","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetways%2Fnotify_zammad","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetways%2Fnotify_zammad/lists"}