Filtrar el índice de Docs por consulta
Devuelve el índice de docs filtrado por el parámetro de consulta q. Las rutas pública y autenticada de docs usan las mismas reglas de filtrado; la ruta autenticada solo añade el requisito de inicio de sesión de la API de la app.
En este artículo
Usa esta guía cuando necesites que el índice JSON de docs demuestre que el servidor aplicó un término de búsqueda antes de que el índice llegase a un consumidor de documentación.
Los prefijos de docs público y de la app comparten el mismo constructor de índice y la misma lógica de coincidencia. La búsqueda visible de Docs en la wiki de la landing y en la app nativa filtra localmente el índice ya cargado, así que usa capturas de la API JSON como evidencia del filtrado por q.
Antes de empezar
- Usa una ruta de índice sin artículo ni ruta de asset después de docs: /api/public/docs o /api/app/docs.
- Usa GET cuando necesites el cuerpo JSON del índice filtrado. El handler acepta HEAD pero no devuelve ese cuerpo.
- Asegúrate de que el servicio de contenido de docs puede cargar articles.json desde DOCS_CONTENT_PATH o desde la ruta de contenido por defecto.
- Usa /api/app/docs solo desde una petición autenticada de la API de la app, como la sesión del usuario demo en el runtime demo de ES.
- Para capturas de ES, usa locale=es o locale=es-ES y proporciona DOCS_API_BASE_URL al ejecutor de capturas.
Instrucciones
- 1.
Elige la ruta del índice de docs
Usa GET /api/public/docs para una comprobación de índice filtrado sin autenticación. Usa GET /api/app/docs solo cuando necesites mostrar el mismo filtrado detrás de la autenticación de la app. No añadas slug de artículo ni segmento assets, porque el filtrado por q solo aplica a la ruta de índice.
- 2.
Fija el locale y la consulta
Para el contexto del manual de ES, solicita locale=es o locale=es-ES. Los locales en español se normalizan a es. Pon el término de búsqueda en q, por ejemplo reserva para la comprobación de docs públicos o tpv para la comprobación autenticada de docs de la app.
- 3.
Solicita el índice filtrado
Envía la petición GET y espera la respuesta JSON. El handler carga el bundle de contenido de docs antes de aplicar las opciones de la petición y el filtro q.
- 4.
Comprueba el resumen de la respuesta
Confirma que la respuesta incluye version, locale, platform, query, article_count y sections. Cada sección contiene resúmenes de artículo, no el detalle completo. Una consulta sin coincidencias sigue devolviendo 200 OK con article_count a 0 y un array sections vacío.
- 5.
Interpreta las reglas de coincidencia
El servicio filtra primero por locale y después hace una coincidencia simple de subcadena sin distinguir mayúsculas sobre los campos de texto implementados del artículo. Es una búsqueda global de docs sobre los artículos empaquetados, no un filtro de datos de Grupo Marea Demo, Marea Gran Via, roles, reservas, TPV, catálogo ni ubicaciones.
- 6.
Separa el filtrado de la API de la búsqueda visible
Usa las capturas de la API JSON como evidencia del filtrado por q en el servidor. Las cajas de búsqueda actuales de la Wiki de la landing y de Documentación nativa filtran localmente el índice ya cargado y no envían q en sus peticiones de índice.
Validaciones y límites
- El handler compartido de docs solo acepta GET y HEAD; el resto de métodos devuelven 405 metodo no permitido.
- El prefijo público no requiere usuario autenticado; el prefijo de la app debe superar la autenticación de la API de la app antes de que se ejecute el filtrado de docs.
- Si q está ausente o queda vacío tras recortar, el índice se filtra solo por locale y el campo query se omite del JSON.
- q solo se recorta; no hay soporte de longitud, caracteres, tokens, sintaxis, fuzzy, stemming, ranking, paginación, resaltado ni plegado de acentos.
- locale, platform o device y theme se normalizan en lugar de rechazarse; es-ES se normaliza a es y los locales no soportados caen a es.
- Los campos buscables son ID, SourceGuideID, ActionID, PrimaryKeyword, Category, Title, Summary, Result, Intro, Prerequisites, Validations y el Title y Description de cada paso.
- article_count se recalcula a partir de los artículos de las secciones filtradas.
- La superficie de búsqueda visible de /docs es solo contexto de apoyo y no debe presentarse como prueba de que q se envió al servidor.
Resultado esperado
Tienes un docsIndexResponse localizado cuyos query, article_count y sections reflejan el filtro q aplicado en el servidor para el locale y el prefijo seleccionados.