> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cybedefend.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Security Champion conversation

> Creates a new Security Champion AI conversation for a specific vulnerability. Returns a conversation ID to use with the streaming endpoint



## OpenAPI

````yaml post /project/{projectId}/security-champion/conversation
openapi: 3.0.0
info:
  title: Cybedefend API
  description: >-
    CybeDefend is an advanced API for application security analysis. Key
    features include OAuth 2.0 authentication, user/organization/project
    management, and REBAC-based permissions. It excels in static, dynamic, and
    IaC security analyses (SAST, DAST, IaC, etc.).
  version: '1.0'
  contact: {}
servers:
  - url: https://api-eu.cybedefend.com
    description: EU
  - url: https://api-us.cybedefend.com
    description: US
security: []
tags: []
paths:
  /project/{projectId}/security-champion/conversation:
    post:
      tags:
        - AI Agent
      summary: Create Security Champion conversation
      description: >-
        Creates a new Security Champion AI conversation for a specific
        vulnerability. Returns a conversation ID to use with the streaming
        endpoint
      operationId: AgentController_createSecurityChampionConversation
      parameters:
        - name: projectId
          required: true
          in: path
          description: Project unique identifier
          schema:
            format: uuid
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StartSecurityChampionBodyDto'
      responses:
        '200':
          description: Conversation created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    example: true
                  conversationId:
                    type: string
                    example: conv-abc123
                  status:
                    type: string
                    example: created
                  reason:
                    type: string
                    example: null
                    nullable: true
        '400':
          description: Bad Request - Invalid input data
          content:
            application/json:
              schema:
                example:
                  message: Bad Request
                  statusCode: 400
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
        '401':
          description: Unauthorized - Invalid or missing authentication token
          content:
            application/json:
              schema:
                example:
                  message: Unauthorized
                  statusCode: 401
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
        '403':
          description: Forbidden - Insufficient permissions
          content:
            application/json:
              schema:
                example:
                  message: Forbidden
                  statusCode: 403
                  timestamp: '2025-02-18T12:31:18.491Z'
                  path: /example/path
components:
  schemas:
    StartSecurityChampionBodyDto:
      type: object
      properties:
        projectId:
          type: string
          description: Project identifier (UUID)
          example: 11111111-2222-3333-4444-555555555555
        branch:
          type: string
          description: >-
            Git branch name for branch-specific conversations. Used together
            with projectId to identify the project context in Potpie. Defaults
            to "main" if not provided.
          example: main
        vulnerabilityId:
          type: string
          description: >-
            Optional vulnerability identifier (UUID). If provided, the
            conversation will start focused on this vulnerability context.
          example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
        initialMessage:
          type: string
          description: Optional initial user message to send
          example: List the critical vulnerabilities related to authentication.
      required:
        - projectId

````