Files
2026-07-26 18:25:37 +09:00

47 lines
1.2 KiB
JavaScript

import define from "../../../define.js";
import { ApiError } from "../../../error.js";
import { MessagingMessages } from "../../../../../models/index.js";
import { deleteMessage } from "../../../../../services/messages/delete.js";
import { SECOND, HOUR } from "../../../../../const.js";
export const meta = {
tags: [
"messaging"
],
requireCredential: true,
kind: "write:messaging",
limit: {
duration: HOUR,
max: 300,
minInterval: SECOND
},
errors: {
noSuchMessage: {
message: "No such message.",
code: "NO_SUCH_MESSAGE",
id: "54b5b326-7925-42cf-8019-130fda8b56af"
}
}
};
export const paramDef = {
type: "object",
properties: {
messageId: {
type: "string",
format: "misskey:id"
}
},
required: [
"messageId"
]
};
export default define(meta, paramDef, async (ps, user)=>{
const message = await MessagingMessages.findOneBy({
id: ps.messageId,
userId: user.id
});
if (message == null) {
throw new ApiError(meta.errors.noSuchMessage);
}
await deleteMessage(message);
});