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

# List conversations

> Returns a paginated list of call conversations. Filter by agent, status, date range, or minimum call duration. Use cursor and pageSize to page through large result sets.



## OpenAPI

````yaml /openapi.json get /public/v1/conversations
openapi: 3.0.3
info:
  title: Callin Public API
  version: 1.0.0
  description: >-
    The Callin public API lets you programmatically build and manage AI voice
    agents, control their knowledge bases, and retrieve call logs and
    transcripts. All endpoints are versioned under /public/v1.
servers:
  - url: https://api.callin.io/api
    description: API Endpoint
security: []
tags:
  - name: Health
    description: Service availability check. No authentication required.
  - name: Identity
    description: Verify which account is associated with the current API key.
  - name: Agents
    description: Create, retrieve, and update AI voice agents.
  - name: Conversations
    description: List and inspect call logs, transcripts, and conversation details.
  - name: Knowledge Base
    description: Manage documents and groups that agents use during calls.
paths:
  /public/v1/conversations:
    get:
      tags:
        - Conversations
      summary: List conversations
      description: >-
        Returns a paginated list of call conversations. Filter by agent, status,
        date range, or minimum call duration. Use cursor and pageSize to page
        through large result sets.
      parameters:
        - name: agentId
          in: query
          schema:
            type: string
          description: Filter conversations to a specific agent.
        - name: status
          in: query
          schema:
            type: string
            enum:
              - completed
              - in_progress
              - cancelled
              - failed
              - scheduled
            example: completed
          description: >-
            Filter by conversation status: completed, in_progress, cancelled,
            failed, or scheduled.
        - name: startBeforeUnix
          in: query
          schema:
            type: number
          description: >-
            Return conversations that started before this Unix timestamp
            (seconds or milliseconds).
        - name: startAfterUnix
          in: query
          schema:
            type: number
          description: >-
            Return conversations that started after this Unix timestamp (seconds
            or milliseconds).
        - name: minCallDuration
          in: query
          schema:
            type: number
            minimum: 0
          description: >-
            Return only conversations with a duration of at least this many
            seconds.
        - name: maxCallDuration
          in: query
          schema:
            type: number
            minimum: 0
          description: Duration in seconds
        - name: cursor
          in: query
          schema:
            type: string
          description: ISO timestamp
        - name: pageSize
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 30
      responses:
        '200':
          description: A paginated array of conversation summaries.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessConversationListResponse'
        '400':
          description: Invalid query params
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - ApiKeyHeader: []
        - BearerAuth: []
        - ApiKeyQuery: []
components:
  schemas:
    SuccessConversationListResponse:
      type: object
      properties:
        success:
          type: boolean
          example: true
        data:
          type: array
          items:
            $ref: '#/components/schemas/ConversationListItem'
        pagination:
          type: object
          properties:
            pageSize:
              type: integer
              description: The number of items per page
            hasMore:
              type: boolean
              description: Indicates if there are more items to fetch
            nextCursor:
              type: string
              nullable: true
              description: The cursor to fetch the next page
      description: Paginated conversations with timing, status, and summary per row.
    ErrorResponse:
      type: object
      description: >-
        Returned for most client and validation errors. Read `error.message` and
        optional `error.fields` for details.
      properties:
        success:
          type: boolean
          example: false
          description: Always `false` for this shape.
        error:
          type: object
          description: Structured error payload from the API.
          properties:
            code:
              type: string
              description: Stable machine-oriented error code when provided.
            message:
              type: string
              description: Human-readable explanation suitable to show or log.
            status:
              type: integer
              description: HTTP status code echoed for convenience.
            fields:
              type: array
              description: >-
                Optional per-field validation issues (shape is
                endpoint-specific).
              items:
                type: object
    ConversationListItem:
      type: object
      properties:
        conversationId:
          type: string
          description: The ID of the conversation
        agentId:
          type: string
          description: The ID of the agent
        startTimeUnix:
          type: integer
          nullable: true
          description: The start time of the conversation in Unix timestamp
        endTimeUnix:
          type: integer
          nullable: true
          description: The end time of the conversation in Unix timestamp
        conversationDuration:
          type: number
          description: The duration of the conversation in seconds
        status:
          type: string
          description: The status of the conversation
          enum:
            - completed
            - in_progress
            - cancelled
            - failed
            - scheduled
          example: completed
        agentName:
          type: string
          description: The name of the agent
        direction:
          type: string
          description: The direction of the conversation
          enum:
            - outbound
            - inbound
          example: outbound
        summary:
          type: string
          description: The summary of the conversation
        metadata:
          type: object
          properties:
            createdAt:
              type: string
              format: date-time
              description: The date and time the conversation was created
            createdBy:
              $ref: '#/components/schemas/MetaCreatedBy'
    MetaCreatedBy:
      type: object
      properties:
        userId:
          type: string
          description: The ID of the user who created the item
        userEmail:
          type: string
          description: The email of the user who created the item
  securitySchemes:
    ApiKeyHeader:
      type: apiKey
      in: header
      name: x-api-key
      description: Send your Callin API key in the `x-api-key` header.
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: 'Same API key as a Bearer token: `Authorization: Bearer <your-api-key>`.'

````