Discourse core now includes Markdown endpoints for topic lists and views

Thanks for the guidance. Here’s the response on that:

  • X-Discourse-Route: topics/show: Shows the internal Discourse (Ruby on Rails) controller/action processing the topic.
  • X-Runtime: 0.133969: The time the application took to generate the response (approx. 133ms).
  • Cf-Ray: ...-GRU: Request served by the Cloudflare edge in Guarulhos/São Paulo (GRU).
  • Cf-Cache-Status: DYNAMIC and Cache-Control: no-cache, no-store: Dynamic content that does not get stuck in edge caches.
  • Inspecting the standard HTML URL without .json, the server responds with:
    • Link: <https://segredin.com/t/conselhos-duvidosos/22054.md>; rel="alternate"; type="text/markdown"
    • X-Discourse-Crawler-View: true (indicating that Discourse also provides a clean .md / native Markdown version for crawlers and readers).

The Link header indicating the alternate version: Link: <https://segredin.com/t/conselhos-duvidosos/22054.md>; rel="alternate"; type="text/markdown"

It returns Vary: Accept from the origin, independent of external DNS-level functions.

If the request opts to make a request without .json, it will return .md as the default conversion.

HTTP/1.1 200 OK
Content-Type: text/markdown
Vary: Accept

I was unsure because I received 123k requests from Claude, and most of them, since I updated Discourse with this core feature, have not spiked vertically. I will monitor this over the coming weeks.