Cómo consultar la API topics_with_no_response.json con filtros

Sé que para cada informe de administrador, hay una API .json para obtener los datos. El informe que me interesa es topics_with_no_response y pude filtrar por categoría a través de https://xxx.com/admin/reports/topics_with_no_response?end_date=2023-06-16&filters=%7B%22category%22%3A7%2C%22include_subcategories%22%3Atrue%7D&mode=table&start_date=2023-06-14. Sin embargo, si cambié al punto final json a través de https://xxx.com/admin/reports/topics_with_no_response.json?end_date=2023-06-16&filters=%7B%22category%22%3A7%2C%22include_subcategories%22%3Atrue%7D&mode=table&start_date=2023-06-14, no devuelve los datos.

¿Tenemos una sintaxis diferente para consultar estos dos puntos finales?

Por alguna extraña razón, necesitas usar POST en lugar de GET.

Hola @RGJ,

¿Podrías darme un ejemplo de la solicitud POST? ¿Cuál debería ser el cuerpo? Intenté cambiar GET por POST con la misma URL, pero parece que no funciona.

Obviamente, deberá pasar los parámetros de consulta (es decir, todo lo que sigue al ?) como datos POST.

Consulte también Run Data Explorer queries with the Discourse API

Cuando cambié a POST y pasé todos los parámetros de consulta como datos POST, obtuve “Página no encontrada”. Sin embargo, pude usar POST para ejecutar consultas del explorador de datos. ¿Tienes alguna idea? ¡Gracias!

Echa un vistazo a Ingeniería inversa de la API de Discourse. Cuando intento ese enfoque para el informe de Temas sin respuesta, veo que realiza solicitudes GET similares a:\n\nhttp://forum.example.com/admin/reports/bulk?reports%5Btopics_with_no_response%5D%5Bfacets%5D%5B%5D=prev_period&reports%5Btopics_with_no_response%5D%5Bstart_date%5D=2022-02-01&reports%5Btopics_with_no_response%5D%5Bend_date%5D=2023-06-17&reports%5Btopics_with_no_response%5D%5Blimit%5D=50\n\nPuedes obtener los parámetros de consulta codificados de la pestaña Red del inspector de tu navegador. Con esa URL, deberías poder hacer algo como:\n\n\ncurl -X GET \"http://localhost:4200/admin/reports/bulk.json?reports%5Btopics_with_no_response%5D%5Bfacets%5D%5B%5D=prev_period&reports%5Btopics_with_no_response%5D%5Bstart_date%5D=2022-05-16&reports%5Btopics_with_no_response%5D%5Bend_date%5D=2022-09-10&reports%5Btopics_with_no_response%5D%5Blimit%5D=50\" \\\n-H \"Api-Key: $api_key\" \\\n-H \"Api-Username: system\"\n\n\nNecesitarás configurar api_key como una clave API global para todos los usuarios; no creo que haya un ámbito específico que se pueda usar para los informes.\n\nTen en cuenta que necesitas añadir la extensión json a la URL (http://localhost:4200/admin/reports/bulk.json)

1 me gusta

Gracias @simon, ¡eso funciona!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.