# NewCaseMessageInput

input type

STAFF append-input for addCaseMessage: visibility is the staff author's CHOICE; the author stamps server-side.

## Fields

| Field | Type | Required | Notes |
| --- | --- | --- | --- |
| `caseId` | [ID](/types/#scalars) `ID!` | yes | The case appended to (tenant-scoped; a terminal case refuses CONFLICT/IMMUTABLE). |
| `body` | [String](/types/#scalars) `String!` | yes | The message body (1..4096). |
| `visibility` | [String](/types/#scalars) `String!` | yes | customer_visible \| internal_note (ruling — an internal note never crosses the consumer face). |

## Used by

- [addCaseMessage](/reference/selling/addCaseMessage/)
