---
title: "Retrieve Thread"
method: GET
path: "/v1/threads/{threadId}"
tags: ["Threads"]
---

# Retrieve Thread

`GET /v1/threads/{threadId}`

Retrieves a thread by ID from your Confident AI project.

## Path parameters

- `threadId` string, required

## Headers

- `CONFIDENT_API_KEY` string, required

## Response `200`

- GetThreadResponse
  - `success` boolean, required — This is true if the thread was successfully retrieved.
  - `data` ThreadDetail, required
    - `threadId` string, required — This is the thread ID you supplied when creating the thread.
    - `createdAt` string, date-time, required — This is when the thread was created.
    - `lastActivity` string, date-time, required — This is when the thread was last active.
    - `metadata` object — This is the custom metadata attached to the thread.
    - `tags` string[] — This is the list of tags associated with the thread.
    - `metricCollectionName` string — This is the name of the metric collection assigned to evaluate the thread.
    - `totalTraces` integer, required — This is the total number of traces in this thread.
    - `metricsData` MetricsData[] — This is the evaluation metrics data for the thread.
      - `id` string, required — The unique identifier of the metrics data entry.
      - `projectId` string, required — The project this metric data belongs to.
      - `traceUuid` string, nullable — The UUID of the trace this metric data is associated with, if any.
      - `spanUuid` string, nullable — The UUID of the span this metric data is associated with, if any.
      - `testCaseId` string, nullable — The ID of the test case this metric data is associated with, if any.
      - `testRunId` string, nullable — The ID of the test run this metric data is associated with, if any.
      - `threadId` string, nullable — The ID of the thread this metric data is associated with, if any.
      - `name` string, required — The name of the metric.
      - `multiTurn` boolean, required — Whether this metric was evaluated on a multi-turn conversation.
      - `score` number, nullable — The final metric score.
      - `reason` string, nullable — The reason for the metric score, generated by the evaluation model at evaluation time.
      - `success` boolean, nullable — Whether the metric score is above the threshold.
      - `createdAt` string, date-time, required — The time the metric data was created.
      - `evaluatedAt` string, date-time, nullable — The time the metric was evaluated.
      - `threshold` number, float, required — The threshold for the metric, which determines if the metric is passing or failing.
      - `strictMode` boolean, required — Whether the metric was run in strict mode, which outputs a binary score of 0 or 1.
      - `skipped` boolean, required — Whether the metric evaluation was skipped.
      - `evaluationModel` string, nullable — The evaluation model used to run the evaluation.
      - `error` string, nullable — The error message if the evaluation failed.
      - `evaluationCost` number, float, nullable — The cost of running the evaluation.
      - `verboseLogs` string, nullable — The verbose logs of the evaluation, which breaks down the metric score calculation into individual steps.
    - `annotations` Annotation[] — This is the list of annotations associated with the thread.
      - `id` string, required — This is the id of the annotation generated by Confident AI, not to be confused with the alias you supplied or version number.
      - `rating` integer, required — This is the annotated rating score.
      - `type` 'THUMBS_RATING' | 'FIVE_STAR_RATING', required — This is the type of annotation, which can be either thumbs rating or five star rating.
      - `name` string — The name of the annotation.
      - `expectedOutcome` string — This is the annotated expected outcome, for conversation annotations.
      - `expectedOutput` string — This is the annotated expected output, for span and trace annotations.
      - `explanation` string — This is the explanation for the annotation.
      - `createdAt` string, date-time — The timestamp when the annotation was created.
      - `traceUuid` string — The UUID of the trace associated with this annotation, if applicable.
      - `spanUuid` string — The UUID of the span associated with this annotation, if applicable.
      - `threadId` string — The ID of the thread associated with this annotation, if applicable.
      - `testCaseId` string — The ID of the test case associated with this annotation, if applicable.
      - `user` UserReference
        - `id` string, required — The id of the user.
        - `email` string, required — The email address of the user.
        - `name` string, nullable, required — The name of the user.
        - `image` string, nullable, required — The image of the user.
      - `userEmail` string, nullable — The email address of the user created this annotation. The field is being deprecated. Please use `user.email` instead.
    - `traces` GetTrace[] — This is the list of traces in this thread. — unresolved $ref
  - `deprecated` boolean, required — This is true if this endpoint is deprecated.

## Changes

> 54 revisions in range; 3 not diffed.

- **2026-05-07** `ba727193c797` — 2 info
  - added the optional property `data/traces/items/spans/items/integration` to the response with the `200` status
  - added the optional property `data/traces/items/spans/items/provider` to the response with the `200` status
- **2026-04-28** `75ac46e3e464` — 6 info
  - added the required property `data/annotations/items/user/allOf[#/components/schemas/UserReference]/id` to the response with the `200` status
  - added the required property `data/annotations/items/user/allOf[#/components/schemas/UserReference]/image` to the response with the `200` status
  - added the required property `data/traces/items/annotation/user/allOf[#/components/schemas/UserReference]/id` to the response with the `200` status
  - added the required property `data/traces/items/annotation/user/allOf[#/components/schemas/UserReference]/image` to the response with the `200` status
  - …2 more
- **2026-04-28** `0b1be348f19f` — 3 breaking, 6 info
  - the response property `data/annotations/items/userEmail` became nullable for the status `200`
  - the response property `data/traces/items/annotation/userEmail` became nullable for the status `200`
  - the response property `data/traces/items/spans/items/annotation/userEmail` became nullable for the status `200`
  - added the optional property `data/annotations/items/user` to the response with the `200` status
  - …5 more

[Change history](https://skmtc.dev/confident-ai/apis/confident-ai-metrics-api/changes/v1/threads/:threadId/get.md)

---

[API](https://skmtc.dev/confident-ai/apis/confident-ai-metrics-api.md) · [All operations](https://skmtc.dev/confident-ai/apis/confident-ai-metrics-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/confident-ai/confident-ai-metrics-api/revisions/95cdde71b65e/schema)
