Enneo

Ticket

Update a few tickets at once

PATCH /ticket

PATCH /ticket

Update a few tickets at once.

Tags handling:

  • Use tagIds to replace all tags
  • Use addTagIds/removeTagIds to modify existing tags
  • Cannot combine tagIds with addTagIds/removeTagIds

Special flags:

  • refreshMode: Schedule a selective AI re-run (full, summaryAndText, customer, tags, agents). Skips saving and webhooks.
  • refresh (deprecated — use refreshMode=full): Skips saving and webhooks, used for refreshing data without changes.
  • refreshTags (deprecated — use refreshMode=tags): Performs only AI tag detection (faster), skips saving and webhooks.

Query parameters

includeInWorklogbooleanquery

Whether to include the ticket in time tracking, and thus worklog. Useful when a spam ticket should be closed, but it should not show up in the average handling time statistics

Request body

A JSON object containing changes

Request Example

[
  {
    "id": 376189,
    "direction": "in",
    "from": null,
    "fromName": "Tom Mustermann",
    "to": null,
    "ccEmails": [
      "secondlevel@enneo.ai"
    ],
    "bccEmails": [
      "archive@enneo.ai"
    ],
    "replyCcEmails": [
      "string"
    ],
    "replyRecipients": {
      "to": [
        "customer@example.com"
      ],
      "cc": [
        "manager@example.com"
      ],
      "bcc": []
    },
    "subchannelId": 1,
    "externalTicketId": "EXT-12345",
    "sentiment": "positive",
    "language": "English",
    "languageCode": "en",
    "autoExecuteAt": "2026-01-01T12:00:00Z",
    "aiSupportLevel": "unprocessed",
    "spamStatus": "auto_clean",
    "isCustomerActive": true,
    "interface": "internal",
    "priority": "low",
    "channel": "email",
    "channelId": "32291c7e-1cce-4d4c-8269-15e6a6501466",
    "status": "open",
    "summary": "I want to relocate and send you a meter reading",
    "subject": "I want to relocate and send you a meter reading"
  }
]

Responses

200 — Successful operation

Response Example

{
  "success": true
}

403 — Unauthorized

404 — Ticket not found

500 — Internal error