{"openapi":"3.1.0","info":{"title":"last30days Intel API","version":"v1","description":"Read your accumulated market intelligence — the findings ledger, entities, verified relationships, and the per-cycle change stream. Access is part of Intelligence Ops.","contact":{"url":"https://www.last30days.xyz/contact?about=intelligence-ops"}},"servers":[{"url":"https://www.last30days.xyz/api"}],"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Workspace API key (l30d_…)"}}},"paths":{"/v1/topics":{"get":{"summary":"List tracked topics","description":"Every topic in the workspace, newest first.","parameters":[],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":[{"id":"9c2e…","query":"Quantum AI","heartbeat":"weekly","status":"active","createdAt":"2026-06-01T09:00:00Z"}]}}}},"401":{"description":"Missing/invalid key, or the workspace is not on Intelligence Ops"},"429":{"description":"Rate limit exceeded (1000 requests/hour per key)"}}}},"/v1/topics/{id}/findings":{"get":{"summary":"The findings ledger","description":"A topic's findings with their cross-cycle lifecycle status (New / Holding up / Disputed / Quiet), evidence grade, sightings lineage, and per-finding source citations.","parameters":[{"name":"id","in":"path","required":true,"description":"Topic id","schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"topic":{"id":"9c2e…","query":"Quantum AI","heartbeat":"weekly"},"findings":[{"key":"federal-pqc-migration-mandate","text":"Federal agencies received a dated post-quantum migration mandate.","status":"repeated","statusLabel":"Holding up","tag":"fact","confidence":"high","impact":"high","sightings":3,"firstSeen":"2026-05-14T08:00:00Z","lastSeen":"2026-07-01T08:00:00Z","citations":[{"source":"Reuters","url":"https://…"}]}],"truncated":false}}}}},"401":{"description":"Missing/invalid key, or the workspace is not on Intelligence Ops"},"429":{"description":"Rate limit exceeded (1000 requests/hour per key)"}}}},"/v1/topics/{id}/entities":{"get":{"summary":"Entities and verified relationships","description":"A topic's claim-linked entities plus typed relationships. Only judge-verified, non-retracted edges are served — held or retracted edges never appear.","parameters":[{"name":"id","in":"path","required":true,"description":"Topic id","schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":{"topic":{"id":"9c2e…","query":"Quantum AI"},"entities":[{"id":"e1…","name":"GlobalFoundries","type":"company","mentions":6,"firstSeen":"2026-06-02T…","lastSeen":"2026-07-01T…"}],"edges":[{"src":{"id":"e1…","name":"GlobalFoundries","type":"company"},"kind":"partners_with","dst":{"id":"e2…","name":"US CHIPS Program","type":"regulator"},"confidence":"reported","evidenceFindingKey":"gf-chips-quantum-award"}]}}}}},"401":{"description":"Missing/invalid key, or the workspace is not on Intelligence Ops"},"429":{"description":"Rate limit exceeded (1000 requests/hour per key)"}}}},"/v1/events":{"get":{"summary":"The per-cycle change stream","description":"Everything that changed, cycle by cycle: brief.published, finding.new, finding.status_changed, finding.merged, edge.verified. Newest first. The same stream webhooks deliver — poll this if you don't run a receiver.","parameters":[{"name":"topic_id","in":"query","required":false,"description":"Filter to one topic","schema":{"type":"string"}},{"name":"since","in":"query","required":false,"description":"ISO timestamp lower bound","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Max rows (default 100, cap 200)","schema":{"type":"string"}}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"OK","content":{"application/json":{"example":{"data":[{"id":"ev1…","topicId":"9c2e…","briefId":"b7…","type":"finding.status_changed","payload":{"key":"federal-pqc-migration-mandate","from":"emerging","to":"repeated","text":"…"},"createdAt":"2026-07-01T08:04:00Z"}]}}}},"401":{"description":"Missing/invalid key, or the workspace is not on Intelligence Ops"},"429":{"description":"Rate limit exceeded (1000 requests/hour per key)"}}}}}}