# Obtener conversaciones del assistant (/es/api/analytics/assistant-conversations)

<!-- agent-signals: reading_time_min: 5 · est_tokens: 2570 · updated: 2026-09-23 -->
Related: [Obtener comentarios](/es/api/analytics/feedback.md), [Obtener comentarios por página](/es/api/analytics/feedback-by-page.md), [Obtener hilo de conversación del assistant](/es/api/analytics/assistant-thread.md), [Obtener estadísticas de llamadas del assistant](/es/api/analytics/assistant-caller-stats.md), [Obtener consultas de búsqueda](/es/api/analytics/searches.md), [Obtener vistas de página](/es/api/analytics/views.md)

<div id="usage">
  ## Uso [#uso]
</div>

Utiliza este endpoint para exportar el historial de conversaciones del Asistente de IA desde tu documentación. Cada conversación incluye la búsqueda del usuario, la respuesta del Asistente de IA, las fuentes citadas, el estado de resolución y la categoría de la búsqueda.

Pagina los resultados usando el parámetro `cursor` devuelto en la respuesta. Continúa obteniendo resultados mientras `hasMore` sea `true`.

<div id="filtering">
  ## Filtrado [#filtrado]
</div>

Filtra conversaciones por intervalo de fechas usando los parámetros `dateFrom` y `dateTo`.

<div id="conversation-data">
  ## Datos de conversación [#datos-de-conversación]
</div>

Cada fila representa un turno del usuario en una conversación. Una conversación con varios intercambios genera varias filas que comparten el mismo `conversationId`.

Cada fila incluye:

* **query**: La pregunta del usuario.
* **response**: La respuesta del assistant. En los turnos de pregunta aclaratoria, es la pregunta de seguimiento que el assistant le hizo al usuario.
* **responseType**: `answer` o `clarifying_question`. `clarifying_question` indica que el assistant hizo una pregunta de seguimiento en lugar de responder. Su valor predeterminado es `answer` cuando no está presente.
* **sources**: Páginas a las que se hace referencia en la respuesta, con título y URL.
* **resolutionStatus**: Indica si el assistant respondió correctamente a este turno. Puede ser `answered` o `unanswered`. Se calcula por fila, por lo que una misma conversación puede contener ambos estados. Usa este campo para identificar y analizar lagunas en la documentación detectadas a partir de preguntas de usuarios que el assistant no pudo resolver.
* **timestamp**: Cuándo el usuario envió el mensaje que inició este turno. Las filas de la misma conversación tienen marcas de tiempo distintas.
* **queryCategory**: Clasificación del tipo de búsqueda, si está disponible.
* **pageUrl**: URL completa de la página de documentación donde se inició la conversación, o `null` si no hay ninguna ruta de página disponible. Usa este campo para atribuir conversaciones a una página específica.

## Límites de uso [#límites-de-uso]

Este endpoint permite 100 solicitudes por organización por hora. Todos los endpoints de analytics comparten este límite.

`GET /v1/analytics/{projectId}/assistant`

Devuelve el historial paginado de conversaciones del Asistente de IA

Autentícate con una clave de API de administrador.

## OpenAPI

