{"schemaVersion":1,"contractVersion":"1.0.0","coverage":"Committed editorial Newsroom journalism; Topic summaries. Research reports and notices are outside this release.","articleIdentity":"newsroom:{slug}; detail also accepts the unique Newsroom slug","filters":{"topic":"Explicit topicRefs only","category":"Existing editorial category","state":"Explicit state geography only","district":"UNSUPPORTED","entity":"UNSUPPORTED","storyline":"UNSUPPORTED"},"dates":"Article timestamps preserve explicit source offsets. Topic modification dates have day precision.","search":"Deterministic case-insensitive literal substring of public headlines and deks; no external search or model calls.","updates":{"mode":"PUBLICATION_WINDOW","limitations":"Currently public articles by publication time; no correction/deletion replay or exactly-once stream. Overlap windows, deduplicate IDs/versions, and periodically reconcile current state. Backdated publications may be missed.","cursor":"Bound to revision, filters, mode and upper boundary. Retain the last consumed cursor; reset on 410."},"freshness":{"sourceVerification":"Authoritative Blob metadata before and after bounded retrieval; body ETag must match","snapshotMaxAgeSeconds":60,"newPublicationTargetSeconds":300,"staleFallback":false,"httpSharedCache":false},"limits":{"listDefault":20,"listMax":50,"searchDefault":10,"searchMax":20,"queryChars":256,"windowDays":31,"cursorChars":2048,"cursorAgeSeconds":900,"indexBytes":2097152,"articleBytes":2097152,"metadataBytes":524288,"mcpRequestBytes":32768,"mcpResponseBytes":2097152,"snapshotSeconds":60,"deadlineMs":4500},"abuse":{"perSourcePerMinute":240,"aggregatePerRegionPerMinute":600,"scope":"New machine routes only; Vercel Firewall distributed fixed windows. Aggregate budget is per region, not a global counter.","failure":"503 when enforcement is unavailable; 429 with Retry-After when limited."},"enabled":["public_api","json_feed","mcp","search_fetch","daily_brief","topic_summaries","publication_window_updates"],"disabled":["storylines","persistent_follows","web_push","delivery_scheduling","observed_change_ledger","mcp_notifications","email_sending","directory_distribution"],"endpoints":{"articles":"https://www.formativespaces.com/api/public/v1/articles","search":"https://www.formativespaces.com/api/public/v1/search","updates":"https://www.formativespaces.com/api/public/v1/updates","dailyBrief":"https://www.formativespaces.com/api/public/v1/daily-brief","mcp":"https://www.formativespaces.com/api/mcp","jsonFeed":"https://www.formativespaces.com/feed.json","rss":"https://www.formativespaces.com/feeds/newsroom.xml","openapi":"https://www.formativespaces.com/api/public/v1/openapi.json"},"mcp":{"transport":"stateless Streamable HTTP","protocolVersions":["2026-07-28","2025-11-25"],"authentication":"Public anonymous reads","tools":["latest_news","search_news","get_article","get_updates_since","get_topic","get_daily_brief","search","fetch"],"resources":["JSON Feed","Daily Brief","Phone bans","Classroom AI","AI learning resources"],"subscriptions":false},"brief":{"timezone":"America/New_York","target":6,"algorithm":"Publication recency, ID tie-break. First pass soft caps of two per known primary category/state, second pass fills. Current local calendar day only.","email":"Renderer only; sending NOT_CONFIGURED"},"clients":{"standardsClient":"Release-tested exact pinned SDK client","ChatGPT":"NOT_TESTED: account and administrator restrictions apply","Claude":"NOT_TESTED: remote connector account required","Grok":"NOT_TESTED: consumer and API capabilities differ","MetaMuse":"UNSUPPORTED_IN_THIS_RELEASE","Instinct":"UNSUPPORTED_IN_THIS_RELEASE"}}