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

# Create New Conversation

> Creating a conversation requires a source id. Website inboxes use a generated string from webhook events. Phone channels use an e164 phone number. Email channels use the contact email. API channels accept any string.



## OpenAPI

````yaml /openapi/application.json post /api/v1/accounts/{account_id}/conversations
openapi: 3.0.4
info:
  title: Rookoo Application API
  description: >-
    Manage conversations, contacts, inboxes, planning, knowledge bases, MCP, and
    account settings on behalf of a user.
  version: 1.1.0
  termsOfService: https://www.rookoo.ai/terms-of-service/
  contact:
    email: hello@rookoo.ai
  license:
    name: MIT License
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://app.rookoo.ai/
security: []
tags:
  - name: Account AgentBots
    description: Account-specific Agent Bots
  - name: Agents
    description: Agent management APIs
  - name: Canned Responses
    description: Pre-defined responses for common queries
  - name: Contacts
    description: Contact management APIs
  - name: Contact Labels
    description: Manage contact labels
  - name: Conversation Assignments
    description: Manage conversation assignments
  - name: Conversation Labels
    description: Manage conversation labels
  - name: Conversations
    description: Conversation management APIs
  - name: Custom Attributes
    description: Custom fields for contacts and conversations
  - name: Custom Filters
    description: Saved filters for conversations
  - name: Inboxes
    description: Communication channels setup
  - name: Integrations
    description: Third-party integrations
  - name: Messages
    description: Message management APIs
  - name: Profile
    description: User profile APIs
  - name: Reports
    description: Analytics and reporting APIs
  - name: Teams
    description: Team management APIs
  - name: Webhooks
    description: Event notification webhooks
  - name: OAuth Applications
    description: Account-scoped OAuth 2.0 clients
  - name: Automation Rule
    description: Workflow automation rules
  - name: Help Center
    description: Knowledge base management
  - name: Knowledge Bases
    description: Searchable knowledge bases and records
  - name: Planning Events
    description: Event planning and inquiries
  - name: Planning Allocations
    description: Space allocations and availability
  - name: Planning Quotes
    description: Quotes for planning events
  - name: Planning Rates
    description: Rate catalogue and prices
  - name: Planning Pricing
    description: Pricing plans, discount codes, and price preview/lock
  - name: Spaces
    description: Bookable spaces and rooms
  - name: Rookoo Agents
    description: Rookoo AI agent configuration
  - name: Copilot
    description: Copilot JWT and settings
  - name: MCP
    description: Model Context Protocol server endpoints
paths:
  /api/v1/accounts/{account_id}/conversations:
    parameters:
      - $ref: '#/components/parameters/account_id'
    post:
      tags:
        - Conversations
      summary: Create New Conversation
      description: >-
        Creating a conversation requires a source id. Website inboxes use a
        generated string from webhook events. Phone channels use an e164 phone
        number. Email channels use the contact email. API channels accept any
        string.
      operationId: newConversation
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/conversation_create_payload'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: number
                    description: ID of the conversation
                  account_id:
                    type: number
                    description: Account Id
                  inbox_id:
                    type: number
                    description: ID of the inbox
        '403':
          description: Access denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bad_request_error'
      security:
        - userApiKey: []
        - agentBotApiKey: []
components:
  parameters:
    account_id:
      in: path
      name: account_id
      schema:
        type: integer
      required: true
      description: The numeric ID of the account
  schemas:
    conversation_create_payload:
      type: object
      required:
        - source_id
        - inbox_id
      properties:
        source_id:
          type: string
          description: Conversation source id
          example: '1234567890'
        inbox_id:
          type: integer
          description: >-
            Id of inbox in which the conversation is created <br/> Allowed Inbox
            Types: Website, Phone, Api, Email
          example: 1
        contact_id:
          type: integer
          description: Contact Id for which conversation is created
          example: 1
        additional_attributes:
          type: object
          description: Lets you specify attributes like browser information
          example:
            browser: Chrome
            browser_version: 89.0.4389.82
            os: Windows
            os_version: '10'
        custom_attributes:
          type: object
          description: >-
            The object to save custom attributes for conversation, accepts
            custom attributes key and value
          example:
            attribute_key: attribute_value
            priority_conversation_number: 3
        status:
          type: string
          enum:
            - open
            - resolved
            - pending
          description: Specify the conversation whether it's pending, open, closed
          example: open
        assignee_id:
          type: integer
          description: Agent Id for assigning a conversation to an agent
          example: 1
        team_id:
          type: integer
          description: Team Id for assigning a conversation to a team\
          example: 1
        snoozed_until:
          type: string
          format: date-time
          description: Snoozed until date time
          example: '2030-07-21T17:32:28Z'
        message:
          type: object
          description: The initial message to be sent to the conversation
          required:
            - content
          properties:
            content:
              type: string
              description: The content of the message
              example: Hello, how can I help you?
            template_params:
              type: object
              description: The template params for the message in case of whatsapp Channel
              properties:
                name:
                  type: string
                  description: Name of the template
                  example: sample_issue_resolution
                category:
                  type: string
                  description: Category of the template
                  example: UTILITY
                language:
                  type: string
                  description: Language of the template
                  example: en_US
                processed_params:
                  type: object
                  description: >-
                    The processed param values for template variables in
                    template
                  example:
                    '1': Rookoo
    bad_request_error:
      title: data
      type: object
      properties:
        description:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/request_error'
    request_error:
      type: object
      properties:
        field:
          type: string
        message:
          type: string
        code:
          type: string
  securitySchemes:
    userApiKey:
      type: apiKey
      in: header
      name: api_access_token
      description: >-
        This token can be obtained by visiting the profile page or via rails
        console. Provides access to  endpoints based on the user permissions
        levels. This token can be saved by an external system when user is
        created via API, to perform activities on behalf of the user.
    agentBotApiKey:
      type: apiKey
      in: header
      name: api_access_token
      description: >-
        This token should be provided by system admin or obtained via rails
        console. This token can be used to build bot integrations and can only
        access limited apis.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.