---
title: "Get a conversation"
method: GET
path: "/api/security_ai_assistant/current_user/conversations/{id}"
tags: ["Security AI Assistant API"]
---

# Get a conversation

`GET /api/security_ai_assistant/current_user/conversations/{id}`

**Spaces method and path for this operation:**

<div><span class="operation-verb get">get</span>&nbsp;<span class="operation-path">/s/{space_id}/api/security_ai_assistant/current_user/conversations/{id}</span></div>

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

Get the details of an existing conversation using the conversation ID. This allows users to fetch the specific conversation data by its unique ID.

## Path parameters

- `id` string, nonempty, required — A string that does not contain only whitespace characters.

## Response `200`

Indicates a successful call. The conversation details are returned.

- SecurityAIAssistantAPIConversationResponse
  - `apiConfig` SecurityAIAssistantAPIApiConfig
    - `actionTypeId` string, required — Action type ID
    - `connectorId` string, required — Connector ID
    - `defaultSystemPromptId` string — Default system prompt ID
    - `model` string — Model
    - `provider` 'OpenAI' | 'Azure OpenAI' | 'Other' — Provider
  - `category` 'assistant' | 'insights', required — The conversation category.
  - `createdAt` string, required — The time conversation was created.
  - `createdBy` SecurityAIAssistantAPIUser, required — Could be any string, not necessarily a UUID.
    - `id` string — User id.
    - `name` string — User name.
  - `excludeFromLastConversationStorage` boolean — Exclude from last conversation storage.
  - `id` string, nonempty, required — A string that does not contain only whitespace characters.
  - `messages` SecurityAIAssistantAPIMessage[] — The conversation messages.
    - `content` string, required — Message content.
    - `id` string, nonempty — A string that does not contain only whitespace characters.
    - `isError` boolean — Is error message.
    - `metadata` SecurityAIAssistantAPIMessageMetadata — Message metadata
      - `contentReferences` SecurityAIAssistantAPIContentReferences — A union of all content reference types
      - `interruptResumeValue` union — Union of the interrupt resume values
        - SecurityAIAssistantAPISelectOptionInterruptResumeValue — A request approval resume schema
          - `type` 'SELECT_OPTION', required — The type of interrupt
          - `value` string, required — The value of the selected option to resume the graph execution with
        - SecurityAIAssistantAPIInputTextInterruptResumeValue — A resume value for input text
          - `type` 'INPUT_TEXT', required — The type of interrupt
          - `value` string, required — Text value used to resume the graph execution with.
      - `interruptValue` union — Union of the interrupt values
        - SecurityAIAssistantAPISelectOptionInterruptValue — Interrupt that requests user to select one of the provided options
          - `expired` boolean — Whether the interrupt has expired and can no longer be resumed.
          - `threadId` string, required — Thread ID of the graph execution that produced this message.
          - `type` 'SELECT_OPTION', required — The type of interrupt
          - `description` string, required — Description of action required
          - `options` SecurityAIAssistantAPISelectOptionInterruptOption[], required — List of actions to choose from
            - `buttonColor` 'text' | 'accent' | 'accentSecondary' | 'primary' | 'success' | 'warning' | 'danger' | 'neutral' | 'risk'
            - `label` string, required
            - `value` string, required
        - SecurityAIAssistantAPIInputTextInterruptValue — Interrupt that requests user to provide text input
          - `expired` boolean — Whether the interrupt has expired and can no longer be resumed.
          - `threadId` string, required — Thread ID of the graph execution that produced this message.
          - `type` 'INPUT_TEXT', required — The type of interrupt
          - `description` string — Description of action required
          - `placeholder` string — Placeholder text for the input field
    - `reader` SecurityAIAssistantAPIReader
    - `refusal` string — Refusal reason returned by the model when content is filtered.
    - `role` 'system' | 'user' | 'assistant', required — Message role.
    - `timestamp` string, nonempty, required — A string that represents a timestamp in ISO 8601 format and does not contain only whitespace characters.
    - `traceData` SecurityAIAssistantAPITraceData — Trace Data
      - `traceId` string — Could be any string, not necessarily a UUID
      - `transactionId` string — Could be any string, not necessarily a UUID
    - `user` SecurityAIAssistantAPIUser — Could be any string, not necessarily a UUID.
      - `id` string — User id.
      - `name` string — User name.
  - `namespace` string, required — Kibana space
  - `replacements` SecurityAIAssistantAPIReplacements — Replacements object used to anonymize/deanonymize messages
  - `timestamp` string, nonempty — A string that represents a timestamp in ISO 8601 format and does not contain only whitespace characters.
  - `title` string, required — The conversation title.
  - `updatedAt` string — The last time conversation was updated.
  - `users` SecurityAIAssistantAPIUser[], required
    - `id` string — User id.
    - `name` string — User name.

## Other responses

- `400` — Bad Request response.

---

[API](https://skmtc.net/elastic/apis/kibana-apis.md) · [All operations](https://skmtc.net/elastic/apis/kibana-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/elastic/kibana-apis/versions/531c9e2a7d23/schema)
