---
title: List events for an LLM Observability experiment
description: Datadog, the leading service for cloud-scale monitoring.
breadcrumbs: Docs > API Reference > LLM Observability
---

# List events for an LLM Observability experiment{% #list-events-for-an-llm-observability-experiment %}
Copy pageCopied
{% tab title="v2" %}
**Note**: This endpoint is in preview and is subject to change. If you have any feedback, contact [Datadog support](https://docs.datadoghq.com/help/).
| Datadog site      | API endpoint                                                                           |
| ----------------- | -------------------------------------------------------------------------------------- |
| ap1.datadoghq.com | GET https://api.ap1.datadoghq.com/api/v2/llm-obs/v3/experiments/{experiment_id}/events |
| ap2.datadoghq.com | GET https://api.ap2.datadoghq.com/api/v2/llm-obs/v3/experiments/{experiment_id}/events |
| app.datadoghq.eu  | GET https://api.datadoghq.eu/api/v2/llm-obs/v3/experiments/{experiment_id}/events      |
| app.ddog-gov.com  | GET https://api.ddog-gov.com/api/v2/llm-obs/v3/experiments/{experiment_id}/events      |
| us2.ddog-gov.com  | GET https://api.us2.ddog-gov.com/api/v2/llm-obs/v3/experiments/{experiment_id}/events  |
| app.datadoghq.com | GET https://api.datadoghq.com/api/v2/llm-obs/v3/experiments/{experiment_id}/events     |
| us3.datadoghq.com | GET https://api.us3.datadoghq.com/api/v2/llm-obs/v3/experiments/{experiment_id}/events |
| us5.datadoghq.com | GET https://api.us5.datadoghq.com/api/v2/llm-obs/v3/experiments/{experiment_id}/events |

### Overview

Retrieve spans and experiment-level summary metrics for a given experiment with cursor-based pagination.

### Arguments

#### Path Parameters

| Name                            | Type   | Description                                 |
| ------------------------------- | ------ | ------------------------------------------- |
| experiment_id [*required*] | string | The ID of the LLM Observability experiment. |

#### Query Strings

| Name         | Type    | Description                                                               |
| ------------ | ------- | ------------------------------------------------------------------------- |
| page[limit]  | integer | Maximum number of spans to return per page. Defaults to 5000.             |
| page[cursor] | string  | Opaque cursor from a previous response to fetch the next page of results. |

### Response

{% tab title="200" %}
OK
{% tab title="Model" %}
Response for listing experiment events (v2/v3). Returns spans and summary metrics in a single resource.

| Parent field         | Field                             | Type                | Description                                                                                                        |
| -------------------- | --------------------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------------ |
|                      | data [*required*]            | object              | JSON:API data object for an experiment events response.                                                            |
| data                 | attributes [*required*]      | object              | Attributes of an experiment events response.                                                                       |
| attributes           | spans [*required*]           | [object]            | Experiment spans, each enriched with their associated evaluation metrics.                                          |
| spans                | dataset_record_id                 | string              | ID of the dataset record this span evaluated.                                                                      |
| spans                | duration                          | double              | Duration of the span in nanoseconds.                                                                               |
| spans                | eval_metrics                      | [object]            | Evaluation metrics associated with this span.                                                                      |
| eval_metrics         | assessment                        | enum                | Assessment result for an LLM Observability experiment metric. Allowed enum values: `pass,fail`                     |
| eval_metrics         | boolean_value                     | boolean             | Boolean value. Present when `metric_type` is `boolean`.                                                            |
| eval_metrics         | categorical_value                 | string              | Categorical value. Present when `metric_type` is `categorical`.                                                    |
| eval_metrics         | eval_source_type                  | string              | Source type of the evaluation.                                                                                     |
| eval_metrics         | id                                | string              | Unique identifier of the evaluation metric event.                                                                  |
| eval_metrics         | json_value                        | object              | JSON value. Present when `metric_type` is `json`.                                                                  |
| eval_metrics         | label                             | string              | Label or name for the metric.                                                                                      |
| eval_metrics         | metadata                          | object              | Arbitrary metadata associated with the metric.                                                                     |
| eval_metrics         | metric_source                     | string              | Source of the metric. Either `custom` (user-submitted) or `summary` (experiment-level aggregate).                  |
| eval_metrics         | metric_type                       | enum                | Type of metric recorded for an LLM Observability experiment. Allowed enum values: `score,categorical,boolean,json` |
| eval_metrics         | reasoning                         | string              | Human-readable reasoning for the metric value.                                                                     |
| eval_metrics         | score_value                       | double              | Numeric score. Present when `metric_type` is `score`.                                                              |
| eval_metrics         | span_id                           | string              | Span ID this metric is associated with.                                                                            |
| eval_metrics         | tags                              | [string]            | Tags associated with the metric.                                                                                   |
| eval_metrics         | timestamp_ms                      | int64               | Timestamp when the metric was recorded, in milliseconds since Unix epoch.                                          |
| eval_metrics         | trace_id                          | string              | Trace ID linking this metric to a span.                                                                            |
| spans                | id                                | string              | Unique identifier of the span.                                                                                     |
| spans                | meta                              | object              | Metadata associated with an experiment span.                                                                       |
| meta                 | error                             | object              | Error details for an experiment span.                                                                              |
| error                | message                           | string              | Error message.                                                                                                     |
| error                | stack                             | string              | Stack trace of the error.                                                                                          |
| error                | type                              | string              | The error type or exception class name.                                                                            |
| meta                 | expected_output                   | object              | Expected output for the span, used for evaluation.                                                                 |
| meta                 | input                             | object <oneOf> | Represents any valid JSON value.                                                                                   |
| input                | Option 1                          | string              | A scalar string value.                                                                                             |
| input                | Option 2                          | double              | A scalar numeric value.                                                                                            |
| input                | Option 3                          | object              | An arbitrary object value with additional properties.                                                              |
| input                | Option 4                          | [ <oneOf>]     | An array of arbitrary values.                                                                                      |
| Option 4             | Option 1                          | string              | A scalar string value.                                                                                             |
| Option 4             | Option 2                          | double              | A scalar numeric value.                                                                                            |
| Option 4             | Option 3                          | object              | An arbitrary object value with additional properties.                                                              |
| Option 4             | Option 4                          | boolean             | A scalar boolean value.                                                                                            |
| input                | Option 5                          | boolean             | A scalar boolean value.                                                                                            |
| meta                 | output                            | object <oneOf> | Represents any valid JSON value.                                                                                   |
| output               | Option 1                          | string              | A scalar string value.                                                                                             |
| output               | Option 2                          | double              | A scalar numeric value.                                                                                            |
| output               | Option 3                          | object              | An arbitrary object value with additional properties.                                                              |
| output               | Option 4                          | [ <oneOf>]     | An array of arbitrary values.                                                                                      |
| Option 4             | Option 1                          | string              | A scalar string value.                                                                                             |
| Option 4             | Option 2                          | double              | A scalar numeric value.                                                                                            |
| Option 4             | Option 3                          | object              | An arbitrary object value with additional properties.                                                              |
| Option 4             | Option 4                          | boolean             | A scalar boolean value.                                                                                            |
| output               | Option 5                          | boolean             | A scalar boolean value.                                                                                            |
| spans                | metrics                           | object              | Numeric metrics attached to the span.                                                                              |
| additionalProperties | <any-key>                         | double              |
| spans                | name                              | string              | Name of the span.                                                                                                  |
| spans                | parent_id                         | string              | Parent span ID, if any.                                                                                            |
| spans                | span_id                           | string              | Span ID.                                                                                                           |
| spans                | start_ns                          | int64               | Start time in nanoseconds since Unix epoch.                                                                        |
| spans                | status                            | enum                | Status of the span. Allowed enum values: `ok,error`                                                                |
| spans                | tags                              | [string]            | Tags associated with the span.                                                                                     |
| spans                | trace_id                          | string              | Trace ID.                                                                                                          |
| attributes           | summary_metrics [*required*] | [object]            | Experiment-level summary evaluation metrics (not tied to individual spans).                                        |
| summary_metrics      | assessment                        | enum                | Assessment result for an LLM Observability experiment metric. Allowed enum values: `pass,fail`                     |
| summary_metrics      | boolean_value                     | boolean             | Boolean value. Present when `metric_type` is `boolean`.                                                            |
| summary_metrics      | categorical_value                 | string              | Categorical value. Present when `metric_type` is `categorical`.                                                    |
| summary_metrics      | eval_source_type                  | string              | Source type of the evaluation.                                                                                     |
| summary_metrics      | id                                | string              | Unique identifier of the evaluation metric event.                                                                  |
| summary_metrics      | json_value                        | object              | JSON value. Present when `metric_type` is `json`.                                                                  |
| summary_metrics      | label                             | string              | Label or name for the metric.                                                                                      |
| summary_metrics      | metadata                          | object              | Arbitrary metadata associated with the metric.                                                                     |
| summary_metrics      | metric_source                     | string              | Source of the metric. Either `custom` (user-submitted) or `summary` (experiment-level aggregate).                  |
| summary_metrics      | metric_type                       | enum                | Type of metric recorded for an LLM Observability experiment. Allowed enum values: `score,categorical,boolean,json` |
| summary_metrics      | reasoning                         | string              | Human-readable reasoning for the metric value.                                                                     |
| summary_metrics      | score_value                       | double              | Numeric score. Present when `metric_type` is `score`.                                                              |
| summary_metrics      | span_id                           | string              | Span ID this metric is associated with.                                                                            |
| summary_metrics      | tags                              | [string]            | Tags associated with the metric.                                                                                   |
| summary_metrics      | timestamp_ms                      | int64               | Timestamp when the metric was recorded, in milliseconds since Unix epoch.                                          |
| summary_metrics      | trace_id                          | string              | Trace ID linking this metric to a span.                                                                            |
| data                 | id [*required*]              | string              | Identifier for this events resource.                                                                               |
| data                 | type [*required*]            | enum                | Resource type for an experiment events collection. Allowed enum values: `experiment_events`                        |
|                      | meta                              | object              | Pagination cursor metadata.                                                                                        |
| meta                 | after                             | string              | Cursor for the next page of results.                                                                               |

{% /tab %}

{% tab title="Example" %}

```json
{
  "data": {
    "attributes": {
      "spans": [
        {
          "dataset_record_id": "string",
          "duration": 1500000000,
          "eval_metrics": [
            {
              "assessment": "pass",
              "boolean_value": false,
              "categorical_value": "string",
              "eval_source_type": "managed",
              "id": "00000000-0000-0000-0000-000000000001",
              "json_value": {},
              "label": "faithfulness",
              "metadata": {},
              "metric_source": "custom",
              "metric_type": "score",
              "reasoning": "string",
              "score_value": "number",
              "span_id": "span-7a1b2c3d",
              "tags": [],
              "timestamp_ms": 1705314600000,
              "trace_id": "abc123def456"
            }
          ],
          "id": "00000000-0000-0000-0000-000000000001",
          "meta": {
            "error": {
              "message": "Model response timed out",
              "stack": "Traceback (most recent call last):\n  File \"main.py\", line 10, in <module>\n    response = model.generate(input)\n  File \"model.py\", line 45, in generate\n    raise TimeoutError(\"Model response timed out\")\nTimeoutError: Model response timed out",
              "type": "TimeoutError"
            },
            "expected_output": {},
            "input": {
              "description": "undefined",
              "type": "undefined"
            },
            "output": {
              "description": "undefined",
              "type": "undefined"
            }
          },
          "metrics": {
            "<any-key>": "number"
          },
          "name": "llm_call",
          "parent_id": "string",
          "span_id": "span-7a1b2c3d",
          "start_ns": 1705314600000000000,
          "status": "ok",
          "tags": [],
          "trace_id": "abc123def456"
        }
      ],
      "summary_metrics": [
        {
          "assessment": "pass",
          "boolean_value": false,
          "categorical_value": "string",
          "eval_source_type": "managed",
          "id": "00000000-0000-0000-0000-000000000001",
          "json_value": {},
          "label": "faithfulness",
          "metadata": {},
          "metric_source": "custom",
          "metric_type": "score",
          "reasoning": "string",
          "score_value": "number",
          "span_id": "span-7a1b2c3d",
          "tags": [],
          "timestamp_ms": 1705314600000,
          "trace_id": "abc123def456"
        }
      ]
    },
    "id": "3fd6b5e0-8910-4b1c-a7d0-5b84de329012",
    "type": "experiment_events"
  },
  "meta": {
    "after": "string"
  }
}
```

{% /tab %}

{% /tab %}

{% tab title="400" %}
Bad Request
{% tab title="Model" %}
API error response.

| Parent field | Field                    | Type     | Description                                                                     |
| ------------ | ------------------------ | -------- | ------------------------------------------------------------------------------- |
|              | errors [*required*] | [object] | A list of errors.                                                               |
| errors       | detail                   | string   | A human-readable explanation specific to this occurrence of the error.          |
| errors       | meta                     | object   | Non-standard meta-information about the error                                   |
| errors       | source                   | object   | References to the source of the error.                                          |
| source       | header                   | string   | A string indicating the name of a single request header which caused the error. |
| source       | parameter                | string   | A string indicating which URI query parameter caused the error.                 |
| source       | pointer                  | string   | A JSON pointer to the value in the request document that caused the error.      |
| errors       | status                   | string   | Status code of the response.                                                    |
| errors       | title                    | string   | Short human-readable summary of the error.                                      |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="401" %}
Unauthorized
{% tab title="Model" %}
API error response.

