Render Report Download URL
render_reportReturn a 15-minute presigned download URL for a report in the requested binary format.
format=md presigns the cached markdown — instant, no compute. format=docx and format=pdf return the SAME branded research-note design in the two media: a masthead-first page 1 (Valuein letterhead — brand rule, wordmark, 'EQUITY RESEARCH' kicker + date), the ticker eyebrow and title, the named analyst's byline, then the body (abstract, sections with full markdown incl. GFM tables, citations table with clickable SEC EDGAR links) and a running footer (ticker, 'Built on Valuein · valuein.biz', page N of M, one disclosure line). The PDF embeds the Geist brand faces with figures set in tabular mono. Binary renders are cached in R2 after first build so repeat downloads are instant; pass force_regenerate: true to bust the cache (e.g. right after update_report).
Tier gate mirrors get_report: authors always see their own reports; non-authors below the report's required tier get an upgrade prompt.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| format | Yes | md = raw markdown (the same body the editor renders). docx = branded Word document; pdf = the same branded research-note design as a shareable PDF (Geist faces embedded, clickable citation links). | |
| report_id | Yes | Id from create_report or list_my_reports. | |
| author_name | No | Display name of the report's author, shown as a named byline ('By {name}') on the masthead — the way a real research note credits an analyst. Omit to show 'Valuein Research'. Only affects the binary formats; ignored on a cache hit (the cached file keeps whatever byline was baked in on first render — pass `force_regenerate: true` to refresh it). | |
| force_regenerate | No | If true, ignore the cached DOCX/PDF and re-render. No effect on md (markdown is canonical). |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| _meta | Yes | Provenance envelope — data lineage for every MCP response | |
| format | Yes | ||
| filename | Yes | ||
| expires_at | Yes | ||
| from_cache | Yes | ||
| size_bytes | Yes | ||
| content_type | Yes | ||
| expires_in_seconds | Yes |