Get pitch report payload
get_pitch_report_payloadAssemble the client-ready pitch report payload for a completed research run — niche + solution profile, competitor landscape, ranked opportunity map holding GAPS ONLY (0-100 normalized; demand sized as volumeBucket buckets, no search-volume numbers by design; each entry carries overlapStatus net_new|partial plus siteOverlap — covered-keyword share + closest owned pages), coveredOpportunities as a separate defend-and-refresh list (topics the site already covers — never pitch these as new work), and a derived 90-day content sequence sized to the project posting cadence (postsPerWeek, up to 12 weeks; planned articles first, then gap topics marked type: topic — topics to develop, not article titles; covered clusters never enter the sequence; entries may carry advisory notes — near-duplicates, already-published near-matches, working titles needing a rewrite — keep the notes visible when rendering). assetProfile reports when the profile facts were last synced; when assetProfile.syncedBeforeRun is true, offer the operator the choice between resync_asset_profile first and rendering with the profile as-is, and always render the "Asset profile last synced " stamp. renderGuide carries the full report structure with an explicit branding slot: render it in the operator’s own template (Docs, Slides, Notion, or PDF) under the operator’s name. Included with every run, no extra cost. Pass the runId from get_research_status; a run that is not completed returns { runStatus, report: null }.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| runId | Yes |