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

# Create built-in tool

> Create a new built-in tool with the provided configuration.



## OpenAPI

````yaml /api-reference/openapi.json post /v2/ai-agents/{ai_agent_id}/builtin-tools/
openapi: 3.1.0
info:
  title: Verbex Platform API
  description: API for managing AI agents, calls, phone numbers, and more.
  version: 1.0.0
servers: []
security: []
paths:
  /v2/ai-agents/{ai_agent_id}/builtin-tools/:
    post:
      tags:
        - Built-in Tools
      summary: Create built-in tool
      description: Create a new built-in tool with the provided configuration.
      operationId: create_builtin_tool_v2_ai_agents__ai_agent_id__builtin_tools__post
      parameters:
        - name: ai_agent_id
          in: path
          required: true
          schema:
            type: string
            title: Ai Agent Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
                - $ref: '#/components/schemas/CreateEmailToolRequest'
                - $ref: '#/components/schemas/CreateTransferCallToolRequest'
                - $ref: '#/components/schemas/CreateBookCalendarToolRequest'
                - $ref: >-
                    #/components/schemas/CreateCheckCalendarAvailabilityToolRequest
              discriminator:
                propertyName: tool_name
                mapping:
                  send_email:
                    $ref: '#/components/schemas/CreateEmailToolRequest'
                  transfer_call:
                    $ref: '#/components/schemas/CreateTransferCallToolRequest'
                  book_calendar:
                    $ref: '#/components/schemas/CreateBookCalendarToolRequest'
                  check_calendar_availability:
                    $ref: >-
                      #/components/schemas/CreateCheckCalendarAvailabilityToolRequest
              title: Tool
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/EmailToolResponse'
                  - $ref: '#/components/schemas/TransferCallToolResponse'
                  - $ref: '#/components/schemas/BookCalendarToolResponse'
                  - $ref: '#/components/schemas/CheckCalendarAvailabilityToolResponse'
                discriminator:
                  propertyName: tool_name
                  mapping:
                    send_email:
                      $ref: '#/components/schemas/EmailToolResponse'
                    transfer_call:
                      $ref: '#/components/schemas/TransferCallToolResponse'
                    book_calendar:
                      $ref: '#/components/schemas/BookCalendarToolResponse'
                    check_calendar_availability:
                      $ref: >-
                        #/components/schemas/CheckCalendarAvailabilityToolResponse
                title: >-
                  Response Create Builtin Tool V2 Ai Agents  Ai Agent Id 
                  Builtin Tools  Post
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    CreateEmailToolRequest:
      properties:
        tool_id:
          type: string
          title: Tool Id
        tool_start_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Start Message
          description: Optional message to display when the tool is started
        tool_delayed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Delayed Message
          description: Optional message to display when the tool is delayed
        tool_complete_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Complete Message
          description: Optional message to display when the tool is completed
        tool_failed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Failed Message
          description: Optional message to display when the tool fails
        tool_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Description
          description: Optional description of the email tool's purpose and configuration
        tool_name:
          type: string
          const: send_email
          title: Tool Name
          description: Identifier for the email tool type, must be 'send_email'
          default: send_email
        from_email:
          type: string
          title: From Email
          description: Email address that will be used as the sender for outgoing emails
        app_password:
          type: string
          title: App Password
          description: >-
            Application-specific password for authenticating with the email
            service
      type: object
      required:
        - from_email
        - app_password
      title: CreateEmailToolRequest
    CreateTransferCallToolRequest:
      properties:
        tool_id:
          type: string
          title: Tool Id
        tool_start_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Start Message
          description: Optional message to display when the tool is started
        tool_delayed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Delayed Message
          description: Optional message to display when the tool is delayed
        tool_complete_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Complete Message
          description: Optional message to display when the tool is completed
        tool_failed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Failed Message
          description: Optional message to display when the tool fails
        tool_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Description
          description: >-
            Optional description of the call transfer tool's purpose and
            configuration
        tool_name:
          type: string
          const: transfer_call
          title: Tool Name
          description: Identifier for the call transfer tool type, must be 'transfer_call'
          default: transfer_call
        transfer_to:
          type: string
          title: Transfer To
          description: Phone number or identifier where calls will be transferred
        transfer_type:
          type: string
          enum:
            - cold_transfer
            - warm_transfer
          title: Transfer Type
          description: >-
            Type of transfer: 'cold_transfer' (direct transfer) or
            'warm_transfer' (announced transfer)
        display_phone_number:
          type: boolean
          title: Display Phone Number
          description: Whether to display the phone number to the recipient of the transfer
          default: false
      type: object
      required:
        - transfer_to
        - transfer_type
      title: CreateTransferCallToolRequest
    CreateBookCalendarToolRequest:
      properties:
        tool_id:
          type: string
          title: Tool Id
        tool_start_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Start Message
          description: Optional message to display when the tool is started
        tool_delayed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Delayed Message
          description: Optional message to display when the tool is delayed
        tool_complete_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Complete Message
          description: Optional message to display when the tool is completed
        tool_failed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Failed Message
          description: Optional message to display when the tool fails
        tool_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Description
          description: >-
            Optional description of the calendar booking tool's purpose and
            configuration
        tool_name:
          type: string
          const: book_calendar
          title: Tool Name
          description: >-
            Identifier for the calendar booking tool type, must be
            'book_calendar'
          default: book_calendar
        event_type_id:
          type: string
          title: Event Type Id
          description: Identifier for the type of calendar event to be booked
        cal_api_key:
          type: string
          title: Cal Api Key
          description: API key for authenticating with the calendar service
        timezone:
          anyOf:
            - type: string
            - type: 'null'
          title: Timezone
          description: Timezone for calendar bookings (e.g., 'America/New_York')
      type: object
      required:
        - event_type_id
        - cal_api_key
      title: CreateBookCalendarToolRequest
    CreateCheckCalendarAvailabilityToolRequest:
      properties:
        tool_id:
          type: string
          title: Tool Id
        tool_start_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Start Message
          description: Optional message to display when the tool is started
        tool_delayed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Delayed Message
          description: Optional message to display when the tool is delayed
        tool_complete_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Complete Message
          description: Optional message to display when the tool is completed
        tool_failed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Failed Message
          description: Optional message to display when the tool fails
        tool_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Description
          description: >-
            Optional description of the calendar availability tool's purpose and
            configuration
        tool_name:
          type: string
          const: check_calendar_availability
          title: Tool Name
          description: >-
            Identifier for the calendar availability checking tool type, must be
            'check_calendar_availability'
          default: check_calendar_availability
        event_type_id:
          type: string
          title: Event Type Id
          description: Identifier for the type of calendar event to check availability for
        cal_api_key:
          type: string
          title: Cal Api Key
          description: API key for authenticating with the calendar service
        timezone:
          anyOf:
            - type: string
            - type: 'null'
          title: Timezone
          description: Timezone for availability checks (e.g., 'America/New_York')
      type: object
      required:
        - event_type_id
        - cal_api_key
      title: CreateCheckCalendarAvailabilityToolRequest
    EmailToolResponse:
      properties:
        tool_id:
          type: string
          title: Tool Id
          description: Unique identifier of the email tool
        tool_start_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Start Message
          description: Optional message to display when the tool is started
        tool_delayed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Delayed Message
          description: Optional message to display when the tool is delayed
        tool_complete_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Complete Message
          description: Optional message to display when the tool is completed
        tool_failed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Failed Message
          description: Optional message to display when the tool fails
        tool_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Description
          description: Description of the email tool's purpose and configuration
        tool_name:
          type: string
          const: send_email
          title: Tool Name
          description: Identifier for the email tool type
          default: send_email
        from_email:
          type: string
          title: From Email
          description: Email address configured as sender
        app_password:
          type: string
          title: App Password
          description: Application-specific password used for authentication
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Timestamp when the tool was created
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: Timestamp when the tool was last updated
      type: object
      required:
        - from_email
        - app_password
        - created_at
        - updated_at
      title: EmailToolResponse
    TransferCallToolResponse:
      properties:
        tool_id:
          type: string
          title: Tool Id
          description: Unique identifier of the call transfer tool
        tool_start_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Start Message
          description: Optional message to display when the tool is started
        tool_delayed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Delayed Message
          description: Optional message to display when the tool is delayed
        tool_complete_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Complete Message
          description: Optional message to display when the tool is completed
        tool_failed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Failed Message
          description: Optional message to display when the tool fails
        tool_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Description
          description: Description of the call transfer tool's purpose and configuration
        tool_name:
          type: string
          const: transfer_call
          title: Tool Name
          description: Identifier for the call transfer tool type
          default: transfer_call
        transfer_to:
          type: string
          title: Transfer To
          description: Configured destination for call transfers
        transfer_type:
          type: string
          enum:
            - cold_transfer
            - warm_transfer
          title: Transfer Type
          description: Configured transfer type (cold or warm)
        display_phone_number:
          type: boolean
          title: Display Phone Number
          description: Whether phone number display is enabled
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Timestamp when the tool was created
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: Timestamp when the tool was last updated
      type: object
      required:
        - transfer_to
        - transfer_type
        - display_phone_number
        - created_at
        - updated_at
      title: TransferCallToolResponse
    BookCalendarToolResponse:
      properties:
        tool_id:
          type: string
          title: Tool Id
          description: Unique identifier of the calendar booking tool
        tool_start_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Start Message
          description: Optional message to display when the tool is started
        tool_delayed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Delayed Message
          description: Optional message to display when the tool is delayed
        tool_complete_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Complete Message
          description: Optional message to display when the tool is completed
        tool_failed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Failed Message
          description: Optional message to display when the tool fails
        tool_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Description
          description: Description of the calendar booking tool's purpose and configuration
        tool_name:
          type: string
          const: book_calendar
          title: Tool Name
          description: Identifier for the calendar booking tool type
          default: book_calendar
        event_type_id:
          type: string
          title: Event Type Id
          description: Configured event type identifier
        cal_api_key:
          type: string
          title: Cal Api Key
          description: API key used for calendar service authentication
        timezone:
          anyOf:
            - type: string
            - type: 'null'
          title: Timezone
          description: Configured timezone for calendar operations
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Timestamp when the tool was created
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: Timestamp when the tool was last updated
      type: object
      required:
        - event_type_id
        - cal_api_key
        - created_at
        - updated_at
      title: BookCalendarToolResponse
    CheckCalendarAvailabilityToolResponse:
      properties:
        tool_id:
          type: string
          title: Tool Id
          description: Unique identifier of the calendar availability tool
        tool_start_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Start Message
          description: Optional message to display when the tool is started
        tool_delayed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Delayed Message
          description: Optional message to display when the tool is delayed
        tool_complete_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Complete Message
          description: Optional message to display when the tool is completed
        tool_failed_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Failed Message
          description: Optional message to display when the tool fails
        tool_description:
          anyOf:
            - type: string
            - type: 'null'
          title: Tool Description
          description: Optional description of the tool's purpose and functionality
        tool_name:
          type: string
          const: check_calendar_availability
          title: Tool Name
          description: Identifier for the calendar availability checking tool type
          default: check_calendar_availability
        event_type_id:
          type: string
          title: Event Type Id
          description: Configured event type identifier
        cal_api_key:
          type: string
          title: Cal Api Key
          description: API key used for calendar service authentication
        timezone:
          anyOf:
            - type: string
            - type: 'null'
          title: Timezone
          description: Configured timezone for availability operations
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Timestamp when the tool was created
        updated_at:
          type: string
          format: date-time
          title: Updated At
          description: Timestamp when the tool was last updated
      type: object
      required:
        - event_type_id
        - cal_api_key
        - created_at
        - updated_at
      title: CheckCalendarAvailabilityToolResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError

````