---
title: "Get annotated interactions by content IDs"
method: GET
path: "/api/v2/llm-obs/v1/annotated-interactions"
tags: ["LLM Observability"]
---

# Get annotated interactions by content IDs

`GET /api/v2/llm-obs/v1/annotated-interactions`

Returns annotated interactions across all annotation queues for the given content IDs.
Results include queue metadata (ID and name) for each interaction.

## Query parameters

- `contentIds` string[], required
- `offset` integer
- `limit` integer

## Response `200`

OK

- LLMObsAnnotatedInteractionsByTraceResponse — Response containing annotated interactions across all queues for the requested content IDs.
  - `data` LLMObsAnnotatedInteractionsByTraceDataResponse, required — Data object for the cross-queue annotated interactions response.
    - `attributes` LLMObsAnnotatedInteractionsByTraceDataAttributesResponse, required — Attributes of the cross-queue annotated interactions response.
      - `annotated_interactions` LLMObsAnnotatedInteractionByTraceItem[], required — List of annotated interactions across all queues for the requested content IDs.
        - `annotations` LLMObsAnnotationItem[], required — List of annotations for this interaction.
          - `created_at` string, date-time, required — Timestamp when the annotation was created.
          - `created_by` string, required — Identifier of the user who created the annotation.
          - `id` string, required — Unique identifier of the annotation.
          - `interaction_id` string, required — Identifier of the interaction this annotation belongs to.
          - `label_values` object, required — Label values for this annotation.
          - `modified_at` string, date-time, required — Timestamp when the annotation was last modified.
          - `modified_by` string, required — Identifier of the user who last modified the annotation.
        - `content_id` string, required — Upstream entity identifier (trace ID, session ID, or deterministic display_block ID).
        - `created_at` string, date-time, required — Timestamp when the interaction was added to the queue.
        - `display_block` LLMObsContentBlock[] — List of content blocks that make up a `display_block` interaction. Must contain at least one block.
          - `alt` string — Alternative text for an `image` block.
          - `content` string — Block payload. A string for `markdown`, `header`, and `text`; an arbitrary JSON value (object, array, or scalar) for `json`. Omitted for `image`, `widget`, and `llmobs_trace`.
          - `height` integer — Optional rendered height. Must be positive when set.
          - `interactionType` 'trace' | 'experiment_trace' — Upstream interaction type referenced by an `llmobs_trace` block. Restricted to `trace` or `experiment_trace`.
          - `label` string — Optional label rendered alongside the block.
          - `level` 'sm' | 'md' | 'lg' | 'xl' — Visual size for a `header` block.
          - `tileDef` unknown
          - `timeFrame` LLMObsContentBlockTimeFrame — Unix-millis time range used by chart blocks.
            - `end` integer, required — End of the range, in Unix milliseconds.
            - `start` integer, required — Start of the range, in Unix milliseconds.
          - `traceId` string — Trace identifier. Required for `llmobs_trace` blocks.
          - `type` 'markdown' | 'header' | 'text' | 'json' | 'image' | 'widget' | 'llmobs_trace', required — Discriminator for a single `display_block` content block. Adding a variant requires coordinated changes in the frontend renderer.
          - `url` string — URL of the image. Required for `image` blocks.
        - `id` string, required — Unique identifier of the interaction.
        - `modified_at` string, date-time, required — Timestamp when the interaction was last updated.
        - `queue_id` string, required — Identifier of the annotation queue this interaction belongs to.
        - `queue_name` string, required — Name of the annotation queue this interaction belongs to.
        - `type` 'trace' | 'experiment_trace' | 'session' | 'display_block', required — Type of an annotated interaction.
      - `total_count` integer, required — Total number of annotated interactions matching the query.
    - `id` string, required — Opaque identifier for the response object.
    - `type` 'annotated_interactions_by_trace', required — Resource type for cross-queue annotated interactions lookup.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `429` — Too many requests
- `500` — Internal Server Error

---

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