| Parent field | Field                    | Type     | Description                                                                     |
| ------------ | ------------------------ | -------- | ------------------------------------------------------------------------------- |
|              | errors [*required*] | [object] | A list of errors.                                                               |
| errors       | detail                   | string   | A human-readable explanation specific to this occurrence of the error.          |
| errors       | meta                     | object   | Non-standard meta-information about the error                                   |
| errors       | source                   | object   | References to the source of the error.                                          |
| source       | header                   | string   | A string indicating the name of a single request header which caused the error. |
| source       | parameter                | string   | A string indicating which URI query parameter caused the error.                 |
| source       | pointer                  | string   | A JSON pointer to the value in the request document that caused the error.      |
| errors       | status                   | string   | Status code of the response.                                                    |
| errors       | title                    | string   | Short human-readable summary of the error.                                      |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="403" %}
Forbidden
{% tab title="Model" %}
API error response.

| Parent field | Field                    | Type     | Description                                                                     |
| ------------ | ------------------------ | -------- | ------------------------------------------------------------------------------- |
|              | errors [*required*] | [object] | A list of errors.                                                               |
| errors       | detail                   | string   | A human-readable explanation specific to this occurrence of the error.          |
| errors       | meta                     | object   | Non-standard meta-information about the error                                   |
| errors       | source                   | object   | References to the source of the error.                                          |
| source       | header                   | string   | A string indicating the name of a single request header which caused the error. |
| source       | parameter                | string   | A string indicating which URI query parameter caused the error.                 |
| source       | pointer                  | string   | A JSON pointer to the value in the request document that caused the error.      |
| errors       | status                   | string   | Status code of the response.                                                    |
| errors       | title                    | string   | Short human-readable summary of the error.                                      |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="404" %}
Not Found
{% tab title="Model" %}
API error response.

