コンテンツにスキップ

Cases GraphQL API の使用を開始する🔗

重要

続行する前に、動作する client_idclient_secret を取得するために、API Authentication の手順を完了してください。

地域

XDR APIにアクセスするためのURLは、お客様の環境が展開されているリージョンによって異なる場合があります。

  • US1— https://api.ctpx.secureworks.com
  • US2— https://api.delta.taegis.secureworks.com
  • US3— https://api.foxtrot.taegis.secureworks.com
  • EU1— https://api.echo.taegis.secureworks.com
  • EU2— https://api.golf.taegis.secureworks.com

このXDR APIドキュメントの例では、https://api.ctpx.secureworks.com を使用しています。別のリージョンをご利用の場合は、適切なURLに置き換えてください。

注意

Taegis XDRでは、アラート および インベスティゲーション という用語が、最近 検出 および ケース に変更されました。SophosとTaegisテクノロジーのプラットフォーム統合作業が進行中のため、引き続き旧用語が参照されている場合があります。詳細については、Taegis用語の更新をご覧ください。

開始する前に🔗

ケースを扱う前に、主要な構成要素を理解しておくことが重要です。

ケースタイプ🔗

すべてのケースは、その動作、利用可能なステータス、および判定を定義するタイプに属します。ケースタイプはテナントレベルで管理されます。ケースを作成する前に、次のことを行う必要があります。

  1. テナントで利用可能なケースタイプをクエリする。
  2. ユースケースに一致するタイプ ID を特定する。
  3. そのタイプでサポートされるステータスと判定を確認する。

各ケースタイプには次のものがあります。

  • ID: ケース作成に必要
  • サポートされるステータス: このタイプのケースで有効な状態
  • サポートされる判定: ケースをクローズするときに利用可能な結果(Confirmed Threat、Not Determined など)

ステータスと判定🔗

ケースは、ステータス(オープン、アクティブ、クローズ済みなど)を使用してライフサイクルの状態を移行します。

ケースをクローズするときは、結果を分類するために判定(Confirmed Threat、Not Determined など)を割り当てます。

ケースタイプを取得する🔗

ケースを作成する前に、テナントで利用可能なタイプをクエリします。

タイプはお客様のアカウントが保有するライセンスに依存しており、たとえば XDR から Taegis MDR にアップグレードすると変更されます。

各タイプは、そのタイプのケースに対する動作と有効なステータスまたは判定を定義します。

クエリ🔗

query getCaseTypes($arguments: CaseTypesArguments!) {
    caseTypes(arguments: $arguments) {
        types {
            id
            name
            title
            description
            supportedPrimaryStatuses {
                id
                name
                title
                isClosed
                isCaseVisibleToCustomers
            }
            supportedPrimaryVerdicts {
                id
                name
                title
            }
            allowedNextTypes {
                id
                name
            }
            managedBy
        }
    }
}

変数🔗

{
    "arguments": {}
}

レスポンス例🔗

{
    "data": {
        "caseTypes": {
            "types": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440000",
                    "name": "security_incident",
                    "title": "Security Incident",
                    "description": "Cases for security incidents and threats",
                    "supportedPrimaryStatuses": [
                        {
                            "id": "550e8400-e29b-41d4-a716-446655440001",
                            "name": "Open",
                            "title": "Case is open and active",
                            "isClosed": false,
                            "isCaseVisibleToCustomers": true
                        },
                        {
                            "id": "550e8400-e29b-41d4-a716-446655440002",
                            "name": "Closed",
                            "title": "Case investigation complete",
                            "isClosed": true,
                            "isCaseVisibleToCustomers": true
                        }
                    ],
                    "supportedPrimaryVerdicts": [
                        {
                            "id": "550e8400-e29b-41d4-a716-446655440003",
                            "name": "Confirmed Threat",
                            "title": "Threat confirmed"
                        },
                        {
                            "id": "550e8400-e29b-41d4-a716-446655440004",
                            "name": "Not Determined",
                            "title": "Unable to determine"
                        }
                    ],
                    "allowedNextTypes": [],
                    "managedBy": null
                }
            ]
        }
    }
}

