openapi: 3.0.0 info: title: traQ API description: traQ v2 API version: 2.6.3 license: name: MIT url: 'https://github.com/traPtitech/traQ/blob/master/LICENSE' contact: name: traP url: 'https://github.com/traPtitech/traQ' servers: - url: 'https://q.trap.jp/api/1.0' description: production environment - url: 'https://traq-dev.tokyotech.org/api/1.0' description: staging environment paths: /login: post: tags: - authentication operationId: login deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /logout: post: tags: - authentication operationId: logout deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/public/icon/{username}': get: tags: - public operationId: getPublicUserIcon description: 指定したユーザーのアイコン画像を取得します。 parameters: - name: username description: 画像を取得するユーザーのユーザー名 in: path required: true schema: type: string security: [] responses: '200': description: 正常に取得できました。 content: image/jpeg: schema: type: string format: binary image/png: schema: type: string format: binary image/gif: schema: type: string format: binary '404': description: 取得できませんでした。指定したユーザーは存在しません。 /oauth2/authorize: get: tags: - authorization operationId: getOauth2Authorize deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - authorization operationId: postOauth2Authorize deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /oauth2/authorize/decide: post: tags: - authorization operationId: postOauth2AuthorizeDecide deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /oauth2/token: post: tags: - authorization operationId: postOauth2Token deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users: get: tags: - user operationId: getUsers deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - user operationId: registerUser deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました。 /users/me: get: tags: - user operationId: getMe deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました patch: tags: - user operationId: changeMe deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/password: put: tags: - user operationId: changePassword deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/qr-code: get: tags: - user operationId: getQrCode deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/icon: get: tags: - user operationId: getMyIcon deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました put: tags: - user operationId: changeMyIcon deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/stamp-history: get: tags: - stamp operationId: getStampHistory deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/groups: get: tags: - user group operationId: getMyGroups deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/notification: get: tags: - notification operationId: getMySubscribeChannels deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/tokens: get: tags: - client operationId: getTokens deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/me/tokens/{oauth2TokenID}': parameters: - $ref: '#/components/parameters/oauth2TokenIdInPath' delete: tags: - client operationId: deleteToken deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/sessions: get: tags: - sessions operationId: getSessions deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: tags: - sessions operationId: deleteSessions deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/me/sessions/{referenceID}': parameters: - name: referenceID description: 操作の対象となるセッションの参照ID in: path required: true schema: type: string delete: tags: - sessions operationId: deleteSession deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/stars: get: tags: - star operationId: getStaredChannels deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/me/stars/{channelID}': parameters: - $ref: '#/components/parameters/channelIdInPath' put: tags: - star operationId: starChannel deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: tags: - star operationId: unstarChannel deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /users/me/unread/channels: get: tags: - unread operationId: getUnreadChannels deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/me/unread/channels/{channelID}': parameters: - $ref: '#/components/parameters/channelIdInPath' delete: tags: - unread operationId: readMessages deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/{userID}': parameters: - $ref: '#/components/parameters/userIdInPath' get: tags: - user operationId: getUser deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/{userID}/messages': parameters: - $ref: '#/components/parameters/userIdInPath' get: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/{userID}/icon': parameters: - $ref: '#/components/parameters/userIdInPath' get: tags: - user operationId: getUserIcon deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/{userID}/notification': parameters: - $ref: '#/components/parameters/userIdInPath' get: tags: - notification operationId: getUserSubscribeChannels deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/{userID}/groups': parameters: - $ref: '#/components/parameters/userIdInPath' get: tags: - user group operationId: getUserGroups deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/{userID}/tags': parameters: - $ref: '#/components/parameters/userIdInPath' get: tags: - userTag operationId: getUserTags deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - userTag operationId: addUserTag deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/users/{userID}/tags/{tagID}': parameters: - $ref: '#/components/parameters/userIdInPath' - $ref: '#/components/parameters/tagIdInPath' patch: tags: - userTag operationId: changeLockUserTag deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: tags: - userTag operationId: deleteUserTag deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /heartbeat: get: deprecated: true tags: - heartbeat operationId: getHeartbeat description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: deprecated: true tags: - heartbeat operationId: postHeartbeat description: このAPIは削除されました responses: '410': description: このAPIは削除されました /channels: get: tags: - channel deprecated: true operationId: getChannels description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - channel operationId: createChannel deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}': parameters: - $ref: '#/components/parameters/channelIdInPath' get: deprecated: true tags: - channel operationId: getChannel description: このAPIは削除されました responses: '410': description: このAPIは削除されました patch: deprecated: true tags: - channel operationId: editChannel description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/parent': parameters: - $ref: '#/components/parameters/channelIdInPath' put: deprecated: true tags: - channel operationId: changeChannelParent description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/children': parameters: - $ref: '#/components/parameters/channelIdInPath' post: tags: - channel operationId: createChannelChild deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/pins': parameters: - $ref: '#/components/parameters/channelIdInPath' get: deprecated: true tags: - pin operationId: getPinnedMessages description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/topic': parameters: - $ref: '#/components/parameters/channelIdInPath' get: deprecated: true tags: - channel description: このAPIは削除されました responses: '410': description: このAPIは削除されました put: deprecated: true tags: - channel description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/stats': parameters: - $ref: '#/components/parameters/channelIdInPath' get: tags: - channel operationId: getChannelStats deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました' '/channels/{channelID}/viewers': parameters: - $ref: '#/components/parameters/channelIdInPath' get: tags: - channel operationId: getChannelViewers deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/messages': parameters: - $ref: '#/components/parameters/channelIdInPath' get: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/events': parameters: - $ref: '#/components/parameters/channelIdInPath' get: tags: - channel operationId: getChannelEvents deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/notification': parameters: - $ref: '#/components/parameters/channelIdInPath' get: tags: - notification operationId: getSubscribers deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました put: tags: - notification operationId: changeSubscribers deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/bots': parameters: - $ref: '#/components/parameters/channelIdInPath' get: tags: - bot operationId: getChannelBots deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - bot operationId: addChannelBot deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/bots/{botID}': parameters: - $ref: '#/components/parameters/channelIdInPath' - $ref: '#/components/parameters/botIdInPath' delete: tags: - bot operationId: removeChannelBot deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/channels/{channelID}/webrtc/state': parameters: - $ref: '#/components/parameters/channelIdInPath' get: tags: - webrtc operationId: getChannelWebRTCState deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /notification: get: deprecated: true tags: - notification operationId: connectNotification description: このAPIは削除されました responses: '410': description: このAPIは削除されました /notification/device: post: tags: - notification operationId: registerNotificationDevice deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /messages/reports: get: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/messages/{messageID}': parameters: - $ref: '#/components/parameters/messageIdInPath' get: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました put: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/messages/{messageID}/report': parameters: - $ref: '#/components/parameters/messageIdInPath' post: deprecated: true tags: - message description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/messages/{messageID}/stamps': parameters: - $ref: '#/components/parameters/messageIdInPath' get: deprecated: true tags: - stamp description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/messages/{messageID}/stamps/{stampID}': parameters: - $ref: '#/components/parameters/messageIdInPath' - $ref: '#/components/parameters/stampIdInPath' post: deprecated: true tags: - stamp description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: deprecated: true tags: - stamp description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/tags/{tagID}': parameters: - $ref: '#/components/parameters/tagIdInPath' get: tags: - userTag operationId: getTag deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /files: post: deprecated: true tags: - file operationId: uploadFile description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/files/{fileID}': parameters: - $ref: '#/components/parameters/fileIdInPath' get: tags: - file operationId: getFile description: 指定したファイルの中身を取得します。 security: - traqOAuth2: - read parameters: - name: dl description: ファイルをダウンロードする場合に1を指定する in: query required: false schema: type: integer responses: '200': description: |- 正常に取得できました。 fileのbinaryを返します。 application/octet-streamで返すことになっていますが、ファイルの形式によっては変わります。 content: application/octet-stream: schema: type: string format: binary '403': description: 取得できませんでした。指定されたファイルにアクセスする権限がありません。 '404': description: 取得できませんでした。指定されたファイルは存在しません。 '/files/{fileID}/meta': parameters: - $ref: '#/components/parameters/fileIdInPath' get: tags: - file operationId: getFileMeta description: 指定したファイルのメタデータを取得します security: - traqOAuth2: - read responses: '200': description: 正常に取得できました。 content: application/json: schema: $ref: '#/components/schemas/FileInfo' '403': description: 取得できませんでした。指定されたファイルにアクセスする権限がありません。 '404': description: 取得できませんでした。指定されたファイルは存在しません。 '/files/{fileID}/thumbnail': parameters: - $ref: '#/components/parameters/fileIdInPath' get: tags: - file operationId: getFileThumbnail description: 指定したファイルのサムネイルを取得します security: - traqOAuth2: - read responses: '200': description: 正常に取得できました。 content: image/png: schema: type: string format: binary '403': description: 取得できませんでした。指定されたファイルのサムネイルにアクセスする権限がありません。 '404': description: 取得できませんでした。指定されたファイルのサムネイルは存在しません。 /pins: post: deprecated: true tags: - pin operationId: pinMessage description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/pins/{pinID}': parameters: - $ref: '#/components/parameters/pinIdInPath' get: deprecated: true tags: - pin operationId: getPinnedMessage description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: deprecated: true tags: - pin operationId: unpinMessage description: このAPIは削除されました responses: '410': description: このAPIは削除されました /stamps: get: tags: - stamp operationId: getStamps deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - stamp operationId: createStamp deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/stamps/{stampID}': parameters: - $ref: '#/components/parameters/stampIdInPath' get: tags: - stamp operationId: getStamp deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました patch: tags: - stamp operationId: editStamp deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: tags: - stamp operationId: deleteStamp deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /webhooks: get: tags: - webhook operationId: getWebhooks deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - webhook operationId: createWebhooks deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/webhooks/{webhookID}': parameters: - $ref: '#/components/parameters/webhookIdInPath' get: tags: - webhook operationId: getWebhook deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました patch: tags: - webhook operationId: editWebhook deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: tags: - webhook operationId: deleteWebhook deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - webhook operationId: postWebhook deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/webhooks/{webhookID}/icon': parameters: - $ref: '#/components/parameters/webhookIdInPath' get: tags: - webhook operationId: getWebhookIcon deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました put: tags: - webhook operationId: changeWebhookIcon deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/webhooks/{webhookID}/github': parameters: - $ref: '#/components/parameters/webhookIdInPath' post: deprecated: true tags: - webhook operationId: postGitHubWebhook description: このAPIは削除されました responses: '410': description: このAPIは削除されました /groups: get: tags: - user group operationId: getGroups deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - user group operationId: createGroup deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/groups/{groupID}': parameters: - $ref: '#/components/parameters/groupIdInPath' get: tags: - user group operationId: getGroup deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました patch: tags: - user group operationId: editGroup deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: tags: - user group operationId: deleteGroup deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/groups/{groupID}/members': parameters: - $ref: '#/components/parameters/groupIdInPath' get: tags: - user group operationId: getGroupMembers deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - user group operationId: addGroupMember deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/groups/{groupID}/members/{userID}': parameters: - $ref: '#/components/parameters/groupIdInPath' - $ref: '#/components/parameters/userIdInPath' delete: tags: - user group operationId: deleteGroupMember deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /clients: get: tags: - client operationId: getClients deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - client operationId: createClient deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/clients/{clientID}': parameters: - $ref: '#/components/parameters/clientIdInPath' get: tags: - client operationId: getClient deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました patch: tags: - client operationId: patchClient deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: tags: - client operationId: deleteClient deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/clients/{clientID}/detail': parameters: - $ref: '#/components/parameters/clientIdInPath' get: tags: - client operationId: getClientDetail deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /bots: get: tags: - bot operationId: getBots deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました post: tags: - bot operationId: createBots deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/bots/{botID}': parameters: - $ref: '#/components/parameters/botIdInPath' get: tags: - bot operationId: getBot deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました patch: tags: - bot operationId: editBot deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました delete: tags: - bot operationId: deleteBot deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/bots/{botID}/detail': parameters: - $ref: '#/components/parameters/botIdInPath' get: tags: - bot operationId: getBotDetail deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/bots/{botID}/events': parameters: - $ref: '#/components/parameters/botIdInPath' put: tags: - bot operationId: changeBotEvents deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/bots/{botID}/icon': parameters: - $ref: '#/components/parameters/botIdInPath' get: tags: - bot operationId: getBotIcon deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました put: tags: - bot operationId: changeBotIcon deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/bots/{botID}/state': parameters: - $ref: '#/components/parameters/botIdInPath' put: tags: - bot operationId: changeBotState deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/bots/{botID}/reissue': parameters: - $ref: '#/components/parameters/botIdInPath' post: tags: - bot operationId: reissueBotTokens deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました '/bots/{botID}/channels': parameters: - $ref: '#/components/parameters/botIdInPath' get: tags: - bot operationId: getBotChannels deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /activity/latest-messages: get: tags: - activity operationId: getActivities deprecated: true description: このAPIは削除されました responses: '410': description: このAPIは削除されました /webrtc/state: get: deprecated: true tags: - webrtc operationId: getWebRTCState description: このAPIは削除されました responses: '410': description: このAPIは削除されました put: deprecated: true tags: - webrtc operationId: putWebRTCState description: このAPIは削除されました responses: '410': description: このAPIは削除されました components: securitySchemes: cookieAuth: type: apiKey in: cookie name: r_session traqOAuth2: type: oauth2 flows: authorizationCode: authorizationUrl: /api/1.0/oauth2/authorize tokenUrl: /api/1.0/oauth2/token scopes: read: 読み取りスコープ write: 書き込みスコープ manage_bot: bot関連読み書きスコープ parameters: channelIdInPath: name: channelID description: 操作の対象となるチャンネルのID in: path required: true schema: type: string format: uuid userIdInPath: name: userID description: 操作の対象となるユーザーID in: path required: true schema: type: string format: uuid groupIdInPath: name: groupID description: 操作の対象となるユーザーグループID in: path required: true schema: type: string format: uuid messageIdInPath: name: messageID in: path required: true description: 操作の対象となるメッセージID schema: type: string format: uuid stampIdInPath: name: stampID description: 操作の対象となるスタンプID in: path required: true schema: type: string format: uuid tagIdInPath: name: tagID description: 操作の対象となるタグID in: path required: true schema: type: string format: uuid fileIdInPath: name: fileID description: 操作の対象となるファイルID in: path required: true schema: type: string pinIdInPath: name: pinID description: 操作の対象となるピン留めID in: path required: true schema: type: string webhookIdInPath: name: webhookID description: 操作の対象となるWebhookのID in: path required: true schema: type: string format: uuid botIdInPath: name: botID description: 操作の対象となるBotのID in: path required: true schema: type: string format: uuid clientIdInPath: name: clientID description: 操作の対象となるclientのID in: path required: true schema: type: string format: uuid oauth2TokenIdInPath: name: oauth2TokenID description: 操作の対象となるTokenのID in: path required: true schema: type: string format: uuid limitInQuery: in: query name: limit schema: type: integer default: 0 description: 取得する件数 1-200 example: 50 offsetInQuery: in: query name: offset schema: type: integer default: 0 description: 取得するオフセット example: 150 sinceInQuery: in: query name: since schema: type: string format: date-time default: '0000-01-01T00:00:00.000000Z' description: 取得する時間範囲の開始日時 example: '2016-10-12T11:00:00.000000Z' untilInQuery: in: query name: until schema: type: string format: date-time description: 取得する時間範囲の終了日時 example: '2016-10-12T11:00:00.0000000Z' inclusiveInQuery: in: query name: inclusive schema: type: boolean default: false description: 範囲の端を含めるかどうか orderInQuery: in: query name: order schema: type: string enum: - asc - desc default: desc description: 昇順か降順か headers: X-TRAQ-MORE: schema: type: boolean description: 指定した範囲に要素がさらに存在するかどうか schemas: UUIDs: type: array description: UUIDの配列 items: type: string format: uuid OAuth2ResponseType: type: string enum: - code - token - none OAuth2Prompt: type: string enum: - none OAuth2Authorization: type: object required: - client_id properties: response_type: $ref: '#/components/schemas/OAuth2ResponseType' client_id: type: string redirect_uri: type: string scope: type: string state: type: string code_challenge: type: string code_challenge_method: type: string nonce: type: string prompt: $ref: '#/components/schemas/OAuth2Prompt' OAuth2Token: type: object required: - access_token - token_type properties: access_token: type: string token_type: type: string expires_in: type: integer refresh_token: type: string scope: type: string id_token: type: string PostOAuth2Token: type: object required: - grant_type properties: grant_type: type: string code: type: string redirect_uri: type: string client_id: type: string code_verifier: type: string username: type: string password: type: string format: password scope: type: string refresh_token: type: string client_secret: type: string OAuth2Decide: type: object required: - submit properties: submit: type: string description: '承諾する場合は"approve"' UserLogin: type: object required: - name - pass properties: name: type: string pass: type: string format: password UserRegister: type: object required: - name - password properties: name: type: string description: ユーザー名(半角英数字とアンダーバー(_)の1文字以上32文字以下) password: type: string format: password description: パスワード UserData: type: object properties: displayName: type: string description: '新しい表示名(0-32文字)。変更しない場合は""' twitterId: type: string description: TwitterID ChangePassword: type: object required: - password - newPassword properties: password: type: string format: password description: 現在のパスワード newPassword: type: string format: password description: 新しいパスワード(10文字以上32文字以下のアスキー文字) Session: type: object properties: id: type: string format: uuid createdAt: type: string format: date-time Channel: type: object properties: channelId: type: string format: uuid description: チャンネルUUID name: type: string description: チャンネル名 example: yamada member: $ref: '#/components/schemas/UUIDs' parent: type: string format: uuid description: 親の階層のチャンネルUUID topic: type: string description: チャンネルトピック example: yamadaチャンネルです! children: $ref: '#/components/schemas/UUIDs' visibility: type: boolean description: チャンネルの可視状態 force: type: boolean description: 強制通知チャンネルか private: type: boolean description: プライベートチャンネルか dm: type: boolean description: ダイレクトメッセージチャンネルか ChannelList: type: array items: $ref: '#/components/schemas/Channel' UnreadChannel: type: object properties: channelId: type: string format: uuid description: チャンネルID count: type: integer description: そのチャンネルの未読メッセージ数 noticeable: type: boolean description: 自分にメンションされたメッセージを含んでいるかどうか since: type: string format: date-time description: そのチャンネルの最古の未読メッセージの日時 updatedAt: type: string format: date-time description: そのチャンネルの最新の未読メッセージの日時 CreateChannel: type: object required: - type properties: name: type: string description: チャンネル名 example: random parent: type: string format: uuid description: 親のチャンネルID CreateChannelChild: type: object required: - name properties: name: type: string description: チャンネル名 example: random PatchChannel: type: object properties: name: type: string description: チャンネル名 example: gps visibility: type: boolean description: 変更後のvisibility example: true force: type: boolean description: 強制通知かどうか PutParentChannel: type: object required: - parent properties: parent: type: string format: uuid description: 変更後の親チャンネルID ChannelTopic: type: object properties: text: type: string description: チャンネルトピック example: yamadaチャンネルです! SetChannelTopic: type: object required: - text properties: text: type: string description: チャンネルの説明 example: 'なんでも良いチャンネルです!!' UserStatus: type: integer enum: - 0 - 1 - 2 description: 'アカウントの状態 (0:停止,1:有効,2:一時停止)' User: type: object properties: userId: type: string format: uuid description: ユーザーUUID name: type: string description: traQ ID displayName: type: string description: 表示名 iconFileId: type: string format: uuid description: アイコンファイルUUID bot: type: boolean description: BOTかどうか twitterId: type: string description: ツイッターID lastOnline: type: string format: date-time description: 最終オンライン日時(オンラインに1度もなってない場合はnull) isOnline: type: boolean description: 現在オンラインかどうか suspended: type: boolean description: アカウントが停止中かどうか accountStatus: $ref: '#/components/schemas/UserStatus' Me: type: object properties: userId: type: string format: uuid description: ユーザーUUID name: type: string description: traQ ID displayName: type: string description: 表示名 iconFileId: type: string format: uuid description: アイコンファイルUUID bot: type: boolean description: BOTかどうか twitterId: type: string description: ツイッターID lastOnline: type: string format: date-time description: 最終オンライン日時(オンラインに1度もなってない場合はnull) isOnline: type: boolean description: 現在オンラインかどうか suspended: type: boolean description: アカウントが停止中かどうか accountStatus: $ref: '#/components/schemas/UserStatus' role: type: string description: ユーザーロール permissions: type: array items: type: string description: 所有している権限の配列 UserList: type: array items: $ref: '#/components/schemas/User' UserDetail: type: object properties: userId: type: string format: uuid description: ユーザーUUID name: type: string description: traQ ID displayName: type: string description: 表示名 iconFileId: type: string format: uuid description: アイコンファイルUUID bot: type: boolean description: BOTかどうか twitterId: type: string description: ツイッターID lastOnline: type: string format: date-time description: 最終オンライン日時(オンラインに1度もなってない場合はnull) isOnline: type: boolean description: 現在オンラインかどうか suspended: type: boolean description: アカウントが停止中かどうか accountStatus: $ref: '#/components/schemas/UserStatus' tagList: $ref: '#/components/schemas/TagList' UserGroup: type: object properties: groupId: type: string format: uuid description: グループUUID name: type: string description: グループ名 description: type: string description: グループ説明 type: type: string description: グループタイプ adminUserId: type: string format: uuid description: グループ管理者UUID members: $ref: '#/components/schemas/UUIDs' createdAt: type: string format: date-time description: グループ作成日時 updatedAt: type: string format: date-time description: グループ更新日時 PostUserGroup: type: object required: - name properties: name: type: string maxLength: 30 description: グループ名 description: type: string description: 説明 PatchUserGroup: type: object properties: name: type: string maxLength: 30 description: グループ名 description: type: string description: 説明 adminUserId: type: string format: uuid description: 管理ユーザー AddUserGroup: type: object required: - userId properties: userId: type: string format: uuid description: 追加するユーザーのID Tag: type: object properties: tagId: type: string format: uuid description: タグUUID tag: type: string description: タグ文字列 isLocked: type: boolean description: タグがロックされているかどうか createdAt: type: string format: date-time description: タグ付与日時 updatedAt: type: string format: date-time description: タグ更新日時 TagList: type: array items: $ref: '#/components/schemas/Tag' SetTag: type: object required: - tag properties: tag: type: string maxLength: 30 description: 追加するタグ example: 山田太郎 SetTagLock: type: object required: - isLocked properties: isLocked: type: boolean description: 'lockするときはtrue,解除するときはfalse' example: true TagUsers: type: object properties: tagId: type: string format: uuid tag: type: string users: $ref: '#/components/schemas/UUIDs' Message: type: object properties: messageId: type: string format: uuid description: メッセージUUID userId: type: string format: uuid description: 投稿者UUID parentChannelId: type: string description: 投稿先チャンネルUUID content: type: string description: メッセージ本体 createdAt: type: string format: date-time description: メッセージ投稿日時 updatedAt: type: string format: date-time description: メッセージ更新日時 pin: type: boolean description: ピン留めされているかどうか reported: type: boolean description: 自分が通報しているかどうか stampList: type: array description: メッセージスタンプ配列 items: $ref: '#/components/schemas/MessageStamp' MessageList: type: array items: $ref: '#/components/schemas/Message' SendMessage: type: object required: - text properties: text: type: string description: Markdown形式のメッセージ本文 example: Raskって誰? MessageStamp: type: object properties: userId: type: string format: uuid description: ユーザーUUID stampId: type: string format: uuid description: スタンプUUID count: type: integer description: 押された個数 createdAt: type: string format: date-time description: 最初に押した日時 updatedAt: type: string format: date-time description: 最後に押した日時 MessageStampPost: type: object required: - count properties: count: type: integer description: 押す個数(1-100)、100より大きい場合は100として受け取ります minimum: 1 default: 1 example: 1 NotificationUsers: type: object properties: 'on': $ref: '#/components/schemas/UUIDs' 'off': $ref: '#/components/schemas/UUIDs' FCMToken: type: object required: - token properties: token: type: string description: FCMのデバイストークン example: 'bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1' Webhook: type: object properties: webhookId: type: string format: uuid description: Webhook UUID botUserId: type: string format: uuid description: WebhookユーザーのUUID displayName: type: string description: Webhookユーザー表示名 description: type: string description: Webhook説明 secure: type: boolean description: Secure Webhookかどうか channelId: type: string format: uuid description: デフォルト投稿先チャンネルUUID creatorId: type: string format: uuid description: Webhook作成者UUID createdAt: type: string format: date-time description: Webhook作成日時 updatedAt: type: string format: date-time description: Webhook更新日時 PostWebhook: type: object required: - name - description - channelId properties: name: type: string maxLength: 32 description: webhookユーザーの表示名 description: type: string description: webhookの説明 channelId: type: string format: uuid description: デフォルトの投稿先チャンネル(パブリックチャンネルのみ) secret: type: string description: webhookシークレット PatchWebhook: type: object properties: name: type: string maxLength: 32 description: webhookユーザーの表示名 description: type: string description: webhookの説明 channelId: type: string format: uuid description: デフォルトの投稿先チャンネル(パブリックチャンネルのみ) secret: type: string description: webhookシークレット creatorId: type: string format: uuid description: 移譲先のユーザーUUID Bot: type: object properties: botId: type: string format: uuid description: BOT UUID botUserId: type: string format: uuid description: BOTユーザーUUID description: type: string description: BOT説明 subscribeEvents: type: array items: type: string description: BOTが購読しているイベントの配列 state: type: integer description: BOT状態 creatorId: type: string format: uuid description: BOT作成者UUID createdAt: type: string format: date-time description: BOT作成日時 updatedAt: type: string format: date-time description: BOT更新日時 ChannelBot: type: object properties: botId: type: string format: uuid description: BotのID botUserId: type: string format: uuid description: BotのユーザーID PostBotChannel: type: object required: - code properties: code: type: string description: ボットコード BotIdObject: type: object properties: botId: type: string format: uuid description: 参加したBotのID PostBot: type: object required: - name - displayName - description - postUrl properties: name: type: string maxLength: 16 description: 'botユーザーID。自動的に先頭に"BOT_"が付与されます' displayName: type: string maxLength: 32 description: botユーザーの表示名 description: type: string description: botの説明 postUrl: type: string format: url description: botのPOSTエンドポイント PatchBot: type: object properties: displayName: type: string description: Bot表示名 description: type: string description: Bot説明 privileged: type: boolean description: privileged属性 webhookUrl: type: string format: url description: BotのPOSTエンドポイント creatorId: type: string format: uuid description: 移譲先のユーザーUUID PutBotState: type: object required: - state properties: state: type: string description: activeまたはinactive BotTokens: type: object properties: verificationToken: type: string description: Verification Token accessToken: type: string description: BOTアクセストークン botCode: type: string description: BOTインストールコード BotDetail: type: object properties: botId: type: string format: uuid description: BOT UUID botUserId: type: string format: uuid description: BOTユーザーUUID description: type: string description: BOT説明 subscribeEvents: type: array items: type: string description: BOTが購読しているイベントの配列 state: type: integer description: BOT状態 creatorId: type: string format: uuid description: BOT作成者UUID createdAt: type: string format: date-time description: BOT作成日時 updatedAt: type: string format: date-time description: BOT更新日時 verificationCode: type: string example: NT672c7bgpfwdiMTyDXoeKiudlMazu description: BOT認証コード accessToken: type: string example: NT672c7bgpfwdiMTyDXoeKiudlMazu description: BOTアクセストークン postUrl: type: string format: uri description: BOTサーバーエンドポイント example: 'https://example.com/bot' privileged: type: boolean description: 権限昇格されているかどうか botCode: type: string example: NT672c7bgpfwdiMTyDXoeKiudlMazu description: BOTインストールコード PutBotEvents: type: object required: - events properties: events: type: array description: 購読するイベントの配列 items: type: string StampHistory: type: object properties: stampId: type: string format: uuid description: スタンプID datetime: type: string format: date-time description: そのスタンプが最後に押された日時 Stamp: type: object properties: id: type: string format: uuid description: スタンプUUID name: type: string description: スタンプ名 creatorId: type: string format: uuid description: スタンプ作成者UUID fileId: type: string format: uuid description: スタンプファイルUUID createdAt: type: string format: date-time description: スタンプ作成日時 updatedAt: type: string format: date-time description: スタンプ更新日時 FileInfo: type: object properties: fileId: type: string format: uuid description: ファイルUUID name: type: string description: ファイル名 mime: type: string description: MIMEタイプ size: type: integer description: ファイルサイズ md5: type: string description: MD5ハッシュ hasThumb: type: boolean description: サムネイルがあるかどうか thumbWidth: type: integer description: サムネイル幅 thumbHeight: type: integer description: サムネイル高さ datetime: type: string format: date-time description: アップロード日時 HeartbeatStatus: type: string enum: - none - monitoring - editing description: 'editing,monitoring,noneのユーザーの状態' example: monitoring Heartbeat: type: object required: - status - channelId properties: status: $ref: '#/components/schemas/HeartbeatStatus' channelId: type: string format: uuid description: 現在いるチャンネルId HeartbeatRes: type: object properties: userStatuses: type: array items: type: object properties: userId: type: string format: uuid description: ユーザーUUID status: $ref: '#/components/schemas/HeartbeatStatus' channelId: type: string format: uuid description: チャンネルUUID Report: type: object properties: id: type: string format: uuid description: 通報ID messageId: type: string format: uuid description: 通報対象のメッセージID reporter: type: string format: uuid description: 通報者ID reason: type: string description: 通報内容 createdAt: type: string format: date-time description: 通報日時 ReportMessage: type: object required: - reason properties: reason: type: string maxLength: 100 description: 通報理由 ClientScope: type: string enum: - read - write - manage_bot ClientInfo: type: object properties: clientId: type: string description: クライアントID name: type: string description: クライアント名 description: type: string description: クライアント説明 creatorId: type: string format: uuid description: クライアント作成者UUID OwnedClientInfo: type: object properties: clientId: type: string description: クライアントID name: type: string description: クライアント名 description: type: string description: クライアント説明 creatorId: type: string format: uuid description: クライアント作成者UUID scopes: type: array items: $ref: '#/components/schemas/ClientScope' description: 要求スコープの配列 redirectUri: type: string format: uri description: OAuth2リダイレクトURL secret: type: string description: クライアントSecret AllowedClientInfo: type: object properties: tokenId: type: string format: uuid description: OAuth2アクセストークンUUID clientId: type: string description: クライアントID name: type: string description: クライアント名 description: type: string description: クライアント説明 creatorId: type: string format: uuid description: クライアント作成者UUID scopes: type: array items: $ref: '#/components/schemas/ClientScope' description: 要求スコープの配列 approvedAt: type: string format: date-time description: 承認日時 PostClient: type: object required: - name - description - redirectUri - scopes properties: name: type: string minLength: 1 maxLength: 32 description: クライアント名 description: type: string description: クライアントの説明 redirectUri: type: string format: uri description: リダイレクト先のURI scopes: type: array minItems: 1 description: 要求するスコープ items: $ref: '#/components/schemas/ClientScope' PatchClient: type: object properties: name: type: string minLength: 1 maxLength: 32 description: クライアント名 description: type: string description: 説明 redirectUri: type: string format: uri description: リダイレクト先のURI ChannelEvent: type: object properties: type: type: string description: イベントタイプ enum: - TopicChanged - SubscribersChanged - PinAdded - PinRemoved - NameChanged - ParentChanged - VisibilityChanged - ForcedNotificationChanged - ChildCreated detail: oneOf: - $ref: '#/components/schemas/TopicChangedEvent' - $ref: '#/components/schemas/SubscribersChangedEvent' - $ref: '#/components/schemas/PinAddedEvent' - $ref: '#/components/schemas/PinRemovedEvent' - $ref: '#/components/schemas/NameChangedEvent' - $ref: '#/components/schemas/ParentChangedEvent' - $ref: '#/components/schemas/VisibilityChangedEvent' - $ref: '#/components/schemas/ForcedNotificationChangedEvent' - $ref: '#/components/schemas/ChildCreatedEvent' description: イベント詳細 date_time: type: string format: date-time description: イベント発生日 TopicChangedEvent: type: object properties: userId: type: string format: uuid description: 変更者UUID before: type: string description: 変更前トピック after: type: string description: 変更後トピック description: TopicChanged SubscribersChangedEvent: type: object properties: userId: type: string format: uuid description: 変更者UUID 'on': $ref: '#/components/schemas/UUIDs' 'off': $ref: '#/components/schemas/UUIDs' description: SubscribersChanged PinAddedEvent: type: object properties: userId: type: string format: uuid description: 変更者UUID messageId: type: string format: uuid description: メッセージUUID description: PinAdded PinRemovedEvent: type: object properties: userId: type: string format: uuid description: 変更者UUID messageId: type: string format: uuid description: メッセージUUID description: PinRemoved NameChangedEvent: type: object properties: userId: type: string format: uuid description: 変更者UUID before: type: string description: 変更前名前 after: type: string description: 変更後名前 description: NameChanged ParentChangedEvent: type: object properties: userId: type: string format: uuid description: 変更者UUID before: type: string format: uuid description: 変更前親チャンネルUUID after: type: string format: uuid description: 変更後親チャンネルUUID description: ParentChanged VisibilityChangedEvent: type: object properties: userId: type: string format: uuid description: 作成者UUID visibility: type: boolean description: 可視状態 description: VisibilityChanged ForcedNotificationChangedEvent: type: object properties: userId: type: string format: uuid description: 作成者UUID force: type: boolean description: 強制状態 description: ForcedNotificationChanged ChildCreatedEvent: type: object properties: userId: type: string format: uuid description: 作成者UUID channelId: type: string format: uuid description: チャンネルUUID description: ChildCreated ChannelStats: type: object properties: totalMessageCount: type: number format: int32 description: チャンネルの総投稿メッセージ数(削除されたものも含む) datetime: type: string format: date-time description: 統計情報日時 ChannelViewer: type: object properties: userId: type: string format: uuid description: ユーザーのUUID state: type: string enum: - none - monitoring - editing description: 閲覧状態 ChannelViewers: type: array items: $ref: '#/components/schemas/ChannelViewer' security: - cookieAuth: []