> ## 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.

# Bulk generate separated personas and missions

> Generate separated persona and mission information for all provided persona types and mission types.
Returns personas and missions in separated structures for independent management.

**Key Feature**: This endpoint generates ALL combinations of provided persona types and mission types, 
returning them in a structured format where:
- Personas are keyed by persona type name
- Missions are keyed by mission type name




## OpenAPI

````yaml https://api-trial.cognigy.ai/testing/openapi/openapi-viewer.json post /personas/generate-bulk
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-bulk:
    post:
      tags:
        - Personas
      summary: Bulk generate separated personas and missions
      description: >
        Generate separated persona and mission information for all provided
        persona types and mission types.

        Returns personas and missions in separated structures for independent
        management.


        **Key Feature**: This endpoint generates ALL combinations of provided
        persona types and mission types, 

        returning them in a structured format where:

        - Personas are keyed by persona type name

        - Missions are keyed by mission type name
      operationId: bulkGeneratePersonaPackages
      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
                allMissionTypes:
                  type: array
                  description: All mission types to generate missions for
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: Mission type name
                      description:
                        type: string
                        description: Mission type description
                      successCriteria:
                        type: array
                        description: Success criteria templates
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                            description:
                              type: string
                          required:
                            - name
                            - description
                    required:
                      - name
                      - description
                      - successCriteria
                allPersonaTypes:
                  type: array
                  description: All persona types to generate personas for
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: Persona type name
                      description:
                        type: string
                        description: Persona type description
                    required:
                      - name
                      - description
                numberOfSuccessCriteria:
                  type: integer
                  description: Number of success criteria to generate per mission
                  minimum: 1
                requestedPackages:
                  type: integer
                  description: Number of packages to generate per type combination
                  minimum: 1
              required:
                - flowReferenceId
                - allMissionTypes
                - allPersonaTypes
                - numberOfSuccessCriteria
                - requestedPackages
      responses:
        '200':
          description: Bulk personas and missions generated successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                    description: Whether the generation was successful
                  personas:
                    type: object
                    description: Personas organized by persona type name as keys
                    additionalProperties:
                      type: array
                      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
                        required:
                          - simulationName
                          - personaName
                          - personaDescription
                    example:
                      Customer Support Agent:
                        - simulationName: Customer Issue Resolution
                          personaName: Sarah
                          personaDescription: Experienced support agent...
                  missions:
                    type: object
                    description: Missions organized by mission type name as keys
                    additionalProperties:
                      type: array
                      items:
                        type: object
                        properties:
                          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:
                          - mission
                          - successCriteria
                    example:
                      Technical Support:
                        - mission: Resolve customer technical issue
                          successCriteria:
                            - type: goal
                              params:
                                description: Issue resolved
                  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
                      personaTypesCount:
                        type: integer
                        description: Number of persona types processed
                      missionTypesCount:
                        type: integer
                        description: Number of mission types processed
                required:
                  - success
                  - personas
                  - missions
        '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

````