# List calls with transcripts

Retrieve calls by a list of conversation ids and include transcripts when available.
A maximum of 20 conversation_ids can be provided. If none are provided or more than 20 are provided, a 400 error is returned.

Endpoint: POST /calls/search
Version: 2.15
Security: bearerAuth

## Header parameters:

  - `Intercom-Version` (string)
    Intercom API version.By default, it's equal to the version set in the app package.
    Enum: "1.0", "1.1", "1.2", "1.3", "1.4", "2.0", "2.1", "2.2", "2.3", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14"

## Request fields (application/json):

  - `conversation_ids` (array, required)
    A list of conversation ids to fetch calls for. Maximum 20.

## Response 200 fields (application/json):

  - `type` (string)
    Example: "list"

  - `data` (array)

  - `data.type` (string)
    String representing the object's type. Always has the value call.
    Example: "call"

  - `data.id` (string)
    The id of the call.
    Example: "123"

  - `data.conversation_id` (string,null)
    The id of the conversation associated with the call, if any.
    Example: "456"

  - `data.admin_id` (string,null)
    The id of the admin associated with the call, if any.
    Example: "789"

  - `data.contact_id` (string,null)
    The id of the contact associated with the call, if any.
    Example: "6762f0dd1bb69f9f2193bb83"

  - `data.state` (string)
    The current state of the call.
    Example: "completed"

  - `data.initiated_at` (any)

  - `data.answered_at` (any)

  - `data.ended_at` (any)

  - `data.created_at` (any)

  - `data.updated_at` (any)

  - `data.recording_url` (string,null)
    API URL to download or redirect to the call recording if available.
    Example: "https://api.intercom.io/calls/123/recording"

  - `data.transcription_url` (string,null)
    API URL to download or redirect to the call transcript if available.
    Example: "https://api.intercom.io/calls/123/transcript"

  - `data.call_type` (string)
    The type of call.
    Example: "phone"

  - `data.direction` (string)
    The direction of the call.
    Example: "outbound"

  - `data.ended_reason` (string,null)
    The reason for the call end, if applicable.
    Example: "completed"

  - `data.phone` (string,null)
    The phone number involved in the call, in E.164 format.
    Example: "+15551234567"

  - `data.fin_recording_url` (string,null)
    API URL to the AI Agent (Fin) call recording if available.

  - `data.fin_transcription_url` (string,null)
    API URL to the AI Agent (Fin) call transcript if available.

  - `data.transcript` (array)
    The call transcript if available, otherwise an empty array.

  - `data.transcript_status` (string,null)
    The status of the transcript if available.

## Response 400 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: "error.list"

  - `request_id` (string,null)
    Example: "f93ecfa8-d08a-4325-8694-89aeb89c8f85"

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: "unauthorized"

  - `errors.message` (string,null)
    Optional. Human readable description of the error.
    Example: "Access Token Invalid"

  - `errors.field` (string,null)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: "email"


