`POST /api/v1/pleroma/chats/by-account-id/{account_id}`
-The account id is the normal FlakeId of the usre
-
+The account id is the normal FlakeId of the user
```
POST /api/v1/pleroma/chats/by-account-id/someflakeid
```
+If you already have the id of a chat, you can also use
+
+```
+GET /api/v1/pleroma/chats/:id
+```
+
There will only ever be ONE Chat for you and a given recipient, so this call
will return the same Chat if you already have one with that user.
...
},
"id" : "1",
- "unread" : 2
+ "unread" : 2,
+ "last_message" : {...} // The last message in that chat
+}
+```
+
+### Marking a chat as read
+
+To set the `unread` count of a chat to 0, call
+
+`POST /api/v1/pleroma/chats/:id/read`
+
+Returned data:
+
+```json
+{
+ "account": {
+ "id": "someflakeid",
+ "username": "somenick",
+ ...
+ },
+ "id" : "1",
+ "unread" : 0
}
```
+
### Getting a list of Chats
`GET /api/v1/pleroma/chats`
...
},
"id" : "1",
- "unread" : 2
+ "unread" : 2,
+ "last_message" : {...} // The last message in that chat
}
]
```
Parameters:
- content: The text content of the message
+- media_id: The id of an upload that will be attached to the message.
Currently, no formatting beyond basic escaping and emoji is implemented, as well as no
attachments. This will most probably change.
}
```
+### Deleting a chat message
+
+Deleting a chat message for given Chat id works like this:
+
+`DELETE /api/v1/pleroma/chats/{chat_id}/messages/{message_id}`
+
+Returned data is the deleted message.
+
### Notifications
There's a new `pleroma:chat_mention` notification, which has this form: