Saltar al contenido principal
POST
Consulta personalizada de analíticas

Descripción general

La API de analíticas personalizadas permite hacer consultas flexibles sobre datos de autocompletado, chat y Command, con selecciones, filtros, agregaciones y criterios de ordenación personalizables.

Solicitud

service_key
string
requerido
Tu clave de servicio con permisos de “Analytics Read”
group_name
string
Filtra los resultados para mostrar solo los usuarios de un grupo específico (opcional)
query_requests
array
requerido
Array de objetos de solicitud de consulta que definen los datos que se van a recuperar

Estructura de la solicitud de consulta

Cada objeto de solicitud de consulta contiene:
  • data_source (obligatorio): fuente de datos que se va a consultar
  • selections (obligatorio): array de selecciones de campos que se van a recuperar
  • filters (opcional): array de filtros que se van a aplicar
  • aggregations (opcional): array de agregaciones para agrupar por

Selecciones

Las selecciones definen qué campos obtener y cómo agregarlos.
  • field (obligatorio): Nombre del campo que se va a seleccionar
  • name (opcional): Alias del campo
  • aggregation_function (opcional): Función de agregación que se va a aplicar

Ejemplo de selección

Filtros

Los filtros permiten limitar los datos a los elementos que cumplen criterios específicos.
  • name (obligatorio): Nombre del campo por el que filtrar
  • filter (obligatorio): Operación de filtro
  • value (obligatorio): Valor con el que comparar

Ejemplo de filtro

Agregaciones

Las agregaciones agrupan los datos según los criterios especificados.
  • field (obligatorio): Nombre del campo por el que se agrupan los datos
  • name (obligatorio): Alias del campo de agregación

Ejemplo de agregación

Campos disponibles

Datos del usuario

Todos los datos del usuario se agregan por usuario y por hora.

Datos del chat

Los datos del chat están separados de los datos de Cascade y representan el uso de nuestros plugins heredados no basados en agentes
Todos los datos del chat representan respuestas del modelo de chat, no preguntas del usuario.

Tipos de intención del chat

  • CHAT_INTENT_GENERIC - Chat normal
  • CHAT_INTENT_FUNCTION_EXPLAIN - code lens de explicación de la función
  • CHAT_INTENT_FUNCTION_DOCSTRING - code lens del docstring de la función
  • CHAT_INTENT_FUNCTION_REFACTOR - code lens de refactorización de la función
  • CHAT_INTENT_CODE_BLOCK_EXPLAIN - code lens de explicación del bloque de código
  • CHAT_INTENT_CODE_BLOCK_REFACTOR - code lens de refactorización del bloque de código
  • CHAT_INTENT_PROBLEM_EXPLAIN - code lens de explicación del problema
  • CHAT_INTENT_FUNCTION_UNIT_TESTS - code lens de pruebas unitarias de la función

Datos de Command

Los datos de Command incluyen todos los comandos, incluidos los rechazados. Usa el campo accepted para filtrar únicamente los comandos aceptados.

Fuentes de Command

  • COMMAND_REQUEST_SOURCE_LINE_HINT_CODE_LENS
  • COMMAND_REQUEST_SOURCE_DEFAULT - Uso típico de Command
  • COMMAND_REQUEST_SOURCE_RIGHT_CLICK_REFACTOR
  • COMMAND_REQUEST_SOURCE_FUNCTION_CODE_LENS
  • COMMAND_REQUEST_SOURCE_FOLLOWUP
  • COMMAND_REQUEST_SOURCE_CLASS_CODE_LENS
  • COMMAND_REQUEST_SOURCE_PLAN
  • COMMAND_REQUEST_SOURCE_SELECTION_HINT_CODE_LENS

Fuentes del proveedor

  • PROVIDER_SOURCE_COMMAND_GENERATE - Modo de generación
  • PROVIDER_SOURCE_COMMAND_EDIT - Modo de edición

Datos de PCW

Datos del porcentaje de código escrito, con seguimiento independiente de las contribuciones de autocompletado y de Command.

Filtros de PCW

Para filtrar por fecha en las consultas de PCW, usa start_timestamp y end_timestamp en el cuerpo principal de la solicitud.

Ejemplos de peticiones

Ejemplo de datos de usuario

Ejemplo de datos del chat

Ejemplo de datos para Command

Ejemplo de datos de PCW

Respuesta

queryResults
array
Array de resultados de consulta, uno por cada solicitud de consulta
responseItems
array
Array de elementos de resultado
item
object
Objeto que contiene los campos seleccionados y sus valores

Ejemplos de respuesta

Respuesta de datos del usuario

Respuesta de datos del chat

Respuesta de datos de Command

Respuesta de datos PCW

Notas importantes

  • PCW (Percent Code Written) presenta una alta variabilidad en un mismo día o entre usuarios; agrupa los datos por semanas para obtener mejores resultados
  • Todos los campos de selección deben tener funciones de agregación, o ninguno debe tenerlas (no se pueden mezclar)
  • Los campos con el patrón “distinct_*” no se pueden usar en agregaciones
  • Los alias de los campos deben ser únicos en todas las selecciones y agregaciones
  • Si no se especifica ninguna función de agregación, el valor predeterminado es UNSPECIFIED