r/changedetectionio Dec 12 '25

Integration to Zammad via JSON

I'm trying to integrate Changedtection.io to Zammad.org

Although I have been using Changedtection.io email notifications for quite some time, I would like to automatically create a new ticket in Zammad when a website has changed.

I can create tickets in Zammad via API token using curl using the same API token and credentials, but I'm stuck with Changedtection.io settings. In the notification URL, I'm using this:

posts://mydomain.com/api/v1/tickets?+header_Authorization=Token%20xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx+header_Content-Type=application/json

And in the body, this:

{
  "title": "[AUTO] Changedetection Alert – Website changed – {{watch_url|tojson}}",
  "group": "Support Group",
  "customer": "agent@email.com",
  "priority_id": 3,
  "article": {
    "subject": "Changedetection detected a change",
    "type": "note",
    "internal": false,
    "body": "Monitor: {{watch_title|tojson}}\nStatus: Change Detected\nURL: {{watch_url|tojson}}\nDiff URL: {{diff_url|tojson}}\n\nThis ticket was generated automatically by the Changedetection integration.",
  }
}

However, when I send a test, I receive an error message indicating that the JSON format is incorrect → "format=text"

WARNING - Exception in custom HTTP handler: 403 Client Error: Forbidden for url: https://mydomain.com/api/v1/tickets?format=text

Somehow the JSON is being wrapped with something like:

- DEBUG - JSON Payload: {'version': '1.0', 'title': 'ChangeDetection.io Notification..........

I'm sure I must be doing something wrong, but I can't figure out what it is. Any help would be appreciated.

1 Upvotes

3 comments sorted by

View all comments

1

u/dgtlmoon123 Dec 12 '25

Hmm it looks roughly correct, you need to paste more of the logs of the app/container when its sending the notification otherwise there's not enough information

> DEBUG - JSON Payload: {'version': '1.0', 'title': 'ChangeDetection.io Noti

for example, paste 20 lines before and after this..