| Parent field | Field                    | Type     | Description                                                                     |
| ------------ | ------------------------ | -------- | ------------------------------------------------------------------------------- |
|              | errors [*required*] | [object] | A list of errors.                                                               |
| errors       | detail                   | string   | A human-readable explanation specific to this occurrence of the error.          |
| errors       | meta                     | object   | Non-standard meta-information about the error                                   |
| errors       | source                   | object   | References to the source of the error.                                          |
| source       | header                   | string   | A string indicating the name of a single request header which caused the error. |
| source       | parameter                | string   | A string indicating which URI query parameter caused the error.                 |
| source       | pointer                  | string   | A JSON pointer to the value in the request document that caused the error.      |
| errors       | status                   | string   | Status code of the response.                                                    |
| errors       | title                    | string   | Short human-readable summary of the error.                                      |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="429" %}
Too many requests
{% tab title="Model" %}
API error response.

| Field                    | Type     | Description       |
| ------------------------ | -------- | ----------------- |
| errors [*required*] | [string] | A list of errors. |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    "Bad Request"
  ]
}
```

{% /tab %}

{% /tab %}

{% tab title="500" %}
Internal Server Error
{% tab title="Model" %}
API error response.

| Parent field | Field                    | Type     | Description                                                                     |
| ------------ | ------------------------ | -------- | ------------------------------------------------------------------------------- |
|              | errors [*required*] | [object] | A list of errors.                                                               |
| errors       | detail                   | string   | A human-readable explanation specific to this occurrence of the error.          |
| errors       | meta                     | object   | Non-standard meta-information about the error                                   |
| errors       | source                   | object   | References to the source of the error.                                          |
| source       | header                   | string   | A string indicating the name of a single request header which caused the error. |
| source       | parameter                | string   | A string indicating which URI query parameter caused the error.                 |
| source       | pointer                  | string   | A JSON pointer to the value in the request document that caused the error.      |
| errors       | status                   | string   | Status code of the response.                                                    |
| errors       | title                    | string   | Short human-readable summary of the error.                                      |

{% /tab %}

{% tab title="Example" %}

```json
{
  "errors": [
    {
      "detail": "Missing required attribute in body",
      "meta": {},
      "source": {
        "header": "Authorization",
        "parameter": "limit",
        "pointer": "/data/attributes/title"
      },
      "status": "400",
      "title": "Bad Request"
    }
  ]
}
```

{% /tab %}

{% /tab %}

### Code Example

##### 
                  \# Path parameters export experiment_id="3fd6b5e0-8910-4b1c-a7d0-5b84de329012" \# Curl command curl -X GET "https://api.datadoghq.com/api/v2/llm-obs/v3/experiments/${experiment_id}/events" \
-H "Accept: application/json" \
-H "DD-API-KEY: ${DD_API_KEY}" \
-H "DD-APPLICATION-KEY: ${DD_APP_KEY}" 
                
{% /tab %}
