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

# Create agent



## OpenAPI

````yaml post /api/v1/agents
openapi: 3.0.0
info:
  title: Elemente.ai APIS Documentation
  description: >-
    Elemente.AI is an innovative company specializing in artificial intelligence
    (AI) solutions for call centers. Its leading products include Voice to Voice
    AI agents, AI-powered call analysis, and AI-based chat systems, designed to
    enhance operational efficiency and the customer experience.
  version: '1.0'
  contact: {}
servers:
  - url: https://api.elemente.ai
security: []
tags:
  - name: Calls
    description: Call related APIs
  - name: Agents
    description: Agents related APIs
  - name: Actions
    description: Actions allows your agent connect to external tools and systems.
  - name: Knowledgebase
    description: >-
      Train your agents on external knowledgebase sources like your companies
      data, privacy policy, term of service or even your product catalogue
  - name: Skills
    description: Add capabilities to your AI agents
paths:
  /api/v1/agents:
    post:
      tags:
        - Agents
      summary: Create agent
      operationId: AiAgentController_createAgent
      parameters: []
      requestBody:
        required: true
        description: Input data for creating an AI agent
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateVoicebotInput'
      responses:
        '201':
          description: The created AI agent
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentType'
        '400':
          description: Bad Request
        '500':
          description: Internal Server Error
      security:
        - basic: []
