2019-02-23 12:08:08 -07:00
|
|
|
|
|
|
|
|
|
export const schemas = {
|
|
|
|
|
Error: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
error: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
description: 'An error object.',
|
|
|
|
|
properties: {
|
|
|
|
|
code: {
|
|
|
|
|
type: 'string',
|
2019-02-23 12:27:09 -07:00
|
|
|
|
description: 'An error code. Unique within the endpoint.',
|
2019-02-23 12:08:08 -07:00
|
|
|
|
},
|
|
|
|
|
message: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
description: 'An error message.',
|
|
|
|
|
},
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'uuid',
|
|
|
|
|
description: 'An error ID. This ID is static.',
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
required: ['code', 'id', 'message']
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['error']
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
User: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
2019-02-24 03:27:32 -07:00
|
|
|
|
description: 'The unique identifier for this User.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
2019-02-23 12:08:08 -07:00
|
|
|
|
},
|
|
|
|
|
username: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
description: 'The screen name, handle, or alias that this user identifies themselves with.',
|
|
|
|
|
example: 'ai'
|
|
|
|
|
},
|
|
|
|
|
name: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
nullable: true,
|
|
|
|
|
description: 'The name of the user, as they’ve defined it.',
|
|
|
|
|
example: '藍'
|
|
|
|
|
},
|
|
|
|
|
host: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
nullable: true,
|
|
|
|
|
example: 'misskey.example.com'
|
|
|
|
|
},
|
|
|
|
|
description: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
nullable: true,
|
|
|
|
|
description: 'The user-defined UTF-8 string describing their account.',
|
|
|
|
|
example: 'Hi masters, I am Ai!'
|
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the user account was created on Misskey.'
|
|
|
|
|
},
|
|
|
|
|
followersCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'The number of followers this account currently has.'
|
|
|
|
|
},
|
|
|
|
|
followingCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'The number of users this account is following.'
|
|
|
|
|
},
|
|
|
|
|
notesCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'The number of Notes (including renotes) issued by the user.'
|
|
|
|
|
},
|
|
|
|
|
isBot: {
|
|
|
|
|
type: 'boolean',
|
|
|
|
|
description: 'Whether this account is a bot.'
|
|
|
|
|
},
|
|
|
|
|
isCat: {
|
|
|
|
|
type: 'boolean',
|
|
|
|
|
description: 'Whether this account is a cat.'
|
|
|
|
|
},
|
|
|
|
|
isAdmin: {
|
|
|
|
|
type: 'boolean',
|
|
|
|
|
description: 'Whether this account is the admin.'
|
|
|
|
|
},
|
|
|
|
|
isVerified: {
|
|
|
|
|
type: 'boolean'
|
|
|
|
|
},
|
|
|
|
|
isLocked: {
|
|
|
|
|
type: 'boolean'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'name', 'username', 'createdAt']
|
|
|
|
|
},
|
|
|
|
|
|
2019-02-24 11:35:45 -07:00
|
|
|
|
UserList: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
description: 'The unique identifier for this UserList.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the UserList was created.'
|
|
|
|
|
},
|
|
|
|
|
title: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
description: 'The name of the UserList.'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'createdAt', 'title']
|
|
|
|
|
},
|
|
|
|
|
|
2019-02-24 11:43:19 -07:00
|
|
|
|
MessagingMessage: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
description: 'The unique identifier for this MessagingMessage.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the MessagingMessage was created.'
|
|
|
|
|
},
|
|
|
|
|
text: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
nullable: true
|
|
|
|
|
},
|
|
|
|
|
file: {
|
|
|
|
|
type: 'DriveFile',
|
|
|
|
|
nullable: true
|
|
|
|
|
},
|
|
|
|
|
recipientId: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
},
|
|
|
|
|
recipient: {
|
|
|
|
|
$ref: '#/components/schemas/User'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'createdAt']
|
|
|
|
|
},
|
|
|
|
|
|
2019-02-23 12:08:08 -07:00
|
|
|
|
Note: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
2019-02-24 03:27:32 -07:00
|
|
|
|
description: 'The unique identifier for this Note.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
2019-02-23 12:08:08 -07:00
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the Note was created on Misskey.'
|
|
|
|
|
},
|
|
|
|
|
text: {
|
|
|
|
|
type: 'string'
|
|
|
|
|
},
|
|
|
|
|
cw: {
|
|
|
|
|
type: 'string'
|
|
|
|
|
},
|
|
|
|
|
userId: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
},
|
|
|
|
|
user: {
|
|
|
|
|
$ref: '#/components/schemas/User'
|
|
|
|
|
},
|
|
|
|
|
replyId: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
2019-02-24 03:27:32 -07:00
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
2019-02-23 12:08:08 -07:00
|
|
|
|
},
|
|
|
|
|
renoteId: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
2019-02-24 03:27:32 -07:00
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
2019-02-23 12:08:08 -07:00
|
|
|
|
},
|
|
|
|
|
reply: {
|
|
|
|
|
$ref: '#/components/schemas/Note'
|
|
|
|
|
},
|
|
|
|
|
renote: {
|
|
|
|
|
$ref: '#/components/schemas/Note'
|
|
|
|
|
},
|
|
|
|
|
viaMobile: {
|
|
|
|
|
type: 'boolean'
|
|
|
|
|
},
|
|
|
|
|
visibility: {
|
|
|
|
|
type: 'string'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'userId', 'createdAt']
|
|
|
|
|
},
|
|
|
|
|
|
2019-02-24 02:13:11 -07:00
|
|
|
|
Notification: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
2019-02-24 03:27:32 -07:00
|
|
|
|
description: 'The unique identifier for this notification.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
2019-02-24 02:13:11 -07:00
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the notification was created.'
|
|
|
|
|
},
|
|
|
|
|
type: {
|
|
|
|
|
type: 'string',
|
2019-04-07 06:50:36 -06:00
|
|
|
|
enum: ['follow', 'receiveFollowRequest', 'mention', 'reply', 'renote', 'quote', 'reaction', 'pollVote'],
|
2019-02-24 02:13:11 -07:00
|
|
|
|
description: 'The type of the notification.'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'createdAt', 'type']
|
|
|
|
|
},
|
|
|
|
|
|
2019-02-23 12:08:08 -07:00
|
|
|
|
DriveFile: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
2019-02-24 03:27:32 -07:00
|
|
|
|
description: 'The unique identifier for this Drive file.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
2019-02-23 12:08:08 -07:00
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the Drive file was created on Misskey.'
|
|
|
|
|
},
|
|
|
|
|
name: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
description: 'The file name with extension.',
|
|
|
|
|
example: 'lenna.jpg'
|
|
|
|
|
},
|
|
|
|
|
type: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
description: 'The MIME type of this Drive file.',
|
|
|
|
|
example: 'image/jpeg'
|
|
|
|
|
},
|
|
|
|
|
md5: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'md5',
|
|
|
|
|
description: 'The MD5 hash of this Drive file.',
|
|
|
|
|
example: '15eca7fba0480996e2245f5185bf39f2'
|
|
|
|
|
},
|
2019-04-07 06:50:36 -06:00
|
|
|
|
size: {
|
2019-02-23 12:08:08 -07:00
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'The size of this Drive file. (bytes)',
|
|
|
|
|
example: 51469
|
|
|
|
|
},
|
|
|
|
|
folderId: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
nullable: true,
|
|
|
|
|
description: 'The parent folder ID of this Drive file.',
|
2019-02-24 03:27:32 -07:00
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
2019-02-23 12:08:08 -07:00
|
|
|
|
},
|
|
|
|
|
isSensitive: {
|
|
|
|
|
type: 'boolean',
|
|
|
|
|
description: 'Whether this Drive file is sensitive.',
|
|
|
|
|
},
|
|
|
|
|
},
|
2019-04-07 06:50:36 -06:00
|
|
|
|
required: ['id', 'createdAt', 'name', 'type', 'size', 'md5']
|
2019-02-24 03:42:26 -07:00
|
|
|
|
},
|
|
|
|
|
|
2019-02-25 22:21:28 -07:00
|
|
|
|
DriveFolder: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
description: 'The unique identifier for this Drive folder.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the Drive folder was created.'
|
|
|
|
|
},
|
|
|
|
|
name: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
description: 'The folder name.',
|
|
|
|
|
},
|
|
|
|
|
foldersCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'The count of child folders.',
|
|
|
|
|
},
|
|
|
|
|
filesCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'The count of child files.',
|
|
|
|
|
},
|
|
|
|
|
parentId: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
nullable: true,
|
|
|
|
|
description: 'The parent folder ID of this folder.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
|
|
|
|
},
|
|
|
|
|
parent: {
|
2019-02-26 13:02:46 -07:00
|
|
|
|
$ref: '#/components/schemas/DriveFolder'
|
2019-02-25 22:21:28 -07:00
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'createdAt', 'name']
|
|
|
|
|
},
|
|
|
|
|
|
2019-04-07 06:50:36 -06:00
|
|
|
|
Following: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
description: 'The unique identifier for this following.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the following was created.'
|
|
|
|
|
},
|
|
|
|
|
followeeId: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
},
|
|
|
|
|
followee: {
|
|
|
|
|
$ref: '#/components/schemas/User',
|
|
|
|
|
description: 'The followee.'
|
|
|
|
|
},
|
|
|
|
|
followerId: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
},
|
|
|
|
|
follower: {
|
|
|
|
|
$ref: '#/components/schemas/User',
|
|
|
|
|
description: 'The follower.'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'createdAt', 'followeeId', 'followerId']
|
|
|
|
|
},
|
|
|
|
|
|
2019-02-24 03:42:26 -07:00
|
|
|
|
Muting: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
description: 'The unique identifier for this mute.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the mute was created.'
|
|
|
|
|
},
|
|
|
|
|
mutee: {
|
|
|
|
|
$ref: '#/components/schemas/User',
|
|
|
|
|
description: 'The mutee.'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'createdAt', 'mutee']
|
|
|
|
|
},
|
|
|
|
|
|
|
|
|
|
Blocking: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
description: 'The unique identifier for this block.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the block was created.'
|
|
|
|
|
},
|
|
|
|
|
blockee: {
|
|
|
|
|
$ref: '#/components/schemas/User',
|
|
|
|
|
description: 'The blockee.'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'createdAt', 'blockee']
|
|
|
|
|
},
|
2019-02-26 13:02:36 -07:00
|
|
|
|
|
2019-02-26 13:08:42 -07:00
|
|
|
|
Reaction: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
id: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'id',
|
|
|
|
|
description: 'The unique identifier for this reaction.',
|
|
|
|
|
example: 'xxxxxxxxxxxxxxxxxxxxxxxx',
|
|
|
|
|
},
|
|
|
|
|
createdAt: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
format: 'date-time',
|
|
|
|
|
description: 'The date that the reaction was created.'
|
|
|
|
|
},
|
|
|
|
|
user: {
|
|
|
|
|
$ref: '#/components/schemas/User',
|
|
|
|
|
description: 'User who performed this reaction.'
|
|
|
|
|
},
|
|
|
|
|
type: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
enum: [
|
|
|
|
|
'like',
|
|
|
|
|
'love',
|
|
|
|
|
'laugh',
|
|
|
|
|
'hmm',
|
|
|
|
|
'surprise',
|
|
|
|
|
'congrats',
|
|
|
|
|
'angry',
|
|
|
|
|
'confused',
|
|
|
|
|
'rip',
|
2019-03-17 10:03:35 -06:00
|
|
|
|
'pudding',
|
|
|
|
|
'star'
|
2019-02-26 13:08:42 -07:00
|
|
|
|
],
|
|
|
|
|
description: 'The reaction type.'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: ['id', 'createdAt', 'user', 'type']
|
|
|
|
|
},
|
|
|
|
|
|
2019-02-26 13:02:36 -07:00
|
|
|
|
Hashtag: {
|
|
|
|
|
type: 'object',
|
|
|
|
|
properties: {
|
|
|
|
|
tag: {
|
|
|
|
|
type: 'string',
|
|
|
|
|
description: 'The hashtag name. No # prefixed.',
|
|
|
|
|
example: 'misskey',
|
|
|
|
|
},
|
|
|
|
|
mentionedUsersCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'Number of all users using this hashtag.'
|
|
|
|
|
},
|
|
|
|
|
mentionedLocalUsersCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'Number of local users using this hashtag.'
|
|
|
|
|
},
|
|
|
|
|
mentionedRemoteUsersCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'Number of remote users using this hashtag.'
|
|
|
|
|
},
|
|
|
|
|
attachedUsersCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'Number of all users who attached this hashtag to profile.'
|
|
|
|
|
},
|
|
|
|
|
attachedLocalUsersCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'Number of local users who attached this hashtag to profile.'
|
|
|
|
|
},
|
|
|
|
|
attachedRemoteUsersCount: {
|
|
|
|
|
type: 'number',
|
|
|
|
|
description: 'Number of remote users who attached this hashtag to profile.'
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
required: [
|
|
|
|
|
'tag',
|
|
|
|
|
'mentionedUsersCount',
|
|
|
|
|
'mentionedLocalUsersCount',
|
|
|
|
|
'mentionedRemoteUsersCount',
|
|
|
|
|
'attachedUsersCount',
|
|
|
|
|
'attachedLocalUsersCount',
|
|
|
|
|
'attachedRemoteUsersCount',
|
|
|
|
|
]
|
|
|
|
|
},
|
2019-02-23 12:08:08 -07:00
|
|
|
|
};
|