Obtén análisis del centro de ayuda con la API Notiondesk

Exporta los análisis del centro de ayuda Notiondesk a través de la API REST: visitantes, visualizaciones de artículos, búsquedas principales, búsquedas sin resultados y reacciones de los lectores.

6 min de lectura

La API Notiondesk te proporciona los datos que respaldan las páginas de análisis de tu centro de ayuda: visitantes, visualizaciones de artículos, tiempo de permanencia en la página, países, búsquedas de los lectores, búsquedas sin resultados y reacciones de los lectores a tus artículos. Úsala para alimentar una herramienta de inteligencia empresarial, publicar un informe semanal en Slack o encontrar el contenido que tus lectores no están viendo.

GET /sites/{site_id}/analytics/{report}
reportContiene
quickResumen de 30 días: artículos, visitantes, búsquedas y reacciones.
overviewVisitantes, visualizaciones de artículos, tiempo de permanencia en la página y principales países
searchBúsquedas, consultas principales, búsquedas sin resultados y tasa de clics.
engagementVisualizaciones de artículos, artículos más populares, fuentes de referencia, reacciones y artículos para revisar

Cada informe necesita el ámbito read. Para ver estos números en el panel de control, consulte Cómo mejorar su centro de ayuda con información sobre los lectores .

Obtén un resumen de 30 días

quick abarca los últimos 30 días hasta la fecha y no requiere ningún parámetro de consulta. articles contabiliza todos los artículos del centro de ayuda, incluidos los borradores. reactions contabiliza la última reacción de cada lector por artículo.

Obtenga un informe para un rango de fechas.

overview, search y engagement toman un rango de fechas y un tamaño de cubo:

curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/analytics/quick" \
  -H "Authorization: Bearer $NOTIONDESK_API_KEY" \
  -H "nd-version: 2026-10-16"
{
  "articles": 42,
  "visitors": 25,
  "searches": 9,
  "reactions": 4
}
Parámetro Requerido Notas
start_dateSí El primer instante del rango, como 2026-09-01T00:00:00Z
end_dateSí El final del rango, excluido. Debe ser posterior a start_date
date_scaleSí Tamaño del intervalo de la serie temporal: minute, hour, day, week, month o year
timezoneNo Una zona horaria de IANA que establece límites de cubos, como Europe/Paris. Valor predeterminado: UTC
curl "https://api.notiondesk.so/sites/c74781f6-1aea-4e17-ab23-bbb8b4d174b6/analytics/search?start_date=2026-09-01T00:00:00Z&end_date=2026-10-01T00:00:00Z&date_scale=week&timezone=Europe/Paris" \
  -H "Authorization: Bearer $NOTIONDESK_API_KEY" \
  -H "nd-version: 2026-10-16"

Reglas para el campo de tiro:

  • Las fechas usan YYYY-MM-DDTHH:MM[:SS] con un desplazamiento opcional. Sin desplazamiento, la fecha se lee en UTC, no en timezone. Escriba + como %2B en la URL, o use Z.
  • El periodo comienza el 1 de enero de 2020 o después de esa fecha y finaliza como máximo dentro de dos días.
  • Como máximo 1000 cubos. Por ejemplo, minute cubre como máximo 16 horas y hour como máximo 41 días. Utilice un valor más amplio, date_scale, para rangos más largos.
  • Las semanas comienzan el lunes.

Cada informe compara su rango con el período de la misma duración justo antes: previous y total_previous describen ese período anterior.

Serie de recuento

visitors, article_views y searches comparten una forma:

{
  "total": 12,
  "total_previous": 8,
  "difference": 4,
  "percentage_difference": 50.0,
  "current": [{"date": "2026-09-14", "count": 7}, {"date": "2026-09-15", "count": 5}],
  "previous": [{"date": "2026-08-20", "count": 8}]
}
  • current y previous enumeran solo los buckets que tienen datos, del más antiguo al más reciente.
  • El date de un cubo es cuando comienza, en timezone: YYYY-MM-DD para day y más grueso, YYYY-MM-DDTHH:MM para hour y minute.
  • percentage_difference es 0.0 cuando el total anterior es 0.

overview

Campo Significado
visitorsSerie de recuento. total son visitantes distintos en el rango, no la suma de los puntos.
article_viewsContar la serie de visitas a la página del artículo
session_durationsTiempo que los lectores pasan en una página, en segundos: average_seconds, y current y previous listas de {date, seconds}
top_countriesHasta 10 países: country (código ISO), country_name y visitors

search

