## 概要 [Task2318: ユーザー追加・一覧修正(API・画面)](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/2318) - API - ユーザー一覧取得APIのレスポンスにUserIDを追加 - OpenAPI生成 - 画面 - コード自動生成 - storeにidを含めたユーザー一覧情報を格納する ## レビューポイント - 修正内容に認識違いはないか ## UIの変更 - Before/Afterのスクショなど - スクショ置き場 ## 動作確認状況 - ローカルで確認 ## 補足 - ユーザー追加については別タスクで対応
2571 lines
80 KiB
JSON
2571 lines
80 KiB
JSON
{
|
||
"openapi": "3.0.0",
|
||
"paths": {
|
||
"/health": {
|
||
"get": {
|
||
"operationId": "checkHealth",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"responses": { "200": { "description": "" } }
|
||
}
|
||
},
|
||
"/auth/token": {
|
||
"post": {
|
||
"operationId": "token",
|
||
"summary": "",
|
||
"description": "AzureADB2Cでのサインイン後に払いだされるIDトークンを元に認証用のアクセストークンとリフレッシュトークンを生成します",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/TokenRequest" }
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/TokenResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["auth"]
|
||
}
|
||
},
|
||
"/auth/accessToken": {
|
||
"post": {
|
||
"operationId": "accessToken",
|
||
"summary": "",
|
||
"description": "リフレッシュトークンを元にアクセストークンを再生成します",
|
||
"parameters": [],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/AccessTokenResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["auth"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/accounts": {
|
||
"post": {
|
||
"operationId": "createAccount",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/CreateAccountRequest" }
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateAccountResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "登録済みユーザーからの登録など",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["accounts"]
|
||
}
|
||
},
|
||
"/accounts/licenses/summary": {
|
||
"post": {
|
||
"operationId": "getLicenseSummary",
|
||
"summary": "",
|
||
"description": "指定したアカウントのライセンス集計情報を取得します",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetLicenseSummaryRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetLicenseSummaryResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["accounts"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/accounts/me": {
|
||
"get": {
|
||
"operationId": "getMyAccount",
|
||
"summary": "",
|
||
"description": "ログインしているユーザーのアカウント情報を取得します",
|
||
"parameters": [],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetMyAccountResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "該当アカウントがDBに存在しない場合",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["accounts"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/accounts/typists": {
|
||
"get": {
|
||
"operationId": "getTypists",
|
||
"summary": "",
|
||
"description": "ログインしているユーザーのアカウント配下のタイピスト一覧を取得します",
|
||
"parameters": [],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/GetTypistsResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["accounts"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/accounts/typist-groups": {
|
||
"get": {
|
||
"operationId": "getTypistGroups",
|
||
"summary": "",
|
||
"description": "ログインしているユーザーのアカウント配下のタイピストグループ一覧を取得します",
|
||
"parameters": [],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetTypistGroupsResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["accounts"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/accounts/partner": {
|
||
"post": {
|
||
"operationId": "createPartnerAccount",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePartnerAccountRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreatePartnerAccountResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "登録済みユーザーからの登録など",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["accounts"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/accounts/partner-licenses": {
|
||
"post": {
|
||
"operationId": "getPartnerLicenses",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetPartnerLicensesRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetPartnerLicensesResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["accounts"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/accounts/order-histories": {
|
||
"post": {
|
||
"operationId": "getOrderHistories",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetOrderHistoriesRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetOrderHistoriesResponce"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["accounts"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/users/confirm": {
|
||
"post": {
|
||
"operationId": "confirmUser",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ConfirmRequest" }
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ConfirmResponse" }
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なトークン",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["users"]
|
||
}
|
||
},
|
||
"/users/confirm/initpassword": {
|
||
"post": {
|
||
"operationId": "confirmUserAndInitPassword",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ConfirmRequest" }
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ConfirmResponse" }
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なトークン",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["users"]
|
||
}
|
||
},
|
||
"/users": {
|
||
"get": {
|
||
"operationId": "getUsers",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/GetUsersResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["users"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/users/signup": {
|
||
"post": {
|
||
"operationId": "signup",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/SignupRequest" }
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/SignupResponse" }
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "登録済みメールによる再登録、AuthorIDの重複など",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["users"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/users/relations": {
|
||
"get": {
|
||
"operationId": "getRelations",
|
||
"summary": "",
|
||
"description": "ログインしているユーザーに関連する各種情報を取得します",
|
||
"parameters": [],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetRelationsResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["users"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/users/sort-criteria": {
|
||
"post": {
|
||
"operationId": "updateSortCriteria",
|
||
"summary": "",
|
||
"description": "ログインしているユーザーのタスクソート条件を更新します",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PostSortCriteriaRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PostSortCriteriaResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["users"],
|
||
"security": [{ "bearer": [] }]
|
||
},
|
||
"get": {
|
||
"operationId": "getSortCriteria",
|
||
"summary": "",
|
||
"description": "ログインしているユーザーのタスクソート条件を取得します",
|
||
"parameters": [],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/GetSortCriteriaResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["users"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/users/update": {
|
||
"post": {
|
||
"operationId": "updateUser",
|
||
"summary": "",
|
||
"description": "ユーザーの情報を更新します",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/PostUpdateUserRequest" }
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PostUpdateUserResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["users"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/files/audio/upload-finished": {
|
||
"post": {
|
||
"operationId": "uploadFinished",
|
||
"summary": "",
|
||
"description": "アップロードが完了した音声ファイルの情報を登録し、文字起こしタスクを生成します",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AudioUploadFinishedRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AudioUploadFinishedResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["files"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/files/audio/upload-location": {
|
||
"get": {
|
||
"operationId": "uploadLocation",
|
||
"summary": "",
|
||
"description": "ログイン中ユーザー用のBlob Storage上の音声ファイルのアップロード先アクセスURLを取得します",
|
||
"parameters": [],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AudioUploadLocationResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["files"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/files/audio/download-location": {
|
||
"get": {
|
||
"operationId": "downloadLocation",
|
||
"summary": "",
|
||
"description": "指定した音声ファイルのBlob Storage上のダウンロード先アクセスURLを取得します",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "query",
|
||
"description": "ODMSCloud上で管理する音声ファイルのID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/AudioDownloadLocationResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["files"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/files/template/download-location": {
|
||
"get": {
|
||
"operationId": "downloadTemplateLocation",
|
||
"summary": "",
|
||
"description": "指定した音声ファイルに対応したテンプレートファイルのBlob Storage上のダウンロード先アクセスURLを取得します",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "query",
|
||
"description": "文字起こし対象の音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/TemplateDownloadLocationResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["files"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks": {
|
||
"get": {
|
||
"operationId": "getTasks",
|
||
"summary": "",
|
||
"description": "音声ファイル・文字起こしタスク情報をページ指定して取得します",
|
||
"parameters": [
|
||
{
|
||
"name": "limit",
|
||
"required": false,
|
||
"in": "query",
|
||
"description": "タスクの取得件数(指定しない場合はデフォルト値)",
|
||
"schema": { "default": 200, "type": "number" }
|
||
},
|
||
{
|
||
"name": "offset",
|
||
"required": false,
|
||
"in": "query",
|
||
"description": "オフセット(何件目から取得するか 設定しない場合はデフォルト値)",
|
||
"schema": { "default": 0, "type": "number" }
|
||
},
|
||
{
|
||
"name": "status",
|
||
"required": false,
|
||
"in": "query",
|
||
"description": "取得対象とするタスクのステータス。カンマ(,)区切りで複数指定可能。設定されない場合はすべてのステータスを取得対象とする。許容するステータスの値は次の通り: Uploaded / Pending / InProgress / Finished / Backup",
|
||
"example": "Uploaded,Pending,InProgress",
|
||
"schema": { "type": "string" }
|
||
},
|
||
{
|
||
"name": "direction",
|
||
"required": false,
|
||
"in": "query",
|
||
"description": "ASC/DESC",
|
||
"schema": { "type": "string" }
|
||
},
|
||
{
|
||
"name": "paramName",
|
||
"required": false,
|
||
"in": "query",
|
||
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/WORK_TYPE/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE",
|
||
"schema": { "type": "string" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/TasksResponse" }
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks/next": {
|
||
"get": {
|
||
"operationId": "getNextAudioFile",
|
||
"summary": "",
|
||
"description": "指定した文字起こしタスクの次のタスクに紐づく音声ファイルIDを取得します",
|
||
"parameters": [
|
||
{
|
||
"name": "endedFileId",
|
||
"required": true,
|
||
"in": "query",
|
||
"description": "文字起こし完了したタスクの音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/AudioNextResponse" }
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks/{audioFileId}/checkout": {
|
||
"post": {
|
||
"operationId": "checkout",
|
||
"summary": "",
|
||
"description": "指定した文字起こしタスクをチェックアウトします(ステータスをInprogressにします)",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "path",
|
||
"description": "ODMS Cloud上の音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeStatusResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "指定したIDの音声ファイルが存在しない場合",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks/{audioFileId}/checkin": {
|
||
"post": {
|
||
"operationId": "checkin",
|
||
"summary": "",
|
||
"description": "指定した文字起こしタスクをチェックインします(ステータスをFinishedにします)",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "path",
|
||
"description": "ODMS Cloud上の音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeStatusResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "指定したIDの音声ファイルが存在しない場合",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks/{audioFileId}/cancel": {
|
||
"post": {
|
||
"operationId": "cancel",
|
||
"summary": "",
|
||
"description": "指定した文字起こしタスクをキャンセルします(ステータスをUploadedにします)",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "path",
|
||
"description": "ODMS Cloud上の音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeStatusResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "指定したIDの音声ファイルが存在しない場合",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks/{audioFileId}/suspend": {
|
||
"post": {
|
||
"operationId": "suspend",
|
||
"summary": "",
|
||
"description": "指定した文字起こしタスクを一時中断します(ステータスをPendingにします)",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "path",
|
||
"description": "ODMS Cloud上の音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeStatusResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "指定したIDの音声ファイルが存在しない場合",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks/{audioFileId}/send-back": {
|
||
"post": {
|
||
"operationId": "sendBack",
|
||
"summary": "",
|
||
"description": "指定した文字起こしタスクを差し戻します(ステータスをPendingにします)",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "path",
|
||
"description": "ODMS Cloud上の音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeStatusResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "指定したIDの音声ファイルが存在しない場合",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks/{audioFileId}/backup": {
|
||
"post": {
|
||
"operationId": "backup",
|
||
"summary": "",
|
||
"description": "指定した文字起こしタスクをバックアップします(ステータスをBackupにします)",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "path",
|
||
"description": "ODMS Cloud上の音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ChangeStatusResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "指定したIDの音声ファイルが存在しない場合",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/tasks/{audioFileId}/checkout-permission": {
|
||
"post": {
|
||
"operationId": "changeCheckoutPermission",
|
||
"summary": "",
|
||
"description": "指定した文字起こしタスクのチェックアウト候補を変更します。",
|
||
"parameters": [
|
||
{
|
||
"name": "audioFileId",
|
||
"required": true,
|
||
"in": "path",
|
||
"description": "ODMS Cloud上の音声ファイルID",
|
||
"schema": { "type": "number" }
|
||
}
|
||
],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PostCheckoutPermissionRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/PostCheckoutPermissionResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ(タスクのステータス不正、指定ユーザー不正など)",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"404": {
|
||
"description": "指定したIDの音声ファイルが存在しない",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["tasks"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/licenses/orders": {
|
||
"post": {
|
||
"operationId": "createOrders",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/CreateOrdersRequest" }
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/CreateOrdersResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "同一PONumberの注文がすでに存在する場合など",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["licenses"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/licenses/cards": {
|
||
"post": {
|
||
"operationId": "issueCardLicenses",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/IssueCardLicensesRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/IssueCardLicensesResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["licenses"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/licenses/cards/activate": {
|
||
"post": {
|
||
"operationId": "activateCardLicenses",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ActivateCardLicensesRequest"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": {
|
||
"$ref": "#/components/schemas/ActivateCardLicensesResponse"
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "パラメータのライセンスキーが不正な内容の場合/存在しない場合/登録済みの場合",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["licenses"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
},
|
||
"/notification/register": {
|
||
"post": {
|
||
"operationId": "register",
|
||
"summary": "",
|
||
"parameters": [],
|
||
"requestBody": {
|
||
"required": true,
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/RegisterRequest" }
|
||
}
|
||
}
|
||
},
|
||
"responses": {
|
||
"200": {
|
||
"description": "成功時のレスポンス",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/RegisterResponse" }
|
||
}
|
||
}
|
||
},
|
||
"400": {
|
||
"description": "不正なパラメータ",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"401": {
|
||
"description": "認証エラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
},
|
||
"500": {
|
||
"description": "想定外のサーバーエラー",
|
||
"content": {
|
||
"application/json": {
|
||
"schema": { "$ref": "#/components/schemas/ErrorResponse" }
|
||
}
|
||
}
|
||
}
|
||
},
|
||
"tags": ["notification"],
|
||
"security": [{ "bearer": [] }]
|
||
}
|
||
}
|
||
},
|
||
"info": {
|
||
"title": "ODMSOpenAPI",
|
||
"description": "",
|
||
"version": "1.0.0",
|
||
"contact": {}
|
||
},
|
||
"tags": [],
|
||
"servers": [],
|
||
"components": {
|
||
"securitySchemes": {
|
||
"bearer": { "scheme": "bearer", "bearerFormat": "JWT", "type": "http" }
|
||
},
|
||
"schemas": {
|
||
"TokenRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"idToken": { "type": "string" },
|
||
"type": {
|
||
"type": "string",
|
||
"description": "web or mobile or desktop"
|
||
}
|
||
},
|
||
"required": ["idToken", "type"]
|
||
},
|
||
"TokenResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"refreshToken": { "type": "string" },
|
||
"accessToken": { "type": "string" }
|
||
},
|
||
"required": ["refreshToken", "accessToken"]
|
||
},
|
||
"ErrorResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"message": { "type": "string" },
|
||
"code": { "type": "string" }
|
||
},
|
||
"required": ["message", "code"]
|
||
},
|
||
"AccessTokenResponse": {
|
||
"type": "object",
|
||
"properties": { "accessToken": { "type": "string" } },
|
||
"required": ["accessToken"]
|
||
},
|
||
"CreateAccountRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"companyName": { "type": "string" },
|
||
"country": {
|
||
"type": "string",
|
||
"description": "国名(ISO 3166-1 alpha-2)",
|
||
"minLength": 2,
|
||
"maxLength": 2
|
||
},
|
||
"dealerAccountId": { "type": "number", "nullable": true },
|
||
"adminName": { "type": "string" },
|
||
"adminMail": { "type": "string" },
|
||
"adminPassword": { "type": "string" },
|
||
"acceptedTermsVersion": {
|
||
"type": "string",
|
||
"description": "同意済み利用規約のバージョン"
|
||
},
|
||
"token": { "type": "string", "description": "reCAPTCHA Token" }
|
||
},
|
||
"required": [
|
||
"companyName",
|
||
"country",
|
||
"dealerAccountId",
|
||
"adminName",
|
||
"adminMail",
|
||
"adminPassword",
|
||
"acceptedTermsVersion",
|
||
"token"
|
||
]
|
||
},
|
||
"CreateAccountResponse": { "type": "object", "properties": {} },
|
||
"GetLicenseSummaryRequest": {
|
||
"type": "object",
|
||
"properties": { "accountId": { "type": "number" } },
|
||
"required": ["accountId"]
|
||
},
|
||
"GetLicenseSummaryResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"totalLicense": { "type": "number" },
|
||
"allocatedLicense": { "type": "number" },
|
||
"reusableLicense": { "type": "number" },
|
||
"freeLicense": { "type": "number" },
|
||
"expiringWithin14daysLicense": { "type": "number" },
|
||
"issueRequesting": { "type": "number" },
|
||
"numberOfRequesting": { "type": "number" },
|
||
"shortage": { "type": "number" },
|
||
"storageSize": { "type": "number" },
|
||
"usedSize": { "type": "number" },
|
||
"isStorageAvailable": { "type": "boolean" }
|
||
},
|
||
"required": [
|
||
"totalLicense",
|
||
"allocatedLicense",
|
||
"reusableLicense",
|
||
"freeLicense",
|
||
"expiringWithin14daysLicense",
|
||
"issueRequesting",
|
||
"numberOfRequesting",
|
||
"shortage",
|
||
"storageSize",
|
||
"usedSize",
|
||
"isStorageAvailable"
|
||
]
|
||
},
|
||
"Account": {
|
||
"type": "object",
|
||
"properties": { "accountId": { "type": "number" } },
|
||
"required": ["accountId"]
|
||
},
|
||
"GetMyAccountResponse": {
|
||
"type": "object",
|
||
"properties": { "account": { "$ref": "#/components/schemas/Account" } },
|
||
"required": ["account"]
|
||
},
|
||
"Typist": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": { "type": "number", "description": "TypistのユーザーID" },
|
||
"name": { "type": "string", "description": "Typistのユーザー名" }
|
||
},
|
||
"required": ["id", "name"]
|
||
},
|
||
"GetTypistsResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"typists": {
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/Typist" }
|
||
}
|
||
},
|
||
"required": ["typists"]
|
||
},
|
||
"TypistGroup": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": { "type": "number", "description": "TypistGroupのID" },
|
||
"name": { "type": "string", "description": "TypistGroup名" }
|
||
},
|
||
"required": ["id", "name"]
|
||
},
|
||
"GetTypistGroupsResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"typistGroups": {
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/TypistGroup" }
|
||
}
|
||
},
|
||
"required": ["typistGroups"]
|
||
},
|
||
"CreatePartnerAccountRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"companyName": { "type": "string" },
|
||
"country": {
|
||
"type": "string",
|
||
"description": "国名(ISO 3166-1 alpha-2)",
|
||
"minLength": 2,
|
||
"maxLength": 2
|
||
},
|
||
"adminName": { "type": "string" },
|
||
"email": { "type": "string" }
|
||
},
|
||
"required": ["companyName", "country", "adminName", "email"]
|
||
},
|
||
"CreatePartnerAccountResponse": { "type": "object", "properties": {} },
|
||
"GetPartnerLicensesRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"limit": { "type": "number" },
|
||
"offset": { "type": "number" },
|
||
"accountId": { "type": "number" }
|
||
},
|
||
"required": ["limit", "offset", "accountId"]
|
||
},
|
||
"PartnerLicenseInfo": {
|
||
"type": "object",
|
||
"properties": {
|
||
"accountId": { "type": "number", "description": "アカウントID" },
|
||
"tier": { "type": "number", "description": "階層" },
|
||
"companyName": { "type": "string", "description": "アカウント名" },
|
||
"stockLicense": {
|
||
"type": "number",
|
||
"description": "保有している有効期限が未設定あるいは有効期限内のライセンス数"
|
||
},
|
||
"issuedRequested": {
|
||
"type": "number",
|
||
"description": "子アカウントからの、未発行状態あるいは発行キャンセルされた注文の総ライセンス数"
|
||
},
|
||
"shortage": {
|
||
"type": "number",
|
||
"description": "不足数({Stock license} - {Issue Requested})"
|
||
},
|
||
"issueRequesting": {
|
||
"type": "number",
|
||
"description": "未発行状態あるいは発行キャンセルされた注文の総ライセンス数(=IssueRequestingのStatusの注文の総ライセンス数)"
|
||
}
|
||
},
|
||
"required": [
|
||
"accountId",
|
||
"tier",
|
||
"companyName",
|
||
"stockLicense",
|
||
"issuedRequested",
|
||
"shortage",
|
||
"issueRequesting"
|
||
]
|
||
},
|
||
"GetPartnerLicensesResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"total": { "type": "number" },
|
||
"ownPartnerLicense": {
|
||
"$ref": "#/components/schemas/PartnerLicenseInfo"
|
||
},
|
||
"childrenPartnerLicenses": {
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/PartnerLicenseInfo" }
|
||
}
|
||
},
|
||
"required": ["total", "ownPartnerLicense", "childrenPartnerLicenses"]
|
||
},
|
||
"GetOrderHistoriesRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"limit": { "type": "number", "description": "取得件数" },
|
||
"offset": { "type": "number", "description": "開始位置" },
|
||
"accountId": { "type": "number", "description": "アカウントID" }
|
||
},
|
||
"required": ["limit", "offset", "accountId"]
|
||
},
|
||
"LicenseOrder": {
|
||
"type": "object",
|
||
"properties": {
|
||
"orderDate": { "type": "string", "description": "注文日付" },
|
||
"issueDate": { "type": "string", "description": "発行日付" },
|
||
"numberOfOrder": { "type": "number", "description": "注文数" },
|
||
"poNumber": { "type": "string", "description": "POナンバー" },
|
||
"status": { "type": "string", "description": "注文状態" }
|
||
},
|
||
"required": [
|
||
"orderDate",
|
||
"issueDate",
|
||
"numberOfOrder",
|
||
"poNumber",
|
||
"status"
|
||
]
|
||
},
|
||
"GetOrderHistoriesResponce": {
|
||
"type": "object",
|
||
"properties": {
|
||
"total": { "type": "number", "description": "合計件数" },
|
||
"orderHistories": {
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/LicenseOrder" }
|
||
}
|
||
},
|
||
"required": ["total", "orderHistories"]
|
||
},
|
||
"ConfirmRequest": {
|
||
"type": "object",
|
||
"properties": { "token": { "type": "string" } },
|
||
"required": ["token"]
|
||
},
|
||
"ConfirmResponse": { "type": "object", "properties": {} },
|
||
"User": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": { "type": "number" },
|
||
"name": { "type": "string" },
|
||
"role": { "type": "string", "description": "none/author/typist" },
|
||
"authorId": { "type": "string" },
|
||
"typistGroupName": { "type": "array", "items": { "type": "string" } },
|
||
"email": { "type": "string" },
|
||
"emailVerified": { "type": "boolean" },
|
||
"autoRenew": { "type": "boolean" },
|
||
"licenseAlert": { "type": "boolean" },
|
||
"notification": { "type": "boolean" },
|
||
"encryption": { "type": "boolean" },
|
||
"prompt": { "type": "boolean" },
|
||
"expiration": { "type": "string" },
|
||
"remaining": { "type": "number" },
|
||
"licenseStatus": {
|
||
"type": "string",
|
||
"description": "Normal/NoLicense/Alert/Renew"
|
||
}
|
||
},
|
||
"required": [
|
||
"id",
|
||
"name",
|
||
"role",
|
||
"typistGroupName",
|
||
"email",
|
||
"emailVerified",
|
||
"autoRenew",
|
||
"licenseAlert",
|
||
"notification",
|
||
"encryption",
|
||
"prompt",
|
||
"licenseStatus"
|
||
]
|
||
},
|
||
"GetUsersResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"users": {
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/User" }
|
||
}
|
||
},
|
||
"required": ["users"]
|
||
},
|
||
"SignupRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"name": { "type": "string" },
|
||
"role": { "type": "string", "description": "none/author/typist" },
|
||
"authorId": { "type": "string" },
|
||
"typistGroupId": { "type": "number" },
|
||
"email": { "type": "string" },
|
||
"autoRenew": { "type": "boolean" },
|
||
"licenseAlert": { "type": "boolean" },
|
||
"notification": { "type": "boolean" }
|
||
},
|
||
"required": [
|
||
"name",
|
||
"role",
|
||
"email",
|
||
"autoRenew",
|
||
"licenseAlert",
|
||
"notification"
|
||
]
|
||
},
|
||
"SignupResponse": { "type": "object", "properties": {} },
|
||
"OptionItem": {
|
||
"type": "object",
|
||
"properties": {
|
||
"label": {
|
||
"type": "string",
|
||
"minLength": 1,
|
||
"maxLength": 16,
|
||
"description": "Option Itemのラベル"
|
||
},
|
||
"initialValueType": {
|
||
"type": "number",
|
||
"description": "項目タイプ 1:Blank/2:Default/3:前の値"
|
||
},
|
||
"defaultValue": {
|
||
"type": "string",
|
||
"minLength": 1,
|
||
"maxLength": 20,
|
||
"description": "typeでDefaultを選択した場合のデフォルト値"
|
||
}
|
||
},
|
||
"required": ["label", "initialValueType", "defaultValue"]
|
||
},
|
||
"OptionItemList": {
|
||
"type": "object",
|
||
"properties": {
|
||
"workTypeId": { "type": "string" },
|
||
"optionItemList": {
|
||
"maxItems": 10,
|
||
"description": "1WorkTypeIDにつき、10個まで登録可能",
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/OptionItem" }
|
||
}
|
||
},
|
||
"required": ["workTypeId", "optionItemList"]
|
||
},
|
||
"GetRelationsResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"authorId": {
|
||
"type": "string",
|
||
"description": "ログインしたユーザーのAuthorID(Authorでない場合は空文字)"
|
||
},
|
||
"authorIdList": {
|
||
"description": "属しているアカウントのAuthorID List(全て)",
|
||
"type": "array",
|
||
"items": { "type": "string" }
|
||
},
|
||
"workTypeList": {
|
||
"maxItems": 20,
|
||
"description": "アカウントに設定されているWorktypeIDのリスト(最大20個)",
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/OptionItemList" }
|
||
},
|
||
"isEncrypted": {
|
||
"type": "boolean",
|
||
"description": "ユーザーが音声ファイルを暗号化するかどうか"
|
||
},
|
||
"encryptionPassword": {
|
||
"type": "string",
|
||
"description": "ユーザーが暗号化を掛ける場合のパスワード",
|
||
"nullable": true
|
||
},
|
||
"activeWorktype": {
|
||
"type": "string",
|
||
"description": "アカウントがデフォルトで利用するWorkTypeID(アカウントに紐づくWorkTypeIDから一つ指定)"
|
||
},
|
||
"audioFormat": {
|
||
"type": "string",
|
||
"description": "録音形式: DSS/DS2(SP)/DS2(QP): DS2固定"
|
||
},
|
||
"prompt": {
|
||
"type": "boolean",
|
||
"description": "デバイス上で自動的にWorkTypeの選択画面を表示するかどうかのユーザーごとの設定(Authorでない場合はfalse)"
|
||
}
|
||
},
|
||
"required": [
|
||
"authorId",
|
||
"authorIdList",
|
||
"workTypeList",
|
||
"isEncrypted",
|
||
"encryptionPassword",
|
||
"activeWorktype",
|
||
"audioFormat",
|
||
"prompt"
|
||
]
|
||
},
|
||
"PostSortCriteriaRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"direction": { "type": "string", "description": "ASC/DESC" },
|
||
"paramName": {
|
||
"type": "string",
|
||
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/WORK_TYPE/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE"
|
||
}
|
||
},
|
||
"required": ["direction", "paramName"]
|
||
},
|
||
"PostSortCriteriaResponse": { "type": "object", "properties": {} },
|
||
"GetSortCriteriaResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"direction": { "type": "string", "description": "ASC/DESC" },
|
||
"paramName": {
|
||
"type": "string",
|
||
"description": "JOB_NUMBER/STATUS/ENCRYPTION/AUTHOR_ID/WORK_TYPE/FILE_NAME/FILE_LENGTH/FILE_SIZE/RECORDING_STARTED_DATE/RECORDING_FINISHED_DATE/UPLOAD_DATE/TRANSCRIPTION_STARTED_DATE/TRANSCRIPTION_FINISHED_DATE"
|
||
}
|
||
},
|
||
"required": ["direction", "paramName"]
|
||
},
|
||
"PostUpdateUserRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"id": { "type": "number" },
|
||
"role": { "type": "string", "description": "none/author/typist" },
|
||
"authorId": { "type": "string" },
|
||
"autoRenew": { "type": "boolean" },
|
||
"licenseAlart": { "type": "boolean" },
|
||
"notification": { "type": "boolean" },
|
||
"encryption": { "type": "boolean" },
|
||
"encryptionPassword": { "type": "string" },
|
||
"prompt": { "type": "boolean" }
|
||
},
|
||
"required": ["id", "role", "autoRenew", "licenseAlart", "notification"]
|
||
},
|
||
"PostUpdateUserResponse": { "type": "object", "properties": {} },
|
||
"AudioOptionItem": {
|
||
"type": "object",
|
||
"properties": {
|
||
"optionItemLabel": {
|
||
"type": "string",
|
||
"minLength": 1,
|
||
"maxLength": 16
|
||
},
|
||
"optionItemValue": {
|
||
"type": "string",
|
||
"minLength": 1,
|
||
"maxLength": 20
|
||
}
|
||
},
|
||
"required": ["optionItemLabel", "optionItemValue"]
|
||
},
|
||
"AudioUploadFinishedRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"url": {
|
||
"type": "string",
|
||
"description": "アップロード先Blob Storage(ファイル名含む)"
|
||
},
|
||
"authorId": {
|
||
"type": "string",
|
||
"description": "自分自身(ログイン認証)したAuthorID"
|
||
},
|
||
"fileName": { "type": "string", "description": "音声ファイル名" },
|
||
"duration": {
|
||
"type": "string",
|
||
"description": "音声ファイルの録音時間(ミリ秒の整数値)"
|
||
},
|
||
"createdDate": {
|
||
"type": "string",
|
||
"description": "音声ファイルの録音作成日時(開始日時)(yyyy-mm-ddThh:mm:ss.sss)"
|
||
},
|
||
"finishedDate": {
|
||
"type": "string",
|
||
"description": "音声ファイルの録音作成終了日時(yyyy-mm-ddThh:mm:ss.sss)"
|
||
},
|
||
"uploadedDate": {
|
||
"type": "string",
|
||
"description": "音声ファイルのアップロード日時(yyyy-mm-ddThh:mm:ss.sss)"
|
||
},
|
||
"fileSize": {
|
||
"type": "number",
|
||
"description": "音声ファイルのファイルサイズ(Byte)"
|
||
},
|
||
"priority": {
|
||
"type": "string",
|
||
"description": "優先度 \"00\":Normal / \"01\":High"
|
||
},
|
||
"audioFormat": {
|
||
"type": "string",
|
||
"description": "録音形式: DSS/DS2(SP)/DS2(QP)"
|
||
},
|
||
"comment": { "type": "string" },
|
||
"workType": { "type": "string" },
|
||
"optionItemList": {
|
||
"maxItems": 10,
|
||
"minItems": 10,
|
||
"description": "音声ファイルに紐づくOption Itemの一覧(10個固定)",
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/AudioOptionItem" }
|
||
},
|
||
"isEncrypted": { "type": "boolean" }
|
||
},
|
||
"required": [
|
||
"url",
|
||
"authorId",
|
||
"fileName",
|
||
"duration",
|
||
"createdDate",
|
||
"finishedDate",
|
||
"uploadedDate",
|
||
"fileSize",
|
||
"priority",
|
||
"audioFormat",
|
||
"comment",
|
||
"workType",
|
||
"optionItemList",
|
||
"isEncrypted"
|
||
]
|
||
},
|
||
"AudioUploadFinishedResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"jobNumber": { "type": "string", "description": "8桁固定の数字" }
|
||
},
|
||
"required": ["jobNumber"]
|
||
},
|
||
"AudioUploadLocationResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"url": {
|
||
"type": "string",
|
||
"description": "Blob StorageにアクセスするためのSASトークン入りのアクセスURL"
|
||
}
|
||
},
|
||
"required": ["url"]
|
||
},
|
||
"AudioDownloadLocationResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"url": {
|
||
"type": "string",
|
||
"description": "Blob StorageにアクセスするためのSASトークン入りのアクセスURL"
|
||
}
|
||
},
|
||
"required": ["url"]
|
||
},
|
||
"TemplateDownloadLocationResponse": {
|
||
"type": "object",
|
||
"properties": { "url": { "type": "string" } },
|
||
"required": ["url"]
|
||
},
|
||
"Assignee": {
|
||
"type": "object",
|
||
"properties": {
|
||
"typistUserId": {
|
||
"type": "number",
|
||
"description": "TypistID(TypistIDかTypistGroupIDのどちらかに値が入る)"
|
||
},
|
||
"typistGroupId": {
|
||
"type": "number",
|
||
"description": "TypistGroupID(TypistGroupIDかTypistIDのどちらかに値が入る)"
|
||
},
|
||
"typistName": {
|
||
"type": "string",
|
||
"description": "Typist名 / TypistGroup名"
|
||
}
|
||
},
|
||
"required": ["typistName"]
|
||
},
|
||
"Task": {
|
||
"type": "object",
|
||
"properties": {
|
||
"audioFileId": {
|
||
"type": "number",
|
||
"description": "ODMS Cloud上の音声ファイルID"
|
||
},
|
||
"authorId": { "type": "string", "description": "AuthorID" },
|
||
"workType": { "type": "string" },
|
||
"optionItemList": {
|
||
"maxItems": 10,
|
||
"minItems": 10,
|
||
"description": "音声ファイルに紐づくOption Itemの一覧(10個固定)",
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/AudioOptionItem" }
|
||
},
|
||
"url": {
|
||
"type": "string",
|
||
"description": "音声ファイルのBlob Storage上での保存場所(ファイル名含む)のURL"
|
||
},
|
||
"fileName": { "type": "string", "description": "音声ファイル名" },
|
||
"audioDuration": {
|
||
"type": "string",
|
||
"description": "音声ファイルの録音時間(ミリ秒の整数値)"
|
||
},
|
||
"audioCreatedDate": {
|
||
"type": "string",
|
||
"description": "音声ファイルの録音開始日時(yyyy-mm-ddThh:mm:ss.sss)"
|
||
},
|
||
"audioFinishedDate": {
|
||
"type": "string",
|
||
"description": "音声ファイルの録音終了日時(yyyy-mm-ddThh:mm:ss.sss)"
|
||
},
|
||
"audioUploadedDate": {
|
||
"type": "string",
|
||
"description": "音声ファイルのアップロード日時(yyyy-mm-ddThh:mm:ss.sss)"
|
||
},
|
||
"fileSize": {
|
||
"type": "number",
|
||
"description": "音声ファイルのファイルサイズ(Byte)"
|
||
},
|
||
"priority": {
|
||
"type": "string",
|
||
"description": "音声ファイルの優先度 \"00\":Normal / \"01\":High"
|
||
},
|
||
"audioFormat": {
|
||
"type": "string",
|
||
"description": "録音形式: DSS/DS2(SP)/DS2(QP)"
|
||
},
|
||
"comment": { "type": "string", "description": "コメント" },
|
||
"isEncrypted": { "type": "boolean" },
|
||
"jobNumber": { "type": "string", "description": "JOBナンバー" },
|
||
"typist": {
|
||
"description": "割り当てられたユーザー",
|
||
"allOf": [{ "$ref": "#/components/schemas/Typist" }]
|
||
},
|
||
"assignees": {
|
||
"description": "文字起こしに着手できる(チェックアウト可能な)、タスクにアサインされているグループ/個人の一覧",
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/Assignee" }
|
||
},
|
||
"status": {
|
||
"type": "string",
|
||
"description": "音声ファイルのファイルステータス Uploaded / Pending / InProgress / Finished / Backup"
|
||
},
|
||
"transcriptionStartedDate": {
|
||
"type": "string",
|
||
"description": "文字起こし開始日時(yyyy-mm-ddThh:mm:ss.sss)"
|
||
},
|
||
"transcriptionFinishedDate": {
|
||
"type": "string",
|
||
"description": "文字起こし終了日時(yyyy-mm-ddThh:mm:ss.sss)"
|
||
}
|
||
},
|
||
"required": [
|
||
"audioFileId",
|
||
"authorId",
|
||
"workType",
|
||
"optionItemList",
|
||
"url",
|
||
"fileName",
|
||
"audioDuration",
|
||
"audioCreatedDate",
|
||
"audioFinishedDate",
|
||
"audioUploadedDate",
|
||
"fileSize",
|
||
"priority",
|
||
"audioFormat",
|
||
"comment",
|
||
"isEncrypted",
|
||
"jobNumber",
|
||
"assignees",
|
||
"status"
|
||
]
|
||
},
|
||
"TasksResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"limit": {
|
||
"type": "number",
|
||
"description": "タスクの取得件数(指定しない場合はデフォルト値)"
|
||
},
|
||
"offset": {
|
||
"type": "number",
|
||
"description": "オフセット(何件目から取得するか 設定しない場合はデフォルト値)"
|
||
},
|
||
"total": { "type": "number", "description": "タスクの総件数" },
|
||
"tasks": {
|
||
"description": "音声ファイル/タスク一覧",
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/Task" }
|
||
}
|
||
},
|
||
"required": ["limit", "offset", "total", "tasks"]
|
||
},
|
||
"AudioNextResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"nextFileId": {
|
||
"type": "number",
|
||
"description": "ODMS Cloud上の次の音声ファイルID(存在しなければundefind)"
|
||
}
|
||
}
|
||
},
|
||
"ChangeStatusResponse": { "type": "object", "properties": {} },
|
||
"PostCheckoutPermissionRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"assignees": {
|
||
"description": "文字起こしに着手可能(チェックアウト可能)にしたい、グループ個人の一覧",
|
||
"type": "array",
|
||
"items": { "$ref": "#/components/schemas/Assignee" }
|
||
}
|
||
},
|
||
"required": ["assignees"]
|
||
},
|
||
"PostCheckoutPermissionResponse": { "type": "object", "properties": {} },
|
||
"CreateOrdersRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"poNumber": { "type": "string" },
|
||
"orderCount": { "type": "number" }
|
||
},
|
||
"required": ["poNumber", "orderCount"]
|
||
},
|
||
"CreateOrdersResponse": { "type": "object", "properties": {} },
|
||
"IssueCardLicensesRequest": {
|
||
"type": "object",
|
||
"properties": { "createCount": { "type": "number" } },
|
||
"required": ["createCount"]
|
||
},
|
||
"IssueCardLicensesResponse": {
|
||
"type": "object",
|
||
"properties": {
|
||
"cardLicenseKeys": { "type": "array", "items": { "type": "string" } }
|
||
},
|
||
"required": ["cardLicenseKeys"]
|
||
},
|
||
"ActivateCardLicensesRequest": {
|
||
"type": "object",
|
||
"properties": { "cardLicenseKey": { "type": "string" } },
|
||
"required": ["cardLicenseKey"]
|
||
},
|
||
"ActivateCardLicensesResponse": { "type": "object", "properties": {} },
|
||
"RegisterRequest": {
|
||
"type": "object",
|
||
"properties": {
|
||
"pns": { "type": "string", "description": "wns or apns" },
|
||
"handler": {
|
||
"type": "string",
|
||
"description": "wnsのチャネルURI or apnsのデバイストークン"
|
||
}
|
||
},
|
||
"required": ["pns", "handler"]
|
||
},
|
||
"RegisterResponse": { "type": "object", "properties": {} }
|
||
}
|
||
}
|
||
}
|