---
type: api
title: Find case comments and alerts
description: **Spaces method and path for this operation:**
url: https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana/v8/operation/operation-findcasecommentsdefaultspace
resource: https://www.elastic.co/elastic/docs-builder/docs/4371/api/doc/kibana/v8/operation/operation-findcasecommentsdefaultspace
products:
  - Kibana
---

# Find case comments and alerts

- Server: `https://{kibana_url}`

## Paths

- `GET` `/api/cases/{caseId}/comments/_find`
- `GET` `/s/{space_id}/api/cases/{caseId}/comments/_find`

- [Api key auth](/elastic/docs-builder/docs/4371/api/doc/kibana/v8/authentication#apikeyauth)
- [Basic auth](/elastic/docs-builder/docs/4371/api/doc/kibana/v8/authentication#basicauth)

#### Path Parameters

- `caseId` (string)
  The identifier for the case. To retrieve case IDs, use the find cases API. All non-ASCII characters must be URL encoded.

## Description

Refer to [Spaces](https://www.elastic.co/docs/deploy-manage/manage-spaces) for more information.

Retrieves a paginated list of comments for a case. You must have `read` privileges for the **Cases** feature in the **Management**, **Observability**, or **Security** section of the Kibana feature privileges, depending on the owner of the cases with the comments you're seeking.

## Query String Parameters

- `page` (integer · default: 1)
  The page number to return.
- `perPage` (integer · max: 100 · default: 20)
  The number of items to return. Limited to 100 items.
- `sortOrder` (enum  · default: desc)
  Determines the sort order.
  Values: `asc`, `desc`

## Responses

#### `200`

Indicates a successful call.

`application/json`

- `assignees` ([] null · max: 10) — nullable
  An array containing users that are assigned to the case.
  - `uid` (string)
    A unique identifier for the user profile. These identifiers can be found by using the suggest user profile API.
- `category` (string) — nullable
  The case category.
- `closed_at` (string) — nullable
- `closed_by` ({}) — nullable
  - `email` (string) — nullable
  - `full_name` (string) — nullable
  - `profile_uid` (string)
  - `username` (string) — nullable
- `comments` ([] union oneOf · max: 10000)
  An array of comment objects for the case.
  - **Cases_alert_comment_response_properties**
    - `alertId` ([] string)
    - `created_at` (string)
    - `created_by` (object)
      - `email` (string) — nullable
      - `full_name` (string) — nullable
      - `profile_uid` (string)
      - `username` (string) — nullable
    - `id` (string)
    - `index` ([] string)
    - `owner` (enum)
      The application that owns the cases: Stack Management, Observability, or Elastic Security.
      Values: `cases`, `observability`, `securitySolution`
    - `pushed_at` (string) — nullable
    - `pushed_by` (object) — nullable
      - `email` (string) — nullable
      - `full_name` (string) — nullable
      - `profile_uid` (string)
      - `username` (string) — nullable
    - `rule` (object)
      - `id` (string)
        The rule identifier.
      - `name` (string)
        The rule name.
    - `type` (enum)
      Values: `alert`
    - `updated_at` (string) — nullable
    - `updated_by` (object) — nullable
      - `email` (string) — nullable
      - `full_name` (string) — nullable
      - `profile_uid` (string)
      - `username` (string) — nullable
    - `version` (string)
  - **Cases_user_comment_response_properties**
    - `comment` (string)
    - `created_at` (string)
    - `created_by` ({})
      - `email` (string) — nullable
      - `full_name` (string) — nullable
      - `profile_uid` (string)
      - `username` (string) — nullable
    - `id` (string)
    - `owner` (enum)
      The application that owns the cases: Stack Management, Observability, or Elastic Security.
      Values: `cases`, `observability`, `securitySolution`
    - `pushed_at` (string) — nullable
    - `pushed_by` ({}) — nullable
      - `email` (string) — nullable
      - `full_name` (string) — nullable
      - `profile_uid` (string)
      - `username` (string) — nullable
    - `type` (enum)
      Values: `user`
    - `updated_at` (string) — nullable
    - `updated_by` ({}) — nullable
      - `email` (string) — nullable
      - `full_name` (string) — nullable
      - `profile_uid` (string)
      - `username` (string) — nullable
    - `version` (string)
- `connector` (union oneOf)
  - **Cases_connector_properties_none** (`type: .none`)
    Defines properties for connectors when type is `.none`.
    - `fields` (string) — nullable
      An object containing the connector fields. To create a case without a connector, specify null. To update a case to remove the connector, specify null.
    - `id` (string)
      The identifier for the connector. To create a case without a connector, use `none`. To update a case to remove the connector, specify `none`.
    - `name` (string)
      The name of the connector. To create a case without a connector, use `none`. To update a case to remove the connector, specify `none`.
    - `type` (enum)
      The type of connector. To create a case without a connector, use `.none`. To update a case to remove the connector, specify `.none`.
      Values: `.none`
  - **Cases_connector_properties_cases_webhook** (`type: .cases-webhook`)
    Defines properties for connectors when type is `.cases-webhook`.
    - `fields` (string) — nullable
    - `id` (string)
      The identifier for the connector. To retrieve connector IDs, use the find connectors API.
    - `name` (string)
      The name of the connector.
    - `type` (enum)
      The type of connector.
      Values: `.cases-webhook`
  - **Cases_connector_properties_jira** (`type: .jira`)
    Defines properties for connectors when type is `.jira`.
    - `fields` (object)
      An object containing the connector fields. If you want to omit any individual field, specify null as its value.
      - `issueType` (string) — nullable
        The type of issue.
      - `parent` (string) — nullable
        The key of the parent issue, when the issue type is sub-task.
      - `priority` (string) — nullable
        The priority of the issue.
    - `id` (string)
      The identifier for the connector. To retrieve connector IDs, use the find connectors API.
    - `name` (string)
      The name of the connector.
    - `type` (enum)
      The type of connector.
      Values: `.jira`
  - **Cases_connector_properties_resilient** (`type: .resilient`)
    Defines properties for connectors when type is `.resilient`.
    - `fields` (object) — nullable
      An object containing the connector fields. If you want to omit any individual field, specify null as its value.
      - `issueTypes` ([] string)
        The type of incident.
      - `severityCode` (string)
        The severity code of the incident.
    - `id` (string)
      The identifier for the connector.
    - `name` (string)
      The name of the connector.
    - `type` (enum)
      The type of connector.
      Values: `.resilient`
  - **Cases_connector_properties_servicenow** (`type: .servicenow`)
    Defines properties for connectors when type is `.servicenow`.
    - `fields` (object)
      An object containing the connector fields. If you want to omit any individual field, specify null as its value.
      - `category` (string) — nullable
        The category of the incident.
      - `impact` (string) — nullable
        The effect an incident had on business.
      - `severity` (string) — nullable
        The severity of the incident.
      - `subcategory` (string) — nullable
        The subcategory of the incident.
      - `urgency` (string) — nullable
        The extent to which the incident resolution can be delayed.
    - `id` (string)
      The identifier for the connector. To retrieve connector IDs, use the find connectors API.
    - `name` (string)
      The name of the connector.
    - `type` (enum)
      The type of connector.
      Values: `.servicenow`
  - **Cases_connector_properties_servicenow_sir** (`type: .servicenow-sir`)
    Defines properties for connectors when type is `.servicenow-sir`.
    - `fields` (object)
      An object containing the connector fields. If you want to omit any individual field, specify null as its value.
      - `category` (string) — nullable
        The category of the incident.
      - `destIp` (boolean) — nullable
        Indicates whether cases will send a comma-separated list of destination IPs.
      - `malwareHash` (boolean) — nullable
        Indicates whether cases will send a comma-separated list of malware hashes.
      - `malwareUrl` (boolean) — nullable
        Indicates whether cases will send a comma-separated list of malware URLs.
      - `priority` (string) — nullable
        The priority of the issue.
      - `sourceIp` (boolean) — nullable
        Indicates whether cases will send a comma-separated list of source IPs.
      - `subcategory` (string) — nullable
        The subcategory of the incident.
    - `id` (string)
      The identifier for the connector. To retrieve connector IDs, use the find connectors API.
    - `name` (string)
      The name of the connector.
    - `type` (enum)
      The type of connector.
      Values: `.servicenow-sir`
  - **Cases_connector_properties_swimlane** (`type: .swimlane`)
    Defines properties for connectors when type is `.swimlane`.
    - `fields` (object)
      An object containing the connector fields. If you want to omit any individual field, specify null as its value.
      - `caseId` (string) — nullable
        The case identifier for Swimlane connectors.
    - `id` (string)
      The identifier for the connector. To retrieve connector IDs, use the find connectors API.
    - `name` (string)
      The name of the connector.
    - `type` (enum)
      The type of connector.
      Values: `.swimlane`
- `created_at` (string)
- `created_by` ({})
  - `email` (string) — nullable
  - `full_name` (string) — nullable
  - `profile_uid` (string)
  - `username` (string) — nullable
- `customFields` ([] object)
  Custom field values for the case.
  - `key` (string)
    The unique identifier for the custom field. The key value must exist in the case configuration settings.
  - `type` (enum)
    The custom field type. It must match the type specified in the case configuration settings.
    Values: `text`, `toggle`
  - `value` (union string | boolean) — nullable
    The custom field value. If the custom field is required, it cannot be explicitly set to null. However, for cases that existed when the required custom field was added, the default value stored in Elasticsearch is `undefined`. The value returned in the API and user interface in this case is `null`.
- `description` (string)
- `duration` (integer) — nullable
  The elapsed time from the creation of the case to its closure (in seconds). If the case has not been closed, the duration is set to null. If the case was closed after less than half a second, the duration is rounded down to zero.
- `external_service` ({}) — nullable
  - `connector_id` (string)
  - `connector_name` (string)
  - `external_id` (string)
  - `external_title` (string)
  - `external_url` (string)
  - `pushed_at` (string)
  - `pushed_by` (object) — nullable
    - `email` (string) — nullable
    - `full_name` (string) — nullable
    - `profile_uid` (string)
    - `username` (string) — nullable
- `id` (string)
- `owner` (enum)
  The application that owns the cases: Stack Management, Observability, or Elastic Security.
  Values: `cases`, `observability`, `securitySolution`
- `settings` ({})
  An object that contains the case settings.
  - `syncAlerts` (boolean)
    Turns alert syncing on or off.
- `severity` (enum  · default: low)
  The severity of the case.
  Values: `critical`, `high`, `low`, `medium`
- `status` (enum)
  The status of the case.
  Values: `closed`, `in-progress`, `open`
- `tags` ([] string)
- `title` (string)
- `totalAlerts` (integer)
- `totalComment` (integer)
- `updated_at` (string) — nullable
- `updated_by` ({}) — nullable
  - `email` (string) — nullable
  - `full_name` (string) — nullable
  - `profile_uid` (string)
  - `username` (string) — nullable
- `version` (string)
#### `401`

Authorization information is missing or invalid.

`application/json`

- `error` (string)
- `message` (string)
- `statusCode` (integer)
## Code Examples

#### Console

```console
GET /api/cases/{caseId}/comments/_find
```

#### curl

```curl
curl -X GET "https://{kibana_url}/api/cases/{caseId}/comments/_find"
```

