# Delete a conversation

Deleting a conversation is permanent and cannot be reversed.
You can delete a single conversation. The behavior depends on the `retain_metrics` parameter:
- **With `retain_metrics=true` (default)**: Deletes the conversation while retaining reporting data. The conversation will still appear in reporting, though some data may be incomplete due to the deletion.
- **With `retain_metrics=false`**: Deletes the conversation and all associated reporting data. The conversation will be completely removed from both the inbox and all reporting.

Using `retain_metrics=false` requires the `delete_conversations_and_metrics` OAuth scope.
For more info, see [this help center article](https://www.intercom.com/help/en/articles/13885146-deleting-a-conversation).

Endpoint: DELETE /conversations/{id}
Version: Preview
Security: bearerAuth

## Path parameters:

  - `id` (integer, required)
    id

## Query parameters:

  - `retain_metrics` (boolean)
    If true (default), deletes the conversation while retaining reporting data. If false, deletes the conversation and all associated reporting data. Setting to false requires the `delete_conversations_and_metrics` OAuth scope.

## Header parameters:

  - `Intercom-Version` (string)

## Response 200 fields (application/json):

  - `id` (string)
    The unique identifier for the conversation.
    Example: 5ba682d23d7cf92bef87bfd4

  - `object` (string)
    always conversation
    Enum: "conversation"

  - `deleted` (boolean)
    Whether the conversation is deleted or not.
    Example: true

## Response 401 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: error.list

  - `request_id` (string)
    Example: f93ecfa8-d08a-4325-8694-89aeb89c8f85

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: unauthorized

  - `errors.message` (string)
    Optional. Human readable description of the error.
    Example: Access Token Invalid

  - `errors.field` (string)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: email

## Response 403 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: error.list

  - `request_id` (string)
    Example: f93ecfa8-d08a-4325-8694-89aeb89c8f85

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: unauthorized

  - `errors.message` (string)
    Optional. Human readable description of the error.
    Example: Access Token Invalid

  - `errors.field` (string)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: email

