APIドキュメントの改善 (#6757)

* Update api document in admin/announcements

* Update api document in announcements

* Update api document in i/read-announcements

* Update api document in username/available

* Update api document & Fix typo in API 403 error

* Update api document

* Update api document

* Update api document

* Fix API permission definition

* Update api document

* Update api document

* Update api document

* Update api document

* Update api document

* Update api document

* Update api document

* Update api document

* Fix bug in users (api)

* Apply reviews #6757

* Apply reviews #6757

Co-authored-by: syuilo <Syuilotan@yahoo.co.jp>
This commit is contained in:
YuzuRyo61 2021-03-06 22:34:11 +09:00 committed by GitHub
parent 3003100443
commit a07d753da8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
100 changed files with 3050 additions and 109 deletions

View file

@ -330,22 +330,22 @@ export const packedUserSchema = {
description: 'The unique identifier for this User.',
example: 'xxxxxxxxxx',
},
username: {
type: 'string' as const,
nullable: false as const, optional: false as const,
description: 'The screen name, handle, or alias that this user identifies themselves with.',
example: 'ai'
},
name: {
type: 'string' as const,
nullable: true as const, optional: false as const,
description: 'The name of the user, as theyve defined it.',
example: '藍'
},
url: {
username: {
type: 'string' as const,
format: 'url',
nullable: true as const, optional: true as const,
nullable: false as const, optional: false as const,
description: 'The screen name, handle, or alias that this user identifies themselves with.',
example: 'ai'
},
host: {
type: 'string' as const,
nullable: true as const, optional: false as const,
example: 'misskey.example.com'
},
avatarUrl: {
type: 'string' as const,
@ -356,35 +356,69 @@ export const packedUserSchema = {
type: 'any' as const,
nullable: true as const, optional: false as const,
},
bannerUrl: {
avatarColor: {
type: 'any' as const,
nullable: true as const, optional: false as const,
default: null
},
isAdmin: {
type: 'boolean' as const,
nullable: false as const, optional: false as const,
description: 'Whether this account is the admin.',
default: false
},
isModerator: {
type: 'boolean' as const,
nullable: false as const, optional: false as const,
description: 'Whether this account is a moderator.',
default: false
},
isBot: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
description: 'Whether this account is a bot.'
},
isCat: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
description: 'Whether this account is a cat.'
},
emojis: {
type: 'array' as const,
nullable: false as const, optional: false as const,
items: {
type: 'object' as const,
nullable: false as const, optional: false as const,
properties: {
name: {
type: 'string' as const,
nullable: false as const, optional: false as const
},
host: {
type: 'string' as const,
nullable: true as const, optional: false as const
},
url: {
type: 'string' as const,
nullable: false as const, optional: false as const,
format: 'url'
},
aliases: {
type: 'array' as const,
nullable: false as const, optional: false as const,
items: {
type: 'string' as const,
nullable: false as const, optional: false as const
}
}
}
}
},
url: {
type: 'string' as const,
format: 'url',
nullable: true as const, optional: true as const,
},
bannerBlurhash: {
type: 'any' as const,
nullable: true as const, optional: true as const,
},
emojis: {
type: 'any' as const,
nullable: true as const, optional: false as const,
},
host: {
type: 'string' as const,
nullable: true as const, optional: false as const,
example: 'misskey.example.com'
},
description: {
type: 'string' as const,
nullable: true as const, optional: true as const,
description: 'The user-defined UTF-8 string describing their account.',
example: 'Hi masters, I am Ai!'
},
birthday: {
type: 'string' as const,
nullable: true as const, optional: true as const,
example: '2018-03-12'
},
createdAt: {
type: 'string' as const,
nullable: false as const, optional: true as const,
@ -396,10 +430,63 @@ export const packedUserSchema = {
nullable: true as const, optional: true as const,
format: 'date-time',
},
bannerUrl: {
type: 'string' as const,
format: 'url',
nullable: true as const, optional: true as const,
},
bannerBlurhash: {
type: 'any' as const,
nullable: true as const, optional: true as const,
},
bannerColor: {
type: 'any' as const,
nullable: true as const, optional: true as const,
default: null
},
isLocked: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
},
isSuspended: {
type: 'boolean' as const,
nullable: false as const, optional: false as const,
example: false
},
description: {
type: 'string' as const,
nullable: true as const, optional: true as const,
description: 'The user-defined UTF-8 string describing their account.',
example: 'Hi masters, I am Ai!'
},
location: {
type: 'string' as const,
nullable: true as const, optional: true as const,
},
birthday: {
type: 'string' as const,
nullable: true as const, optional: true as const,
example: '2018-03-12'
},
fields: {
type: 'array' as const,
nullable: false as const, optional: false as const,
items: {
type: 'object' as const,
nullable: false as const, optional: false as const,
properties: {
name: {
type: 'string' as const,
nullable: false as const, optional: false as const
},
value: {
type: 'string' as const,
nullable: false as const, optional: false as const
}
},
maxLength: 4
}
},
followersCount: {
type: 'number' as const,
nullable: false as const, optional: true as const,
@ -415,11 +502,6 @@ export const packedUserSchema = {
nullable: false as const, optional: true as const,
description: 'The number of Notes (including renotes) issued by the user.'
},
isBot: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
description: 'Whether this account is a bot.'
},
pinnedNoteIds: {
type: 'array' as const,
nullable: false as const, optional: true as const,
@ -438,24 +520,59 @@ export const packedUserSchema = {
ref: 'Note'
}
},
isCat: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
description: 'Whether this account is a cat.'
pinnedPageId: {
type: 'string' as const,
nullable: true as const, optional: false as const
},
isAdmin: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
description: 'Whether this account is the admin.'
pinnedPage: {
type: 'object' as const,
nullable: true as const, optional: false as const,
ref: 'Page'
},
isModerator: {
twoFactorEnabled: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
description: 'Whether this account is a moderator.'
nullable: false as const, optional: false as const,
default: false
},
isLocked: {
usePasswordLessLogin: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
nullable: false as const, optional: false as const,
default: false
},
securityKeys: {
type: 'boolean' as const,
nullable: false as const, optional: false as const,
default: false
},
avatarId: {
type: 'string' as const,
nullable: true as const, optional: true as const,
format: 'id'
},
bannerId: {
type: 'string' as const,
nullable: true as const, optional: true as const,
format: 'id'
},
autoWatch: {
type: 'boolean' as const,
nullable: false as const, optional: true as const
},
injectFeaturedNote: {
type: 'boolean' as const,
nullable: false as const, optional: true as const
},
alwaysMarkNsfw: {
type: 'boolean' as const,
nullable: false as const, optional: true as const
},
carefulBot: {
type: 'boolean' as const,
nullable: false as const, optional: true as const
},
autoAcceptFollowed: {
type: 'boolean' as const,
nullable: false as const, optional: true as const
},
hasUnreadSpecifiedNotes: {
type: 'boolean' as const,
@ -465,5 +582,69 @@ export const packedUserSchema = {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
},
hasUnreadAnnouncement: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
},
hasUnreadAntenna: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
},
hasUnreadChannel: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
},
hasUnreadMessagingMessage: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
},
hasUnreadNotification: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
},
hasPendingReceivedFollowRequest: {
type: 'boolean' as const,
nullable: false as const, optional: true as const,
},
integrations: {
type: 'object' as const,
nullable: false as const, optional: true as const
},
mutedWords: {
type: 'array' as const,
nullable: false as const, optional: true as const
},
mutingNotificationTypes: {
type: 'array' as const,
nullable: false as const, optional: true as const
},
isFollowing: {
type: 'boolean' as const,
optional: true as const, nullable: false as const
},
hasPendingFollowRequestFromYou: {
type: 'boolean' as const,
optional: true as const, nullable: false as const
},
hasPendingFollowRequestToYou: {
type: 'boolean' as const,
optional: true as const, nullable: false as const
},
isFollowed: {
type: 'boolean' as const,
optional: true as const, nullable: false as const
},
isBlocking: {
type: 'boolean' as const,
optional: true as const, nullable: false as const
},
isBlocked: {
type: 'boolean' as const,
optional: true as const, nullable: false as const
},
isMuted: {
type: 'boolean' as const,
optional: true as const, nullable: false as const
}
},
};