ケースステータスを取得する🔗

特定のケースタイプで利用可能なステータスをクエリします。ステータスは、ケースが遷移できるライフサイクル状態を定義します。

タイプと同様に、ステータスはお客様のアカウントが保有するライセンスに依存しており、たとえば XDR から Taegis MDR にアップグレードすると変更されます。

主要ステータスのクエリ🔗

query getPrimaryStatuses($arguments: CasePrimaryStatusesArguments!) {
    casePrimaryStatuses(arguments: $arguments) {
        primaryStatuses {
            id
            name
            title
            description
            isClosed
            isCaseVisibleToCustomers
        }
    }
}

変数🔗

ケースタイプでフィルターして、そのタイプで有効なステータスを取得します。

{
    "arguments": {
        "typeId": "550e8400-e29b-41d4-a716-446655440000"
    }
}

レスポンス例🔗

{
    "data": {
        "casePrimaryStatuses": {
            "primaryStatuses": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440001",
                    "name": "Open",
                    "title": "Case is open and active",
                    "description": "Case is actively being investigated",
                    "isClosed": false,
                    "isCaseVisibleToCustomers": true
                },
                {
                    "id": "550e8400-e29b-41d4-a716-446655440002",
                    "name": "Closed",
                    "title": "Case investigation complete",
                    "description": "Case investigation has concluded",
                    "isClosed": true,
                    "isCaseVisibleToCustomers": true
                }
            ]
        }
    }
}

注意事項🔗

  • ケースの作成または更新時にはステータスが必要です。typeId を使用して、お客様のケースタイプで有効なステータスにフィルターしてください。
  • isClosed フィールドを確認して、どのステータスが完了済みまたはクローズ済みのケースを表すかを特定してください。

ケース判定を取得する🔗

ケースをクローズするときは、結果を分類する判定を割り当てます。ケースタイプで利用可能な判定をクエリしてください。

タイプと同様に、判定はお客様のアカウントが保有するライセンスに依存しており、たとえば XDR から Taegis MDR にアップグレードすると変更されます。

主要判定のクエリ🔗

query getPrimaryVerdicts($arguments: CasePrimaryVerdictsArguments!) {
    casePrimaryVerdicts(arguments: $arguments) {
        primaryVerdicts {
            id
            name
            title
            description
        }
    }
}

変数🔗

{
    "arguments": {
        "typeId": "550e8400-e29b-41d4-a716-446655440000"
    }
}

レスポンス例🔗

{
    "data": {
        "casePrimaryVerdicts": {
            "primaryVerdicts": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440003",
                    "name": "Confirmed Threat",
                    "title": "Threat confirmed",
                    "description": "Malicious activity was confirmed"
                },
                {
                    "id": "550e8400-e29b-41d4-a716-446655440004",
                    "name": "Not Determined",
                    "title": "Unable to determine",
                    "description": "Insufficient evidence to classify"
                }
            ]
        }
    }
}

注意事項🔗

  • ケースをクローズするとき(クローズ済みステータスに設定するとき)は判定が必要です。
  • 判定はケース調査の結果を分類します。
  • Case Type ID は必須であり、お客様のテナントで有効なタイプを参照している必要があります。利用可能な ID を取得するには caseTypes をクエリしてください。
  • Severity には数値のみを使用してください。数値と重大度の対応は次のとおりです。2(情報)、4(低)、6(中)、8(高)、10(重大)。
  • Managed By が設定されると(PROVIDER または CUSTOMER のいずれか)、変更できません。このフィールドは、誰がケース操作を制御するかを決定します。

ケースをユーザーに割り当てる🔗

assigneeId フィールドでは、複数の形式を受け付けます。