components:
  schemas:
    CreateVoicebotInput:
      type: object
      properties:
        agentType:
          type: string
          description: The type of the agent, either AI or human
          example: AI
        roleText:
          type: string
          description: The role text of the voicebot
          example: Customer Support
          nullable: true
        capabilities:
          description: The capabilities of the voicebot
          example: []
          nullable: true
          type: array
          items:
            type: string
        inboundCapability:
          type: string
          description: The inbound capability of the voicebot
          example: answer
          nullable: true
        jobDescriptions:
          type: string
          description: The job descriptions of the voicebot
          example: Customer Support
          nullable: true
        baseInstructions:
          type: string
          description: The base instructions of the voicebot
          example: Welcome to our customer support!
          nullable: true
        temperature:
          type: number
          description: >-
            Temperature value for AI responses, which affects randomness in
            replies
          example: '0.7'
        modelProvider:
          type: string
          description: The model provider for the AI, such as OpenAI or Google
          example: OpenAI
        modelName:
          type: string
          description: The name of the AI model to be used, should be a chat model
          example: gpt-4o
        actions:
          description: List of actions the agent can perform
          type: array
          items:
            type: string
        leadQualification:
          type: string
          description: List of actions the agent can perform
        globalActions:
          description: List of global action IDs the agent can perform
          type: array
          items:
            type: string
        skillId:
          type: string
          description: Skill or capability the agent possesses
          example: Customer Support Representative
        skills:
          description: List of skills or capabilities the agent possesses
          type: array
          items:
            type: string
        language:
          type: string
          description: The language of the voicebot
          example: en-US
          nullable: true
        voiceStability:
          type: number
          description: The voice stability of the voicebot
          example: 0.5
          nullable: true
        voiceSpeed:
          type: number
          description: The voice speed of the voicebot
          example: 1.5
          nullable: true
        voiceId:
          type: string
          description: The voice ID of the voicebot
          example: '1234567890'
          nullable: true
        optimizeStreamingLatency:
          type: boolean
          description: Whether to optimize latency during streaming responses
          example: true
        sendFillerWords:
          type: boolean
          description: >-
            Whether to send filler words when pausing (used for simulating
            hesitation)
          example: false
        sendInitialMessage:
          type: boolean
          description: whether to send the initial message when the conversation starts
          example: true
        fillerWords:
          description: List of filler words the agent might use
          example:
            - Got it.
            - Understood
            - Awesome
          type: array
          items:
            type: string
        cutoffResponses:
          description: Responses that should be cut off when the agent is interrupted
          example:
            - Can you repeat that?
            - Sorry, I didn't get that.
            - I didn't understand that.
            - Can you talk a little bit slow?
          type: array
          items:
            type: string
        enableCutoffResponses:
          type: boolean
          description: Responses cut off enable
          example: true
        endCallOnGoodBye:
          type: boolean
          description: Whether the agent should end the call when hearing a goodbye phrase
          example: true
        goodByePhrases:
          description: List of phrases that signify the end of the call
          example:
            - Goodbye
            - Talk to you later
          type: array
          items:
            type: string
        allowedIdleTime:
          type: number
          description: The allowed idle time before the agent terminates the call
          example: 10
        checkHumanPresence:
          type: boolean
          description: Whether the agent should check if a human is present in the call
          example: true
        checkHumanPresenceCount:
          type: number
          description: >-
            How many times the agent checks for human presence before
            terminating the call
          example: 5
        allowInterruption:
          type: boolean
          description: Whether the agent allows interruptions during its responses
          example: true
        interruptionSensitivity:
          type: string
          description: The sensitivity level of interruptions, e.g., high, medium, low
          example: high
        functionality:
          type: string
          description: >-
            Defines the primary purpose of the agent. Use 'interactive' for
            agents that handle customer interactions (e.g., calls, whatsapp).
          example: interactive
        interactionSettings:
          description: Specifies the settings for `interactive` agents.
          allOf:
            - $ref: '#/components/schemas/InteractionSettings'
        name:
          type: string
          description: The name of the voicebot
          example: John Doe
        nickname:
          type: string
          description: The nickname of the voicebot, only used for display purposes
          example: John Seller
        lastname:
          type: string
          description: The last name of the voicebot
          example: Doe
          nullable: true
        imageURL:
          type: string
          description: The image URL of the voicebot
          example: https://example.com/image.jpg
          nullable: true
        phone:
          type: string
          description: The phone number of the voicebot
          example: '+1234567890'
          nullable: true
        isInbound:
          type: boolean
          description: Whether the voicebot is inbound or outbound
          example: false
          nullable: true
        workspace:
          type: string
          description: Whether the voicebot is inbound or outbound
          example: false
          nullable: true
      required:
        - leadQualification
        - functionality
        - lastname
        - imageURL
        - phone
        - isInbound
        - workspace
    AgentType:
      type: object
      properties:
        id:
          type: string
          description: The id of the agent
          example: '1234567890'
          nullable: false
        name:
          type: string
          description: The name of the agent
          example: John Doe
          nullable: true
        email:
          type: string
          description: The email of the agent
          example: john.doe@example.com
          nullable: true
        language:
          type: string
          description: The language of the agent
          example: en-US
          nullable: true
        active:
          type: boolean
          description: The active status of the agent
          example: true
          nullable: true
        voiceSpeed:
          type: number
          description: The voice speed of the agent
          example: 1.5
          nullable: true
        voiceId:
          type: string
          description: The voice id of the agent
          example: '1234567890'
          nullable: true
        capabilities:
          description: The capabilities of the agent
          example:
            - capability1
            - capability2
          nullable: true
          type: array
          items:
            type: string
        jobDescriptions:
          type: string
          description: The job descriptions of the agent
          example: Job description 1
          nullable: true
        roleText:
          type: string
          description: The role text of the agent
          example: Role text 1
          nullable: true
        actions:
          description: The actions of the agent
          example:
            - id: '1234567890'
              name: Action 1
              action: action1
              parameters: {}
          nullable: true
          type: array
          items:
            type: string
        skills:
          description: The skills of the agent
          example:
            - id: '1234567890'
              name: Skill 1
              description: Description of the skill 1
              language: en-US
              active: true
          nullable: true
          type: array
          items:
            type: string
        phone:
          type: string
          description: The phone number of the agent
          example: '+1234567890'
          nullable: true
        updatedAt:
          format: date-time
          type: string
          description: The updatedAt date of the agent
          example: '2022-01-01T00:00:00.000Z'
          nullable: true
        createdAt:
          format: date-time
          type: string
          description: The createdAt date of the agent
          example: '2022-01-01T00:00:00.000Z'
          nullable: true
      required:
        - id
        - name
        - email
        - language
        - active
        - voiceSpeed
        - voiceId
        - capabilities
        - jobDescriptions
        - roleText
        - actions
        - skills
        - phone
        - updatedAt
        - createdAt
    InteractionSettings:
      type: object
      properties:
        channel:
          type: string
          description: Specifies the interaction channel (e.g., calls, SMS, WhatsApp).
          example: call
        direction:
          type: string
          description: Specifies the direction of interaction (outbound or inbound).
          example: outbound
        inbound:
          type: boolean
          description: Specifies if the agent handles inbound interactions.
          example: true
        outbound:
          type: boolean
          description: Specifies if the agent handles outbound interactions.
          example: true
      required:
        - channel
        - direction
        - inbound
        - outbound
  securitySchemes:
    basic:
      type: http
      scheme: basic

````