ObjectValidator tests: Extract emoji react testing
[akkoma] / docs / API / chats.md
index c0ef75664a62faae7f395cb4f997e1bc9e78d9b6..aa6119670449c4887cc22cec3c291231b30a8138 100644 (file)
@@ -41,7 +41,7 @@ This is the overview of using the API. The API is also documented via OpenAPI, s
 To create or get an existing Chat for a certain recipient (identified by Account ID)
 you can call:
 
 To create or get an existing Chat for a certain recipient (identified by Account ID)
 you can call:
 
-`POST /api/v1/pleroma/chats/by-account-id/{account_id}`
+`POST /api/v1/pleroma/chats/by-account-id/:account_id`
 
 The account id is the normal FlakeId of the user
 ```
 
 The account id is the normal FlakeId of the user
 ```
@@ -75,10 +75,15 @@ Returned data:
 
 ### Marking a chat as read
 
 
 ### Marking a chat as read
 
-To set the `unread` count of a chat to 0, call
+To mark a number of messages in a chat up to a certain message as read, you can use
 
 `POST /api/v1/pleroma/chats/:id/read`
 
 
 `POST /api/v1/pleroma/chats/:id/read`
 
+
+Parameters:
+- last_read_id: Given this id, all chat messages until this one will be marked as read. Required.
+
+
 Returned data:
 
 ```json
 Returned data:
 
 ```json
@@ -130,13 +135,13 @@ Returned data:
 ```
 
 The recipient of messages that are sent to this chat is given by their AP ID.
 ```
 
 The recipient of messages that are sent to this chat is given by their AP ID.
-The usual pagination options are implemented.
+No pagination is implemented for now.
 
 ### Getting the messages for a Chat
 
 For a given Chat id, you can get the associated messages with
 
 
 ### Getting the messages for a Chat
 
 For a given Chat id, you can get the associated messages with
 
-`GET /api/v1/pleroma/chats/{id}/messages`
+`GET /api/v1/pleroma/chats/:id/messages`
 
 This will return all messages, sorted by most recent to least recent. The usual
 pagination options are implemented.
 
 This will return all messages, sorted by most recent to least recent. The usual
 pagination options are implemented.
@@ -177,7 +182,7 @@ Returned data:
 
 Posting a chat message for given Chat id works like this:
 
 
 Posting a chat message for given Chat id works like this:
 
-`POST /api/v1/pleroma/chats/{id}/messages`
+`POST /api/v1/pleroma/chats/:id/messages`
 
 Parameters:
 - content: The text content of the message. Optional if media is attached.
 
 Parameters:
 - content: The text content of the message. Optional if media is attached.
@@ -210,7 +215,7 @@ Returned data:
 
 Deleting a chat message for given Chat id works like this:
 
 
 Deleting a chat message for given Chat id works like this:
 
-`DELETE /api/v1/pleroma/chats/{chat_id}/messages/{message_id}`
+`DELETE /api/v1/pleroma/chats/:chat_id/messages/:message_id`
 
 Returned data is the deleted message.
 
 
 Returned data is the deleted message.
 
@@ -237,3 +242,7 @@ There's a new `pleroma:chat_mention` notification, which has this form. It is no
 ### Streaming
 
 There is an additional `user:pleroma_chat` stream. Incoming chat messages will make the current chat be sent to this `user` stream. The `event` of an incoming chat message is `pleroma:chat_update`. The payload is the updated chat with the incoming chat message in the `last_message` field.
 ### Streaming
 
 There is an additional `user:pleroma_chat` stream. Incoming chat messages will make the current chat be sent to this `user` stream. The `event` of an incoming chat message is `pleroma:chat_update`. The payload is the updated chat with the incoming chat message in the `last_message` field.
+
+### Web Push
+
+If you want to receive push messages for this type, you'll need to add the `pleroma:chat_mention` type to your alerts in the push subscription.