---
title: "Get QA reporting data for an assistant instance"
method: GET
path: "/assistantInstances/{assistantInstanceId}/reporting"
tags: ["assistantInstances"]
---

# Get QA reporting data for an assistant instance

`GET /assistantInstances/{assistantInstanceId}/reporting`

Returns a QA/reporting summary for a conversation, including the transcript, the tool calls made, and vendor/skill details.

## Path parameters

- `assistantInstanceId` string, required

## Response `200`

The assistant instance's reporting data

- object
  - `conversation` object[]
  - `tools` AssistantActionResponse[]
    - `_id` string — Luma's internal ID of an object.
    - `user` string — The ID of the root account user.
    - `deleted` 0 | 1 — Flag for logical deletion where 1 means deleted.
    - `createdBy` string — The ID of the user who created this object.
    - `updatedBy` string — The ID of the user who updated this object.
    - `createdAt` string, date-time — The date/time when this object was created.
    - `updatedAt` string, date-time — The date/time when this object was updated.
    - `description` string — Free-form description of the action taken.
    - `status` 'success' | 'failure' | 'pending' — Outcome of the underlying API call this action made.
    - `functionName` string — Name of the tool/function called, for example `cancelAppointment` or `listAvailabilities`.
    - `parameters` unknown
    - `response` unknown
    - `assistantInstance` string — ID of the AssistantInstance (conversation) this action was taken during.
  - `skillDetails` object
  - `vendorDetails` object
  - `assistantInstance` AssistantInstanceResponse — An AssistantInstance represents a single conversation between Luma's Navigator AI assistant and a patient (or staff member), spanning one or more channels such as a voice call, SMS, or chat. It tracks the lifecycle of that conversation as it moves from idle to in-progress to a terminal success or failure status, whether the patient's identity was verified, which entry points were used, and reporting data about the call's outcome and detected intents. AssistantActions attach to an AssistantInstance as the individual tool calls made during the conversation.
    - `_id` string — Luma's internal ID of an object.
    - `user` string — The ID of the root account user.
    - `deleted` 0 | 1 — Flag for logical deletion where 1 means deleted.
    - `createdBy` string — The ID of the user who created this object.
    - `updatedBy` string — The ID of the user who updated this object.
    - `createdAt` string, date-time — The date/time when this object was created.
    - `updatedAt` string, date-time — The date/time when this object was updated.
    - `release` 'current' | 'next' | 'preProd' — Which release track of the assistant handled this conversation.
    - `patient` string — ID of the patient in this conversation.
    - `verified` boolean — Whether the patient's identity has been confirmed.
    - `onBehalfOf` string — ID of the patient being discussed, when different from `patient` (for example, a guardian calling about a dependent).
    - `status` 'idle' | 'in-progress' | 'failure' | 'success' — Lifecycle status of the conversation.
    - `statusUpdatedAt` string, date-time — When `status` was last updated.
    - `statusReason` 'success-by-assistant' | 'success-by-transfer' | 'success-by-patient' | 'success-by-staff' | 'success-by-assistant-timeout' | 'failure-by-assistant' | 'failure-by-patient' | 'failure-by-staff' | 'incomplete-success-criteria' | 'timed-out' | 'no-new-messages' | 'maximum-retries' — Why the conversation reached its terminal status.
    - `assistant` string — ID of the Assistant configuration driving this conversation.
    - `entryPoints` object[] — The channels used to reach the assistant during this conversation.
      - `channel` 'sms' | 'email' | 'voice' | 'inapp' | 'chat' | 'fax' | 'whatsapp' | 'rcs' | 'lumabot' | 'internal'
      - `lastMessageAt` string, date-time
      - `direction` 'inbound' | 'outbound'
    - `startedAt` string, date-time
    - `finishedAt` string, date-time
    - `duration` number — Duration of the conversation, in seconds.
    - `reporting` object — Structured reporting/QA data collected about this conversation.
      - `callOutcome` 'transferred' | 'assistant-ended' | 'patient-ended' | 'timed-out'
      - `intents` object[] — The intents detected during the conversation.
        - `intent` string
        - `inScope` boolean
        - `handled` boolean
        - `evidence` string — ID of the message that evidences this intent.
      - `summary` string
      - `callTransferAttempt` boolean
      - `transferWasAfterHours` boolean
  - `externalStatus` object
  - `status` string
  - `statusReason` string
  - `createdAt` string, date-time

## Other responses

- `401` — Not authenticated
- `403` — Access token does not have the required scope
- `404` — Assistant instance not found

---

[API](https://skmtc.net/lumahealth/apis/rest-service.md) · [All operations](https://skmtc.net/lumahealth/apis/rest-service/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lumahealth/rest-service/revisions/d3c75c2a2f1d/schema)
