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

# Generate persona packages

> Generate persona packages based on selected mission type and persona type with auto-discovery of AI agents and tools from the flow.
This endpoint creates complete persona packages including scenario names, persona descriptions, missions, and success criteria.




## OpenAPI

````yaml https://api-trial.cognigy.ai/testing/openapi/openapi-viewer.json post /personas/generate
openapi: 3.0.0
info:
  title: SIMULATOR OPENAPI REST-ful-API Reference
  version: 2025.20.0
  description: >

    ### Introduction

    This is the [OpenAPI 3.0](https://swagger.io/specification/) documentation

    of the
    [REST](https://en.wikipedia.org/wiki/Representational_state_transfer)-ful
    SIMULATOR OPENAPI API.


    ### Cross-Origin Resource Sharing

    This API features Cross-Origin Resource Sharing (CORS) implemented in

    compliance with [W3C spec](https://www.w3.org/TR/cors/), which allows

    cross-domain communication from the browser. All responses have a wildcard

    same-origin header which makes the API completely accessible.


    ### Authentication

    SIMULATOR OPENAPI offers following forms of authentication:

    - Bearer Token (JWT)

    - API Key


    ### Error Handling

    This API uses HTTP status codes equal or above 400 to indicate errors. Error

    details are generated in compliance with [RFC 7807 - "Problem Details for
    HTTP APIs"](https://tools.ietf.org/html/rfc7807).


    Every error response contains a traceId, which should be provided to the
    SIMULATOR OPENAPI Technical Support when reporting an error.
  contact:
    name: Cognigy Technical Support
    url: https://www.cognigy.com
    email: support@cognigy.com
  license:
    name: Cognigy Proprietary License
servers:
  - url: https://api-trial.cognigy.ai/testing
    description: Cognigy Service Testing API
security:
  - bearerAuth: []
  - apiKeyAuth: []
tags:
  - name: Simulations
    description: >-
      Simulation management operations - Create, read, update, and delete
      simulations
externalDocs:
  description: SIMULATOR OPENAPI Documentation
  url: https://docs.cognigy.com/docs/service-testing/
paths:
  /personas/generate:
    post:
      tags:
        - Personas
      summary: Generate persona packages
      description: >
        Generate persona packages based on selected mission type and persona
        type with auto-discovery of AI agents and tools from the flow.

        This endpoint creates complete persona packages including scenario
        names, persona descriptions, missions, and success criteria.
      operationId: generatePersonaPackages
      parameters:
        - name: projectId
          in: query
          required: false
          schema:
            type: string
          description: Project identifier (alternative to projectReference in body)
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                projectReference:
                  type: string
                  description: >-
                    Project reference for context identification (alternative to
                    projectId query parameter)
                flowReferenceId:
                  type: string
                  description: Flow reference ID for AI agent and tool discovery
                jobNodeId:
                  type: string
                  description: >-
                    Optional: Target specific job node for precise tool
                    discovery
                selectedMissionType:
                  type: object
                  description: Selected mission type with success criteria
                  properties:
                    name:
                      type: string
                      description: Mission type name
                    description:
                      type: string
                      description: Mission type description
                    successCriteria:
                      type: array
                      description: Success criteria for this mission type
                      items:
                        type: object
                        properties:
                          name:
                            type: string
                            description: Success criterion name
                          description:
                            type: string
                            description: Success criterion description
                        required:
                          - name
                          - description
                  required:
                    - name
                    - description
                    - successCriteria
                selectedPersonaType:
                  type: object
                  description: Selected persona type with characteristics
                  properties:
                    name:
                      type: string
                      description: Persona type name
                    description:
                      type: string
                      description: Persona type description and characteristics
                  required:
                    - name
                    - description
                numberOfSuccessCriteria:
                  type: integer
                  description: Number of success criteria to generate per persona package
                  minimum: 1
                requestedPackages:
                  type: integer
                  description: Number of persona packages to generate
                  minimum: 1
              required:
                - flowReferenceId
                - selectedMissionType
                - selectedPersonaType
                - numberOfSuccessCriteria
                - requestedPackages
      responses:
        '200':
          description: Persona packages generated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    description: Whether the generation was successful
                  personaPackages:
                    type: array
                    description: Array of generated persona packages
                    items:
                      type: object
                      properties:
                        simulationName:
                          type: string
                          description: Generated scenario name
                        personaName:
                          type: string
                          description: Generated persona name
                        personaDescription:
                          type: string
                          description: Generated persona description
                        mission:
                          type: string
                          description: Generated mission
                        successCriteria:
                          type: array
                          description: Generated success criteria
                          items:
                            type: object
                            properties:
                              type:
                                type: string
                                description: Success criterion type
                              params:
                                type: object
                                description: Success criterion parameters
                            required:
                              - type
                              - params
                      required:
                        - simulationName
                        - personaName
                        - personaDescription
                        - mission
                        - successCriteria
                  metadata:
                    type: object
                    description: Optional metadata about the generation
                    properties:
                      requestId:
                        type: string
                        description: Request identifier
                      processedAt:
                        type: string
                        description: Timestamp when processed
                      model:
                        type: string
                        description: LLM model used
                required:
                  - success
                  - personaPackages
        '400':
          description: Bad Request - Invalid input parameters
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Validation error message
                  field:
                    type: string
                    description: Field that failed validation
                  code:
                    type: string
                    description: Validation error code
                  traceId:
                    type: string
                    description: Trace ID for debugging
                required:
                  - error
                  - field
        '401':
          description: Unauthorized - Invalid or missing authentication
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Unauthorized error message
                  code:
                    type: string
                    description: Unauthorized error code
                  traceId:
                    type: string
                    description: Trace ID for debugging
                required:
                  - error
        '403':
          description: Forbidden - Insufficient permissions
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Forbidden error message
                  code:
                    type: string
                    description: Forbidden error code
                  traceId:
                    type: string
                    description: Trace ID for debugging
                required:
                  - error
        '500':
          description: Internal Server Error - Server error
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                    description: Error message
                  code:
                    type: string
                    description: Error code
                  traceId:
                    type: string
                    description: Trace ID for debugging
                required:
                  - error
      security:
        - bearerAuth: []
        - apiKeyAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT Bearer Token for authentication
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API Key for authentication

````