ケースファイルの管理🔗
ケースに添付されたファイルをアップロード、取得、ダウンロード、および削除します。
ファイルアップロードの初期化🔗
mutation startCaseFileUpload($input: StartCaseFileUploadInput!) {
startCaseFileUpload(input: $input) {
file {
id
name
size
status
}
presignedUrl
}
}
変数🔗
{
"input": {
"caseId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
"name": "investigation_report.pdf",
"size": 1024000,
"contentType": "application/pdf",
"isEmbedded": false
}
}
ファイルの削除🔗
mutation deleteCaseFile($input: DeleteCaseFileInput!) {
deleteCaseFile(input: $input) {
id
name
deletedAt
}
}
変数🔗
ケースファイルの取得🔗
ケースに添付されたファイルを一覧表示します。ファイルの内容を取得するための署名付きURLを取得するには、downloadURL をリクエストします。
query caseFiles($arguments: CaseFilesArguments!) {
caseFiles(arguments: $arguments) {
files {
id
name
size
status
isEmbedded
createdAt
downloadURL
}
totalCount
}
}
変数🔗
{
"arguments": {
"query": "investigationId = '6ba7b810-9dad-11d1-80b4-00c04fd430c8'",
"page": 1,
"perPage": 20
}
}
レスポンス例🔗
{
"data": {
"caseFiles": {
"files": [
{
"id": "550e8400-e29b-41d4-a716-446655440500",
"name": "investigation_report.pdf",
"size": 1024000,
"status": "UPLOADED",
"isEmbedded": false,
"createdAt": "2024-08-14T15:52:30Z",
"downloadURL": "https://files.example.com/signed-url..."
}
],
"totalCount": 1
}
}
}
単一ファイルの取得🔗
たとえば期限切れの downloadURL を更新するために、caseFile を使用して ID で 1 つのファイルを取得します。
query caseFile($arguments: CaseFileArguments!) {
caseFile(arguments: $arguments) {
id
name
size
status
downloadURL
}
}
変数🔗
注意🔗
isEmbeddedは、ファイルがケースコンテンツに埋め込まれているかどうかを示します(例: 主な発見事項内の画像)。埋め込みファイルでは、ダウンロード時に監査ログは生成されません。statusは、SCHEDULED(アップロードURL発行済み、ファイルはまだアップロードされていない)、UPLOADED、ERROR_UPLOAD、またはDELETEDのいずれかです。- ダウンロードURLは署名付きで、15 分間有効です。新しいURLを取得するには、
downloadURLを選択してcaseFileまたはcaseFilesを再クエリしてください。 - ダウンロードURLをリクエストすると監査ログが生成されます(埋め込みファイルを除く)。
caseFilesは、デフォルトではケースにスコープされていません。query引数を使用してフィルタリングする必要があり、ケースのidに一致させるにはinvestigationId(caseIdではなく)を使用します。例:investigationId = '<case id>'。埋め込みファイルを除外するには、AND isEmbedded = falseを追加します。