```json
{
  "security": [
    {
      "bearerAuth": []
    }
  ],
  "parameters": [
    {
      "schema": {
        "type": "string",
        "description": "Tu ID de proyecto. Puedes copiarlo desde la página [API keys](https://dashboard.mintlify.com/settings/organization/api-keys) en tu dashboard."
      },
      "required": true,
      "name": "projectId",
      "in": "path"
    },
    {
      "schema": {
        "type": "string",
        "description": "Fecha en formato ISO 8601 o AAAA-MM-DD",
        "example": "2024-01-01"
      },
      "required": false,
      "name": "dateFrom",
      "in": "query"
    },
    {
      "schema": {
        "type": "string",
        "description": "Fecha en formato ISO 8601 o AAAA-MM-DD. `dateTo` es un límite superior exclusivo. Los resultados incluyen fechas anteriores, pero no la fecha especificada.",
        "example": "2024-01-01"
      },
      "required": false,
      "name": "dateTo",
      "in": "query"
    },
    {
      "schema": {
        "type": "number",
        "minimum": 1,
        "maximum": 1000,
        "default": 100,
        "description": "Número máximo de resultados por página"
      },
      "required": false,
      "name": "limit",
      "in": "query"
    },
    {
      "schema": {
        "type": "string",
        "format": "ulid",
        "description": "Cursor de paginación (formato ULID)"
      },
      "required": false,
      "name": "cursor",
      "in": "query"
    }
  ],
  "responses": {
    "200": {
      "description": "Datos de conversación paginados",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "conversations": {
                "type": "array",
                "description": "Lista de conversaciones del assistant.",
                "items": {
                  "type": "object",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Identificador único de la conversación."
                    },
                    "timestamp": {
                      "type": "string",
                      "description": "Marca de tiempo del mensaje del usuario que inició este turno."
                    },
                    "query": {
                      "type": "string",
                      "description": "La pregunta del usuario para el assistant."
                    },
                    "response": {
                      "type": "string",
                      "description": "La respuesta del assistant. En los turnos de pregunta aclaratoria, es la pregunta que el assistant le hizo al usuario."
                    },
                    "responseType": {
                      "type": "string",
                      "enum": [
                        "answer",
                        "clarifying_question"
                      ],
                      "description": "Tipo de respuesta devuelta al usuario. `answer` es una respuesta final. `clarifying_question` indica que el assistant hizo una pregunta de seguimiento al usuario en lugar de responder. El valor predeterminado es `answer` cuando no está presente."
                    },
                    "sources": {
                      "type": "array",
                      "description": "Páginas de la documentación mencionadas en la respuesta.",
                      "items": {
                        "type": "object",
                        "properties": {
                          "title": {
                            "type": "string",
                            "description": "Título de la página de documentación mencionada."
                          },
                          "url": {
                            "type": "string",
                            "description": "URL de la página de documentación mencionada."
                          }
                        },
                        "required": [
                          "title",
                          "url"
                        ]
                      }
                    },
                    "queryCategory": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "Categoría de agrupación asignada automáticamente a la conversación, si corresponde."
                    },
                    "pageUrl": {
                      "type": [
                        "string",
                        "null"
                      ],
                      "description": "URL completa de la página de documentación donde se inició la conversación. Es null si no se capturó ninguna ruta de página."
                    }
                  },
                  "required": [
                    "id",
                    "timestamp",
                    "query",
                    "response",
                    "sources",
                    "queryCategory",
                    "pageUrl"
                  ]
                }
              },
              "nextCursor": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Cursor para obtener la siguiente página de resultados. Es nulo si no hay más resultados."
              },
              "hasMore": {
                "type": "boolean",
                "description": "Indica si hay resultados adicionales más allá de esta página."
              }
            },
            "required": [
              "conversations",
              "nextCursor",
              "hasMore"
            ]
          }
        }
      }
    },
    "400": {
      "description": "Parámetros de búsqueda no válidos",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "string",
                "description": "Mensaje de error que describe lo que salió mal."
              },
              "details": {
                "type": "array",
                "description": "Detalles adicionales del error.",
                "items": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string",
                      "description": "Descripción de un error específico de validación o procesamiento."
                    }
                  },
                  "required": [
                    "message"
                  ]
                }
              }
            },
            "required": [
              "error"
            ]
          }
        }
      }
    },
    "500": {
      "description": "Error del servidor",
      "content": {
        "application/json": {
          "schema": {
            "type": "object",
            "properties": {
              "error": {
                "type": "string",
                "description": "Mensaje de error que describe lo que salió mal."
              },
              "details": {
                "type": "array",
                "description": "Detalles adicionales del error.",
                "items": {
                  "type": "object",
                  "properties": {
                    "message": {
                      "type": "string",
                      "description": "Descripción de un error específico de validación o procesamiento."
                    }
                  },
                  "required": [
                    "message"
                  ]
                }
              }
            },
            "required": [
              "error"
            ]
          }
        }
      }
    }
  }
}
```
