---
title: "Add annotation queue interactions"
method: POST
path: "/api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions"
tags: ["LLM Observability"]
---

# Add annotation queue interactions

`POST /api/v2/llm-obs/v1/annotation-queues/{queue_id}/interactions`

Add one or more interactions to an annotation queue. At least one
interaction must be provided. Each interaction has a `type`:

- `trace`, `experiment_trace`, `session`: `content_id` references the
  upstream entity; the server fetches the actual content.
- `display_block`: omit `content_id` and provide the rendered content
  in `display_block`. The server generates `content_id` as a
  deterministic hash of the block list.

Items of different types can be mixed in a single request.

## Path parameters

- `queue_id` string, required

## Request body

- LLMObsAnnotationQueueInteractionsRequest — Request to add interactions to an LLM Observability annotation queue.
  - `data` LLMObsAnnotationQueueInteractionsDataRequest, required — Data object for adding interactions to an annotation queue.
    - `attributes` LLMObsAnnotationQueueInteractionsDataAttributesRequest, required — Attributes for adding interactions to an annotation queue.
      - `interactions` LLMObsAnnotationQueueInteractionItem[], required — List of interactions to add to the queue. Must contain at least one item.
        - union — A single interaction to add to an annotation queue.
          - LLMObsTraceInteractionItem — An interaction that references an upstream trace, experiment trace, or session.
            - `content_id` string, required — Upstream entity identifier (trace, experiment trace, or session ID).
            - `type` 'trace' | 'experiment_trace' | 'session', required — Type of an upstream-entity interaction.
          - LLMObsDisplayBlockInteractionItem — An interaction whose rendered content is supplied directly as a list of display blocks. The server generates `content_id` deterministically from the block list.
            - `display_block` LLMObsContentBlock[], required — List of content blocks that make up a `display_block` interaction. Must contain at least one block.
              - …
            - `type` 'display_block', required — Type discriminator for a `display_block` interaction.
    - `type` 'interactions', required — Resource type for annotation queue interactions.

## Response `201`

Created

- LLMObsAnnotationQueueInteractionsResponse — Response containing the result of adding interactions to an annotation queue.
  - `data` LLMObsAnnotationQueueInteractionsDataResponse, required — Data object for the interaction addition response.
    - `attributes` LLMObsAnnotationQueueInteractionsDataAttributesResponse, required — Attributes of the interaction addition response.
      - `interactions` LLMObsAnnotationQueueInteractionResponseItem[], required — List of interactions that were processed.
        - union — A single interaction result.
          - LLMObsTraceInteractionResponseItem — A trace, experiment trace, or session interaction result.
            - `already_existed` boolean, required — Whether this interaction already existed in the queue.
            - `content_id` string, required — Upstream entity identifier supplied by the caller.
            - `created_at` string, date-time, required — Timestamp when the interaction was added to the queue.
            - `id` string, required — Unique identifier of the interaction.
            - `modified_at` string, date-time, required — Timestamp when the interaction was last updated.
            - `type` 'trace' | 'experiment_trace' | 'session', required — Type of an upstream-entity interaction.
          - LLMObsDisplayBlockInteractionResponseItem — A display_block interaction result.
            - `already_existed` boolean, required — Whether this interaction already existed in the queue.
            - `content_id` string, required — Server-generated deterministic identifier derived from the block list.
            - `display_block` LLMObsContentBlock[], required — List of content blocks that make up a `display_block` interaction. Must contain at least one block.
              - …
            - `id` string, required — Unique identifier of the interaction.
            - `type` 'display_block', required — Type discriminator for a `display_block` interaction.
    - `id` string, required — The queue ID the interactions were added to.
    - `type` 'interactions', required — Resource type for annotation queue interactions.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `429` — Too many requests

---

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