ユーザー ID とグループ ID🔗

  • ユーザー ID: 特定のユーザーの UUID(例: 550e8400-e29b-41d4-a716-446655440010
  • グループ ID: チームまたはグループの UUID
  • 空文字列: 担当者をクリアし、ケースを未割り当てのままにする
  • 省略: デフォルトでは担当者なし

特殊メンション🔗

ケースの割り当てでは、特定のロールまたはチームにケースを振り分ける特殊メンションも使用できます。利用可否は、お客様のテナントタイプとサービスレベルによって異なります。

Mention 利用可能な場合 用途
@customer 非 XDR テナントのみ お客様の組織に振り分ける
@admin Cases API を使用する XDR テナント 管理者に振り分ける
@authorized_contacts Taegis MDR テナントのみ 承認された Taegis MDR 連絡先に振り分ける
@sophos すべてのテナント(パートナー制限あり) Sophos チームに振り分ける

パートナー制限付きメンション(@sophos)は、サービス契約によっては利用できない場合があります。

お客様のサービスパートナーは、契約に固有のカスタムメンションを定義している場合があります。利用可能なメンションオプションについては、パートナーまたはアカウントチームにお問い合わせください。

テナントのユーザー ID を確認するには、Users API を使用して利用可能なユーザーをクエリしてください。

Incident Advisor🔗

Taegis MDR のケースには Incident Advisor を割り当てることができます。これは、ケースの連絡窓口として機能する Sophos アナリストです。このフィールドは API では読み取り専用です。

クエリ🔗

query getCase($arguments: CaseArguments!) {
    case(arguments: $arguments) {
        id
        incidentAdvisorId
        incidentAdvisor {
            id
            email
            givenName
            familyName
        }
    }
}

レスポンス例🔗

{
    "data": {
        "case": {
            "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
            "incidentAdvisorId": "550e8400-e29b-41d4-a716-446655440050",
            "incidentAdvisor": {
                "id": "550e8400-e29b-41d4-a716-446655440050",
                "email": "advisor@sophos.com",
                "givenName": "Jane",
                "familyName": "Doe"
            }
        }
    }
}

注意事項🔗

  • 利用可否はお客様のテナントタイプとライセンスレベルによって異なります。Incident Advisor は Taegis MDR テナントでのみ利用できます。
  • incidentAdvisorIdincidentAdvisor はこの API では読み取り専用です。Incident Advisor を割り当てたり変更したりできるのは、お客様の Sophos パートナー/プロバイダーのみです。
  • アドバイザーが割り当てられていない場合、またはユーザーを解決できない場合、incidentAdvisornull に解決されます。

ケースを作成する🔗

ケースの作成には、ケースタイプ ID と初期の主要ステータスが必要です。この時点で証拠(検出、イベント、または資産)は不要ですが、この時点で追加することもできます。

お客様のテナントでどのケースタイプまたはステータスが利用可能かわからない場合は、まず ケースタイプを取得するケースステータスを取得する を参照してください。

ワークフロー🔗

ケース作成のワークフローは次のとおりです。

  1. ケースタイプを取得する: caseTypes をクエリして利用可能なタイプを確認します。
  2. ステータスを取得する: タイプ ID を指定して casePrimaryStatuses をクエリし、有効な初期ステータスを取得します。
  3. ケースを作成する: タイプ ID、ステータス ID、および証拠を指定して createCase ミューテーションを呼び出します。

ミューテーション🔗

mutation createCase($input: CreateCaseInput!) {
    createCase(input: $input) {
        id
        shortId
        title
        severity
        type {
            id
            name
        }
        primaryStatus {
            id
            name
        }
        primaryVerdict {
            id
            name
        }
        assigneeId
        createdAt
        updatedAt
        riskScore
    }
}

変数🔗

{
    "input": {
        "typeId": "550e8400-e29b-41d4-a716-446655440000",
        "severity": 6,
        "title": "Suspicious Activity Detected",
        "primaryStatusId": "550e8400-e29b-41d4-a716-446655440001",
        "tags": ["malware", "investigation"],
        "keyFindings": {
            "documentType": "MARKDOWN",
            "documentVersion": "1.0",
            "content": "Initial findings from automated detection"
        },
        "assigneeId": "@customer",
        "detectionIds": [
            "detection://priv:thirdpartyalert:93097:1787242536039:a1b2c3d4-e5f6-47a8-9b0c-1d2e3f4a5b6c",
            "detection://priv:thirdpartyalert:93097:1787242587105:c5d6e7f8-a9b0-41c2-8d3e-4f5a6b7c8d9e"
        ]
    }
}

レスポンス例🔗

{
    "data": {
        "createCase": {
            "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
            "shortId": "CSE00001",
            "title": "Suspicious Activity Detected",
            "severity": 6,
            "type": {
                "id": "550e8400-e29b-41d4-a716-446655440000",
                "name": "security_incident"
            },
            "primaryStatus": {
                "id": "550e8400-e29b-41d4-a716-446655440001",
                "name": "Open"
            },
            "primaryVerdict": null,
            "assigneeId": "@customer",
            "createdAt": "2024-08-14T15:52:30Z",
            "updatedAt": "2024-08-14T15:52:30Z",
            "riskScore": 0
        }
    }
}

注意事項🔗

  • typeId は必須であり、テナントに対して有効なケースタイプを参照している必要があります。
  • severity は必須であり、次のいずれかである必要があります: 2(情報)、4(低)、6(中)、8(高)、10(重大)。
  • primaryStatusId は必須であり、ケースの初期状態を決定します。
  • ケース作成時に追加された検出、イベント、および資産は genesis evidence と見なされます。
  • keyFindings は、形式とバージョン情報を持つ型付きドキュメントです。内容は常に文字列です(リッチテキストを使用する場合は JSON をシリアライズしてください)。
  • documentType は現在 "MARKDOWN" のみをサポートしています。
  • documentVersion は現在 "1.0" のみをサポートしています。

ケースを取得する🔗

ID で単一のケースを取得するか、フィルターを使用して複数のケースを検索します。

ID でケースを取得するクエリ🔗

query getCase($arguments: CaseArguments!) {
    case(arguments: $arguments) {
        id
        shortId
        title
        severity
        type {
            id
            name
        }
        primaryStatus {
            id
            name
        }
        primaryVerdict {
            id
            name
        }
        tags
        assigneeId
        managedBy
        riskScore
        createdAt
        updatedAt
        closedAt
        closedById
        closeReason
        archivedAt
        contributorIds
        detectionsCount
        eventsCount
        assetsCount
        links {
            id
            url
            title
            type
            isInternal
        }
    }
}

変数🔗

{
    "arguments": {
        "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8"
    }
}

レスポンス例🔗

{
    "data": {
        "case": {
            "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
            "shortId": "CSE00001",
            "title": "Suspicious Activity Detected",
            "severity": 6,
            "type": {
                "id": "550e8400-e29b-41d4-a716-446655440000",
                "name": "security_incident"
            },
            "primaryStatus": {
                "id": "550e8400-e29b-41d4-a716-446655440001",
                "name": "Open"
            },
            "primaryVerdict": null,
            "tags": ["malware", "investigation"],
            "assigneeId": "@customer",
            "managedBy": "CUSTOMER",
            "riskScore": 75.5,
            "createdAt": "2024-08-14T15:52:30Z",
            "updatedAt": "2024-08-14T16:00:00Z",
            "closedAt": null,
            "closedById": null,
            "closeReason": null,
            "archivedAt": null,
            "contributorIds": ["550e8400-e29b-41d4-a716-446655440010"],
            "detectionsCount": 5,
            "eventsCount": 12,
            "assetsCount": 2,
            "links": []
        }
    }
}

注意事項🔗

  • Short ID: shortId(例: CSE00001)は人が読みやすい識別子です。API 操作には完全な id を使用してください。
  • Managed By: managedByCUSTOMER または PROVIDER を返します。CUSTOMER はセルフマネージドケースに対応し、PROVIDER は Sophos が管理するケースに対応します(将来的に他のプロバイダーにも対応できるように汎用的な名前になっています)。UI ではこれらの値を表示名に変換します。このフィールドは Taegis MDR のお客様にのみ適用されます。Taegis MDR のケースでは、お客様または Sophos がケースを管理できるため、managedByCUSTOMER または PROVIDER のいずれかに設定できます。XDR のお客様はすべてのケースを自分で管理するため、managedBy は常に CUSTOMER であり、XDR のワークフローには関係ありません。いったん設定されると、managedBy は変更できません。
  • 判定: ケースがクローズされるまでは空です。ケースをクローズ済みステータスに設定するときに判定を割り当ててください。
  • Contributors: contributorIds には、ケースに貢献したユーザー(コメント、証拠など)が一覧表示されます。
  • Closed By: closedById はケースがクローズされた後にのみ設定され、ケースが再オープンされて再度クローズされた場合は、直近でクローズしたユーザーを反映します。
  • Archived: archivedAt はケースがアーカイブされたときにのみ設定されます。ケースをアーカイブする を参照してください。
  • リンク: リンクされたリソースの管理については、ケースリンク を参照してください。

ケースを検索およびフィルターする🔗

検索およびフィルターの詳細なドキュメントについては、ケースを検索およびフィルターする を参照してください。Cases クエリ言語を使用して、タイトル、重大度、ステータス、日付、タグ、担当者などでケースをクエリできます。

ケースを更新する🔗

更新は部分更新です(PATCH セマンティクス)。指定されたフィールドのみが変更されます。

ミューテーション🔗

mutation updateCase($input: UpdateCaseInput!) {
    updateCase(input: $input) {
        id
        shortId
        title
        severity
        primaryStatus {
            id
            name
        }
        assigneeId
        updatedAt
        riskScore
    }
}

変数🔗

{
    "input": {
        "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
        "title": "Updated Case Title",
        "severity": 8,
        "primaryStatusId": "550e8400-e29b-41d4-a716-446655440002",
        "assigneeId": "@sophos",
        "riskScore": 85.5,
        "closeReason": "Case resolved successfully",
        "primaryVerdictId": "550e8400-e29b-41d4-a716-446655440003"
    }
}

レスポンス例🔗

{
    "data": {
        "updateCase": {
            "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
            "shortId": "CSE00001",
            "title": "Updated Case Title",
            "severity": 8,
            "primaryStatus": {
                "id": "550e8400-e29b-41d4-a716-446655440002",
                "name": "Closed"
            },
            "assigneeId": "@sophos",
            "updatedAt": "2024-08-14T16:30:45Z",
            "riskScore": 85.5
        }
    }
}

注意事項🔗

  • 指定されたフィールドのみが更新されます(PATCH セマンティクス)。
  • 必須フィールドは id のみです。
  • managedBy はいったん設定されると変更できません。
  • ケースをクローズするとき(クローズ済みステータスに設定するとき)は、結果を分類するために primaryVerdictId を指定してください。
  • 判定付きでケースをクローズするには、同じリクエストで primaryStatusId(クローズ済みステータスへ)と primaryVerdictId の両方を更新してください。

ケースをアーカイブする🔗

アーカイブを使用すると、クローズ済みのケースを削除せずにアクティブビューから移動できます。

ミューテーション🔗

mutation archiveCase($input: UpdateCaseInput!) {
    updateCase(input: $input) {
        id
        shortId
        primaryStatus {
            id
            name
        }
        archivedAt
    }
}

変数🔗

クローズ済みのケースをアーカイブする:

{
    "input": {
        "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
        "isArchived": true
    }
}

ケースのアーカイブを解除する:

{
    "input": {
        "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
        "isArchived": false
    }
}

レスポンス例🔗

{
    "data": {
        "updateCase": {
            "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
            "shortId": "CSE00001",
            "primaryStatus": {
                "id": "550e8400-e29b-41d4-a716-446655440002",
                "name": "Closed"
            },
            "archivedAt": "2024-08-14T17:00:00Z"
        }
    }
}

注意事項🔗

  • isArchived: true は、クローズ済みステータスのケースに対してのみ許可されます。
  • isArchived: false はケースのアーカイブを解除します。archivedAtnull に戻されます。
  • isArchived を省略すると、アーカイブ状態は変更されません。

ケースに証拠を追加する🔗

ミューテーション🔗

mutation addEvidenceToCase($input: AddEvidenceToCaseInput!) {
    addEvidenceToCase(input: $input) {
        caseId
        detectionIds
        detectionsSearchQuery
        eventIds
        searchQueries
        hostIds
    }
}

変数🔗

{
    "input": {
        "caseId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
        "detectionIds": [
            "detection://priv:thirdpartyalert:93097:1787242536039:a1b2c3d4-e5f6-47a8-9b0c-1d2e3f4a5b6c",
            "detection://priv:thirdpartyalert:93097:1787242587105:c5d6e7f8-a9b0-41c2-8d3e-4f5a6b7c8d9e"
        ],
        "eventIds": [
            "event://priv:scwx.cloudaudit:11772:1787243648000:f99385d1-ae24-557d-965c-a5e096e193fc"
        ],
        "detectionsSearchQuery": "severity >= 6",
        "searchQueries": [
            "550e8400-e29b-41d4-a716-446655440200"
        ],
        "hostIds": [
            "host://priv:scwx.cloudaudit:11772:1787243648000:e5f6g7h8-3456-7890-2bcd-ef0123456789"
        ]
    }
}

レスポンス例🔗

{
    "data": {
        "addEvidenceToCase": {
            "caseId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
            "detectionIds": [
                "detection://priv:thirdpartyalert:93097:1787242536039:a1b2c3d4-e5f6-47a8-9b0c-1d2e3f4a5b6c",
                "detection://priv:thirdpartyalert:93097:1787242587105:c5d6e7f8-a9b0-41c2-8d3e-4f5a6b7c8d9e"
            ],
            "eventIds": [
                "event://priv:scwx.cloudaudit:11772:1787243648000:f99385d1-ae24-557d-965c-a5e096e193fc"
            ],
            "hostIds": [
                "host://priv:scwx.cloudaudit:11772:1787243648000:e5f6g7h8-3456-7890-2bcd-ef0123456789"
            ]
        }
    }
}

注意事項🔗

  • 証拠の追加は非同期操作です。
  • API は、追加が試行される証拠を返します。
  • detectionsSearchQuery は QUERY 式を受け付け、最大 50,000 件の検出を添付します。
  • このミューテーションを通じて追加された証拠は genesis evidence とは見なされません。

ケースから証拠を削除する🔗

ミューテーション🔗

mutation removeEvidenceFromCase($input: RemoveEvidenceFromCaseInput!) {
    removeEvidenceFromCase(input: $input) {
        caseId
        detectionIds
        eventIds
        assetIds
        searchQueries
    }
}

変数🔗

{
    "input": {
        "caseId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
        "detectionIds": [
            "detection://priv:thirdpartyalert:93097:1787242536039:a1b2c3d4-e5f6-47a8-9b0c-1d2e3f4a5b6c"
        ],
        "eventIds": [
            "event://priv:scwx.cloudaudit:11772:1787243648000:f99385d1-ae24-557d-965c-a5e096e193fc"
        ],
        "assetIds": [
            "asset://priv:scwx.cloudaudit:11772:1787243648000:g7h8i9j0-5678-9012-4def-012345678901"
        ],
        "searchQueries": [
            "550e8400-e29b-41d4-a716-446655440200"
        ]
    }
}

レスポンス例🔗

{
    "data": {
        "removeEvidenceFromCase": {
            "caseId": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
            "detectionIds": [
                "detection://priv:thirdpartyalert:93097:1787242536039:a1b2c3d4-e5f6-47a8-9b0c-1d2e3f4a5b6c"
            ],
            "eventIds": [
                "event://priv:scwx.cloudaudit:11772:1787243648000:f99385d1-ae24-557d-965c-a5e096e193fc"
            ],
            "assetIds": [
                "asset://priv:scwx.cloudaudit:11772:1787243648000:g7h8i9j0-5678-9012-4def-012345678901"
            ]
        }
    }
}

注意事項🔗

  • 証拠の削除は非同期操作です。
  • 証拠は個別に削除できます(検出を削除しても、関連するイベントや資産は削除されません)。

ケースの証拠を取得する🔗

ケースに添付された証拠(検出、イベント、資産など)を取得します。

クエリ🔗

query caseEvidence($arguments: CaseEvidenceArguments!) {
    caseEvidence(arguments: $arguments) {
        id
        detectionsEvidence {
            id
            detectionId
            createdAt
            isGenesis
        }
        detectionsEvidenceCount
        eventsEvidence {
            id
            eventId
            createdAt
            isGenesis
        }
        eventsEvidenceCount
        assetsEvidence {
            id
            assetId
            createdAt
        }
        assetsEvidenceCount
        searchQueriesEvidence {
            id
            searchQueryId
            createdAt
        }
        searchQueriesEvidenceCount
    }
}

変数🔗

{
    "arguments": {
        "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8"
    }
}

レスポンス例🔗

{
    "data": {
        "caseEvidence": {
            "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
            "detectionsEvidence": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440100",
                    "detectionId": "detection://priv:thirdpartyalert:93097:1787242536039:a1b2c3d4-e5f6-47a8-9b0c-1d2e3f4a5b6c",
                    "createdAt": "2024-08-14T15:52:30Z",
                    "isGenesis": true
                }
            ],
            "detectionsEvidenceCount": 5,
            "eventsEvidence": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440101",
                    "eventId": "event://evt001",
                    "createdAt": "2024-08-14T15:52:25Z",
                    "isGenesis": true
                }
            ],
            "eventsEvidenceCount": 12,
            "assetsEvidence": [
                {
                    "id": "550e8400-e29b-41d4-a716-446655440102",
                    "assetId": "host://asset001",
                    "createdAt": "2024-08-14T15:52:20Z"
                }
            ],
            "assetsEvidenceCount": 2,
            "searchQueriesEvidence": [],
            "searchQueriesEvidenceCount": 0
        }
    }
}