Campo Significado
searchesContar series de búsquedas
searches_with_resultsTotales y una lista queries: query, searches, clicks, articles_shown, click_through_rate y avg_click_position
searches_without_resultsTotales y una lista queries: query y searches
click_through_ratePorcentaje de búsquedas cuyos resultados generaron un clic: current, previous, difference y percentage_difference
{
  "searches_without_results": {
    "total": 3,
    "total_previous": 0,
    "difference": 3,
    "percentage_difference": 0.0,
    "queries": [{"query": "refund policy", "searches": 3}]
  }
}
Nota: este es tu backlog de contenido: cada consulta es una pregunta que los lectores hicieron y que tu centro de ayuda no pudo responder. searches_without_results.queries

engagement

Campo Significado
__PRESERVADO_67__, __PRESERVADO_66__ views, articles_to_revise y un reaction_summary para cada período
article_viewsContar la serie de visitas a la página del artículo
top_articlesLos artículos más vistos: title, host, pathname y views
top_referrersDe dónde procedían los visitantes: referrer (null para una visita directa) y visitors
article_engagementsLos artículos que recibieron la reacción más positiva por parte de los lectores fueron: title, url, views y reaction_summary.
articles_to_reviseLos artículos que generaron las reacciones más negativas entre los lectores, con los mismos campos.

A reaction_summary sigue tu estilo de reacción:

score va de 0 a 100: la proporción de reacciones positivas, con una reacción neutral que cuenta la mitad bajo emoji. Con el estilo thumbs, los grupos son helpful y not_helpful. Consulta Cómo recopilar comentarios con reacciones a artículos .

Límites de la lista

{
  "style": "emoji",
  "total": 6,
  "score": 58,
  "groups": [
    {"key": "positive", "count": 3, "percent": 50},
    {"key": "neutral", "count": 1, "percent": 17},
    {"key": "negative", "count": 2, "percent": 33}
  ]
}
  • Las listas de consulta top_articles, top_referrers, article_engagements y articles_to_revise contienen hasta 50 filas cada una y abarcan únicamente el período actual. Una lista de 50 filas puede estar incompleta: reduzca el rango para ver todas las filas.
  • Los totales abarcan todo, no solo las filas indicadas.
title, , , , y provienen de los navegadores de los visitantes, y cualquiera puede falsificarlas. Evítalas antes de mostrarlas y nunca las sigas ni actúes en consecuencia sin verificarlas.urlhostpathnamereferrerquery

Análisis y su plan

El acceso a la API requiere un plan Enterprise, que incluye análisis avanzados, por lo que cada informe acepta cualquier rango y escala dentro de 1000 intervalos.

Límite de tasa

Además de las 120 lecturas por minuto de tu clave, los informes de análisis se contabilizan dentro de un presupuesto de 30 solicitudes por minuto por centro de ayuda , compartido por cada clave y aplicación OAuth de tu espacio de trabajo. Una solicitud a través de ella responde con el código 429 rate_limited, y su encabezado Retry-After indica cuándo reintentar. Almacena en caché los informes en lugar de solicitarlos en cada carga de página.

Errores

Estado Cuandocode
400 Falta un parámetro, está mal formado o es desconocido, quick recibió un parámetro o falla una regla de rango. La lista errors nombra el parámetro y la regla.validation_error
403 La clave carece del ámbito readinsufficient_scope
403 Las analíticas están desactivadas para el centro de ayuda.permission_denied
404 report no es uno de los cuatro informes, o el centro de ayuda no existe en su espacio de trabajo.not_found
429 El presupuesto de análisis del centro de ayuda se gastarate_limited
503 El servicio de análisis no respondió. Inténtelo de nuevo o reduzca el rango.internal_error

Consulte el manejo de errores de API, límites de velocidad y reintentos de Notiondesk .

Preguntas frecuentes

¿Cómo puedo encontrar lo que los lectores buscan pero no encuentran?

Llama al informe search y lee searches_without_results.queries. Cada entrada es una consulta que no devolvió ningún artículo, con la cantidad de veces que se buscó.

¿Por qué mi informe responde 400 sobre dateScale?

El rango contiene más de 1000 cubetas en su date_scale. Use una escala más amplia, como day en lugar de hour, o un rango más corto. El mensaje dice dateScale, pero el parámetro es date_scale.

¿Por qué se corta una lista a las 50 filas?

Las listas admiten hasta 50 filas. Divide un rango largo en rangos más cortos para ver más consultas o artículos.

¿Puedo obtener estadísticas para un artículo?

Los informes abarcan todo el centro de ayuda. El número de visualizaciones y las reacciones de cada artículo también aparecen en la lista de artículos , como views_count y reactions_percent.

¿Qué sigue?

Artículos relacionados

¿Fue útil esta página?

Still need help? Ask us