forked from FoundKeyGang/FoundKey
server: improve API definition for messaging/messages/create
This commit is contained in:
parent
4dc97d5b65
commit
a991740e00
1 changed files with 54 additions and 15 deletions
|
@ -50,12 +50,6 @@ export const meta = {
|
||||||
id: '4372b8e2-185d-4146-8749-2f68864a3e5f',
|
id: '4372b8e2-185d-4146-8749-2f68864a3e5f',
|
||||||
},
|
},
|
||||||
|
|
||||||
contentRequired: {
|
|
||||||
message: 'Content required. You need to set text or fileId.',
|
|
||||||
code: 'CONTENT_REQUIRED',
|
|
||||||
id: '25587321-b0e6-449c-9239-f8925092942c',
|
|
||||||
},
|
|
||||||
|
|
||||||
youHaveBeenBlocked: {
|
youHaveBeenBlocked: {
|
||||||
message: 'You cannot send a message because you have been blocked by this user.',
|
message: 'You cannot send a message because you have been blocked by this user.',
|
||||||
code: 'YOU_HAVE_BEEN_BLOCKED',
|
code: 'YOU_HAVE_BEEN_BLOCKED',
|
||||||
|
@ -73,15 +67,65 @@ export const paramDef = {
|
||||||
anyOf: [
|
anyOf: [
|
||||||
{
|
{
|
||||||
properties: {
|
properties: {
|
||||||
userId: { type: 'string', format: 'misskey:id' },
|
text: {
|
||||||
|
type: 'string',
|
||||||
|
minLength: 1,
|
||||||
|
maxLength: 3000,
|
||||||
},
|
},
|
||||||
required: ['userId'],
|
fileId: {
|
||||||
|
type: 'string',
|
||||||
|
format: 'misskey:id',
|
||||||
|
},
|
||||||
|
userId: {
|
||||||
|
type: 'string',
|
||||||
|
format: 'misskey:id',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
required: ['text', 'userId'],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
properties: {
|
properties: {
|
||||||
groupId: { type: 'string', format: 'misskey:id' },
|
fileId: {
|
||||||
|
type: 'string',
|
||||||
|
format: 'misskey:id',
|
||||||
},
|
},
|
||||||
required: ['groupId'],
|
userId: {
|
||||||
|
type: 'string',
|
||||||
|
format: 'misskey:id',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
required: ['fileId', 'userId'],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
properties: {
|
||||||
|
text: {
|
||||||
|
type: 'string',
|
||||||
|
minLength: 1,
|
||||||
|
maxLength: 3000,
|
||||||
|
},
|
||||||
|
fileId: {
|
||||||
|
type: 'string',
|
||||||
|
format: 'misskey:id',
|
||||||
|
},
|
||||||
|
groupId: {
|
||||||
|
type: 'string',
|
||||||
|
format: 'misskey:id',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
required: ['text', 'groupId'],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
properties: {
|
||||||
|
fileId: {
|
||||||
|
type: 'string',
|
||||||
|
format: 'misskey:id',
|
||||||
|
},
|
||||||
|
groupId: {
|
||||||
|
type: 'string',
|
||||||
|
format: 'misskey:id',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
required: ['fileId', 'groupId'],
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
} as const;
|
} as const;
|
||||||
|
@ -142,10 +186,5 @@ export default define(meta, paramDef, async (ps, user) => {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// テキストが無いかつ添付ファイルも無かったらエラー
|
|
||||||
if (ps.text == null && file == null) {
|
|
||||||
throw new ApiError(meta.errors.contentRequired);
|
|
||||||
}
|
|
||||||
|
|
||||||
return await createMessage(user, recipientUser, recipientGroup, ps.text, file);
|
return await createMessage(user, recipientUser, recipientGroup, ps.text, file);
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue