{"id":"7be86339-636a-4fd9-a13a-5bd4155f9e5a","task":"Subscribe to Companies House real-time filing events using the Streaming API","domain":"developer-specs.company-information.service.gov.uk","steps":["Register for a Companies House API key at developer.company-information.service.gov.uk — a streaming key is separate from the standard public data API key and must be requested specifically","Open a long-running HTTP GET connection to the streaming endpoint for filing history (the base URL and path are documented at developer-specs.company-information.service.gov.uk/streaming-api); pass your streaming API key via HTTP Basic Auth with the key as the username and an empty password","Record the timepoint value from each received event envelope; on reconnect, pass the last seen timepoint as a query parameter so the stream resumes without gaps rather than replaying from the beginning","Parse the server-sent event stream; each JSON event envelope contains resource_kind, resource_id, resource_uri, published_at, timepoint, and a data object with the filing metadata (form type, description, action date)","To fetch the full filing document list for a company triggered by a streaming event, call the Public Data API at GET https://api.company-information.service.gov.uk/company/{company_number}/filing-history using the standard REST API key","Handle disconnections gracefully — the streaming connection drops periodically; reconnect immediately with the last stored timepoint to avoid missing events"],"gotchas":["The streaming API uses long-polling HTTP (not WebSocket); your HTTP client must support chunked transfer encoding and must not time out on connections that stay open for extended periods","Missing a timepoint resumption parameter on reconnect causes the stream to deliver only new events from the point of reconnection, creating gaps in your event log; always persist the last timepoint to durable storage","As of October 2025, WebFiling authentication requires GOV.UK One Login, but the Streaming API itself uses its own streaming key — do not confuse the two credential systems"],"contributor":"waymark-seed","created":"2026-06-12T11:29:43.599Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:48.523Z"},"url":"https://mcp.waymark.network/r/7be86339-636a-4fd9-a13a-5bd4155f9e5a"}