注意事項🔗

  • 証拠エントリー ID とソース ID(detectionIdeventIdassetId)を返します。
  • isGenesis は、ケースの初期作成に使用された証拠を示します。
  • 証拠数には、ケースに添付された合計数が表示されます。
  • ケース調査を裏付ける証拠を確認するために使用します。

ケースを検索する🔗

ページネーションオプションやクエリ構文を含む検索およびフィルターの詳細なドキュメントについては、ケースを検索およびフィルターする を参照してください。

クエリ例🔗

query cases($arguments: CasesArguments!) {
    cases(arguments: $arguments) {
        cases {
            id
            shortId
            title
            severity
            type {
                id
                name
            }
            primaryStatus {
                id
                name
            }
            tags
            assigneeId
            createdAt
            updatedAt
        }
        totalCount
    }
}

変数の例🔗

{
    "arguments": {
        "query": "severity >= 8 AND closedAt is null"
    }
}

レスポンス例🔗

{
    "data": {
        "cases": {
            "cases": [
                {
                    "id": "6ba7b810-9dad-11d1-80b4-00c04fd430c8",
                    "shortId": "CSE00001",
                    "title": "Suspicious Activity Detected",
                    "severity": 8,
                    "type": {
                        "id": "550e8400-e29b-41d4-a716-446655440000",
                        "name": "security_incident"
                    },
                    "primaryStatus": {
                        "id": "550e8400-e29b-41d4-a716-446655440001",
                        "name": "Open"
                    },
                    "tags": ["malware", "critical"],
                    "assigneeId": "@customer",
                    "createdAt": "2024-08-14T15:52:30Z",
                    "updatedAt": "2024-08-14T16:30:45Z"
                }
            ],
            "totalCount": 1
        }
    }
}

ファイル管理🔗

ケースファイルのアップロード、取得、ダウンロード、および削除については、ケースファイルを管理する を参照してください。

コメント🔗

ケースコメントの追加、更新、検索、および削除を含む包括的なコメント管理については、ケースコメントを管理する を参照してください。

ケース上の外部システムまたは内部リソースへのリンクの作成、更新、および削除については、ケースリンクを管理する を参照してください。