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

# Search conversations

> Phone calls, texts, website chats, and emails, most recent activity first. Matches the customer's name, phone, or email, or words in the title, summary, or category. Customer API.




## OpenAPI

````yaml /openapi.yaml get /conversations
openapi: 3.0.0
info:
  title: Answering Agent API
  description: >
    The Customer API reads a team's conversations, transcripts, recordings,
    tasks, contacts, and reports. It also updates tasks and adds notes to them.
    The Partner API lets reseller accounts manage organizations, users,
    locations, partner links, and embed tokens. Both use an X-API-KEY header.
    Requests from this playground go to production.
  version: 1.0.0
servers:
  - url: https://answeringagent.com/api/v1
    description: Production
security: []
tags:
  - name: Account
    description: Customer API. Your team, phone lines, and members.
  - name: Conversations
    description: >-
      Customer API. Calls, texts, website chats, and emails, with transcripts
      and recordings.
  - name: Tasks
    description: >-
      Customer API. Follow-up tasks. Read them, update their status or assignee,
      and add notes.
  - name: Contacts
    description: Customer API. Your customers.
  - name: Reports
    description: Customer API. Report metrics, totals, and breakdowns.
  - name: Organizations
    description: Partner API, reseller accounts only.
  - name: Users
    description: Partner API, reseller accounts only.
  - name: Locations
    description: Partner API, reseller accounts only.
  - name: Account Linking
    description: Partner API, reseller accounts only.
  - name: Embed Tokens
    description: Partner API, reseller accounts only.
paths:
  /conversations:
    get:
      tags:
        - Conversations
      summary: Search conversations
      description: >
        Phone calls, texts, website chats, and emails, most recent activity
        first. Matches the customer's name, phone, or email, or words in the
        title, summary, or category. Customer API.
      operationId: searchConversations
      parameters:
        - $ref: '#/components/parameters/SearchQuery'
        - in: query
          name: channel
          schema:
            type: string
            enum:
              - phone
              - text
              - web_chat
              - email
          description: >-
            Only conversations that happened on this channel. A call the
            customer replied to by text counts as text too.
        - $ref: '#/components/parameters/CreatedRange'
        - $ref: '#/components/parameters/Limit'
        - $ref: '#/components/parameters/Page'
      responses:
        '200':
          description: One page of conversations.
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/PageInfo'
                  - type: object
                    properties:
                      conversations:
                        type: array
                        items:
                          $ref: '#/components/schemas/Conversation'
        '400':
          $ref: '#/components/responses/CustomerBadRequest'
        '401':
          $ref: '#/components/responses/CustomerUnauthorized'
        '403':
          $ref: '#/components/responses/CustomerForbidden'
        '405':
          $ref: '#/components/responses/CustomerMethodNotAllowed'
        '429':
          $ref: '#/components/responses/CustomerRateLimited'
      security:
        - ApiKeyAuth: []
components:
  parameters:
    SearchQuery:
      in: query
      name: query
      required: false
      schema:
        type: string
        maxLength: 100
      description: Words to search for.
    CreatedRange:
      in: query
      name: range
      required: false
      schema:
        type: string
        enum:
          - today
          - yesterday
          - 7d
          - 14d
          - 30d
          - 90d
          - 365d
          - mtd
          - ytd
      description: >-
        Created within this window. Every window starts at midnight in the
        team's timezone. Omit for all time.
    Limit:
      in: query
      name: limit
      required: false
      schema:
        type: integer
        minimum: 1
        maximum: 50
        default: 10
      description: Results per page.
    Page:
      in: query
      name: page
      required: false
      schema:
        type: integer
        minimum: 1
        default: 1
      description: Page number. Use next_page from the previous response.
  schemas:
    PageInfo:
      type: object
      properties:
        total_matching:
          type: integer
          example: 214
        page:
          type: integer
          example: 1
        next_page:
          type: integer
          nullable: true
          example: 2
    Conversation:
      type: object
      properties:
        id:
          type: integer
          example: 184532
        url:
          type: string
          example: https://answeringagent.com/dashboard/conversations/184532
        channel:
          anyOf:
            - $ref: '#/components/schemas/Channel'
            - $ref: '#/components/schemas/NullValue'
        channels:
          type: array
          description: >
            Every channel the conversation happened on. A call the customer
            replied to by text lists phone and text. Texts the AI sent during or
            after a call appear in written.messages but don't add text.
          items:
            $ref: '#/components/schemas/Channel'
        started_at:
          type: string
          format: date-time
          nullable: true
        last_activity_at:
          type: string
          format: date-time
          nullable: true
        title:
          type: string
          nullable: true
          example: Cancel monthly membership
        summary:
          type: string
          nullable: true
        category:
          anyOf:
            - $ref: '#/components/schemas/Category'
            - $ref: '#/components/schemas/NullValue'
        customer:
          $ref: '#/components/schemas/CustomerRef'
        phone_line:
          anyOf:
            - $ref: '#/components/schemas/PhoneLine'
            - $ref: '#/components/schemas/NullValue'
        duration_seconds:
          type: integer
          nullable: true
          example: 214
        has_recording:
          type: boolean
          description: >
            True when GET /conversations/{conversation_id}/recording has audio
            to stream. For some calls the recording provider stores the audio
            and can delete it, so true can still get a 404.
    Channel:
      type: string
      enum:
        - phone
        - text
        - web_chat
        - email
    NullValue:
      description: No value.
      type: object
      nullable: true
      enum:
        - null
    Category:
      type: string
      description: >
        A category key. Conversations, tasks, and reports share one list. A form
        task has form. GET /reports/metrics lists every key with its label under
        categories. Older records can have a retired key that is not in that
        list.
      example: cancellation
    CustomerRef:
      type: object
      properties:
        name:
          type: string
          nullable: true
          example: Dana Ruiz
        phone:
          type: string
          nullable: true
          example: '+15125550118'
        email:
          type: string
          nullable: true
          example: dana.ruiz@example.com
    PhoneLine:
      type: object
      properties:
        id:
          type: integer
          example: 2181
        name:
          type: string
          nullable: true
          example: Westside Wash
        phone_number:
          type: string
          nullable: true
          example: '+15125550142'
    CustomerError:
      type: object
      required:
        - error
        - code
      properties:
        error:
          type: string
          description: A message for people. The text can change.
          example: That conversation is not available.
        code:
          type: string
          description: A stable code to branch on.
          enum:
            - invalid_request
            - unauthorized
            - forbidden
            - not_found
            - method_not_allowed
            - conflict
            - unprocessable
            - rate_limited
            - internal
          example: not_found
        issues:
          type: array
          description: >-
            Present when code is invalid_request. One entry for each input that
            failed validation.
          items:
            type: object
            properties:
              path:
                type: array
                items: {}
              message:
                type: string
  responses:
    CustomerBadRequest:
      description: An input is missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerError'
    CustomerUnauthorized:
      description: >-
        The X-API-KEY header is missing, the key is wrong or revoked, or its
        owner was deactivated.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerError'
    CustomerForbidden:
      description: The key's owner is not an owner, admin, or manager on the team.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerError'
    CustomerMethodNotAllowed:
      description: The endpoint does not support that HTTP method. Nothing changed.
      headers:
        Allow:
          description: The methods the endpoint supports, such as GET, HEAD, OPTIONS.
          schema:
            type: string
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerError'
          example:
            error: This endpoint accepts GET.
            code: method_not_allowed
    CustomerRateLimited:
      description: More than 120 requests in a minute for this user.
      headers:
        Retry-After:
          description: Seconds to wait before retrying.
          schema:
            type: integer
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/CustomerError'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY

````

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