Edit a message's own body
Sender only, and only within Message::EDIT_WINDOW (24h) -- refused while locked, after a delete-for-everyone tombstone, and for any message with an event_type or a real resource (a card/transfer/product/attachment/work-order bubble isn't free text; see Message#editable_kind?). Same PGP-armor requirement as createMessage on an encrypted chat (identical refusal sentence); an open room takes plain text under the same 4000-char cap. mentions, if present, REPLACES the message's mentions (re-validated against real membership, same as createMessage); omitted, existing mentions are left as they were. The previous body is archived to GET.../revisions (capped at Message::MAX_REVISIONS_KEPT, oldest pruned) before being overwritten, and the response/rebroadcast carries the same envelope createMessage does, now with edited_at/edit_count/can_edit updated. No agent webhook fires for an edit in this release. Supports an Idempotency-Key header, same shape as createMessage: a retried edit under the same key replays the FIRST edit's result and records exactly one revision, even though the retry's ciphertext differs.
Request
- Base URL: https://saltapp.ai
- URL: https://saltapp.ai/api/v1/messages/{id}
- Auth: one of:
- API key in header api-key
- OAuth 2 (authorization code, authorization URL https://saltapp.ai/oauth2/authorize, token URL https://saltapp.ai/api/oauth2/token, scopes: chat)
Path parameters
Request body
Response
OK
Changes
No recorded changes to this operation across all 3 revisions of this API.