Send a DM to a peer
POST /account/messages/{peer_ref}
POST
/account/messages/{peer_ref}
Send a DM to the user at {peer_ref}. Self-DM rejected with 400. A block edge in either direction rejects with 403 — the same gate the FollowUser path enforces.
On success, a direct_message_received notification fires
to the recipient via the notifications writer
(which independently re-runs the block + channel-pref
gates, so a user who muted the verb still gets the DM in
their inbox but no bell ping).
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ” peer_ref
required
integer format: int64
Request Body required
Section titled “Request Body required ”object
body
required
string
Responses
Section titled “ Responses ”Message sent.
One DM between two users.
object
id
required
string format: uuid
sender_user_ref
required
integer format: int64
recipient_user_ref
required
integer format: int64
body
required
string
sent_at
required
string format: date-time
read_at
NULL = unread by recipient.
string format: date-time
Malformed request
object
error
required
Human-readable error summary
string
Example
the request could not be completedAuthentication required, missing, or invalid
object
error
required
Human-readable error summary
string
Example
the request could not be completedExample
{ "error": "authentication required: sign in and retry with a valid session or API token"}Authenticated but missing required capabilities
object
error
required
Human-readable error summary
string
Example
the request could not be completedResource not found
object
error
required
Human-readable error summary
string
Example
the request could not be completed