# Cases API

Copy as Markdown[Open in ChatGPT](https://chatgpt.com/?q=Read%20https%3A%2F%2Fcoralogix.com%2Fdocs%2Fdeveloper-portal%2Fapis%2Fdata-management%2Fcases-api.md%20and%20help%20me%20with%20my%20question%20about%20this%20Coralogix%20documentation%20page.)[Open in Claude](https://claude.ai/new?q=Read%20https%3A%2F%2Fcoralogix.com%2Fdocs%2Fdeveloper-portal%2Fapis%2Fdata-management%2Fcases-api.md%20and%20help%20me%20with%20my%20question%20about%20this%20Coralogix%20documentation%20page.)[API reference](https://coralogix.com/docs/docs/api-reference/v5/cases-service)

## Overview[​](#overview "Direct link to Overview")

This document outlines the Cases API. It exposes three services that together cover the full Case lifecycle:

* **`CasesService`** manages Cases throughout their lifecycle. Use it to get, list, update, assign, acknowledge, resolve, and close Cases, to set or clear a priority override, and to bulk-apply each of these operations. It also exposes filter values, grouping keys, and Case deep links.
* **`CaseEventsService`** manages the events on a Case's Activity timeline. Use it to list events, retrieve a single event, and create, update, or delete comment events. External systems can also sync threads into the timeline through this service.
* **`CasesNotificationService`** tracks notification-adjacent data. Use it to list the notification delivery records for one or more Cases, including routing, target, and outcome information.

### Prerequisites[​](#prerequisites "Direct link to Prerequisites")

Before you begin, please make sure you have the following:

* To use this API you need to [create](https://coralogix.com/docs/docs/user-guides/account-management/api-keys/api-keys/.md) a personal or team API key. Cases do not ship with a permission preset; add the individual `CASE:*` permissions you need.

  | Permission | Description | Used by |
  | ---------- | ----------- | ------- |

* Select the <!-- -->api.:443<!-- --> endpoint that corresponds to your Coralogix [domain](https://coralogix.com/docs/docs/user-guides/account-management/account-settings/coralogix-domain/.md) using the domain selector at the top of the page.

* Administrator permissions to manage your services.

## Authentication[​](#authentication "Direct link to Authentication")

Coralogix API uses API keys to authenticate requests. You can view and manage your [API keys](https://coralogix.com/docs/docs/user-guides/account-management/api-keys/api-keys/.md) from the Data Flow tab in Coralogix. You need to use an API key in the Authorization request header to successfully connect.

### Example[​](#example "Direct link to Example")

`grpcurl -H "Authorization: Bearer <cx_api_key>"`

Then, structure your header by using the <!-- -->api.:443<!-- --> endpoint for your Coralogix domain. To dynamically display the correct endpoint, use the domain selector at the top of the page.

`d @ api.eu2.coralogix.com:443`

The Cases API exposes three fully qualified service names:

* `com.coralogixapis.cases.v1.CasesService`
* `com.coralogixapis.cases.v1.CaseEventsService`
* `com.coralogixapis.cases.v1.CasesNotificationService`

The complete request header should look like this:

```
grpcurl -H "Authorization: Bearer <cx_api_key>" -d @ api.eu2.coralogix.com:443 com.coralogixapis.cases.v1.CasesService/
```

### Sample request[​](#sample-request "Direct link to Sample request")

Retrieve a single Case by ID using `GetCase`.

```
grpcurl -H "Authorization: Bearer <cx_api_key>" -d @ api.eu2.coralogix.com:443 com.coralogixapis.cases.v1.CasesService/GetCase <<EOF

{

    "id": "case-697506"

}

EOF
```

### Sample response[​](#sample-response "Direct link to Sample response")

```
{

    "case": {

        "id": "case-697506",

        "name": "Spike in errors for specific country",

        "status": "CASE_STATUS_ACTIVE",

        "priority": "CASE_PRIORITY_P1",

        "category": "CASE_CATEGORY_AVAILABILITY",

        "assignee": null,

        "created_at": {

            "seconds": "1748208900",

            "nanos": 0

        },

        "last_updated_at": {

            "seconds": "1748210220",

            "nanos": 0

        }

    }

}
```

## API endpoints[​](#api-endpoints "Direct link to API endpoints")

⚠️ This is only a list of endpoints. For a detailed schema, consult the individual service references:

* [Cases service](https://coralogix.com/docs/docs/api-reference/v5/cases-service/overview)
* [Case Events service](https://coralogix.com/docs/docs/api-reference/v5/case-events-service/overview)
* [Cases Notification service](https://coralogix.com/docs/docs/api-reference/v5/cases-notification-service/overview)

### CasesService[​](#casesservice "Direct link to CasesService")

`CasesService` is the primary service for managing Cases. It covers lifecycle operations (assign, acknowledge, resolve, close), priority overrides, bulk operations, and metadata lookups.

| Method Name                 | Description                                                |
| --------------------------- | ---------------------------------------------------------- |
| `GetCase`                   | Retrieve detailed information about a single Case by ID.   |
| `ListCases`                 | List Cases using filters, pagination, and custom ordering. |
| `UpdateCase`                | Apply a partial update (patch) to a Case.                  |
| `SetPriorityOverride`       | Override a Case's computed priority with a specific value. |
| `ClearPriorityOverride`     | Remove a previously set priority override.                 |
| `AssignCase`                | Assign a Case to a user.                                   |
| `UnassignCase`              | Remove a Case's assignment.                                |
| `AcknowledgeCase`           | Acknowledge a Case.                                        |
| `UnacknowledgeCase`         | Move an acknowledged Case back to Active.                  |
| `ResolveCase`               | Resolve a Case.                                            |
| `CloseCase`                 | Close a Case.                                              |
| `BulkAssign`                | Assign multiple Cases to a user.                           |
| `BulkUnassign`              | Remove assignment from multiple Cases.                     |
| `BulkAcknowledge`           | Acknowledge multiple Cases.                                |
| `BulkResolve`               | Resolve multiple Cases.                                    |
| `BulkClose`                 | Close multiple Cases.                                      |
| `BulkSetPriorityOverride`   | Override priority for multiple Cases.                      |
| `BulkClearPriorityOverride` | Remove priority override from multiple Cases.              |
| `GetFilterValues`           | Get the available filter values for the Case list.         |
| `GetGroupingKeys`           | Get the available grouping keys for the Case list.         |
| `GetCaseDeepLinks`          | Get deep links for a Case.                                 |

### CaseEventsService[​](#caseeventsservice "Direct link to CaseEventsService")

`CaseEventsService` provides access to the events that appear on a Case's Activity timeline, including system-generated events and user comments. It also lets external systems sync threads back into Coralogix.

| Method Name              | Description                                                   |
| ------------------------ | ------------------------------------------------------------- |
| `ListEvents`             | List events for a Case.                                       |
| `GetEvent`               | Retrieve a single event by ID.                                |
| `CreateComment`          | Create a new comment event on a Case.                         |
| `UpdateComment`          | Modify the content of an existing comment event.              |
| `DeleteComment`          | Delete a comment event.                                       |
| `SyncExternalCaseEvents` | Sync events from an external system into the Case's timeline. |

### CasesNotificationService[​](#casesnotificationservice "Direct link to CasesNotificationService")

`CasesNotificationService` tracks notification-adjacent data for Cases. Use it to retrieve the notifications routed for one or more Cases and the delivery outcome on each connector.

| Method Name                  | Description                                                                                                       |
| ---------------------------- | ----------------------------------------------------------------------------------------------------------------- |
| `ListNotificationDeliveries` | Retrieve notification delivery records for one or more Cases, including routing, target, and outcome information. |

## Additional resources[​](#additional-resources "Direct link to Additional resources")

|                     |                                                                                                                     |
| ------------------- | ------------------------------------------------------------------------------------------------------------------- |
| Coralogix Endpoints | [Coralogix Endpoints](https://coralogix.com/docs/docs/integrations/coralogix-endpoints/.md)                         |
| Cases user guide    | [Working with Cases](https://coralogix.com/docs/docs/user-guides/cases/working-with-cases/.md)                      |
| Case permissions    | [Permissions list](https://coralogix.com/docs/docs/user-guides/aaa/access-control/permissions/permissions-list/.md) |
