{"openapi":"3.1.0","info":{"title":"edgar-stream API","version":"0.1.0"},"paths":{"/api/health":{"get":{"tags":["health"],"summary":"Health","operationId":"health_api_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HealthResponse"}}}}}}},"/api/filings":{"get":{"tags":["filings"],"summary":"List Filings","operationId":"list_filings_api_filings_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Opaque cursor from previous page's next_cursor","title":"Cursor"},"description":"Opaque cursor from previous page's next_cursor"},{"name":"form_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Exact form type","title":"Form Type"},"description":"Exact form type"},{"name":"item_code","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by reported item","title":"Item Code"},"description":"Filter by reported item"},{"name":"ticker","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filer ticker (exact, uppercased)","title":"Ticker"},"description":"Filer ticker (exact, uppercased)"},{"name":"cik","in":"query","required":false,"schema":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Filer CIK","title":"Cik"},"description":"Filer CIK"},{"name":"since","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"ISO 8601 lower bound on filed_at","title":"Since"},"description":"ISO 8601 lower bound on filed_at"},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"FTS5 MATCH on headline/bullets/company/ticker/event_type","title":"Q"},"description":"FTS5 MATCH on headline/bullets/company/ticker/event_type"},{"name":"event_type","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"Repeatable: filter to one of these event_type values","title":"Event Type"},"description":"Repeatable: filter to one of these event_type values"},{"name":"sentiment","in":"query","required":false,"schema":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"description":"Repeatable: filter to one of these sentiment values","title":"Sentiment"},"description":"Repeatable: filter to one of these sentiment values"},{"name":"min_materiality","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"description":"Minimum materiality score (inclusive)","title":"Min Materiality"},"description":"Minimum materiality score (inclusive)"},{"name":"status","in":"query","required":false,"schema":{"type":"string","description":"'ready' (default) or 'any'","default":"ready","title":"Status"},"description":"'ready' (default) or 'any'"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilingsPage"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/filings/{filing_id}":{"get":{"tags":["filings"],"summary":"Get Filing","operationId":"get_filing_api_filings__filing_id__get","parameters":[{"name":"filing_id","in":"path","required":true,"schema":{"type":"integer","title":"Filing Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FilingDetail"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/stream":{"get":{"tags":["stream"],"summary":"Stream","operationId":"stream_api_stream_get","parameters":[{"name":"Last-Event-ID","in":"header","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Resume from this filings.id","title":"Last-Event-Id"},"description":"Resume from this filings.id"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/api/notify/vapid_key":{"get":{"tags":["notify"],"summary":"Vapid Key","operationId":"vapid_key_api_notify_vapid_key_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VapidKeyResponse"}}}}}}},"/api/notify/subscribe":{"post":{"tags":["notify"],"summary":"Subscribe","operationId":"subscribe_api_notify_subscribe_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscribeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SubscribeResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["notify"],"summary":"Unsubscribe","operationId":"unsubscribe_api_notify_subscribe_delete","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UnsubscribeRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"type":"string"},"type":"object","title":"Response Unsubscribe Api Notify Subscribe Delete"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}}},"components":{"schemas":{"FilingDetail":{"properties":{"id":{"type":"integer","title":"Id"},"accession_number":{"type":"string","title":"Accession Number"},"cik":{"type":"integer","title":"Cik"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"ticker":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ticker"},"form_type":{"type":"string","title":"Form Type"},"filed_at":{"type":"string","title":"Filed At"},"items":{"items":{"type":"string"},"type":"array","title":"Items"},"status":{"type":"string","title":"Status"},"headline":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Headline"},"event_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Type"},"confidence":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Confidence"},"bullets":{"items":{"type":"string"},"type":"array","title":"Bullets"},"consensus_eps_estimate":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Consensus Eps Estimate"},"consensus_eps_actual":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Consensus Eps Actual"},"consensus_revenue_estimate":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Consensus Revenue Estimate"},"consensus_revenue_actual":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Consensus Revenue Actual"},"consensus_period":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Consensus Period"},"consensus_source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Consensus Source"},"sentiment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sentiment"},"materiality_score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Materiality Score"},"daily_digest_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Daily Digest Date"},"daily_digest_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Daily Digest Url"},"daily_digest_rank":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Daily Digest Rank"},"edgar_index_url":{"type":"string","title":"Edgar Index Url"},"primary_doc_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Primary Doc Url"},"summary":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Summary"},"summary_model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary Model"},"summary_generated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary Generated At"},"discovered_at":{"type":"string","title":"Discovered At"}},"type":"object","required":["id","accession_number","cik","company_name","ticker","form_type","filed_at","items","status","headline","event_type","confidence","bullets","edgar_index_url","primary_doc_url","summary","summary_model","summary_generated_at","discovered_at"],"title":"FilingDetail"},"FilingListItem":{"properties":{"id":{"type":"integer","title":"Id"},"accession_number":{"type":"string","title":"Accession Number"},"cik":{"type":"integer","title":"Cik"},"company_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Company Name"},"ticker":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ticker"},"form_type":{"type":"string","title":"Form Type"},"filed_at":{"type":"string","title":"Filed At"},"items":{"items":{"type":"string"},"type":"array","title":"Items"},"status":{"type":"string","title":"Status"},"headline":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Headline"},"event_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Event Type"},"confidence":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Confidence"},"bullets":{"items":{"type":"string"},"type":"array","title":"Bullets"},"consensus_eps_estimate":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Consensus Eps Estimate"},"consensus_eps_actual":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Consensus Eps Actual"},"consensus_revenue_estimate":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Consensus Revenue Estimate"},"consensus_revenue_actual":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Consensus Revenue Actual"},"consensus_period":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Consensus Period"},"consensus_source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Consensus Source"},"sentiment":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sentiment"},"materiality_score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Materiality Score"},"daily_digest_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Daily Digest Date"},"daily_digest_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Daily Digest Url"},"daily_digest_rank":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Daily Digest Rank"}},"type":"object","required":["id","accession_number","cik","company_name","ticker","form_type","filed_at","items","status","headline","event_type","confidence","bullets"],"title":"FilingListItem"},"FilingsPage":{"properties":{"filings":{"items":{"$ref":"#/components/schemas/FilingListItem"},"type":"array","title":"Filings"},"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor"}},"type":"object","required":["filings","next_cursor"],"title":"FilingsPage"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"HealthResponse":{"properties":{"ok":{"type":"boolean","title":"Ok"},"sqlite_path":{"type":"string","title":"Sqlite Path"},"counts":{"additionalProperties":{"type":"integer"},"type":"object","title":"Counts"},"last_poll":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Last Poll"}},"type":"object","required":["ok","sqlite_path","counts","last_poll"],"title":"HealthResponse"},"SubscribeRequest":{"properties":{"endpoint":{"type":"string","minLength":10,"title":"Endpoint"},"p256dh":{"type":"string","minLength":1,"title":"P256Dh"},"auth":{"type":"string","minLength":1,"title":"Auth"},"tickers":{"items":{"type":"string"},"type":"array","title":"Tickers"},"event_types":{"items":{"type":"string"},"type":"array","title":"Event Types"},"keywords":{"items":{"type":"string"},"type":"array","title":"Keywords"}},"type":"object","required":["endpoint","p256dh","auth"],"title":"SubscribeRequest"},"SubscribeResponse":{"properties":{"id":{"type":"integer","title":"Id"},"endpoint":{"type":"string","title":"Endpoint"}},"type":"object","required":["id","endpoint"],"title":"SubscribeResponse"},"UnsubscribeRequest":{"properties":{"endpoint":{"type":"string","title":"Endpoint"}},"type":"object","required":["endpoint"],"title":"UnsubscribeRequest"},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"VapidKeyResponse":{"properties":{"public_key":{"type":"string","title":"Public Key"}},"type":"object","required":["public_key"],"title":"VapidKeyResponse"}}}}