← All updates

Browseable render history

A new /settings/renders page lists every PDF you've rendered in the last 7 days with a one-click download — and the same list is available to API callers at GET /api/v1/artifacts.

uiapiartifacts

If a download missed, a tab closed, or you just want the PDF you rendered ten minutes ago, you no longer have to re-render to get it back.

What's new

/settings/renders lists your recent render artifacts — date, source endpoint (/md, /preview, /render), template name (for stored-template renders), page count, byte size, and how long until the artifact expires. Each row has a Download link that streams the original PDF straight from R2.

The same data is available programmatically at GET /api/v1/artifacts. It accepts kind (filter by source endpoint), templateId (filter to one stored template), and limit / offset. Owner-scoped, paginated, rate-limited at 500 requests / hour. Pair it with the existing GET /api/v1/artifacts/:id/pdf to fetch the bytes.

Why now

We already captured every successful render under an X-Artifact-Id so issue reports could reference it, and the existing /settings/usage page surfaced the metadata for credit auditing. What was missing was the simple "give me the PDF back" affordance — useful for the new "Try it now" button on /ai/chat (which auto-downloads but can race a closing tab), and for API consumers that want to revisit a render without keeping the response body themselves.

Retention

Artifacts are kept for 7 days by default. Filing an issue report against a render extends retention on that artifact to 30 days so we can reproduce the bug. Both numbers are visible on each row.