# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Kibana Security AI Assistant API version: 1.0.0 extends: openapi/elk-stack-security-ai-assistant-api-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 21 - target: $.paths['/api/security_ai_assistant/anonymization_fields/_bulk_action'].post update: x-apievangelist-phrasing: intent: Bulk create, update or delete anonymization fields effect: write questions: - Can I change which fields the Security AI Assistant anonymizes in one batch? - Is there a way to delete several anonymization fields at once? instructions: - text: 'Create these anonymization fields in bulk: {create}.' slots: create: requestBody.create - text: Update anonymization fields {update} and delete {delete} in one bulk action. slots: update: requestBody.update delete: requestBody.delete method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/anonymization_fields/_find'].get update: x-apievangelist-phrasing: intent: List anonymization fields effect: read questions: - Which fields does the security AI assistant anonymize before sending to the model? - Can I filter and sort the anonymization field list? instructions: - text: List all anonymization fields. - text: Find anonymization fields matching {filter}, sorted by {sort_field}. slots: filter: query.filter sort_field: query.sort_field method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/chat/complete'].post update: x-apievangelist-phrasing: intent: Get a model response from the security assistant effect: write questions: - How do I send messages to the Elastic Security AI Assistant and get an answer back? - Can the assistant's response be streamed? - Can I choose whether the chat gets saved as a conversation? instructions: - text: 'Send {messages} to the assistant through connector {connectorId} and persist it: {persist}.' slots: messages: requestBody.messages connectorId: requestBody.connectorId persist: requestBody.persist - text: Ask the security assistant {messages} via connector {connectorId} in conversation {conversationId}, persist {persist}. slots: messages: requestBody.messages connectorId: requestBody.connectorId conversationId: requestBody.conversationId persist: requestBody.persist method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/current_user/conversations'].post update: x-apievangelist-phrasing: intent: Start a new assistant conversation effect: write questions: - Can I create a saved conversation with the security AI assistant ahead of time? - What does a new assistant conversation need besides a title? instructions: - text: Create a conversation titled {title}. slots: title: requestBody.title - text: Start a new assistant conversation {title} in category {category}. slots: title: requestBody.title category: requestBody.category method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/current_user/conversations'].delete update: x-apievangelist-phrasing: intent: Delete all my assistant conversations effect: destructive questions: - Can I clear my entire security assistant chat history? - Is it possible to delete all conversations except a few I want to keep? instructions: - text: Delete all of my assistant conversations. - text: Delete every conversation except {excludedIds}. slots: excludedIds: requestBody.excludedIds method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/current_user/conversations/_find'].get update: x-apievangelist-phrasing: intent: Search my assistant conversations effect: read questions: - What conversations have I had with the security AI assistant? - Can I list only conversations I own? instructions: - text: List my assistant conversations. - text: Find conversations matching {filter}, page {page}. slots: filter: query.filter page: query.page method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/current_user/conversations/{id}'].get update: x-apievangelist-phrasing: intent: Get an assistant conversation effect: read questions: - Can I pull up the full message history of one assistant conversation? - What's in a specific security assistant chat? instructions: - text: Show conversation {id}. slots: id: path.id - text: Get the messages in assistant conversation {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/current_user/conversations/{id}'].put update: x-apievangelist-phrasing: intent: Update an assistant conversation effect: write questions: - Can I rename an existing assistant conversation? - Is it possible to change the connector config on a conversation I already have? instructions: - text: Rename conversation {id} to {title}. slots: id: path.id title: requestBody.title - text: Update existing conversation {id} to use API config {apiConfig}. slots: id: path.id apiConfig: requestBody.apiConfig method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/current_user/conversations/{id}'].delete update: x-apievangelist-phrasing: intent: Delete one assistant conversation effect: destructive questions: - Can I delete a single chat with the security assistant? - What removes one specific conversation from my history? instructions: - text: Delete conversation {id}. slots: id: path.id - text: Remove assistant chat {id} from my history. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base'].get update: x-apievangelist-phrasing: intent: Check the assistant's knowledge base status effect: read questions: - Is the security AI assistant's knowledge base set up? - What's the current state of the assistant knowledge base? instructions: - text: Show the knowledge base status. - text: Check whether the security assistant knowledge base is ready. method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base'].post update: x-apievangelist-phrasing: intent: Set up the assistant knowledge base effect: write questions: - How do I install the knowledge base for the security AI assistant? - Can I skip loading Security Labs content when setting it up? instructions: - text: Set up the knowledge base using model {modelId}. slots: modelId: query.modelId - text: 'Create the assistant knowledge base, ignoring Security Labs: {ignoreSecurityLabs}.' slots: ignoreSecurityLabs: query.ignoreSecurityLabs method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base/{resource}'].get update: x-apievangelist-phrasing: intent: Check knowledge base status for a resource effect: read questions: - Is the knowledge base ready for a particular resource? - Can I check a resource-specific knowledge base instead of the default? instructions: - text: Show knowledge base status for resource {resource}. slots: resource: path.resource - text: Check whether the {resource} knowledge base is installed. slots: resource: path.resource method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base/{resource}'].post update: x-apievangelist-phrasing: intent: Set up the knowledge base for a resource effect: write questions: - Can I create a knowledge base for one specific resource? - What model does a resource knowledge base use when I install it? instructions: - text: Create the knowledge base for resource {resource}. slots: resource: path.resource - text: Install the {resource} knowledge base with model {modelId}. slots: resource: path.resource modelId: query.modelId method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base/entries'].post update: x-apievangelist-phrasing: intent: Add a knowledge base entry effect: write questions: - How do I teach the security assistant a new fact or document? - Can I add a single entry to the knowledge base? instructions: - text: Add a new knowledge base entry with this content. - text: Create one knowledge base entry for the security assistant. method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base/entries/_bulk_action'].post update: x-apievangelist-phrasing: intent: Bulk manage knowledge base entries effect: write questions: - Can I add, edit and remove many knowledge base entries in one request? - What's the bulk option for knowledge base entries? instructions: - text: Bulk create knowledge base entries {create}. slots: create: requestBody.create - text: Bulk delete knowledge base entries {delete} and update {update}. slots: delete: requestBody.delete update: requestBody.update method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base/entries/_find'].get update: x-apievangelist-phrasing: intent: Search knowledge base entries effect: read questions: - Which entries are in the security assistant's knowledge base? - Can I filter knowledge base entries by a query? instructions: - text: List knowledge base entries. - text: Find knowledge base entries matching {filter}, {per_page} per page. slots: filter: query.filter per_page: query.per_page method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base/entries/{id}'].get update: x-apievangelist-phrasing: intent: Get a knowledge base entry effect: read questions: - What does a specific knowledge base entry contain? - Can I read one entry by its ID? instructions: - text: Show knowledge base entry {id}. slots: id: path.id - text: Get the content of entry {id}. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base/entries/{id}'].put update: x-apievangelist-phrasing: intent: Update a knowledge base entry effect: write questions: - Can I edit a knowledge base entry that already exists? - How is a single knowledge base entry's content changed? instructions: - text: Update knowledge base entry {id}. slots: id: path.id - text: Replace the content of existing entry {id} with this text. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/knowledge_base/entries/{id}'].delete update: x-apievangelist-phrasing: intent: Delete a knowledge base entry effect: destructive questions: - Can I remove one outdated entry from the assistant's knowledge base? - What deletes a single knowledge base entry by ID? instructions: - text: Delete knowledge base entry {id}. slots: id: path.id - text: Remove outdated entry {id} from the knowledge base. slots: id: path.id method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/prompts/_bulk_action'].post update: x-apievangelist-phrasing: intent: Bulk create, update or delete prompts effect: write questions: - Can I manage many security assistant prompts in one request? - Is there a way to delete several saved prompts together? instructions: - text: Bulk create prompts {create}. slots: create: requestBody.create - text: Update prompts {update} and delete prompts {delete}. slots: update: requestBody.update delete: requestBody.delete method: generated generated: '2026-09-26' - target: $.paths['/api/security_ai_assistant/prompts/_find'].get update: x-apievangelist-phrasing: intent: List assistant prompts effect: read questions: - Which system and quick prompts are saved for the security assistant? - Can I sort and page through saved prompts? instructions: - text: List all saved prompts. - text: Find prompts matching {filter} sorted by {sort_field} {sort_order}. slots: filter: query.filter sort_field: query.sort_field sort_order: query.sort_order method: generated generated: '2026-09-26'