Support Request Message Schema
Felder
Support Request Message Schema
A message exchanged on a support request (reporter ↔ Codemeta agent)
requestId
The support request this message belongs to
authorSide
Who wrote it. Load-bearing beyond display: the measured first-response time is derived later from the request’s createdAt against the first `agent` message, retroactively and without a backfill (ADR 0938 decision 12). Do not drop. `system` marks what the platform says by itself (a live chat ended, a queue timed out) — never a response by the support, so it must not count as one (ADR 0990). Notes written before 2026-10-02 carry `agent`.
customeragentsystemsystemEvent
What a `system` message reports. Each side words it for itself ("Du hast …" for the customer, "Der Kunde hat …" in the console); `body` is the fallback text.
live_ended_by_agentlive_ended_by_customerlive_idle_timeoutlive_queue_timeoutnullauthorUserId
Author user id (tenant user or support agent)
body
Message text
attachmentFileIds
Attached files
internalOnly
Internal note between Codemeta agents — stripped before the tenant reads it. Mirrors `stripInternalComments` in the feedback flow.
sessionId
Phase 3: the live chat session this message belongs to; null for async messages
replyToMessageId
Phase 3: reply-to a specific message. NOTE this is a real FK to another support_request_messages._id — NOT the RFC-5322 `inReplyTo` mail header used in message.schema.ts. The name similarity is a trap.
reactions
Emoji reactions (Teams-style). Managed exclusively via POST /:resource/:id/reactions — never set directly via create/update (the field is protected). Absent/missing = no reactions.
Keine Felder passen zum Filter.
Standard-Endpoints
Diese Resource folgt dem generischen CRUD-Vertrag der Plattform. Lesen Sie die Konventionen für Pagination, Idempotenz, Optimistic Locking und Audit. Die wichtigsten Endpoints:
GET /api/v1/support_request_messages— Liste, paginiert + filterbarGET /api/v1/support_request_messages/<id>— Einzelne EntityPOST /api/v1/support_request_messages— AnlegenPATCH /api/v1/support_request_messages/<id>— Teil-UpdateDELETE /api/v1/support_request_messages/<id>— Soft-DeleteGET /api/v1/support_request_messages/<id>/timeline— Audit + Aktivitäten