{"openapi":"3.1.0","jsonSchemaDialect":"https://json-schema.org/draft/2020-12/schema","info":{"title":"AI News Public API","version":"1.0.0","x-service-version":"20261030T144321Z-bb47dd3a9397","description":"Read-only access to content already released through the Publication boundary. Requests never invoke models, collectors, workers, or writes."},"servers":[{"url":"https://news.farwalk.ai"}],"security":[],"tags":[{"name":"News","description":"Released public news items and search."},{"name":"Stories","description":"Canonical public story clusters."},{"name":"Hot","description":"Precomputed public Hot ranking snapshots."},{"name":"Reports","description":"Current reports with public supporting publications."},{"name":"Topics","description":"Topics derived from eligible public publications."},{"name":"Codex Reset","description":"Tibo Codex reset announcements and derived presentation state."},{"name":"Agent","description":"Human-readable discovery guidance for read-only agent access."}],"paths":{"/api/v1/news":{"get":{"operationId":"listNews","tags":["News"],"summary":"List public news","parameters":[{"name":"feed","in":"query","description":"Select the editorial feed or all eligible public publications.","required":false,"schema":{"type":"string","enum":["selected","all"],"default":"selected"}},{"name":"q","in":"query","description":"Optional public-content search applied within this news listing.","required":false,"schema":{"type":"string","minLength":2,"maxLength":200}},{"name":"channel","in":"query","description":"Optional first-party source filter.","required":false,"schema":{"type":"string","enum":["all","firstParty"]}},{"name":"category","in":"query","description":"Optional public content category.","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"source","in":"query","description":"Filter by stable source slug, with a public source-name compatibility fallback.","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"topic","in":"query","description":"Filter by a public topic slug.","required":false,"schema":{"$ref":"#/components/schemas/TopicSlug"}},{"name":"from","in":"query","description":"Inclusive lower bound for the publication timeline.","required":false,"schema":{"$ref":"#/components/schemas/DateTime"}},{"name":"to","in":"query","description":"Inclusive upper bound for the publication timeline.","required":false,"schema":{"$ref":"#/components/schemas/DateTime"}},{"$ref":"#/components/parameters/CursorQuery"},{"name":"page","in":"query","description":"Numbered page for website navigation; mutually exclusive with cursor.","required":false,"schema":{"type":"integer","minimum":1}},{"name":"limit","in":"query","description":"Maximum news items to return.","required":false,"schema":{"type":"integer","minimum":1,"maximum":200,"default":20}},{"name":"archive","in":"query","description":"Accepted compatibility flag; it does not relax the Publication visibility boundary.","required":false,"schema":{"type":"string","enum":["0","1"]}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"A page of public news.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V1NewsListResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/news/{publicId}":{"get":{"operationId":"getNewsItem","tags":["News"],"summary":"Get a public news item","parameters":[{"name":"publicId","in":"path","description":"Public news identifier.","required":true,"schema":{"$ref":"#/components/schemas/NewsPublicId"}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"One public news item.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/NewsItem"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/stories":{"get":{"operationId":"listStories","tags":["Stories"],"summary":"List canonical public stories","parameters":[{"$ref":"#/components/parameters/CursorQuery"},{"name":"limit","in":"query","description":"Maximum stories or topic items to return.","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":30}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"A page of canonical stories.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoryListResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/stories/{publicId}":{"get":{"operationId":"getStory","tags":["Stories"],"summary":"Get a canonical public story","parameters":[{"name":"publicId","in":"path","description":"Public story identifier.","required":true,"schema":{"$ref":"#/components/schemas/StoryPublicId"}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"One canonical story with public support.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoryDetail"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/hot":{"get":{"operationId":"getHotStories","tags":["Hot"],"summary":"Get a precomputed Hot snapshot","parameters":[{"name":"snapshotId","in":"query","description":"Optional historical snapshot identifier.","required":false,"schema":{"type":"string","minLength":1,"maxLength":256}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"The requested or latest Hot availability state and ranking entries.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HotResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/reports":{"get":{"operationId":"listReports","tags":["Reports"],"summary":"List current public reports","parameters":[{"name":"kind","in":"query","description":"Optional report cadence.","required":false,"schema":{"$ref":"#/components/schemas/ReportKind"}},{"name":"limit","in":"query","description":"Maximum reports to return.","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":30}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"Current reports with public support.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportListResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/reports/{kind}/{key}":{"get":{"operationId":"getReport","tags":["Reports"],"summary":"Get a current public report","parameters":[{"name":"kind","in":"path","description":"Report cadence.","required":true,"schema":{"$ref":"#/components/schemas/ReportKind"}},{"name":"key","in":"path","description":"Stable report key.","required":true,"schema":{"$ref":"#/components/schemas/ReportKey"}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"One report filtered to current public support.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ReportDetail"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/topics":{"get":{"operationId":"listTopics","tags":["Topics"],"summary":"List up to 100 public topics by count","parameters":[{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"At most 100 current public topics ordered by count descending.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TopicIndexResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/topics/{slug}":{"get":{"operationId":"getTopic","tags":["Topics"],"summary":"Get a public topic with news, stories, and reports","parameters":[{"name":"slug","in":"path","description":"Public topic slug.","required":true,"schema":{"$ref":"#/components/schemas/TopicSlug"}},{"$ref":"#/components/parameters/CursorQuery"},{"name":"limit","in":"query","description":"Maximum stories or topic items to return.","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":30}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"One topic and its supported public entities.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TopicDetailResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"404":{"$ref":"#/components/responses/NotFound"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/codex-resets":{"get":{"operationId":"listCodexResets","tags":["Codex Reset"],"summary":"List the complete public Codex Reset history","parameters":[{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"Codex Reset events with the latest 30 Beijing days of source activity.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CodexResetResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/codex-resets/recent":{"get":{"operationId":"listRecentCodexResets","tags":["Codex Reset"],"summary":"List recent public Codex Reset activity","parameters":[{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"Codex Reset events and source activity from the latest 30 Beijing days.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CodexResetResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/search":{"get":{"operationId":"searchNews","tags":["News"],"summary":"Search indexable public news","parameters":[{"name":"q","in":"query","description":"Required public-content search text.","required":true,"schema":{"type":"string","minLength":2,"maxLength":200}},{"name":"channel","in":"query","description":"Optional first-party source filter.","required":false,"schema":{"type":"string","enum":["all","firstParty"]}},{"name":"category","in":"query","description":"Optional public content category.","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"source","in":"query","description":"Filter by stable source slug, with a public source-name compatibility fallback.","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"topic","in":"query","description":"Filter by a public topic slug.","required":false,"schema":{"$ref":"#/components/schemas/TopicSlug"}},{"name":"from","in":"query","description":"Inclusive lower bound for the publication timeline.","required":false,"schema":{"$ref":"#/components/schemas/DateTime"}},{"name":"to","in":"query","description":"Inclusive upper bound for the publication timeline.","required":false,"schema":{"$ref":"#/components/schemas/DateTime"}},{"$ref":"#/components/parameters/CursorQuery"},{"name":"limit","in":"query","description":"Maximum matching entities to return.","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":20}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"A page of public news search results.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V1NewsListResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/search/entities":{"get":{"operationId":"searchPublicEntities","tags":["News"],"summary":"Search indexable public news, stories, and facts","parameters":[{"name":"q","in":"query","description":"Required public-content search text.","required":true,"schema":{"type":"string","minLength":2,"maxLength":200}},{"name":"type","in":"query","description":"Entity type to search.","required":false,"schema":{"type":"string","enum":["all","news","story","fact"],"default":"all"}},{"name":"channel","in":"query","description":"Optional first-party source filter.","required":false,"schema":{"type":"string","enum":["all","firstParty"]}},{"name":"category","in":"query","description":"Optional public content category.","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"source","in":"query","description":"Filter by stable source slug, with a public source-name compatibility fallback.","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"topic","in":"query","description":"Filter by a public topic slug.","required":false,"schema":{"$ref":"#/components/schemas/TopicSlug"}},{"name":"from","in":"query","description":"Inclusive lower bound for the publication timeline.","required":false,"schema":{"$ref":"#/components/schemas/DateTime"}},{"name":"to","in":"query","description":"Inclusive upper bound for the publication timeline.","required":false,"schema":{"$ref":"#/components/schemas/DateTime"}},{"$ref":"#/components/parameters/CursorQuery"},{"name":"limit","in":"query","description":"Maximum matching entities to return.","required":false,"schema":{"type":"integer","minimum":1,"maximum":100,"default":20}},{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"A discriminated page of public search results.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/V1SearchResponse"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"},"503":{"$ref":"#/components/responses/ServiceUnavailable"}}}},"/api/v1/agent":{"get":{"operationId":"getAgentGuide","tags":["Agent"],"summary":"Get read-only API discovery guidance","parameters":[{"$ref":"#/components/parameters/IfNoneMatch"},{"name":"locale","in":"query","description":"Reading language. Translation is generated by background jobs, never by this request.","required":false,"schema":{"type":"string","enum":["zh","en"],"default":"zh"}}],"responses":{"200":{"description":"Markdown discovery guide.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"text/markdown":{"schema":{"type":"string"}}}},"304":{"$ref":"#/components/responses/NotModified"},"400":{"$ref":"#/components/responses/InvalidRequest"},"429":{"$ref":"#/components/responses/RateLimited"},"500":{"$ref":"#/components/responses/InternalError"}}}}},"components":{"headers":{"ETag":{"description":"Weak entity tag for conditional retrieval.","schema":{"type":"string"}},"RateLimitLimit":{"description":"Maximum requests in the current route-family window.","schema":{"type":"integer","minimum":1}},"RateLimitRemaining":{"description":"Requests remaining in the current route-family window.","schema":{"type":"integer","minimum":0}},"RateLimitReset":{"description":"Unix timestamp in seconds when the current rate-limit window resets.","schema":{"type":"integer","minimum":0}},"RequestId":{"description":"Bounded request identifier used for diagnostics.","schema":{"type":"string","minLength":1,"maxLength":128}},"RetryAfter":{"description":"Seconds before the caller should retry.","schema":{"type":"integer","minimum":1}}},"parameters":{"IfNoneMatch":{"name":"If-None-Match","in":"header","required":false,"description":"Return 304 when the current ETag matches.","schema":{"type":"string"}},"CursorQuery":{"name":"cursor","in":"query","required":false,"description":"Opaque, query-bound continuation cursor. Do not parse or construct it.","schema":{"$ref":"#/components/schemas/Cursor"}}},"responses":{"NotModified":{"description":"The representation has not changed.","headers":{"ETag":{"$ref":"#/components/headers/ETag"},"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}}},"InvalidRequest":{"description":"Parameters do not satisfy the public contract.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"NotFound":{"description":"The resource does not exist or is not currently public.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"RateLimited":{"description":"The route-family rate limit was exceeded.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"},"Retry-After":{"$ref":"#/components/headers/RetryAfter"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"InternalError":{"description":"The Public API could not complete the request.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"ServiceUnavailable":{"description":"The read-only Publication boundary is unavailable.","headers":{"RateLimit-Limit":{"$ref":"#/components/headers/RateLimitLimit"},"RateLimit-Remaining":{"$ref":"#/components/headers/RateLimitRemaining"},"RateLimit-Reset":{"$ref":"#/components/headers/RateLimitReset"},"X-Request-Id":{"$ref":"#/components/headers/RequestId"},"Retry-After":{"$ref":"#/components/headers/RetryAfter"}},"content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"schemas":{"DateTime":{"type":"string","format":"date-time"},"CodexResetWindow":{"type":"object","additionalProperties":false,"required":["from","through","label"],"properties":{"from":{"$ref":"#/components/schemas/DateTime"},"through":{"$ref":"#/components/schemas/DateTime"},"label":{"type":"string","minLength":1,"maxLength":500},"precision":{"type":"string","enum":["exact","approximate","deadline","date","window"]},"basis":{"type":"string","enum":["model","source","source_day","history"]},"reason":{"type":"string","minLength":1,"maxLength":1000}}},"CodexResetContext":{"type":"object","additionalProperties":false,"required":["id","author","relation","originalText","publishedAt","url"],"properties":{"id":{"type":"string","pattern":"^[0-9]+$"},"author":{"type":"string","maxLength":100},"relation":{"type":"string","enum":["reply","quote"]},"originalText":{"type":"string","maxLength":20000},"translatedText":{"type":"string","maxLength":20000},"publishedAt":{"$ref":"#/components/schemas/DateTime"},"url":{"type":"string","format":"uri","pattern":"^https?://"}}},"CodexResetActivity":{"type":"object","additionalProperties":false,"required":["postId","publishedAt","originalText","translatedText","url","context","eventIds","stage","outage"],"properties":{"postId":{"type":"string","pattern":"^[0-9]+$"},"publishedAt":{"$ref":"#/components/schemas/DateTime"},"originalText":{"type":"string","maxLength":20000},"translatedText":{"type":["string","null"],"maxLength":20000},"url":{"type":"string","format":"uri","pattern":"^https?://"},"context":{"type":"array","maxItems":10,"items":{"$ref":"#/components/schemas/CodexResetContext"}},"eventIds":{"type":"array","maxItems":10,"items":{"type":"string","pattern":"^reset-[0-9]+-[1-5]-[1-5]$"}},"stage":{"type":["string","null"],"maxLength":100},"outage":{"type":["string","null"],"enum":["outage","recovery",null]}}},"CodexResetEvent":{"type":"object","additionalProperties":false,"required":["id","type","storedStatus","presentationStatus","title","label","displayLabel","scope","schedule","estimate","confirmedAt","confirmationBasis","occurredOn","createdAt","updatedAt","evidencePostIds"],"properties":{"id":{"type":"string","pattern":"^reset-[0-9]+-[1-5]-[1-5]$"},"type":{"type":"string","enum":["direct_reset","reset_credit"]},"storedStatus":{"type":"string","enum":["announced","confirmed"]},"presentationStatus":{"type":"string","enum":["announced","in_progress","confirmed","expired_unconfirmed","likely_completed"]},"title":{"type":"string","minLength":1,"maxLength":500},"label":{"type":"string","maxLength":200},"displayLabel":{"type":"string","maxLength":200},"scope":{"type":"string","maxLength":1000},"schedule":{"oneOf":[{"$ref":"#/components/schemas/CodexResetWindow"},{"type":"null"}]},"estimate":{"oneOf":[{"$ref":"#/components/schemas/CodexResetWindow"},{"type":"null"}]},"confirmedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"confirmationBasis":{"type":["string","null"],"enum":["source_post","receipt_review",null]},"occurredOn":{"type":["string","null"],"format":"date"},"createdAt":{"$ref":"#/components/schemas/DateTime"},"updatedAt":{"$ref":"#/components/schemas/DateTime"},"evidencePostIds":{"type":"array","maxItems":50,"items":{"type":"string","pattern":"^[0-9]+$"}}}},"CodexResetMonitor":{"type":"object","additionalProperties":false,"required":["status","lastVerifiedAt","heldWindowCount","pendingCount","reviewCount"],"properties":{"status":{"type":"string","enum":["healthy","delayed","attention","unknown"]},"lastVerifiedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"heldWindowCount":{"type":"integer","minimum":0},"pendingCount":{"type":"integer","minimum":0},"reviewCount":{"type":"integer","minimum":0}}},"CodexResetResponse":{"type":"object","additionalProperties":false,"required":["schemaVersion","timezone","today","checkedAt","historyFrom","version","events","activities","monitor","outage"],"properties":{"schemaVersion":{"const":1},"timezone":{"const":"Asia/Shanghai"},"today":{"type":"string","format":"date"},"checkedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"historyFrom":{"type":["string","null"],"format":"date"},"version":{"type":"string","minLength":1,"maxLength":300},"events":{"type":"array","maxItems":2000,"items":{"$ref":"#/components/schemas/CodexResetEvent"}},"activities":{"type":"array","maxItems":1000,"items":{"$ref":"#/components/schemas/CodexResetActivity"}},"monitor":{"$ref":"#/components/schemas/CodexResetMonitor"},"outage":{"oneOf":[{"type":"object","additionalProperties":false,"required":["signal","postId","publishedAt","url"],"properties":{"signal":{"type":"string","enum":["outage","recovery"]},"postId":{"type":"string","pattern":"^[0-9]+$"},"publishedAt":{"$ref":"#/components/schemas/DateTime"},"url":{"type":"string","format":"uri","pattern":"^https?://"}}},{"type":"null"}]}}},"Cursor":{"type":"string","minLength":1,"maxLength":2048,"pattern":"^[A-Za-z0-9_-]+$","description":"Opaque and bound to the originating query."},"NewsPublicId":{"oneOf":[{"type":"string","pattern":"^news_[0-9a-f]{24}$"},{"type":"string","format":"uuid"}]},"StoryPublicId":{"oneOf":[{"type":"string","pattern":"^story_[0-9a-f]{24}$"},{"type":"string","format":"uuid"}]},"FactPublicId":{"oneOf":[{"type":"string","pattern":"^fact_[0-9a-f]{24}$"},{"type":"string","format":"uuid"}]},"TopicSlug":{"oneOf":[{"type":"string","pattern":"^(tag|category)~[A-Za-z0-9_-]{1,512}$"},{"type":"string","minLength":1,"maxLength":160,"pattern":"^[a-z0-9]+(?:-[a-z0-9]+)*$"}]},"ReportKind":{"type":"string","enum":["daily","weekly","monthly"]},"ReportKey":{"type":"string","minLength":1,"maxLength":256,"pattern":"^[A-Za-z0-9:_-]+$"},"PageInfo":{"type":"object","additionalProperties":false,"properties":{"nextCursor":{"oneOf":[{"$ref":"#/components/schemas/Cursor"},{"type":"null"}]},"previousCursor":{"oneOf":[{"$ref":"#/components/schemas/Cursor"},{"type":"null"}]},"hasMore":{"type":"boolean"}}},"SourceSummary":{"type":"object","additionalProperties":false,"required":["name"],"properties":{"id":{"type":"string","maxLength":160},"name":{"type":"string","minLength":1,"maxLength":200},"slug":{"type":"string","minLength":1,"maxLength":160,"pattern":"^[A-Za-z0-9][A-Za-z0-9._~-]*$"},"iconUrl":{"oneOf":[{"type":"string","format":"uri","pattern":"^https?://"},{"type":"null"}]}}},"TopicSummary":{"type":"object","additionalProperties":false,"required":["slug","name"],"properties":{"slug":{"$ref":"#/components/schemas/TopicSlug"},"name":{"type":"string","minLength":1,"maxLength":256},"description":{"type":["string","null"],"maxLength":4000},"count":{"type":"integer","minimum":0},"recentCount":{"type":"integer","minimum":0},"updatedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]}}},"StorySummary":{"type":"object","additionalProperties":false,"required":["publicId","title"],"properties":{"publicId":{"$ref":"#/components/schemas/StoryPublicId"},"title":{"type":"string","minLength":1,"maxLength":500}}},"FactSummary":{"type":"object","additionalProperties":false,"required":["id","text"],"properties":{"id":{"$ref":"#/components/schemas/FactPublicId"},"text":{"type":"string","minLength":1,"maxLength":4000},"occurredAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]}}},"NewsItem":{"type":"object","additionalProperties":false,"required":["publicId","title","publishedAt","source"],"properties":{"publicId":{"$ref":"#/components/schemas/NewsPublicId"},"title":{"type":"string","minLength":1,"maxLength":500},"summary":{"type":["string","null"],"maxLength":8000},"publishedAt":{"$ref":"#/components/schemas/DateTime"},"updatedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"source":{"$ref":"#/components/schemas/SourceSummary"},"topics":{"type":"array","items":{"$ref":"#/components/schemas/TopicSummary"}},"selected":{"type":"boolean"},"indexable":{"type":"boolean"},"bodyVisibility":{"type":"string","enum":["full","summary-only","none"]},"originalUrl":{"oneOf":[{"type":"string","format":"uri","pattern":"^https?://"},{"type":"null"}]},"bodyHtml":{"type":["string","null"]},"bodyText":{"type":["string","null"]},"story":{"oneOf":[{"$ref":"#/components/schemas/StorySummary"},{"type":"null"}]},"facts":{"type":"array","items":{"$ref":"#/components/schemas/FactSummary"}},"matchedIn":{"type":"array","maxItems":7,"uniqueItems":true,"items":{"type":"string","enum":["title","summary","story","fact","source","tag","body"]}},"matchExcerpt":{"type":"string","maxLength":500,"description":"Plain-text excerpt present only on search results."}}},"V1NewsListResponse":{"type":"object","additionalProperties":false,"required":["data","pagination"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/NewsItem"}},"pagination":{"type":"object","additionalProperties":false,"required":["nextCursor","hasMore"],"properties":{"nextCursor":{"oneOf":[{"$ref":"#/components/schemas/Cursor"},{"type":"null"}]},"hasMore":{"type":"boolean"}}}}},"NewsSearchResult":{"type":"object","additionalProperties":false,"required":["entityType","publicId","title","publishedAt","source","matchedIn","matchExcerpt"],"properties":{"entityType":{"const":"news"},"publicId":{"$ref":"#/components/schemas/NewsPublicId"},"title":{"type":"string","minLength":1,"maxLength":500},"summary":{"type":["string","null"],"maxLength":8000},"publishedAt":{"$ref":"#/components/schemas/DateTime"},"updatedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"source":{"$ref":"#/components/schemas/SourceSummary"},"topics":{"type":"array","items":{"$ref":"#/components/schemas/TopicSummary"}},"selected":{"type":"boolean"},"indexable":{"type":"boolean"},"bodyVisibility":{"type":"string","enum":["full","summary-only","none"]},"originalUrl":{"oneOf":[{"type":"string","format":"uri","pattern":"^https?://"},{"type":"null"}]},"story":{"oneOf":[{"$ref":"#/components/schemas/StorySummary"},{"type":"null"}]},"matchedIn":{"type":"array","maxItems":7,"items":{"type":"string","enum":["title","summary","story","fact","source","tag","body"]}},"matchExcerpt":{"type":"string","maxLength":500}}},"StorySearchResult":{"type":"object","additionalProperties":false,"required":["entityType","publicId","title","summary","firstPublishedAt","updatedAt","publicationCount","factCount","matchedIn","matchExcerpt"],"properties":{"entityType":{"const":"story"},"publicId":{"$ref":"#/components/schemas/StoryPublicId"},"title":{"type":"string","minLength":1,"maxLength":500},"summary":{"type":["string","null"],"maxLength":8000},"firstPublishedAt":{"$ref":"#/components/schemas/DateTime"},"updatedAt":{"$ref":"#/components/schemas/DateTime"},"publicationCount":{"type":"integer","minimum":0},"factCount":{"type":"integer","minimum":0},"matchedIn":{"type":"array","maxItems":7,"items":{"type":"string","enum":["title","summary","story","fact","source","tag","body"]}},"matchExcerpt":{"type":"string","maxLength":500}}},"FactSearchResult":{"type":"object","additionalProperties":false,"required":["entityType","publicId","title","summary","updatedAt","occurredAt","factDate","story","matchedIn","matchExcerpt"],"properties":{"entityType":{"const":"fact"},"publicId":{"$ref":"#/components/schemas/FactPublicId"},"title":{"type":"string","minLength":1,"maxLength":4000},"summary":{"type":["string","null"],"maxLength":8000},"updatedAt":{"$ref":"#/components/schemas/DateTime"},"occurredAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"factDate":{"type":"string","minLength":1,"maxLength":100},"story":{"oneOf":[{"$ref":"#/components/schemas/StorySummary"},{"type":"null"}]},"matchedIn":{"type":"array","maxItems":7,"items":{"type":"string","enum":["title","summary","story","fact","source","tag","body"]}},"matchExcerpt":{"type":"string","maxLength":500}}},"SearchResult":{"oneOf":[{"$ref":"#/components/schemas/NewsSearchResult"},{"$ref":"#/components/schemas/StorySearchResult"},{"$ref":"#/components/schemas/FactSearchResult"}],"discriminator":{"propertyName":"entityType"}},"V1SearchResponse":{"type":"object","additionalProperties":false,"required":["data","pagination"],"properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/SearchResult"}},"pagination":{"type":"object","additionalProperties":false,"required":["nextCursor","hasMore"],"properties":{"nextCursor":{"oneOf":[{"$ref":"#/components/schemas/Cursor"},{"type":"null"}]},"hasMore":{"type":"boolean"}}}}},"StoryCard":{"type":"object","required":["publicId","title"],"properties":{"publicId":{"$ref":"#/components/schemas/StoryPublicId"},"title":{"type":"string","minLength":1,"maxLength":500},"summary":{"type":["string","null"],"maxLength":8000},"digest":{"type":["string","null"],"maxLength":20000},"firstPublishedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"updatedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"sourceCount":{"type":"integer","minimum":0},"publicationCount":{"type":"integer","minimum":0},"factCount":{"type":"integer","minimum":0}}},"StoryFact":{"type":"object","additionalProperties":false,"required":["id","text","factDate"],"properties":{"id":{"$ref":"#/components/schemas/FactPublicId"},"text":{"type":"string","minLength":1,"maxLength":4000},"occurredAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"factDate":{"type":"string","format":"date"},"sources":{"type":"array","items":{"$ref":"#/components/schemas/SourceSummary"}}}},"StoryRelated":{"type":"object","additionalProperties":false,"required":["publicId","title"],"properties":{"publicId":{"$ref":"#/components/schemas/StoryPublicId"},"title":{"type":"string","minLength":1,"maxLength":500}}},"StoryDiscussion":{"type":"object","additionalProperties":false,"required":["label","url","at"],"properties":{"label":{"type":"string","minLength":1,"maxLength":200},"url":{"type":"string","format":"uri","maxLength":2048,"pattern":"^https?://"},"at":{"$ref":"#/components/schemas/DateTime"}}},"StoryDetail":{"allOf":[{"$ref":"#/components/schemas/StoryCard"},{"type":"object","required":["facts","publications","timeline","heat","discussions","related"],"properties":{"facts":{"type":"array","items":{"$ref":"#/components/schemas/StoryFact"}},"publications":{"type":"array","items":{"$ref":"#/components/schemas/NewsItem"}},"timeline":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["at","title"],"properties":{"at":{"$ref":"#/components/schemas/DateTime"},"title":{"type":"string","minLength":1,"maxLength":500},"summary":{"type":["string","null"],"maxLength":8000},"factId":{"oneOf":[{"$ref":"#/components/schemas/FactPublicId"},{"type":"null"}]},"publicationId":{"oneOf":[{"$ref":"#/components/schemas/NewsPublicId"},{"type":"null"}]}}}},"heat":{"type":"array","items":{"type":"object","additionalProperties":false,"required":["at","value","participants"],"properties":{"at":{"$ref":"#/components/schemas/DateTime"},"value":{"type":"number"},"participants":{"type":"integer","minimum":0}}}},"discussions":{"type":"array","maxItems":50,"items":{"$ref":"#/components/schemas/StoryDiscussion"}},"related":{"type":"array","maxItems":4,"items":{"$ref":"#/components/schemas/StoryRelated"}},"hot":{"oneOf":[{"type":"object","additionalProperties":false,"required":["rank","displayHeat","participantCount","computedAt","status"],"properties":{"rank":{"type":"integer","minimum":1},"displayHeat":{"type":"number","minimum":0},"participantCount":{"type":"integer","minimum":0},"computedAt":{"$ref":"#/components/schemas/DateTime"},"status":{"type":"string","enum":["available","stale"]}}},{"type":"null"}]}}}]},"StoryListResponse":{"type":"object","additionalProperties":false,"required":["items","pageInfo"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/StoryCard"}},"pageInfo":{"$ref":"#/components/schemas/PageInfo"}}},"HotEntry":{"type":"object","additionalProperties":false,"required":["rank","heat","displayHeat","story"],"properties":{"rank":{"type":"integer","minimum":1},"heat":{"type":"number","minimum":0,"deprecated":true,"description":"Legacy raw ranking score retained for v1 compatibility. Use displayHeat for reader-facing display."},"displayHeat":{"type":"number","minimum":0,"description":"Reader-facing heat index: round(raw score × 100) / 10."},"trend":{"type":"string","enum":["new","up","down","flat","unknown"]},"trendPercent":{"type":["number","null"]},"story":{"type":"object","additionalProperties":false,"required":["publicId","title"],"properties":{"publicId":{"$ref":"#/components/schemas/StoryPublicId"},"title":{"type":"string","minLength":1,"maxLength":500},"summary":{"type":["string","null"],"maxLength":8000}}},"sourceNames":{"type":"array","items":{"type":"string"}},"sourceCount":{"type":"integer","minimum":0},"participantCount":{"type":"integer","minimum":0},"sparkline":{"type":"array","items":{"type":["number","null"]}}}},"HotResponse":{"type":"object","additionalProperties":false,"required":["status","zeroResultRepresentable","entries"],"description":"The latest successful materialization. Stale means it is older than the freshness boundary; unavailable means no verified materialization exists.","properties":{"status":{"type":"string","enum":["available","stale","unavailable"]},"zeroResultRepresentable":{"type":"boolean","const":true,"description":"Successful zero-result materializations are represented explicitly."},"snapshotId":{"type":"string","minLength":1,"maxLength":256},"computedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"windowStart":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"windowEnd":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"windowHours":{"type":"number","minimum":0},"algorithmVersion":{"type":["string","null"],"maxLength":100},"entries":{"type":"array","maxItems":20,"items":{"$ref":"#/components/schemas/HotEntry"}}}},"ReportSummary":{"type":"object","required":["kind","key"],"properties":{"kind":{"$ref":"#/components/schemas/ReportKind"},"key":{"$ref":"#/components/schemas/ReportKey"},"title":{"type":["string","null"],"maxLength":500},"summary":{"type":["string","null"],"maxLength":20000},"generatedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"updatedAt":{"oneOf":[{"$ref":"#/components/schemas/DateTime"},{"type":"null"}]},"itemCount":{"type":"integer","minimum":0}}},"ReportSection":{"type":"object","additionalProperties":false,"required":["title","items"],"properties":{"title":{"type":"string","minLength":1,"maxLength":300},"items":{"type":"array","items":{"$ref":"#/components/schemas/NewsItem"}}}},"ReportDetail":{"allOf":[{"$ref":"#/components/schemas/ReportSummary"},{"type":"object","required":["sections"],"properties":{"introduction":{"type":["string","null"],"maxLength":20000},"sections":{"type":"array","items":{"$ref":"#/components/schemas/ReportSection"}}}}]},"ReportListResponse":{"type":"object","additionalProperties":false,"required":["items"],"properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/ReportSummary"}},"latest":{"oneOf":[{"$ref":"#/components/schemas/ReportDetail"},{"type":"null"}]}}},"TopicIndexResponse":{"type":"object","additionalProperties":false,"required":["topics"],"description":"At most 100 current public topics ordered by count descending.","properties":{"topics":{"type":"array","maxItems":100,"items":{"$ref":"#/components/schemas/TopicSummary"}}}},"TopicDetailResponse":{"type":"object","additionalProperties":false,"required":["topic","items","stories","reports","pageInfo"],"properties":{"topic":{"$ref":"#/components/schemas/TopicSummary"},"items":{"type":"array","items":{"$ref":"#/components/schemas/NewsItem"}},"stories":{"type":"array","items":{"$ref":"#/components/schemas/StoryCard"}},"reports":{"type":"array","items":{"$ref":"#/components/schemas/ReportSummary"}},"pageInfo":{"$ref":"#/components/schemas/PageInfo"}}},"ErrorResponse":{"type":"object","additionalProperties":false,"required":["code","message","requestId"],"properties":{"code":{"type":"string","enum":["invalid_request","invalid_cursor","not_found","method_not_allowed","conflict","rate_limited","feedback_disabled","route_not_ready","service_unavailable","internal_error"]},"message":{"type":"string","minLength":1,"maxLength":500},"requestId":{"type":"string","minLength":1,"maxLength":128},"retryAfter":{"type":"integer","minimum":1},"details":{"type":"object","additionalProperties":true}}}}}}