{"openapi":"3.1.0","info":{"title":"RegSignal API","description":"\n**RegSignal** provides API-first regulatory intelligence: detect regulatory signals across 20 jurisdictions\nand 7 verticals, understand them through classification, summaries, cited answers and impact assessment,\nand act on them through signed webhooks and saved filters that plug into your existing systems.\n\n**Detect. Understand. Act.**\n\n| Family | What it does |\n|---|---|\n| Signal APIs | Ingest and triage regulatory signals: public corpus feed, semantic search, internal document ingestion |\n| Intelligence APIs | Summarise, classify, assess impact against product profiles, answer questions with citations |\n| Action APIs | Trigger workflows: signed webhooks, saved filters, delivery logs |\n\n**Authentication**: send your key in `X-API-Key`. **Pagination**: keyset cursors (`next_cursor`).\n**Webhooks**: HMAC-SHA256 signed (`X-RegSignal-Signature: t=<unix>,v1=<hex>`), body signed as `\"{t}.{body}\"`.\n","version":"0.1.0"},"servers":[{"url":"https://api.regsignal.dev","description":"production"},{"url":"http://localhost:8080","description":"local gateway"}],"paths":{"/v1/health":{"get":{"tags":["Meta"],"summary":"Health","operationId":"health_v1_health_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/taxonomy":{"get":{"tags":["Meta"],"summary":"Get Taxonomy","operationId":"get_taxonomy_v1_taxonomy_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/jurisdictions":{"get":{"tags":["Meta"],"summary":"Get Jurisdictions","operationId":"get_jurisdictions_v1_jurisdictions_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/v1/jurisdictions/coverage":{"get":{"tags":["Console"],"summary":"Jurisdiction Coverage","description":"Per-jurisdiction health for the coverage grid: sources, freshness, volume, verticals.","operationId":"jurisdiction_coverage_v1_jurisdictions_coverage_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Items_CoverageItem_"}}}}}}},"/v1/sources":{"get":{"tags":["Meta"],"summary":"List Sources","operationId":"list_sources_v1_sources_get","parameters":[{"name":"jurisdiction","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdiction"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Items_SourceOut_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/sources/{source_id}":{"get":{"tags":["Meta"],"summary":"Get Source","description":"One source with its run status and the ten most recent public documents it produced.","operationId":"get_source_v1_sources__source_id__get","parameters":[{"name":"source_id","in":"path","required":true,"schema":{"type":"string","title":"Source Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/signals":{"get":{"tags":["Signal APIs"],"summary":"List Signals","description":"Regulatory signals ordered by last update, keyset-paginated.\n\nIncludes the public corpus plus your organisation's internal signals. Use `updated_after` with\n`cursor` for reliable incremental sync: every change, including re-enrichment, bumps `updated_at`.\nRecall signals carry `recall` (product, hazard, firm, class...) and lifecycle documents carry\n`regulation_id`. Near-duplicates (the same notice published by several sources) are collapsed onto\none canonical signal whose `duplicate_count` says how many others exist; pass\n`include_duplicates=true` to see them all.","operationId":"list_signals_v1_signals_get","parameters":[{"name":"jurisdictions","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated codes, e.g. US,EU","title":"Jurisdictions"},"description":"Comma-separated codes, e.g. US,EU"},{"name":"verticals","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verticals"}},{"name":"product_categories","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Categories"}},{"name":"topics","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Topics"}},{"name":"doc_types","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Types"}},{"name":"sources","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sources"}},{"name":"languages","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Languages"}},{"name":"origin","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(public|internal)$"},{"type":"null"}],"title":"Origin"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Q"}},{"name":"published_after","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published After"}},{"name":"published_before","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published Before"}},{"name":"updated_after","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"Incremental sync: only items changed after this time","title":"Updated After"},"description":"Incremental sync: only items changed after this time"},{"name":"min_confidence","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":1,"minimum":0},{"type":"null"}],"title":"Min Confidence"}},{"name":"regulation_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Only documents in this regulation's lifecycle","title":"Regulation Id"},"description":"Only documents in this regulation's lifecycle"},{"name":"recall","in":"query","required":false,"schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"true = only signals with structured recall facts; false = only without","title":"Recall"},"description":"true = only signals with structured recall facts; false = only without"},{"name":"include_duplicates","in":"query","required":false,"schema":{"type":"boolean","description":"Also return near-duplicate signals (those with a `canonical_id`). Hidden by default.","default":false,"title":"Include Duplicates"},"description":"Also return near-duplicate signals (those with a `canonical_id`). Hidden by default."},{"name":"cursor","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cursor"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Signal APIs"],"summary":"Ingest Signal","description":"Ingest an internal document as a private signal for your organisation.\n\nInternal signals go through the same enrichment (classification, summary, embeddings) and are visible\nonly to your organisation in the feed, search, ask and impact matching. Re-posting the same\n`external_id` updates the signal.","operationId":"ingest_signal_v1_signals_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SignalIngestIn"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentDetailOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/signals/facets":{"get":{"tags":["Signal APIs"],"summary":"Signal Facets","description":"Counts by jurisdiction, vertical, doc type, topic and origin for the current filter (left rail).","operationId":"signal_facets_v1_signals_facets_get","parameters":[{"name":"jurisdictions","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdictions"}},{"name":"verticals","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verticals"}},{"name":"product_categories","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Categories"}},{"name":"topics","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Topics"}},{"name":"doc_types","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Types"}},{"name":"sources","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sources"}},{"name":"origin","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(public|internal)$"},{"type":"null"}],"title":"Origin"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Q"}},{"name":"published_after","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published After"}},{"name":"published_before","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published Before"}},{"name":"min_confidence","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":1,"minimum":0},{"type":"null"}],"title":"Min Confidence"}},{"name":"include_duplicates","in":"query","required":false,"schema":{"type":"boolean","description":"Count near-duplicate signals too.","default":false,"title":"Include Duplicates"},"description":"Count near-duplicate signals too."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FacetsOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/signals/{signal_id}":{"get":{"tags":["Signal APIs"],"summary":"Get Signal","description":"One signal in full: enrichment, recall facts, regulation link, its near-duplicates (`duplicates`,\nwith the canonical flagged when this signal is itself a duplicate) and its change history\n(`versions`, newest first, each with a `diff`).","operationId":"get_signal_v1_signals__signal_id__get","parameters":[{"name":"signal_id","in":"path","required":true,"schema":{"type":"string","title":"Signal Id"}},{"name":"include_text","in":"query","required":false,"schema":{"type":"boolean","description":"Include extracted full text (can be large).","default":false,"title":"Include Text"},"description":"Include extracted full text (can be large)."}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentDetailOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Signal APIs"],"summary":"Delete Signal","description":"Delete one of your internal signals. Public corpus signals cannot be deleted.","operationId":"delete_signal_v1_signals__signal_id__delete","parameters":[{"name":"signal_id","in":"path","required":true,"schema":{"type":"string","title":"Signal Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/signals/{signal_id}/versions":{"get":{"tags":["Signal APIs"],"summary":"Get Signal Versions","description":"The signal's change history, newest first.\n\nA version is recorded each time the source document's content changed and it was re-enriched; the\nfirst observed state is kept as version 1. Each entry's `diff` (`summary_changed`,\n`key_points_added`, `key_points_removed`, `fields_changed`) describes the change from the previous\nversion. The same diff rides along on `signal.updated` webhooks as `changes`.","operationId":"get_signal_versions_v1_signals__signal_id__versions_get","parameters":[{"name":"signal_id","in":"path","required":true,"schema":{"type":"string","title":"Signal Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/VersionsOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/signals/search":{"post":{"tags":["Signal APIs"],"summary":"Search Signals","description":"Semantic search over signal text. Cheaper than /ask; no LLM call.","operationId":"search_signals_v1_signals_search_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SearchOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/classify":{"post":{"tags":["Intelligence APIs"],"summary":"Classify","description":"Classify arbitrary regulatory text into the controlled vocabulary and summarise it.","operationId":"classify_v1_classify_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassifyIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClassifyOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles":{"get":{"tags":["Intelligence APIs"],"summary":"List Profiles","operationId":"list_profiles_v1_profiles_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Items_ProfileOut_"}}}}}},"post":{"tags":["Intelligence APIs"],"summary":"Create Profile","operationId":"create_profile_v1_profiles_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/{profile_id}":{"get":{"tags":["Intelligence APIs"],"summary":"Get Profile","operationId":"get_profile_v1_profiles__profile_id__get","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Intelligence APIs"],"summary":"Update Profile","operationId":"update_profile_v1_profiles__profile_id__put","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Intelligence APIs"],"summary":"Delete Profile","operationId":"delete_profile_v1_profiles__profile_id__delete","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/{profile_id}/impact/run":{"post":{"tags":["Intelligence APIs"],"summary":"Run Impact","description":"Score the corpus against this profile now (synchronous; LLM stage bounded by IMPACT_LLM_TOP_N).","operationId":"run_impact_v1_profiles__profile_id__impact_run_post","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/ImpactRunIn"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImpactRunOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/{profile_id}/impact":{"get":{"tags":["Intelligence APIs"],"summary":"List Impact","operationId":"list_impact_v1_profiles__profile_id__impact_get","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}},{"name":"min_level","in":"query","required":false,"schema":{"type":"string","pattern":"^(none|low|medium|high)$","default":"low","title":"Min Level"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ImpactListOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/impact/match":{"post":{"tags":["Intelligence APIs"],"summary":"Adhoc Match","description":"Stateless impact check: an inline profile against explicit document ids or a filter. Nothing is stored.","operationId":"adhoc_match_v1_impact_match_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AdHocImpactIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Items_ImpactOut_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/quickstart":{"post":{"tags":["Intelligence APIs"],"summary":"Quickstart Profile","description":"Create a first profile and return its first impacts in one call (the onboarding wizard's step 2).\n\nHeuristic scoring runs over the recent candidate set, then the strongest 25 candidates get an LLM\nassessment inside a 25 s budget. When the daily LLM budget guard trips, or time runs out before the\nfirst assessment, the response is heuristic-only and `note` says why.","operationId":"quickstart_profile_v1_profiles_quickstart_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuickstartIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/QuickstartOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/{profile_id}/substances":{"get":{"tags":["Intelligence APIs"],"summary":"Get Profile Substances","description":"The substances this profile contains, with their identifiers (CAS, EC, UNII, INCI).","operationId":"get_profile_substances_v1_profiles__profile_id__substances_get","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileSubstancesOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Intelligence APIs"],"summary":"Set Profile Substances","description":"Replace the profile's substances. Each `query` may be a name, CAS, EC, E number or UNII; it is\nmatched against the registry cache and the curated list, then looked up in GSRS / PubChem.\n`resolutions` reports each input; invalid ones are not saved, unverified names are kept as manual\nsubstances. Shared substances boost impact scores from the next impact run.","operationId":"set_profile_substances_v1_profiles__profile_id__substances_put","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileSubstancesIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileSubstancesOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/import/preview":{"post":{"tags":["Intelligence APIs"],"summary":"Preview Profile Import","description":"Validate a catalogue upload without changing profiles: per-row errors, create vs update, and how\neach substance resolves. Columns: name, description, verticals, product_categories, markets, topics,\nsubstances (list values separated by `;`). At most 500 rows.","operationId":"preview_profile_import_v1_profiles_import_preview_post","requestBody":{"content":{"application/json":{"schema":{"properties":{"mode":{"type":"string","pattern":"^(create|upsert)$","title":"Mode","default":"create"},"rows":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Rows","description":"Objects with name, description, verticals, product_categories, markets, topics, substances (lists or ;-separated strings)."},"csv":{"anyOf":[{"type":"string","maxLength":2000000},{"type":"null"}],"title":"Csv","description":"CSV text with a header row."}},"type":"object","title":"ProfileImportIn","description":"JSON form of a catalogue import. Send `rows` (objects) or `csv` (the file's text); multipart\nuploads with a `file` field (CSV or JSON) are accepted too. List columns separate values with `;`."}},"multipart/form-data":{"schema":{"properties":{"file":{"type":"string","format":"binary","description":"CSV with a header row, or a JSON array of row objects."},"mode":{"type":"string","enum":["create","upsert"],"default":"create"}},"type":"object","required":["file"]}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileImportPreviewOut"}}}}}}},"/v1/profiles/import":{"post":{"tags":["Intelligence APIs"],"summary":"Import Profiles","description":"Create (mode=create) or create-or-update by name (mode=upsert) up to 500 profiles in one call.\nInvalid rows are skipped and returned with their errors. A `substances` column replaces the\nprofile's substances; without the column they are left unchanged.","operationId":"import_profiles_v1_profiles_import_post","requestBody":{"content":{"application/json":{"schema":{"properties":{"mode":{"type":"string","pattern":"^(create|upsert)$","title":"Mode","default":"create"},"rows":{"anyOf":[{"items":{"additionalProperties":true,"type":"object"},"type":"array"},{"type":"null"}],"title":"Rows","description":"Objects with name, description, verticals, product_categories, markets, topics, substances (lists or ;-separated strings)."},"csv":{"anyOf":[{"type":"string","maxLength":2000000},{"type":"null"}],"title":"Csv","description":"CSV text with a header row."}},"type":"object","title":"ProfileImportIn","description":"JSON form of a catalogue import. Send `rows` (objects) or `csv` (the file's text); multipart\nuploads with a `file` field (CSV or JSON) are accepted too. List columns separate values with `;`."}},"multipart/form-data":{"schema":{"properties":{"file":{"type":"string","format":"binary","description":"CSV with a header row, or a JSON array of row objects."},"mode":{"type":"string","enum":["create","upsert"],"default":"create"}},"type":"object","required":["file"]}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ProfileImportOut"}}}}}}},"/v1/ask":{"post":{"tags":["Intelligence APIs"],"summary":"Ask","description":"Answer a regulatory question from the corpus with citations. Scope with `filter` (jurisdictions, verticals...).\n\nWith `conversation_id`, the question is answered in the context of that workspace conversation's last\nturns and both the question and the cited answer are stored in it.","operationId":"ask_v1_ask_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskRequest"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AskResponse"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks":{"get":{"tags":["Action APIs"],"summary":"List Webhooks","operationId":"list_webhooks_v1_webhooks_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Items_WebhookOut_"}}}}}},"post":{"tags":["Action APIs"],"summary":"Create Webhook","description":"Register an endpoint. The signing secret is returned once; verify `X-RegSignal-Signature` on every delivery.","operationId":"create_webhook_v1_webhooks_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/{webhook_id}":{"put":{"tags":["Action APIs"],"summary":"Update Webhook","operationId":"update_webhook_v1_webhooks__webhook_id__put","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Action APIs"],"summary":"Delete Webhook","operationId":"delete_webhook_v1_webhooks__webhook_id__delete","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/{webhook_id}/rotate-secret":{"post":{"tags":["Action APIs"],"summary":"Rotate Secret","operationId":"rotate_secret_v1_webhooks__webhook_id__rotate_secret_post","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/{webhook_id}/test":{"post":{"tags":["Action APIs"],"summary":"Test Webhook","description":"Send a synthetic `ping` event synchronously and return the delivery result.","operationId":"test_webhook_v1_webhooks__webhook_id__test_post","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeliveryOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/{webhook_id}/deliveries":{"get":{"tags":["Action APIs"],"summary":"List Deliveries","operationId":"list_deliveries_v1_webhooks__webhook_id__deliveries_get","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(pending|delivered|failed)$"},{"type":"null"}],"title":"Status"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Items_DeliveryOut_"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/webhooks/{webhook_id}/deliveries/{delivery_id}/retry":{"post":{"tags":["Action APIs"],"summary":"Retry Delivery","description":"Re-send one failed or pending delivery now (synchronous) and return the result.","operationId":"retry_delivery_v1_webhooks__webhook_id__deliveries__delivery_id__retry_post","parameters":[{"name":"webhook_id","in":"path","required":true,"schema":{"type":"string","title":"Webhook Id"}},{"name":"delivery_id","in":"path","required":true,"schema":{"type":"string","title":"Delivery Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DeliveryOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/filters":{"get":{"tags":["Action APIs"],"summary":"List Filters","operationId":"list_filters_v1_filters_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Items_SavedFilterOut_"}}}}}},"post":{"tags":["Action APIs"],"summary":"Create Filter","description":"Save a filter. With `view` set it becomes a console view (signals table or inbox); `digest: true`\nadds its signals to the email digest.","operationId":"create_filter_v1_filters_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedFilterIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedFilterOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/filters/{filter_id}":{"put":{"tags":["Action APIs"],"summary":"Update Filter","operationId":"update_filter_v1_filters__filter_id__put","parameters":[{"name":"filter_id","in":"path","required":true,"schema":{"type":"string","title":"Filter Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedFilterIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SavedFilterOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Action APIs"],"summary":"Delete Filter","operationId":"delete_filter_v1_filters__filter_id__delete","parameters":[{"name":"filter_id","in":"path","required":true,"schema":{"type":"string","title":"Filter Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/usage":{"get":{"tags":["Account"],"summary":"Usage","operationId":"usage_v1_usage_get","parameters":[{"name":"from","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"From"}},{"name":"to","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"To"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UsageOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/me":{"get":{"tags":["Console"],"summary":"Me","description":"Who am I: identity, organizations I belong to, the active one, and my permissions.","operationId":"me_v1_me_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MeOut"}}}}}}},"/v1/orgs":{"post":{"tags":["Console"],"summary":"Create Org","description":"Create an organization; the creator becomes its owner. First step of onboarding.","operationId":"create_org_v1_orgs_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrgCreateIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembershipOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/orgs/current":{"get":{"tags":["Console"],"summary":"Current Org","operationId":"current_org_v1_orgs_current_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrgOut"}}}}}},"delete":{"tags":["Console"],"summary":"Delete Org","description":"Permanently delete the organization and everything it owns (profiles, webhooks, keys, internal signals).","operationId":"delete_org_v1_orgs_current_delete","responses":{"204":{"description":"Successful Response"}}},"patch":{"tags":["Console"],"summary":"Update Org","operationId":"update_org_v1_orgs_current_patch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrgUpdateIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrgOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/orgs/current/onboarding":{"patch":{"tags":["Console"],"summary":"Update Onboarding","description":"Persist wizard progress. `completed=true` closes the wizard; `dismiss_guide=true` hides the starter guide.","operationId":"update_onboarding_v1_orgs_current_onboarding_patch","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OnboardingIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/OrgOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/members":{"get":{"tags":["Console"],"summary":"List Members","operationId":"list_members_v1_members_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"items":{"$ref":"#/components/schemas/MemberOut"},"type":"array"},"type":"object","title":"Response List Members V1 Members Get"}}}}}}},"/v1/members/{user_id}":{"patch":{"tags":["Console"],"summary":"Change Role","operationId":"change_role_v1_members__user_id__patch","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MemberOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Console"],"summary":"Remove Member","operationId":"remove_member_v1_members__user_id__delete","parameters":[{"name":"user_id","in":"path","required":true,"schema":{"type":"string","title":"User Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/invitations":{"get":{"tags":["Console"],"summary":"List Invitations","operationId":"list_invitations_v1_invitations_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"items":{"$ref":"#/components/schemas/InvitationOut"},"type":"array"},"type":"object","title":"Response List Invitations V1 Invitations Get"}}}}}},"post":{"tags":["Console"],"summary":"Create Invitation","description":"Create an invite link. Email delivery is the console's job (or copy the link); the link is valid 7 days.","operationId":"create_invitation_v1_invitations_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/InviteIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvitationOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/invitations/{invitation_id}":{"delete":{"tags":["Console"],"summary":"Revoke Invitation","operationId":"revoke_invitation_v1_invitations__invitation_id__delete","parameters":[{"name":"invitation_id","in":"path","required":true,"schema":{"type":"string","title":"Invitation Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/invitations/{token}/preview":{"get":{"tags":["Console"],"summary":"Preview Invitation","description":"Public: what the invite page shows before sign-in (org name and role).","operationId":"preview_invitation_v1_invitations__token__preview_get","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvitationPreviewOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/invitations/{token}/accept":{"post":{"tags":["Console"],"summary":"Accept Invitation","description":"Signed-in user joins the organization. The signed-in email must match the invited email.","operationId":"accept_invitation_v1_invitations__token__accept_post","parameters":[{"name":"token","in":"path","required":true,"schema":{"type":"string","title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MembershipOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/roles":{"get":{"tags":["Console"],"summary":"Roles","description":"The permission matrix rendered on the Roles page.","operationId":"roles_v1_roles_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RoleMatrixOut"}}}}}}},"/v1/api-keys":{"get":{"tags":["Console"],"summary":"List Api Keys","operationId":"list_api_keys_v1_api_keys_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"items":{"$ref":"#/components/schemas/ApiKeyOut"},"type":"array"},"type":"object","title":"Response List Api Keys V1 Api Keys Get"}}}}}},"post":{"tags":["Console"],"summary":"Create Api Key","description":"Create an integration key. The full key is returned once.","operationId":"create_api_key_v1_api_keys_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiKeyIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiKeyOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/api-keys/{key_id}":{"delete":{"tags":["Console"],"summary":"Revoke Api Key","operationId":"revoke_api_key_v1_api_keys__key_id__delete","parameters":[{"name":"key_id","in":"path","required":true,"schema":{"type":"string","title":"Key Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/orgs/current/retention":{"get":{"tags":["Console"],"summary":"Get Retention","description":"Effective retention per data class: defaults, this organization's overrides and the floors.","operationId":"get_retention_v1_orgs_current_retention_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetentionOut"}}}}}},"put":{"tags":["Console"],"summary":"Put Retention","description":"Replace the retention overrides (owners). The nightly purge applies them; the last receipt is kept.","operationId":"put_retention_v1_orgs_current_retention_put","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetentionIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RetentionOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/orgs/current/retention/preview":{"post":{"tags":["Console"],"summary":"Preview Retention","description":"Dry run: what the purge would delete now, for the saved policy or (with a body) unsaved overrides.","operationId":"preview_retention_v1_orgs_current_retention_preview_post","requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/RetentionIn"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Preview Retention V1 Orgs Current Retention Preview Post"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/orgs/current/retention/receipt":{"get":{"tags":["Console"],"summary":"Retention Receipt","description":"The JSON deletion receipt of the last real purge run (404 `no_receipt` before the first one).","operationId":"retention_receipt_v1_orgs_current_retention_receipt_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":true,"type":"object","title":"Response Retention Receipt V1 Orgs Current Retention Receipt Get"}}}}}}},"/v1/inbox":{"get":{"tags":["Console"],"summary":"Inbox","description":"Impact matches across every profile in the organization, with triage state.","operationId":"inbox_v1_inbox_get","parameters":[{"name":"level","in":"query","required":false,"schema":{"type":"string","pattern":"^(none|low|medium|high)$","description":"Minimum level","default":"medium","title":"Level"},"description":"Minimum level"},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated review statuses","title":"Status"},"description":"Comma-separated review statuses"},{"name":"levels","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Exact levels, comma-separated (overrides `level` minimum)","title":"Levels"},"description":"Exact levels, comma-separated (overrides `level` minimum)"},{"name":"due","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(overdue|soon|scheduled|none)$"},{"type":"null"}],"description":"Due-date bucket","title":"Due"},"description":"Due-date bucket"},{"name":"owner","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Member user id, or 'me', or 'unassigned'","title":"Owner"},"description":"Member user id, or 'me', or 'unassigned'"},{"name":"approval","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(not_required|pending|approved|rejected)$"},{"type":"null"}],"title":"Approval"}},{"name":"profile_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"}},{"name":"jurisdictions","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdictions"}},{"name":"verticals","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verticals"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Q"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","pattern":"^(score|updated|due|published)$","default":"score","title":"Sort"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InboxOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/inbox/summary":{"get":{"tags":["Console"],"summary":"Inbox Summary","description":"The 'Needs attention' panel: counts for open medium+ impacts.","operationId":"inbox_summary_v1_inbox_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InboxSummary"}}}}}}},"/v1/impact/{match_id}":{"get":{"tags":["Console"],"summary":"Get Impact","description":"One impact with its triage state (deep links from webhooks and emails).","operationId":"get_impact_v1_impact__match_id__get","parameters":[{"name":"match_id","in":"path","required":true,"schema":{"type":"string","title":"Match Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InboxItem"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Console"],"summary":"Triage","description":"Assign, set status, due date or notes on one impact.","operationId":"triage_v1_impact__match_id__patch","parameters":[{"name":"match_id","in":"path","required":true,"schema":{"type":"string","title":"Match Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TriageIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InboxItem"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/inbox/bulk":{"post":{"tags":["Console"],"summary":"Bulk Triage","description":"Apply the same triage change to many impacts at once (multi-select actions in the inbox).","operationId":"bulk_triage_v1_inbox_bulk_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkTriageIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkTriageOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/impact/{match_id}/approval":{"post":{"tags":["Console"],"summary":"Approval","description":"Approval step on an impact: `request` (analyst+), `approve` / `reject` (admin+, not the requester).\n\nApproving an impact that is in review marks it actioned. Self-approval is refused unless the\norganization setting `approvals.allow_self_approval` is true.","operationId":"approval_v1_impact__match_id__approval_post","parameters":[{"name":"match_id","in":"path","required":true,"schema":{"type":"string","title":"Match Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApprovalIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InboxItem"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/dashboard":{"get":{"tags":["Console"],"summary":"Dashboard","operationId":"dashboard_v1_dashboard_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DashboardOut"}}}}}}},"/v1/insights/overview":{"get":{"tags":["Console"],"summary":"Insights Overview","description":"Analytics for the Insights dashboard: volume over time, distributions, impact mix, upcoming deadlines.","operationId":"insights_overview_v1_insights_overview_get","parameters":[{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","maximum":365,"minimum":7,"default":30,"title":"Window Days"}},{"name":"jurisdictions","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdictions"}},{"name":"verticals","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verticals"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InsightsOverview"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/insights/integrations":{"get":{"tags":["Console"],"summary":"Integration Status","description":"Webhook delivery health per endpoint plus recent sync history, and API request volume.","operationId":"integration_status_v1_insights_integrations_get","parameters":[{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","maximum":365,"minimum":1,"default":30,"title":"Window Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/IntegrationStatus"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/{profile_id}/analysis":{"get":{"tags":["Console"],"summary":"Get Analysis","operationId":"get_analysis_v1_profiles__profile_id__analysis_get","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnalysisEnvelope"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Console"],"summary":"Generate Analysis","description":"Generate an impact analysis from the profile's medium+ impacts in the window (one LLM call).","operationId":"generate_analysis_v1_profiles__profile_id__analysis_post","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}},{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","maximum":365,"minimum":7,"default":90,"title":"Window Days"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AnalysisEnvelope"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/insights/trends":{"get":{"tags":["Console"],"summary":"Insights Trends","description":"Signal volume per week or month for the top values of one dimension, with anomaly flags.\n\nEach series compares its last complete bucket with the median of the previous 8: `rising` at 2x the\nmedian with at least 5 items, `falling` at half the median when the median is at least 5. Rising series\ncarry their strongest items so the spike can be inspected. Filters are the same as `GET /v1/signals`.","operationId":"insights_trends_v1_insights_trends_get","parameters":[{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","maximum":730,"minimum":28,"default":365,"title":"Window Days"}},{"name":"bucket","in":"query","required":false,"schema":{"type":"string","pattern":"^(week|month)$","default":"week","title":"Bucket"}},{"name":"dimension","in":"query","required":false,"schema":{"type":"string","pattern":"^(topic|vertical|jurisdiction|doc_type)$","default":"topic","title":"Dimension"}},{"name":"top","in":"query","required":false,"schema":{"type":"integer","maximum":20,"minimum":1,"default":8,"title":"Top"}},{"name":"jurisdictions","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdictions"}},{"name":"verticals","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Verticals"}},{"name":"product_categories","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product Categories"}},{"name":"topics","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Topics"}},{"name":"doc_types","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Types"}},{"name":"sources","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sources"}},{"name":"origin","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(public|internal)$"},{"type":"null"}],"title":"Origin"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Q"}},{"name":"min_confidence","in":"query","required":false,"schema":{"anyOf":[{"type":"number","maximum":1,"minimum":0},{"type":"null"}],"title":"Min Confidence"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TrendsOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/insights/foresight":{"get":{"tags":["Console"],"summary":"Get Foresight","description":"The organization's stored foresight brief (`brief` is null until one has been generated).","operationId":"get_foresight_v1_insights_foresight_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForesightEnvelope"}}}}}},"post":{"tags":["Console"],"summary":"Generate Foresight","description":"Generate the foresight brief: one structured LLM call over topic and jurisdiction trends plus the 30\nmost recent high-confidence signals. Cached for 24 hours in the organization settings unless `force`.","operationId":"generate_foresight_v1_insights_foresight_post","parameters":[{"name":"window_days","in":"query","required":false,"schema":{"type":"integer","maximum":365,"minimum":28,"default":90,"title":"Window Days"}},{"name":"force","in":"query","required":false,"schema":{"type":"boolean","description":"Regenerate even when the stored brief is younger than 24 hours","default":false,"title":"Force"},"description":"Regenerate even when the stored brief is younger than 24 hours"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ForesightEnvelope"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/audit":{"get":{"tags":["Console"],"summary":"List Audit","description":"Audit events for the organization, newest first (offset-paginated).","operationId":"list_audit_v1_audit_get","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}},{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"description":"Action prefix, e.g. `webhook.` or `member.invited`","title":"Action"},"description":"Action prefix, e.g. `webhook.` or `member.invited`"},{"name":"actor","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"description":"Actor email substring or exact user id","title":"Actor"},"description":"Actor email substring or exact user id"},{"name":"target_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"title":"Target Type"}},{"name":"from","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"Events at or after this time","title":"From"},"description":"Events at or after this time"},{"name":"to","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"Events at or before this time","title":"To"},"description":"Events at or before this time"},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"description":"Substring match on summary, action or target id","title":"Q"},"description":"Substring match on summary, action or target id"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AuditPageOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/audit/export.csv":{"get":{"tags":["Console"],"summary":"Export Audit Csv","description":"Stream the audit log as CSV (same filters as `GET /v1/audit`; admins).","operationId":"export_audit_csv_v1_audit_export_csv_get","parameters":[{"name":"action","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":60},{"type":"null"}],"description":"Action prefix, e.g. `webhook.` or `member.invited`","title":"Action"},"description":"Action prefix, e.g. `webhook.` or `member.invited`"},{"name":"actor","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":320},{"type":"null"}],"description":"Actor email substring or exact user id","title":"Actor"},"description":"Actor email substring or exact user id"},{"name":"target_type","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":40},{"type":"null"}],"title":"Target Type"}},{"name":"from","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"Events at or after this time","title":"From"},"description":"Events at or after this time"},{"name":"to","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"Events at or before this time","title":"To"},"description":"Events at or before this time"},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"description":"Substring match on summary, action or target id","title":"Q"},"description":"Substring match on summary, action or target id"}],"responses":{"200":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tasks":{"get":{"tags":["Workflow"],"summary":"List Tasks","description":"Tasks in the organization with their linked impact, filtered and offset-paginated.","operationId":"list_tasks_v1_tasks_get","parameters":[{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated: open,in_progress,done,cancelled","title":"Status"},"description":"Comma-separated: open,in_progress,done,cancelled"},{"name":"owner","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Member user id, or 'me', or 'unassigned'","title":"Owner"},"description":"Member user id, or 'me', or 'unassigned'"},{"name":"priority","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated priorities","title":"Priority"},"description":"Comma-separated priorities"},{"name":"due","in":"query","required":false,"schema":{"anyOf":[{"type":"string","pattern":"^(overdue|soon|scheduled|none)$"},{"type":"null"}],"description":"Due-date bucket","title":"Due"},"description":"Due-date bucket"},{"name":"impact_match_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Impact Match Id"}},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Q"}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","pattern":"^(due|updated|created|priority)$","default":"due","title":"Sort"}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskPageOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Workflow"],"summary":"Create Task","description":"Create a task, optionally linked to an impact (document and profile are filled in from it).","operationId":"create_task_v1_tasks_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskCreateIn"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tasks/summary":{"get":{"tags":["Workflow"],"summary":"Task Summary","description":"Counts by status plus overdue / due soon / assigned to me / unassigned among open tasks.","operationId":"task_summary_v1_tasks_summary_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskSummaryOut"}}}}}}},"/v1/tasks/{task_id}":{"get":{"tags":["Workflow"],"summary":"Get Task","operationId":"get_task_v1_tasks__task_id__get","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Workflow"],"summary":"Update Task","description":"Edit title, description, status, priority, owner, due date or checklist.","operationId":"update_task_v1_tasks__task_id__patch","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskPatchIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TaskOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Workflow"],"summary":"Delete Task","operationId":"delete_task_v1_tasks__task_id__delete","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tasks/bulk":{"post":{"tags":["Workflow"],"summary":"Bulk Tasks","description":"Set status and/or owner on many tasks at once (multi-select actions on the Tasks page).","operationId":"bulk_tasks_v1_tasks_bulk_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkTaskIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BulkTaskOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/rules":{"get":{"tags":["Workflow"],"summary":"List Rules","description":"Assignment rules in evaluation order.","operationId":"list_rules_v1_rules_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"items":{"$ref":"#/components/schemas/RuleOut"},"type":"array"},"type":"object","title":"Response List Rules V1 Rules Get"}}}}}},"post":{"tags":["Workflow"],"summary":"Create Rule","description":"Create a rule (admins). New rules go last unless `position` is given.","operationId":"create_rule_v1_rules_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuleIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuleOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/rules/{rule_id}":{"put":{"tags":["Workflow"],"summary":"Update Rule","description":"Replace a rule's name, enabled flag, conditions, actions and position (admins).","operationId":"update_rule_v1_rules__rule_id__put","parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"string","title":"Rule Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuleIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuleOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Workflow"],"summary":"Delete Rule","operationId":"delete_rule_v1_rules__rule_id__delete","parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"string","title":"Rule Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/rules/{rule_id}/test":{"post":{"tags":["Workflow"],"summary":"Test Rule","description":"Dry run: how many of the last 200 impacts would this rule match? Nothing is changed.\n\nPass a body to test unsaved edits; `rule_id` may be `new` in that case.","operationId":"test_rule_v1_rules__rule_id__test_post","parameters":[{"name":"rule_id","in":"path","required":true,"schema":{"type":"string","title":"Rule Id"}}],"requestBody":{"content":{"application/json":{"schema":{"anyOf":[{"$ref":"#/components/schemas/RuleIn"},{"type":"null"}],"title":"Body"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RuleTestOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/workspace/conversations":{"get":{"tags":["Workspace"],"summary":"List Conversations","description":"Conversations the caller can see (own private ones plus org-shared), most recently active first.","operationId":"list_conversations_v1_workspace_conversations_get","parameters":[{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"description":"Substring match on the title","title":"Q"},"description":"Substring match on the title"},{"name":"visibility","in":"query","required":false,"schema":{"anyOf":[{"enum":["private","org"],"type":"string"},{"type":"null"}],"title":"Visibility"}},{"name":"profile_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"}},{"name":"archived","in":"query","required":false,"schema":{"type":"boolean","description":"Archived threads instead of active ones","default":false,"title":"Archived"},"description":"Archived threads instead of active ones"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationPageOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Workspace"],"summary":"Create Conversation","description":"Start a conversation. With `question`, the first answer is generated and both turns are returned.","operationId":"create_conversation_v1_workspace_conversations_post","requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationCreateIn"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationDetailOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/workspace/conversations/{conversation_id}":{"get":{"tags":["Workspace"],"summary":"Get Conversation","operationId":"get_conversation_v1_workspace_conversations__conversation_id__get","parameters":[{"name":"conversation_id","in":"path","required":true,"schema":{"type":"string","title":"Conversation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationDetailOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"patch":{"tags":["Workspace"],"summary":"Update Conversation","description":"Rename, share (private <-> org), archive or link to a profile.","operationId":"update_conversation_v1_workspace_conversations__conversation_id__patch","parameters":[{"name":"conversation_id","in":"path","required":true,"schema":{"type":"string","title":"Conversation Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationPatchIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConversationOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Workspace"],"summary":"Delete Conversation","description":"Delete a conversation and its messages and pins. Creator, or admin+ for shared threads.","operationId":"delete_conversation_v1_workspace_conversations__conversation_id__delete","parameters":[{"name":"conversation_id","in":"path","required":true,"schema":{"type":"string","title":"Conversation Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/workspace/conversations/{conversation_id}/messages":{"post":{"tags":["Workspace"],"summary":"Post Message","description":"Ask a follow-up: runs Ask with the conversation's filter and its last turns as context; persists both.","operationId":"post_message_v1_workspace_conversations__conversation_id__messages_post","parameters":[{"name":"conversation_id","in":"path","required":true,"schema":{"type":"string","title":"Conversation Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MessageTurnOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/workspace/conversations/{conversation_id}/export":{"get":{"tags":["Workspace"],"summary":"Export Conversation","description":"Download the conversation as a cited brief (Markdown): every Q/A with numbered sources.","operationId":"export_conversation_v1_workspace_conversations__conversation_id__export_get","parameters":[{"name":"conversation_id","in":"path","required":true,"schema":{"type":"string","title":"Conversation Id"}},{"name":"format","in":"query","required":false,"schema":{"const":"md","type":"string","description":"Only Markdown for now","default":"md","title":"Format"},"description":"Only Markdown for now"}],"responses":{"200":{"description":"Successful Response","content":{"text/plain":{"schema":{"type":"string"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/{profile_id}/pins":{"get":{"tags":["Workspace"],"summary":"List Pins","description":"Answers pinned to a profile, newest first, with the question they answered.","operationId":"list_pins_v1_profiles__profile_id__pins_get","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinsOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"post":{"tags":["Workspace"],"summary":"Create Pin","description":"Pin an assistant answer (from a conversation the caller can see) to a profile.","operationId":"create_pin_v1_profiles__profile_id__pins_post","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinIn"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PinOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/profiles/{profile_id}/pins/{pin_id}":{"delete":{"tags":["Workspace"],"summary":"Delete Pin","operationId":"delete_pin_v1_profiles__profile_id__pins__pin_id__delete","parameters":[{"name":"profile_id","in":"path","required":true,"schema":{"type":"string","title":"Profile Id"}},{"name":"pin_id","in":"path","required":true,"schema":{"type":"string","title":"Pin Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/translations/languages":{"get":{"tags":["Intelligence APIs"],"summary":"Translation Languages","description":"Language codes `translate` accepts.","operationId":"translation_languages_v1_translations_languages_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslationLanguagesOut"}}}}}}},"/v1/signals/{signal_id}/translation":{"get":{"tags":["Intelligence APIs"],"summary":"Get Translation","description":"A cached translation of the signal's title, summary and key points; 404 `not_translated` when none\nexists yet (call `POST .../translate` to generate one). English and the signal's own language return\nthe original text.","operationId":"get_translation_v1_signals__signal_id__translation_get","parameters":[{"name":"signal_id","in":"path","required":true,"schema":{"type":"string","title":"Signal Id"}},{"name":"lang","in":"query","required":true,"schema":{"type":"string","minLength":2,"maxLength":10,"description":"Target language, e.g. fr","title":"Lang"},"description":"Target language, e.g. fr"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslationOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/signals/{signal_id}/translate":{"post":{"tags":["Intelligence APIs"],"summary":"Translate Signal","description":"Translate the signal's title, summary and key points into `lang` (machine translation, cached per\nlanguage). Idempotent: an existing translation is returned without a new model call. At most three\ntranslations run concurrently per organisation; a fourth gets 429 `translation_busy`.","operationId":"translate_signal_v1_signals__signal_id__translate_post","parameters":[{"name":"signal_id","in":"path","required":true,"schema":{"type":"string","title":"Signal Id"}},{"name":"lang","in":"query","required":true,"schema":{"type":"string","minLength":2,"maxLength":10,"description":"Target language, e.g. fr","title":"Lang"},"description":"Target language, e.g. fr"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TranslationOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/regulations":{"get":{"tags":["Signal APIs"],"summary":"List Regulations","description":"Regulatory instruments with their lifecycle status, most recent activity first (offset-paginated).","operationId":"list_regulations_v1_regulations_get","parameters":[{"name":"jurisdiction","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"One jurisdiction code, e.g. EU","title":"Jurisdiction"},"description":"One jurisdiction code, e.g. EU"},{"name":"status","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated: proposed,adopted,in_force,amended,repealed,guidance","title":"Status"},"description":"Comma-separated: proposed,adopted,in_force,amended,repealed,guidance"},{"name":"q","in":"query","required":false,"schema":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"description":"Substring match on title, identifier or summary","title":"Q"},"description":"Substring match on title, identifier or summary"},{"name":"updated_after","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"description":"Only regulations changed after this time","title":"Updated After"},"description":"Only regulations changed after this time"},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","maximum":200,"minimum":1,"default":50,"title":"Limit"}},{"name":"offset","in":"query","required":false,"schema":{"type":"integer","minimum":0,"default":0,"title":"Offset"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegulationPageOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/regulations/{regulation_id}":{"get":{"tags":["Signal APIs"],"summary":"Get Regulation","description":"One regulation with its timeline: every linked document oldest first (date, type, title, signal id).","operationId":"get_regulation_v1_regulations__regulation_id__get","parameters":[{"name":"regulation_id","in":"path","required":true,"schema":{"type":"string","title":"Regulation Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RegulationDetailOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/connectors":{"get":{"tags":["Connectors"],"summary":"List Connectors","description":"Connectors of the organization, credentials masked.","operationId":"list_connectors_v1_connectors_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"items":{"$ref":"#/components/schemas/ConnectorOut"},"type":"array"},"type":"object","title":"Response List Connectors V1 Connectors Get"}}}}}},"post":{"tags":["Connectors"],"summary":"Create Connector","description":"Register a Jira Cloud or ServiceNow connector (admins). Credentials are encrypted before storage.","operationId":"create_connector_v1_connectors_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/connectors/{connector_id}":{"get":{"tags":["Connectors"],"summary":"Get Connector","operationId":"get_connector_v1_connectors__connector_id__get","parameters":[{"name":"connector_id","in":"path","required":true,"schema":{"type":"string","title":"Connector Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"put":{"tags":["Connectors"],"summary":"Update Connector","description":"Replace name, URL, config and enabled flag; `auth` omitted (or masked) keeps the stored secrets.","operationId":"update_connector_v1_connectors__connector_id__put","parameters":[{"name":"connector_id","in":"path","required":true,"schema":{"type":"string","title":"Connector Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorIn"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}},"delete":{"tags":["Connectors"],"summary":"Delete Connector","description":"Remove a connector and its ticket links (the remote tickets are untouched).","operationId":"delete_connector_v1_connectors__connector_id__delete","parameters":[{"name":"connector_id","in":"path","required":true,"schema":{"type":"string","title":"Connector Id"}}],"responses":{"204":{"description":"Successful Response"},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/connectors/{connector_id}/test":{"post":{"tags":["Connectors"],"summary":"Test Connector","description":"Call the remote system with the stored credentials; records `last_test_at` / `last_test_ok`.","operationId":"test_connector_v1_connectors__connector_id__test_post","parameters":[{"name":"connector_id","in":"path","required":true,"schema":{"type":"string","title":"Connector Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConnectorTestOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/impact/{match_id}/ticket":{"post":{"tags":["Connectors"],"summary":"Create Impact Ticket","description":"Open a ticket for an impact: summary, key points, rationale, required actions and the console link.","operationId":"create_impact_ticket_v1_impact__match_id__ticket_post","parameters":[{"name":"match_id","in":"path","required":true,"schema":{"type":"string","title":"Match Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTicketIn"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketLinkOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tasks/{task_id}/ticket":{"post":{"tags":["Connectors"],"summary":"Create Task Ticket","description":"Open a ticket for a task: its title and checklist, plus the linked impact's context when it has one.","operationId":"create_task_ticket_v1_tasks__task_id__ticket_post","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateTicketIn"}}}},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketLinkOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/impact/{match_id}/tickets":{"get":{"tags":["Connectors"],"summary":"List Impact Tickets","operationId":"list_impact_tickets_v1_impact__match_id__tickets_get","parameters":[{"name":"match_id","in":"path","required":true,"schema":{"type":"string","title":"Match Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketLinkListOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/tasks/{task_id}/tickets":{"get":{"tags":["Connectors"],"summary":"List Task Tickets","operationId":"list_task_tickets_v1_tasks__task_id__tickets_get","parameters":[{"name":"task_id","in":"path","required":true,"schema":{"type":"string","title":"Task Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketLinkListOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/ticket-links/{link_id}/sync":{"post":{"tags":["Connectors"],"summary":"Sync Ticket Link","description":"Fetch the ticket's current status from the provider now (the cron does this for open links).","operationId":"sync_ticket_link_v1_ticket_links__link_id__sync_post","parameters":[{"name":"link_id","in":"path","required":true,"schema":{"type":"string","title":"Link Id"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/TicketLinkOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/calendar":{"get":{"tags":["Console"],"summary":"List Calendar","description":"Dated items for the organization in `[from, to]`, earliest first.","operationId":"list_calendar_v1_calendar_get","parameters":[{"name":"from","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"description":"First day (inclusive); default today.","title":"From"},"description":"First day (inclusive); default today."},{"name":"to","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"description":"Last day (inclusive); default from + 90 days.","title":"To"},"description":"Last day (inclusive); default from + 90 days."},{"name":"profile_id","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"}},{"name":"kinds","in":"query","required":false,"schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Comma-separated subset of comment_deadline,effective,task_due,impact_due","title":"Kinds"},"description":"Comma-separated subset of comment_deadline,effective,task_due,impact_due"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CalendarOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/calendar/feed-url":{"get":{"tags":["Console"],"summary":"Get Feed Url","description":"The current subscribable URL (null until `POST /v1/calendar/token`).","operationId":"get_feed_url_v1_calendar_feed_url_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedUrlOut"}}}}}}},"/v1/calendar/token":{"post":{"tags":["Console"],"summary":"Create Feed Token","description":"Issue the feed token (idempotent: returns the existing one while it is valid).","operationId":"create_feed_token_v1_calendar_token_post","responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedTokenOut"}}}}}},"delete":{"tags":["Console"],"summary":"Rotate Feed Token","description":"Rotate: every copy of the previous URL stops working; the new token is returned.","operationId":"rotate_feed_token_v1_calendar_token_delete","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedTokenOut"}}}}}}},"/v1/calendar/feed.ics":{"get":{"tags":["Console"],"summary":"Calendar Feed","description":"The next 180 days as `text/calendar`. Authenticated by the feed token alone (no session).","operationId":"calendar_feed_v1_calendar_feed_ics_get","parameters":[{"name":"token","in":"query","required":true,"schema":{"type":"string","minLength":20,"maxLength":200,"title":"Token"}}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/billing/plan":{"get":{"tags":["Account"],"summary":"Plan","description":"The plan, its ceilings, usage so far in the current windows, renewal and subscription status.","operationId":"plan_v1_billing_plan_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PlanOut"}}}}}}},"/v1/billing/checkout":{"post":{"tags":["Account"],"summary":"Checkout","description":"Start a Stripe Checkout Session for a paid plan; the console redirects to the returned URL.","operationId":"checkout_v1_billing_checkout_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CheckoutIn"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UrlOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/billing/portal":{"post":{"tags":["Account"],"summary":"Portal","description":"A Stripe Billing Portal session (payment method, invoices, cancel) for the organization's customer.","operationId":"portal_v1_billing_portal_post","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UrlOut"}}}}}}},"/v1/billing/invoices":{"get":{"tags":["Account"],"summary":"Invoices","description":"The last 12 invoices from Stripe (503 when billing is not configured; empty without a customer).","operationId":"invoices_v1_billing_invoices_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/InvoicesOut"}}}}}}},"/v1/access/check":{"get":{"tags":["Launch"],"summary":"Access Check","description":"May the signed-in user create an organization? Members are always allowed.","operationId":"access_check_v1_access_check_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AccessCheckOut"}}}}}}},"/v1/feedback":{"post":{"tags":["Launch"],"summary":"Send Feedback","description":"Store in-app feedback (bug, idea, praise, other) and post it to the ops channel.","operationId":"send_feedback_v1_feedback_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedbackIn"}}},"required":true},"responses":{"201":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/FeedbackCreatedOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/waitlist":{"post":{"tags":["Launch"],"summary":"Join Waitlist","description":"Request access. Public; idempotent by email and always answers the same way (no enumeration).","operationId":"join_waitlist_v1_waitlist_post","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WaitlistIn"}}},"required":true},"responses":{"202":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/WaitlistJoinOut"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}}}}},"/v1/status":{"get":{"tags":["Meta"],"summary":"Public Status","description":"Public platform status (no authentication, no tenant data, cached for 30 seconds).","operationId":"public_status_v1_status_get","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}}},"components":{"schemas":{"AccessCheckOut":{"properties":{"allowed":{"type":"boolean","title":"Allowed"},"reason":{"type":"string","title":"Reason","description":"open | member | env_domain | invitation | allowlist_email | allowlist_domain | not_invited | no_email"},"waitlisted":{"type":"boolean","title":"Waitlisted"},"waitlist_status":{"anyOf":[{"type":"string","enum":["pending","approved","declined"]},{"type":"null"}],"title":"Waitlist Status"},"mode":{"type":"string","enum":["open","invite_only"],"title":"Mode"},"waitlist_url":{"type":"string","title":"Waitlist Url"}},"type":"object","required":["allowed","reason","waitlisted","mode","waitlist_url"],"title":"AccessCheckOut"},"AdHocImpactIn":{"properties":{"profile":{"$ref":"#/components/schemas/ProfileIn"},"document_ids":{"items":{"type":"string"},"type":"array","maxItems":50,"title":"Document Ids"},"filter":{"anyOf":[{"$ref":"#/components/schemas/DocumentFilter"},{"type":"null"}]},"limit":{"type":"integer","maximum":50.0,"minimum":1.0,"title":"Limit","default":20},"use_llm":{"type":"boolean","title":"Use Llm","default":true}},"type":"object","required":["profile"],"title":"AdHocImpactIn"},"AnalysisEnvelope":{"properties":{"profile_id":{"type":"string","title":"Profile Id"},"analysis":{"anyOf":[{"$ref":"#/components/schemas/ImpactAnalysisOut"},{"type":"null"}]},"analyzed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Analyzed At"},"basis":{"additionalProperties":true,"type":"object","title":"Basis"}},"type":"object","required":["profile_id","analysis","analyzed_at","basis"],"title":"AnalysisEnvelope"},"ApiKeyIn":{"properties":{"name":{"type":"string","maxLength":120,"minLength":1,"title":"Name"}},"type":"object","required":["name"],"title":"ApiKeyIn"},"ApiKeyOut":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"prefix":{"type":"string","title":"Prefix"},"active":{"type":"boolean","title":"Active"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"last_used_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Used At"},"revoked_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Revoked At"},"key":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Key","description":"Full key, returned once on creation."}},"type":"object","required":["id","name","prefix","active","created_at","last_used_at","revoked_at"],"title":"ApiKeyOut"},"ApprovalIn":{"properties":{"action":{"type":"string","title":"Action","description":"request | approve | reject"},"note":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Note"}},"type":"object","required":["action"],"title":"ApprovalIn"},"AskRequest":{"properties":{"question":{"type":"string","maxLength":2000,"minLength":5,"title":"Question"},"filter":{"$ref":"#/components/schemas/DocumentFilter"},"top_k":{"type":"integer","maximum":25.0,"minimum":1.0,"title":"Top K","default":10},"conversation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Conversation Id","description":"Append this question and its answer to a workspace conversation (prior turns become context). Omit for a stateless answer."}},"type":"object","required":["question"],"title":"AskRequest"},"AskResponse":{"properties":{"answer":{"type":"string","title":"Answer"},"citations":{"items":{"$ref":"#/components/schemas/CitationOut"},"type":"array","title":"Citations"},"insufficient_evidence":{"type":"boolean","title":"Insufficient Evidence"},"confidence":{"type":"number","title":"Confidence"},"contexts":{"items":{"$ref":"#/components/schemas/ContextOut"},"type":"array","title":"Contexts"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model"},"conversation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Conversation Id","description":"Set when the turn was persisted."},"message_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message Id","description":"Id of the stored assistant message."}},"type":"object","required":["answer","citations","insufficient_evidence","confidence","contexts","model"],"title":"AskResponse"},"AuditEventOut":{"properties":{"id":{"type":"string","title":"Id"},"action":{"type":"string","title":"Action"},"actor_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor User Id"},"actor_email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Actor Email"},"actor_via":{"type":"string","title":"Actor Via"},"target_type":{"type":"string","title":"Target Type"},"target_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Target Id"},"summary":{"type":"string","title":"Summary"},"meta":{"additionalProperties":true,"type":"object","title":"Meta"},"ip":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ip"},"request_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Request Id"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","action","actor_user_id","actor_email","actor_via","target_type","target_id","summary","meta","ip","request_id","created_at"],"title":"AuditEventOut"},"AuditPageOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/AuditEventOut"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"has_more":{"type":"boolean","title":"Has More"}},"type":"object","required":["items","total","has_more"],"title":"AuditPageOut"},"Bucket":{"properties":{"key":{"type":"string","title":"Key"},"count":{"type":"integer","title":"Count"}},"type":"object","required":["key","count"],"title":"Bucket"},"BulkTaskIn":{"properties":{"ids":{"items":{"type":"string"},"type":"array","maxItems":200,"minItems":1,"title":"Ids"},"patch":{"$ref":"#/components/schemas/BulkTaskPatchIn"}},"type":"object","required":["ids","patch"],"title":"BulkTaskIn"},"BulkTaskOut":{"properties":{"updated":{"type":"integer","title":"Updated"},"skipped":{"items":{"type":"string"},"type":"array","title":"Skipped"}},"type":"object","required":["updated","skipped"],"title":"BulkTaskOut"},"BulkTaskPatchIn":{"properties":{"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"owner_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner User Id","description":"Member user id, or empty string to unassign"}},"type":"object","title":"BulkTaskPatchIn"},"BulkTriageIn":{"properties":{"ids":{"items":{"type":"string"},"type":"array","maxItems":200,"minItems":1,"title":"Ids"},"patch":{"$ref":"#/components/schemas/TriageIn"}},"type":"object","required":["ids","patch"],"title":"BulkTriageIn"},"BulkTriageOut":{"properties":{"updated":{"type":"integer","title":"Updated"},"skipped":{"items":{"type":"string"},"type":"array","title":"Skipped"}},"type":"object","required":["updated","skipped"],"title":"BulkTriageOut"},"CalendarItemOut":{"properties":{"id":{"type":"string","title":"Id","description":"Stable id, also the ICS UID stem: `<kind>-<target id>`."},"date":{"type":"string","format":"date","title":"Date"},"kind":{"type":"string","title":"Kind"},"title":{"type":"string","title":"Title"},"signal_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Signal Id"},"impact_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Impact Id"},"task_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Task Id"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"},"jurisdiction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdiction"},"level":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Level"},"url":{"type":"string","title":"Url"}},"type":"object","required":["id","date","kind","title","url"],"title":"CalendarItemOut"},"CalendarOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/CalendarItemOut"},"type":"array","title":"Items"},"start":{"type":"string","format":"date","title":"Start"},"end":{"type":"string","format":"date","title":"End"},"kinds":{"items":{"type":"string"},"type":"array","title":"Kinds"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"}},"type":"object","required":["items","start","end","kinds"],"title":"CalendarOut"},"ChecklistItem":{"properties":{"text":{"type":"string","maxLength":300,"minLength":1,"title":"Text"},"done":{"type":"boolean","title":"Done","default":false}},"type":"object","required":["text"],"title":"ChecklistItem"},"ChecklistOut":{"properties":{"has_profile":{"type":"boolean","title":"Has Profile"},"has_subscription":{"type":"boolean","title":"Has Subscription"},"has_api_key":{"type":"boolean","title":"Has Api Key"},"has_teammate":{"type":"boolean","title":"Has Teammate"},"completed":{"type":"integer","title":"Completed"},"total":{"type":"integer","title":"Total"},"has_impact_run":{"type":"boolean","title":"Has Impact Run","description":"True once impact matching has run (quickstart or a manual run).","default":false}},"type":"object","required":["has_profile","has_subscription","has_api_key","has_teammate","completed","total"],"title":"ChecklistOut"},"CheckoutIn":{"properties":{"plan":{"type":"string","title":"Plan","description":"developer | enterprise"}},"type":"object","required":["plan"],"title":"CheckoutIn"},"CitationOut":{"properties":{"context_id":{"type":"integer","title":"Context Id"},"document_id":{"type":"string","title":"Document Id"},"title":{"type":"string","title":"Title"},"url":{"type":"string","title":"Url"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"published_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published At"},"chunk_index":{"type":"integer","title":"Chunk Index"},"quote":{"type":"string","title":"Quote"}},"type":"object","required":["context_id","document_id","title","url","jurisdiction","published_at","chunk_index","quote"],"title":"CitationOut"},"ClassifyIn":{"properties":{"text":{"type":"string","maxLength":400000,"minLength":20,"title":"Text"},"title":{"type":"string","maxLength":500,"title":"Title","default":"Untitled document"},"jurisdiction":{"type":"string","title":"Jurisdiction","description":"Issuing jurisdiction code, used as context.","default":"EU"},"publisher":{"type":"string","title":"Publisher","default":""},"url":{"type":"string","title":"Url","default":""}},"type":"object","required":["text"],"title":"ClassifyIn"},"ClassifyOut":{"properties":{"is_regulatory":{"type":"boolean","title":"Is Regulatory"},"title_en":{"type":"string","title":"Title En"},"summary":{"type":"string","title":"Summary"},"key_points":{"items":{"type":"string"},"type":"array","title":"Key Points"},"doc_type":{"type":"string","title":"Doc Type"},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"product_categories":{"items":{"type":"string"},"type":"array","title":"Product Categories"},"topics":{"items":{"type":"string"},"type":"array","title":"Topics"},"affected_markets":{"items":{"type":"string"},"type":"array","title":"Affected Markets"},"effective_date":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Effective Date"},"comment_deadline":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Comment Deadline"},"confidence":{"type":"number","title":"Confidence"},"model":{"type":"string","title":"Model"}},"type":"object","required":["is_regulatory","title_en","summary","key_points","doc_type","verticals","product_categories","topics","affected_markets","effective_date","comment_deadline","confidence","model"],"title":"ClassifyOut"},"ConnectorIn":{"properties":{"provider":{"type":"string","title":"Provider","description":"jira | servicenow"},"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"base_url":{"type":"string","maxLength":500,"minLength":8,"title":"Base Url","description":"https://<site>.atlassian.net or https://<instance>.service-now.com"},"auth":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Auth","description":"Jira: {email, api_token}. ServiceNow: {username, password} or {access_token}. Omit on PUT to keep the stored credentials."},"config":{"additionalProperties":true,"type":"object","title":"Config"},"enabled":{"type":"boolean","title":"Enabled","default":true}},"type":"object","required":["provider","name","base_url"],"title":"ConnectorIn"},"ConnectorOut":{"properties":{"id":{"type":"string","title":"Id"},"provider":{"type":"string","title":"Provider"},"name":{"type":"string","title":"Name"},"base_url":{"type":"string","title":"Base Url"},"auth":{"additionalProperties":true,"type":"object","title":"Auth"},"config":{"additionalProperties":true,"type":"object","title":"Config"},"enabled":{"type":"boolean","title":"Enabled"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"last_test_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Test At"},"last_test_ok":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Last Test Ok"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id","provider","name","base_url","auth","config","enabled","created_by","last_test_at","last_test_ok","created_at","updated_at"],"title":"ConnectorOut"},"ConnectorTestOut":{"properties":{"ok":{"type":"boolean","title":"Ok"},"message":{"type":"string","title":"Message"},"details":{"additionalProperties":true,"type":"object","title":"Details"},"tested_at":{"type":"string","format":"date-time","title":"Tested At"}},"type":"object","required":["ok","message","tested_at"],"title":"ConnectorTestOut"},"ContextOut":{"properties":{"context_id":{"type":"integer","title":"Context Id"},"document_id":{"type":"string","title":"Document Id"},"title":{"type":"string","title":"Title"},"url":{"type":"string","title":"Url"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"chunk_index":{"type":"integer","title":"Chunk Index"},"similarity":{"type":"number","title":"Similarity"}},"type":"object","required":["context_id","document_id","title","url","jurisdiction","chunk_index","similarity"],"title":"ContextOut"},"ConversationCreateIn":{"properties":{"question":{"anyOf":[{"type":"string","maxLength":2000,"minLength":5},{"type":"null"}],"title":"Question","description":"Optional first question; when given the answer is generated and both turns are returned."},"title":{"anyOf":[{"type":"string","maxLength":300},{"type":"null"}],"title":"Title"},"visibility":{"type":"string","enum":["private","org"],"title":"Visibility","default":"private"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"},"filter":{"$ref":"#/components/schemas/DocumentFilter"},"top_k":{"type":"integer","maximum":25.0,"minimum":1.0,"title":"Top K","default":10}},"type":"object","title":"ConversationCreateIn"},"ConversationDetailOut":{"properties":{"id":{"type":"string","title":"Id"},"title":{"type":"string","title":"Title"},"visibility":{"type":"string","title":"Visibility"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"},"filter":{"additionalProperties":true,"type":"object","title":"Filter"},"message_count":{"type":"integer","title":"Message Count"},"last_message_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Message At"},"archived":{"type":"boolean","title":"Archived"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"is_owner":{"type":"boolean","title":"Is Owner","description":"True when the caller created this conversation."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"messages":{"items":{"$ref":"#/components/schemas/ConversationMessageOut"},"type":"array","title":"Messages"}},"type":"object","required":["id","title","visibility","profile_id","filter","message_count","last_message_at","archived","created_by","is_owner","created_at","updated_at","messages"],"title":"ConversationDetailOut"},"ConversationMessageOut":{"properties":{"id":{"type":"string","title":"Id"},"conversation_id":{"type":"string","title":"Conversation Id"},"role":{"type":"string","title":"Role"},"content":{"type":"string","title":"Content"},"citations":{"items":{"$ref":"#/components/schemas/CitationOut"},"type":"array","title":"Citations"},"contexts":{"items":{"$ref":"#/components/schemas/ContextOut"},"type":"array","title":"Contexts"},"confidence":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Confidence"},"insufficient_evidence":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Insufficient Evidence"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model"},"input_tokens":{"type":"integer","title":"Input Tokens","default":0},"output_tokens":{"type":"integer","title":"Output Tokens","default":0},"latency_ms":{"type":"integer","title":"Latency Ms","default":0},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","conversation_id","role","content","created_at"],"title":"ConversationMessageOut"},"ConversationOut":{"properties":{"id":{"type":"string","title":"Id"},"title":{"type":"string","title":"Title"},"visibility":{"type":"string","title":"Visibility"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"},"filter":{"additionalProperties":true,"type":"object","title":"Filter"},"message_count":{"type":"integer","title":"Message Count"},"last_message_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Message At"},"archived":{"type":"boolean","title":"Archived"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"is_owner":{"type":"boolean","title":"Is Owner","description":"True when the caller created this conversation."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id","title","visibility","profile_id","filter","message_count","last_message_at","archived","created_by","is_owner","created_at","updated_at"],"title":"ConversationOut"},"ConversationPageOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ConversationOut"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"has_more":{"type":"boolean","title":"Has More"}},"type":"object","required":["items","total","has_more"],"title":"ConversationPageOut"},"ConversationPatchIn":{"properties":{"title":{"anyOf":[{"type":"string","maxLength":300,"minLength":1},{"type":"null"}],"title":"Title"},"visibility":{"anyOf":[{"type":"string","enum":["private","org"]},{"type":"null"}],"title":"Visibility"},"archived":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Archived"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id","description":"Set to null to unlink the profile."},"filter":{"anyOf":[{"$ref":"#/components/schemas/DocumentFilter"},{"type":"null"}]}},"type":"object","title":"ConversationPatchIn"},"CoverageItem":{"properties":{"code":{"type":"string","title":"Code"},"name":{"type":"string","title":"Name"},"region":{"type":"string","title":"Region"},"languages":{"items":{"type":"string"},"type":"array","title":"Languages"},"key_regulators":{"items":{"type":"string"},"type":"array","title":"Key Regulators"},"sources_total":{"type":"integer","title":"Sources Total"},"sources_active":{"type":"integer","title":"Sources Active"},"sources_verified":{"type":"integer","title":"Sources Verified"},"sources_erroring":{"type":"integer","title":"Sources Erroring"},"documents_total":{"type":"integer","title":"Documents Total"},"documents_30d":{"type":"integer","title":"Documents 30D"},"last_signal_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Signal At"},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"status":{"type":"string","title":"Status"}},"type":"object","required":["code","name","region","languages","key_regulators","sources_total","sources_active","sources_verified","sources_erroring","documents_total","documents_30d","last_signal_at","verticals","status"],"title":"CoverageItem"},"CreateTaskSpec":{"properties":{"title_template":{"type":"string","maxLength":300,"title":"Title Template","description":"Placeholders: {title} {profile} {jurisdiction} {level} {doc_type}","default":"Review: {title}"},"priority":{"type":"string","title":"Priority","default":"normal"},"checklist":{"items":{"type":"string"},"type":"array","maxItems":50,"title":"Checklist"}},"type":"object","title":"CreateTaskSpec"},"CreateTicketIn":{"properties":{"connector_id":{"type":"string","title":"Connector Id"},"overrides":{"anyOf":[{"$ref":"#/components/schemas/TicketOverrides"},{"type":"null"}]}},"type":"object","required":["connector_id"],"title":"CreateTicketIn"},"DashboardOut":{"properties":{"signals_7d":{"type":"integer","title":"Signals 7D"},"signals_30d":{"type":"integer","title":"Signals 30D"},"by_jurisdiction_7d":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"By Jurisdiction 7D"},"by_vertical_30d":{"items":{"additionalProperties":true,"type":"object"},"type":"array","title":"By Vertical 30D"},"recent":{"items":{"$ref":"#/components/schemas/DocumentOut"},"type":"array","title":"Recent"},"inbox":{"$ref":"#/components/schemas/InboxSummary"},"coverage":{"additionalProperties":{"type":"integer"},"type":"object","title":"Coverage"},"subscriptions":{"type":"integer","title":"Subscriptions"}},"type":"object","required":["signals_7d","signals_30d","by_jurisdiction_7d","by_vertical_30d","recent","inbox","coverage","subscriptions"],"title":"DashboardOut"},"DeadlineOut":{"properties":{"document":{"$ref":"#/components/schemas/DocumentOut"},"kind":{"type":"string","title":"Kind"},"date":{"type":"string","format":"date-time","title":"Date"},"days_left":{"type":"integer","title":"Days Left"}},"type":"object","required":["document","kind","date","days_left"],"title":"DeadlineOut"},"DeliveryOut":{"properties":{"id":{"type":"string","title":"Id"},"event_type":{"type":"string","title":"Event Type"},"status":{"type":"string","title":"Status"},"attempts":{"type":"integer","title":"Attempts"},"next_attempt_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Next Attempt At"},"last_response_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Last Response Code"},"last_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Error"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"delivered_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Delivered At"}},"type":"object","required":["id","event_type","status","attempts","next_attempt_at","last_response_code","last_error","created_at","delivered_at"],"title":"DeliveryOut"},"DeliveryRow":{"properties":{"id":{"type":"string","title":"Id"},"endpoint_id":{"type":"string","title":"Endpoint Id"},"url":{"type":"string","title":"Url"},"event_type":{"type":"string","title":"Event Type"},"status":{"type":"string","title":"Status"},"attempts":{"type":"integer","title":"Attempts"},"last_response_code":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Last Response Code"},"last_error":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Error"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"delivered_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Delivered At"}},"type":"object","required":["id","endpoint_id","url","event_type","status","attempts","last_response_code","last_error","created_at","delivered_at"],"title":"DeliveryRow"},"DocumentDetailOut":{"properties":{"id":{"type":"string","title":"Id"},"origin":{"type":"string","title":"Origin"},"source_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Id"},"publisher":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Publisher"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"affected_markets":{"items":{"type":"string"},"type":"array","title":"Affected Markets"},"title":{"type":"string","title":"Title"},"url":{"type":"string","title":"Url"},"language":{"type":"string","title":"Language"},"doc_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Type"},"published_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published At"},"effective_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Effective At"},"comment_deadline":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Comment Deadline"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"key_points":{"items":{"type":"string"},"type":"array","title":"Key Points"},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"product_categories":{"items":{"type":"string"},"type":"array","title":"Product Categories"},"topics":{"items":{"type":"string"},"type":"array","title":"Topics"},"confidence":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Confidence"},"status":{"type":"string","title":"Status"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"recall":{"anyOf":[{"$ref":"#/components/schemas/RecallOut"},{"type":"null"}],"description":"Structured recall facts for recall_alert signals."},"regulation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Regulation Id","description":"The regulation this signal is a lifecycle event of (see /v1/regulations)."},"canonical_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Canonical Id","description":"Set when this signal is a near-duplicate of another one: the canonical signal's id. The feed hides such signals unless `include_duplicates=true`."},"duplicate_count":{"type":"integer","title":"Duplicate Count","description":"Number of near-duplicate signals that point at this one as their canonical.","default":0},"text_chars":{"type":"integer","title":"Text Chars"},"enriched_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Enriched At"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model"},"text":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Text"},"duplicates":{"items":{"$ref":"#/components/schemas/DuplicateRef"},"type":"array","title":"Duplicates","description":"Other publications of the same signal: for a canonical, its duplicates; for a duplicate, the canonical (flagged) and its siblings."},"versions":{"items":{"$ref":"#/components/schemas/DocumentVersionOut"},"type":"array","title":"Versions","description":"Change history, newest first; each entry's `diff` says what changed since the one before."}},"type":"object","required":["id","origin","source_id","jurisdiction","affected_markets","title","url","language","doc_type","published_at","effective_at","comment_deadline","summary","key_points","verticals","product_categories","topics","confidence","status","created_at","updated_at","text_chars","enriched_at","model"],"title":"DocumentDetailOut"},"DocumentFilter":{"properties":{"jurisdictions":{"items":{"type":"string"},"type":"array","title":"Jurisdictions","description":"Jurisdiction codes, e.g. ['US','EU']"},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"product_categories":{"items":{"type":"string"},"type":"array","title":"Product Categories"},"topics":{"items":{"type":"string"},"type":"array","title":"Topics"},"doc_types":{"items":{"type":"string"},"type":"array","title":"Doc Types"},"sources":{"items":{"type":"string"},"type":"array","title":"Sources","description":"Source ids"},"published_after":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published After"},"published_before":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published Before"},"updated_after":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated After"},"effective_after":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Effective After"},"languages":{"items":{"type":"string"},"type":"array","title":"Languages"},"q":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q","description":"Case-insensitive substring match on title/summary"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Origin","description":"public | internal; default both"},"min_confidence":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"title":"Min Confidence"},"enriched_only":{"type":"boolean","title":"Enriched Only","default":true}},"type":"object","title":"DocumentFilter"},"DocumentOut":{"properties":{"id":{"type":"string","title":"Id"},"origin":{"type":"string","title":"Origin"},"source_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Id"},"publisher":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Publisher"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"affected_markets":{"items":{"type":"string"},"type":"array","title":"Affected Markets"},"title":{"type":"string","title":"Title"},"url":{"type":"string","title":"Url"},"language":{"type":"string","title":"Language"},"doc_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Type"},"published_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published At"},"effective_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Effective At"},"comment_deadline":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Comment Deadline"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"key_points":{"items":{"type":"string"},"type":"array","title":"Key Points"},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"product_categories":{"items":{"type":"string"},"type":"array","title":"Product Categories"},"topics":{"items":{"type":"string"},"type":"array","title":"Topics"},"confidence":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Confidence"},"status":{"type":"string","title":"Status"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"recall":{"anyOf":[{"$ref":"#/components/schemas/RecallOut"},{"type":"null"}],"description":"Structured recall facts for recall_alert signals."},"regulation_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Regulation Id","description":"The regulation this signal is a lifecycle event of (see /v1/regulations)."},"canonical_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Canonical Id","description":"Set when this signal is a near-duplicate of another one: the canonical signal's id. The feed hides such signals unless `include_duplicates=true`."},"duplicate_count":{"type":"integer","title":"Duplicate Count","description":"Number of near-duplicate signals that point at this one as their canonical.","default":0}},"type":"object","required":["id","origin","source_id","jurisdiction","affected_markets","title","url","language","doc_type","published_at","effective_at","comment_deadline","summary","key_points","verticals","product_categories","topics","confidence","status","created_at","updated_at"],"title":"DocumentOut"},"DocumentVersionOut":{"properties":{"id":{"type":"string","title":"Id"},"document_id":{"type":"string","title":"Document Id"},"version":{"type":"integer","title":"Version"},"captured_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Captured At"},"content_hash":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Content Hash"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"key_points":{"items":{"type":"string"},"type":"array","title":"Key Points"},"doc_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Type"},"effective_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Effective At"},"comment_deadline":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Comment Deadline"},"diff":{"$ref":"#/components/schemas/VersionDiffOut"}},"type":"object","required":["id","document_id","version","captured_at","content_hash","summary","key_points","doc_type","effective_at","comment_deadline","diff"],"title":"DocumentVersionOut","description":"A snapshot of the signal's enrichment as it was at `captured_at` (newest first in lists)."},"DuplicateRef":{"properties":{"id":{"type":"string","title":"Id"},"title":{"type":"string","title":"Title"},"publisher":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Publisher"},"source_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Source Id"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"url":{"type":"string","title":"Url"},"published_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published At"},"canonical":{"type":"boolean","title":"Canonical","description":"True for the cluster's canonical signal.","default":false}},"type":"object","required":["id","title","jurisdiction","url"],"title":"DuplicateRef","description":"A light reference to another publication of the same signal (docs/DEDUPE.md)."},"EndpointStats":{"properties":{"endpoint_id":{"type":"string","title":"Endpoint Id"},"url":{"type":"string","title":"Url"},"active":{"type":"boolean","title":"Active"},"sent":{"type":"integer","title":"Sent"},"delivered":{"type":"integer","title":"Delivered"},"failed":{"type":"integer","title":"Failed"},"pending":{"type":"integer","title":"Pending"},"success_rate":{"type":"number","title":"Success Rate"},"last_delivery_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Delivery At"}},"type":"object","required":["endpoint_id","url","active","sent","delivered","failed","pending","success_rate","last_delivery_at"],"title":"EndpointStats"},"FacetBucket":{"properties":{"key":{"type":"string","title":"Key"},"count":{"type":"integer","title":"Count"}},"type":"object","required":["key","count"],"title":"FacetBucket"},"FacetsOut":{"properties":{"total":{"type":"integer","title":"Total"},"jurisdictions":{"items":{"$ref":"#/components/schemas/FacetBucket"},"type":"array","title":"Jurisdictions"},"doc_types":{"items":{"$ref":"#/components/schemas/FacetBucket"},"type":"array","title":"Doc Types"},"origins":{"items":{"$ref":"#/components/schemas/FacetBucket"},"type":"array","title":"Origins"},"verticals":{"items":{"$ref":"#/components/schemas/FacetBucket"},"type":"array","title":"Verticals"},"topics":{"items":{"$ref":"#/components/schemas/FacetBucket"},"type":"array","title":"Topics"}},"type":"object","required":["total","jurisdictions","doc_types","origins","verticals","topics"],"title":"FacetsOut"},"FeedOut":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Pass as ?cursor= to fetch the next page."},"has_more":{"type":"boolean","title":"Has More","default":false},"items":{"items":{"$ref":"#/components/schemas/DocumentOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"FeedOut"},"FeedTokenOut":{"properties":{"token":{"type":"string","title":"Token"},"url":{"type":"string","title":"Url"},"issued_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Issued At"}},"type":"object","required":["token","url"],"title":"FeedTokenOut"},"FeedUrlOut":{"properties":{"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url","description":"Subscribable ICS URL, null until a token has been issued."},"configured":{"type":"boolean","title":"Configured"},"issued_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Issued At"}},"type":"object","required":["url","configured"],"title":"FeedUrlOut"},"FeedbackCreatedOut":{"properties":{"id":{"type":"string","title":"Id"},"status":{"type":"string","title":"Status"}},"type":"object","required":["id","status"],"title":"FeedbackCreatedOut"},"FeedbackIn":{"properties":{"kind":{"type":"string","enum":["bug","idea","praise","other"],"title":"Kind","default":"other"},"message":{"type":"string","maxLength":5000,"minLength":1,"title":"Message"},"page_url":{"anyOf":[{"type":"string","maxLength":2000},{"type":"null"}],"title":"Page Url"}},"type":"object","required":["message"],"title":"FeedbackIn"},"ForesightBrief":{"properties":{"headline":{"type":"string","title":"Headline","description":"One sentence a leadership team can repeat"},"themes":{"items":{"$ref":"#/components/schemas/ForesightTheme"},"type":"array","title":"Themes","description":"3-6 themes, most consequential first"},"watchlist":{"items":{"type":"string"},"type":"array","title":"Watchlist","description":"Short bullets: what to watch next quarter and why"},"confidence":{"type":"string","title":"Confidence","description":"high | medium | low"},"confidence_reason":{"type":"string","title":"Confidence Reason"}},"additionalProperties":false,"type":"object","required":["headline","themes","watchlist","confidence","confidence_reason"],"title":"ForesightBrief"},"ForesightEnvelope":{"properties":{"brief":{"anyOf":[{"$ref":"#/components/schemas/ForesightBrief"},{"type":"null"}]},"generated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Generated At"},"window_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Window Days"},"basis":{"additionalProperties":true,"type":"object","title":"Basis"},"stale":{"type":"boolean","title":"Stale","description":"True when the stored brief is older than 24 hours (or missing)"}},"type":"object","required":["brief","generated_at","window_days","basis","stale"],"title":"ForesightEnvelope"},"ForesightTheme":{"properties":{"title":{"type":"string","title":"Title","description":"Short name of the theme, e.g. 'PFAS limits tighten across food contact'"},"summary":{"type":"string","title":"Summary","description":"2-3 sentences: what is moving and why, grounded in the signals"},"evidence":{"items":{"type":"string"},"type":"array","title":"Evidence","description":"Ids of the signals that support this theme (from the SIGNALS list)"},"expected_impact":{"type":"string","title":"Expected Impact","description":"What it will mean for regulated companies: formulation, labeling, market access, timelines"},"horizon":{"type":"string","title":"Horizon","description":"near (0-3 months) | mid (3-12 months) | long (12+ months)"}},"additionalProperties":false,"type":"object","required":["title","summary","evidence","expected_impact","horizon"],"title":"ForesightTheme"},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"ImpactAnalysisOut":{"properties":{"summary":{"type":"string","title":"Summary","description":"3-5 sentences on what changed for this portfolio and why it matters"},"key_risks":{"items":{"$ref":"#/components/schemas/RiskItem"},"type":"array","title":"Key Risks"},"recommendations":{"items":{"$ref":"#/components/schemas/Recommendation"},"type":"array","title":"Recommendations"},"confidence":{"type":"string","title":"Confidence","description":"high | medium | low"},"confidence_reason":{"type":"string","title":"Confidence Reason"}},"additionalProperties":false,"type":"object","required":["summary","key_risks","recommendations","confidence","confidence_reason"],"title":"ImpactAnalysisOut"},"ImpactCell":{"properties":{"level":{"type":"string","title":"Level"},"doc_type":{"type":"string","title":"Doc Type"},"count":{"type":"integer","title":"Count"}},"type":"object","required":["level","doc_type","count"],"title":"ImpactCell"},"ImpactListOut":{"properties":{"next_cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Next Cursor","description":"Pass as ?cursor= to fetch the next page."},"has_more":{"type":"boolean","title":"Has More","default":false},"items":{"items":{"$ref":"#/components/schemas/ImpactOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"ImpactListOut"},"ImpactOut":{"properties":{"id":{"type":"string","title":"Id"},"profile_id":{"type":"string","title":"Profile Id"},"document_id":{"type":"string","title":"Document Id"},"score":{"type":"integer","title":"Score"},"level":{"type":"string","title":"Level"},"heuristic_score":{"type":"integer","title":"Heuristic Score"},"assessed_by":{"type":"string","title":"Assessed By"},"rationale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rationale"},"required_actions":{"items":{"type":"string"},"type":"array","title":"Required Actions"},"review_status":{"type":"string","title":"Review Status","default":"new"},"owner_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner User Id"},"due_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Due At"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"document":{"anyOf":[{"$ref":"#/components/schemas/DocumentOut"},{"type":"null"}]}},"type":"object","required":["id","profile_id","document_id","score","level","heuristic_score","assessed_by","rationale","required_actions","updated_at"],"title":"ImpactOut"},"ImpactRunIn":{"properties":{"since":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Since","description":"Only consider documents updated after this time."},"use_llm":{"type":"boolean","title":"Use Llm","description":"False = heuristic scoring only (free, instant).","default":true}},"type":"object","title":"ImpactRunIn"},"ImpactRunOut":{"properties":{"profile_id":{"type":"string","title":"Profile Id"},"candidates":{"type":"integer","title":"Candidates"},"llm_assessed":{"type":"integer","title":"Llm Assessed"},"by_level":{"additionalProperties":{"type":"integer"},"type":"object","title":"By Level"}},"type":"object","required":["profile_id","candidates","llm_assessed","by_level"],"title":"ImpactRunOut"},"InboxItem":{"properties":{"id":{"type":"string","title":"Id"},"profile_id":{"type":"string","title":"Profile Id"},"profile_name":{"type":"string","title":"Profile Name"},"document":{"$ref":"#/components/schemas/DocumentOut"},"score":{"type":"integer","title":"Score"},"level":{"type":"string","title":"Level"},"assessed_by":{"type":"string","title":"Assessed By"},"rationale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rationale"},"required_actions":{"items":{"type":"string"},"type":"array","title":"Required Actions"},"review_status":{"type":"string","title":"Review Status"},"owner_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner User Id"},"due_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Due At"},"notes":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notes"},"reviewed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Reviewed At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"overdue":{"type":"boolean","title":"Overdue"},"approval_status":{"type":"string","title":"Approval Status","default":"not_required"},"approver_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Approver User Id"},"approved_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Approved At"},"approval_note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Approval Note"}},"type":"object","required":["id","profile_id","profile_name","document","score","level","assessed_by","rationale","required_actions","review_status","owner_user_id","due_at","notes","reviewed_at","updated_at","overdue"],"title":"InboxItem"},"InboxOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/InboxItem"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"has_more":{"type":"boolean","title":"Has More"}},"type":"object","required":["items","total","has_more"],"title":"InboxOut"},"InboxSummary":{"properties":{"needs_attention":{"type":"integer","title":"Needs Attention"},"overdue":{"type":"integer","title":"Overdue"},"due_soon":{"type":"integer","title":"Due Soon"},"unassigned":{"type":"integer","title":"Unassigned"},"by_level":{"additionalProperties":{"type":"integer"},"type":"object","title":"By Level"},"by_status":{"additionalProperties":{"type":"integer"},"type":"object","title":"By Status"}},"type":"object","required":["needs_attention","overdue","due_soon","unassigned","by_level","by_status"],"title":"InboxSummary"},"InsightsOverview":{"properties":{"window_days":{"type":"integer","title":"Window Days"},"totals":{"additionalProperties":{"type":"integer"},"type":"object","title":"Totals"},"series":{"items":{"$ref":"#/components/schemas/SeriesPoint"},"type":"array","title":"Series"},"by_doc_type":{"items":{"$ref":"#/components/schemas/Bucket"},"type":"array","title":"By Doc Type"},"by_jurisdiction":{"items":{"$ref":"#/components/schemas/Bucket"},"type":"array","title":"By Jurisdiction"},"by_vertical":{"items":{"$ref":"#/components/schemas/Bucket"},"type":"array","title":"By Vertical"},"by_topic":{"items":{"$ref":"#/components/schemas/Bucket"},"type":"array","title":"By Topic"},"impact_by_level":{"items":{"$ref":"#/components/schemas/Bucket"},"type":"array","title":"Impact By Level"},"impact_by_level_and_type":{"items":{"$ref":"#/components/schemas/ImpactCell"},"type":"array","title":"Impact By Level And Type"},"deadlines":{"items":{"$ref":"#/components/schemas/DeadlineOut"},"type":"array","title":"Deadlines"}},"type":"object","required":["window_days","totals","series","by_doc_type","by_jurisdiction","by_vertical","by_topic","impact_by_level","impact_by_level_and_type","deadlines"],"title":"InsightsOverview"},"IntegrationStatus":{"properties":{"window_days":{"type":"integer","title":"Window Days"},"totals":{"additionalProperties":{"type":"integer"},"type":"object","title":"Totals"},"api_requests":{"type":"integer","title":"Api Requests"},"endpoints":{"items":{"$ref":"#/components/schemas/EndpointStats"},"type":"array","title":"Endpoints"},"history":{"items":{"$ref":"#/components/schemas/DeliveryRow"},"type":"array","title":"History"}},"type":"object","required":["window_days","totals","api_requests","endpoints","history"],"title":"IntegrationStatus"},"InvitationOut":{"properties":{"id":{"type":"string","title":"Id"},"email":{"type":"string","title":"Email"},"role":{"type":"string","title":"Role"},"expires_at":{"type":"string","format":"date-time","title":"Expires At"},"accepted_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Accepted At"},"invite_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invite Url"}},"type":"object","required":["id","email","role","expires_at","accepted_at"],"title":"InvitationOut"},"InvitationPreviewOut":{"properties":{"org_name":{"type":"string","title":"Org Name"},"role":{"type":"string","title":"Role"},"email":{"type":"string","title":"Email"},"expires_at":{"type":"string","format":"date-time","title":"Expires At"}},"type":"object","required":["org_name","role","email","expires_at"],"title":"InvitationPreviewOut"},"InviteIn":{"properties":{"email":{"type":"string","format":"email","title":"Email"},"role":{"type":"string","title":"Role","default":"analyst"}},"type":"object","required":["email"],"title":"InviteIn"},"InvoiceOut":{"properties":{"id":{"type":"string","title":"Id"},"number":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Number"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"amount_due":{"type":"integer","title":"Amount Due"},"amount_paid":{"type":"integer","title":"Amount Paid"},"currency":{"type":"string","title":"Currency"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"period_end":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Period End"},"hosted_invoice_url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hosted Invoice Url"},"invoice_pdf":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Invoice Pdf"}},"type":"object","required":["id","number","status","amount_due","amount_paid","currency","created_at","period_end","hosted_invoice_url","invoice_pdf"],"title":"InvoiceOut"},"InvoicesOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/InvoiceOut"},"type":"array","title":"Items"},"configured":{"type":"boolean","title":"Configured"}},"type":"object","required":["items","configured"],"title":"InvoicesOut"},"Items_CoverageItem_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/CoverageItem"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"Items[CoverageItem]"},"Items_DeliveryOut_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/DeliveryOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"Items[DeliveryOut]"},"Items_ImpactOut_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ImpactOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"Items[ImpactOut]"},"Items_ProfileOut_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ProfileOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"Items[ProfileOut]"},"Items_SavedFilterOut_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/SavedFilterOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"Items[SavedFilterOut]"},"Items_SourceOut_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/SourceOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"Items[SourceOut]"},"Items_WebhookOut_":{"properties":{"items":{"items":{"$ref":"#/components/schemas/WebhookOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"Items[WebhookOut]"},"MeOut":{"properties":{"user":{"$ref":"#/components/schemas/UserOut"},"memberships":{"items":{"$ref":"#/components/schemas/MembershipOut"},"type":"array","title":"Memberships"},"current":{"anyOf":[{"$ref":"#/components/schemas/MembershipOut"},{"type":"null"}]},"permissions":{"items":{"type":"string"},"type":"array","title":"Permissions"},"checklist":{"anyOf":[{"$ref":"#/components/schemas/ChecklistOut"},{"type":"null"}]}},"type":"object","required":["user","memberships","current","permissions","checklist"],"title":"MeOut"},"MemberOut":{"properties":{"user_id":{"type":"string","title":"User Id"},"email":{"type":"string","title":"Email"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"},"role":{"type":"string","title":"Role"},"last_seen_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Seen At"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["user_id","email","display_name","role","last_seen_at","created_at"],"title":"MemberOut"},"MembershipOut":{"properties":{"org":{"$ref":"#/components/schemas/OrgOut"},"role":{"type":"string","title":"Role"}},"type":"object","required":["org","role"],"title":"MembershipOut"},"MessageIn":{"properties":{"question":{"type":"string","maxLength":2000,"minLength":5,"title":"Question"},"top_k":{"type":"integer","maximum":25.0,"minimum":1.0,"title":"Top K","default":10}},"type":"object","required":["question"],"title":"MessageIn"},"MessageTurnOut":{"properties":{"conversation":{"$ref":"#/components/schemas/ConversationOut"},"question":{"$ref":"#/components/schemas/ConversationMessageOut"},"answer":{"$ref":"#/components/schemas/ConversationMessageOut"}},"type":"object","required":["conversation","question","answer"],"title":"MessageTurnOut"},"OnboardingIn":{"properties":{"step":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Step","description":"Last completed wizard step name"},"data":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Data","description":"Arbitrary wizard state to persist"},"completed":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Completed"},"dismiss_guide":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Dismiss Guide"},"dismiss_first_impacts":{"anyOf":[{"type":"boolean"},{"type":"null"}],"title":"Dismiss First Impacts","description":"True hides the 'Your first impacts' card on Home."}},"type":"object","title":"OnboardingIn"},"OrgCreateIn":{"properties":{"name":{"type":"string","maxLength":200,"minLength":2,"title":"Name"},"slug":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}],"title":"Slug"}},"type":"object","required":["name"],"title":"OrgCreateIn"},"OrgOut":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"slug":{"type":"string","title":"Slug"},"plan":{"type":"string","title":"Plan"},"onboarding_completed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Onboarding Completed At"},"onboarding":{"additionalProperties":true,"type":"object","title":"Onboarding"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","name","slug","plan","onboarding_completed_at","onboarding","created_at"],"title":"OrgOut"},"OrgUpdateIn":{"properties":{"name":{"anyOf":[{"type":"string","maxLength":200,"minLength":2},{"type":"null"}],"title":"Name"},"settings":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Settings"}},"type":"object","title":"OrgUpdateIn"},"PinIn":{"properties":{"message_id":{"type":"string","title":"Message Id"},"note":{"type":"string","maxLength":500,"title":"Note","default":""}},"type":"object","required":["message_id"],"title":"PinIn"},"PinOut":{"properties":{"id":{"type":"string","title":"Id"},"profile_id":{"type":"string","title":"Profile Id"},"message_id":{"type":"string","title":"Message Id"},"conversation_id":{"type":"string","title":"Conversation Id"},"conversation_title":{"type":"string","title":"Conversation Title"},"question":{"type":"string","title":"Question"},"answer":{"type":"string","title":"Answer"},"citations":{"items":{"$ref":"#/components/schemas/CitationOut"},"type":"array","title":"Citations"},"citations_count":{"type":"integer","title":"Citations Count"},"note":{"type":"string","title":"Note"},"pinned_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Pinned By"},"created_at":{"type":"string","format":"date-time","title":"Created At"}},"type":"object","required":["id","profile_id","message_id","conversation_id","conversation_title","question","answer","citations_count","note","pinned_by","created_at"],"title":"PinOut"},"PinsOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/PinOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"PinsOut"},"PlanOut":{"properties":{"plan":{"type":"string","title":"Plan"},"plan_label":{"type":"string","title":"Plan Label"},"limits":{"additionalProperties":{"anyOf":[{"type":"integer"},{"type":"null"}]},"type":"object","title":"Limits"},"usage":{"additionalProperties":{"type":"integer"},"type":"object","title":"Usage"},"resets_at":{"additionalProperties":{"type":"string","format":"date-time"},"type":"object","title":"Resets At"},"status":{"type":"string","title":"Status","description":"none | active | trialing | past_due | canceled | incomplete"},"renewal_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Renewal At"},"cancel_at_period_end":{"type":"boolean","title":"Cancel At Period End","default":false},"configured":{"type":"boolean","title":"Configured"},"has_billing_account":{"type":"boolean","title":"Has Billing Account"},"available_plans":{"items":{"type":"string"},"type":"array","title":"Available Plans"},"plans":{"additionalProperties":{"additionalProperties":{"anyOf":[{"type":"integer"},{"type":"null"}]},"type":"object"},"type":"object","title":"Plans"},"last_invoice":{"anyOf":[{"additionalProperties":true,"type":"object"},{"type":"null"}],"title":"Last Invoice"}},"type":"object","required":["plan","plan_label","limits","usage","resets_at","status","configured","has_billing_account","available_plans","plans"],"title":"PlanOut"},"ProfileImportOut":{"properties":{"mode":{"type":"string","title":"Mode"},"total":{"type":"integer","title":"Total"},"created":{"type":"integer","title":"Created"},"updated":{"type":"integer","title":"Updated"},"skipped":{"type":"integer","title":"Skipped"},"rows":{"items":{"$ref":"#/components/schemas/ProfileImportRowOut"},"type":"array","title":"Rows"}},"type":"object","required":["mode","total","created","updated","skipped","rows"],"title":"ProfileImportOut"},"ProfileImportPreviewOut":{"properties":{"mode":{"type":"string","title":"Mode"},"total":{"type":"integer","title":"Total"},"valid":{"type":"integer","title":"Valid"},"invalid":{"type":"integer","title":"Invalid"},"to_create":{"type":"integer","title":"To Create"},"to_update":{"type":"integer","title":"To Update"},"rows":{"items":{"$ref":"#/components/schemas/ProfileImportRowOut"},"type":"array","title":"Rows"}},"type":"object","required":["mode","total","valid","invalid","to_create","to_update","rows"],"title":"ProfileImportPreviewOut"},"ProfileImportRowOut":{"properties":{"index":{"type":"integer","title":"Index","description":"0-based row number in the upload (the CSV header is not counted)."},"name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Name"},"action":{"type":"string","title":"Action","description":"create | update | invalid"},"errors":{"items":{"type":"string"},"type":"array","title":"Errors"},"warnings":{"items":{"type":"string"},"type":"array","title":"Warnings"},"profile":{"anyOf":[{"$ref":"#/components/schemas/ProfileIn"},{"type":"null"}],"description":"The validated row, when valid."},"existing_profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Existing Profile Id"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id","description":"Import only: the created or updated profile."},"substances":{"items":{"$ref":"#/components/schemas/SubstanceResolutionOut"},"type":"array","title":"Substances"}},"type":"object","required":["index","action"],"title":"ProfileImportRowOut"},"ProfileIn":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"description":{"type":"string","maxLength":5000,"title":"Description","description":"Free text: what the products are, key ingredients, claims, packaging.","default":""},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"product_categories":{"items":{"type":"string"},"type":"array","title":"Product Categories"},"markets":{"items":{"type":"string"},"type":"array","title":"Markets","description":"Jurisdiction codes where the products are sold."},"topics_of_interest":{"items":{"type":"string"},"type":"array","title":"Topics Of Interest"},"attributes":{"additionalProperties":true,"type":"object","title":"Attributes","description":"Structured extras: ingredients, claims, materials..."},"active":{"type":"boolean","title":"Active","default":true}},"type":"object","required":["name"],"title":"ProfileIn"},"ProfileOut":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"description":{"type":"string","maxLength":5000,"title":"Description","description":"Free text: what the products are, key ingredients, claims, packaging.","default":""},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"product_categories":{"items":{"type":"string"},"type":"array","title":"Product Categories"},"markets":{"items":{"type":"string"},"type":"array","title":"Markets","description":"Jurisdiction codes where the products are sold."},"topics_of_interest":{"items":{"type":"string"},"type":"array","title":"Topics Of Interest"},"attributes":{"additionalProperties":true,"type":"object","title":"Attributes","description":"Structured extras: ingredients, claims, materials..."},"active":{"type":"boolean","title":"Active","default":true},"id":{"type":"string","title":"Id"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"impact_counts":{"additionalProperties":{"type":"integer"},"type":"object","title":"Impact Counts","description":"Open impacts by level"}},"type":"object","required":["name","id","created_at","updated_at"],"title":"ProfileOut"},"ProfileSubstanceIn":{"properties":{"query":{"type":"string","maxLength":200,"minLength":1,"title":"Query","description":"A name, CAS number, EC number, E number or UNII."},"role":{"type":"string","pattern":"^(ingredient|material|active|contaminant)$","title":"Role","default":"ingredient"}},"type":"object","required":["query"],"title":"ProfileSubstanceIn"},"ProfileSubstanceOut":{"properties":{"substance":{"$ref":"#/components/schemas/SubstanceOut"},"role":{"type":"string","title":"Role"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["substance","role"],"title":"ProfileSubstanceOut"},"ProfileSubstancesIn":{"properties":{"items":{"items":{"$ref":"#/components/schemas/ProfileSubstanceIn"},"type":"array","maxItems":200,"title":"Items"}},"type":"object","title":"ProfileSubstancesIn"},"ProfileSubstancesOut":{"properties":{"profile_id":{"type":"string","title":"Profile Id"},"items":{"items":{"$ref":"#/components/schemas/ProfileSubstanceOut"},"type":"array","title":"Items"},"resolutions":{"items":{"$ref":"#/components/schemas/SubstanceResolutionOut"},"type":"array","title":"Resolutions","description":"PUT only: how each input resolved, in input order. Invalid inputs are not saved."}},"type":"object","required":["profile_id","items"],"title":"ProfileSubstancesOut"},"QuickstartImpactOut":{"properties":{"impact_id":{"type":"string","title":"Impact Id"},"signal_id":{"type":"string","title":"Signal Id"},"title":{"type":"string","title":"Title"},"level":{"type":"string","title":"Level"},"score":{"type":"integer","title":"Score"},"rationale":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Rationale"},"url":{"type":"string","title":"Url"},"jurisdiction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdiction"},"assessed_by":{"type":"string","title":"Assessed By"}},"type":"object","required":["impact_id","signal_id","title","level","score","rationale","url","assessed_by"],"title":"QuickstartImpactOut"},"QuickstartIn":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name","examples":["Protein bars EU"]},"verticals":{"items":{"type":"string"},"type":"array","maxItems":3,"minItems":1,"title":"Verticals"},"markets":{"items":{"type":"string"},"type":"array","maxItems":5,"minItems":1,"title":"Markets"},"product_categories":{"items":{"type":"string"},"type":"array","maxItems":20,"title":"Product Categories"},"description":{"type":"string","maxLength":5000,"title":"Description","default":""}},"type":"object","required":["name","verticals","markets"],"title":"QuickstartIn","description":"The minimum needed for a first product profile; everything else can be edited later."},"QuickstartOut":{"properties":{"profile":{"$ref":"#/components/schemas/ProfileOut"},"impacts":{"items":{"$ref":"#/components/schemas/QuickstartImpactOut"},"type":"array","title":"Impacts"},"total_matched":{"type":"integer","title":"Total Matched"},"mode":{"type":"string","enum":["llm","heuristic"],"title":"Mode"},"llm_assessed":{"type":"integer","title":"Llm Assessed","default":0},"note":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Note","description":"Why the run fell back to heuristic scoring, if it did."}},"type":"object","required":["profile","impacts","total_matched","mode"],"title":"QuickstartOut"},"RecallOut":{"properties":{"product":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Product"},"brand":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Brand"},"hazard":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Hazard"},"reason":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Reason"},"firm":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Firm"},"classification":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Classification","description":"I | II | III, or the agency's own scale."},"recall_number":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Recall Number"},"quantity":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Quantity"},"distribution":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Distribution"},"remedy":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Remedy"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"initiated_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Initiated At","description":"ISO 8601 date (YYYY-MM-DD)."},"agency":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Agency"},"recall_class_source":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Recall Class Source","description":"fda | cpsc | health-canada | llm"}},"type":"object","title":"RecallOut","description":"Structured recall facts (`documents.recall`), present on recall_alert signals only."},"Recommendation":{"properties":{"action":{"type":"string","title":"Action"},"owner_hint":{"type":"string","title":"Owner Hint","description":"Which function should own it, e.g. Regulatory affairs, R&D, Labeling"},"due_hint":{"type":"string","title":"Due Hint","description":"Suggested timing, e.g. before 2027-01-01 or within 30 days"}},"additionalProperties":false,"type":"object","required":["action","owner_hint","due_hint"],"title":"Recommendation"},"RegulationDetailOut":{"properties":{"id":{"type":"string","title":"Id"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"identifier":{"type":"string","title":"Identifier","description":"docket:… | rin:… | celex:… | eu:… | uksi:… | sor:… | title:<slug>"},"title":{"type":"string","title":"Title"},"instrument_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instrument Type","description":"doc_type slug of the primary document."},"status":{"type":"string","title":"Status","description":"proposed | adopted | in_force | amended | repealed | guidance"},"first_seen_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"First Seen At"},"latest_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Latest At"},"effective_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Effective At"},"comment_deadline":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Comment Deadline"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"document_count":{"type":"integer","title":"Document Count","default":0},"identifiers":{"items":{"type":"string"},"type":"array","title":"Identifiers","description":"Every identifier that matched this regulation."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"timeline":{"items":{"$ref":"#/components/schemas/RegulationTimelineEntry"},"type":"array","title":"Timeline"},"signals":{"items":{"$ref":"#/components/schemas/DocumentOut"},"type":"array","title":"Signals"}},"type":"object","required":["id","jurisdiction","identifier","title","status","first_seen_at","latest_at","effective_at","comment_deadline","summary","created_at","updated_at","timeline","signals"],"title":"RegulationDetailOut"},"RegulationOut":{"properties":{"id":{"type":"string","title":"Id"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"identifier":{"type":"string","title":"Identifier","description":"docket:… | rin:… | celex:… | eu:… | uksi:… | sor:… | title:<slug>"},"title":{"type":"string","title":"Title"},"instrument_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Instrument Type","description":"doc_type slug of the primary document."},"status":{"type":"string","title":"Status","description":"proposed | adopted | in_force | amended | repealed | guidance"},"first_seen_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"First Seen At"},"latest_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Latest At"},"effective_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Effective At"},"comment_deadline":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Comment Deadline"},"summary":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Summary"},"document_count":{"type":"integer","title":"Document Count","default":0},"identifiers":{"items":{"type":"string"},"type":"array","title":"Identifiers","description":"Every identifier that matched this regulation."},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id","jurisdiction","identifier","title","status","first_seen_at","latest_at","effective_at","comment_deadline","summary","created_at","updated_at"],"title":"RegulationOut","description":"A regulatory instrument across its lifecycle; documents attach as timeline events."},"RegulationPageOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/RegulationOut"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"has_more":{"type":"boolean","title":"Has More"}},"type":"object","required":["items","total","has_more"],"title":"RegulationPageOut"},"RegulationTimelineEntry":{"properties":{"signal_id":{"type":"string","title":"Signal Id"},"date":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Date","description":"published_at of the document."},"doc_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Type"},"title":{"type":"string","title":"Title"},"url":{"type":"string","title":"Url"},"status":{"type":"string","title":"Status","description":"Lifecycle status this document implies on its own."},"effective_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Effective At"},"comment_deadline":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Comment Deadline"},"publisher":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Publisher"}},"type":"object","required":["signal_id","date","doc_type","title","url","status","effective_at","comment_deadline"],"title":"RegulationTimelineEntry","description":"One lifecycle event: a document linked to the regulation, oldest first."},"RetentionClassOut":{"properties":{"key":{"type":"string","title":"Key"},"label":{"type":"string","title":"Label"},"days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Days","description":"Effective window in days; null = kept until deleted"},"default_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Default Days"},"override_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Override Days"},"overridden":{"type":"boolean","title":"Overridden"},"minimum_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Minimum Days"},"unlimited_allowed":{"type":"boolean","title":"Unlimited Allowed"}},"type":"object","required":["key","label","days","default_days","override_days","overridden","minimum_days","unlimited_allowed"],"title":"RetentionClassOut"},"RetentionIn":{"properties":{"internal_signals_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Internal Signals Days"},"ask_history_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Ask History Days"},"audit_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Audit Days"},"usage_events_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Usage Events Days"},"webhook_deliveries_days":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Webhook Deliveries Days"}},"type":"object","title":"RetentionIn","description":"The complete set of overrides (PUT replaces it). Omit a class to use the default; null = keep forever\n(internal signals and Ask history only)."},"RetentionOut":{"properties":{"policy":{"additionalProperties":{"anyOf":[{"type":"integer"},{"type":"null"}]},"type":"object","title":"Policy"},"defaults":{"additionalProperties":{"anyOf":[{"type":"integer"},{"type":"null"}]},"type":"object","title":"Defaults"},"overrides":{"additionalProperties":{"anyOf":[{"type":"integer"},{"type":"null"}]},"type":"object","title":"Overrides"},"classes":{"items":{"$ref":"#/components/schemas/RetentionClassOut"},"type":"array","title":"Classes"},"minimums":{"additionalProperties":{"type":"integer"},"type":"object","title":"Minimums"},"unlimited_allowed":{"items":{"type":"string"},"type":"array","title":"Unlimited Allowed"},"labels":{"additionalProperties":{"type":"string"},"type":"object","title":"Labels"},"last_receipt_at":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Receipt At"}},"type":"object","required":["policy","defaults","overrides","classes","minimums","unlimited_allowed","labels"],"title":"RetentionOut"},"RiskItem":{"properties":{"title":{"type":"string","title":"Title"},"detail":{"type":"string","title":"Detail"},"level":{"type":"string","title":"Level","description":"high | medium | low"},"signal_ids":{"items":{"type":"string"},"type":"array","title":"Signal Ids","description":"Ids of the signals this risk is based on"}},"additionalProperties":false,"type":"object","required":["title","detail","level","signal_ids"],"title":"RiskItem"},"RoleActionOut":{"properties":{"key":{"type":"string","title":"Key"},"label":{"type":"string","title":"Label"},"roles":{"additionalProperties":{"type":"boolean"},"type":"object","title":"Roles"}},"type":"object","required":["key","label","roles"],"title":"RoleActionOut"},"RoleGroupOut":{"properties":{"name":{"type":"string","title":"Name"},"actions":{"items":{"$ref":"#/components/schemas/RoleActionOut"},"type":"array","title":"Actions"}},"type":"object","required":["name","actions"],"title":"RoleGroupOut"},"RoleIn":{"properties":{"role":{"type":"string","title":"Role"}},"type":"object","required":["role"],"title":"RoleIn"},"RoleMatrixOut":{"properties":{"roles":{"items":{"type":"string"},"type":"array","title":"Roles"},"groups":{"items":{"$ref":"#/components/schemas/RoleGroupOut"},"type":"array","title":"Groups"}},"type":"object","required":["roles","groups"],"title":"RoleMatrixOut"},"RuleIn":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"enabled":{"type":"boolean","title":"Enabled","default":true},"when":{"$ref":"#/components/schemas/RuleWhen"},"then":{"$ref":"#/components/schemas/RuleThen"},"position":{"anyOf":[{"type":"integer","maximum":10000.0,"minimum":0.0},{"type":"null"}],"title":"Position"}},"type":"object","required":["name"],"title":"RuleIn"},"RuleOut":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"enabled":{"type":"boolean","title":"Enabled"},"when":{"additionalProperties":true,"type":"object","title":"When"},"then":{"additionalProperties":true,"type":"object","title":"Then"},"position":{"type":"integer","title":"Position"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"}},"type":"object","required":["id","name","enabled","when","then","position","created_by","created_at","updated_at"],"title":"RuleOut"},"RuleTestOut":{"properties":{"matched":{"type":"integer","title":"Matched"},"sampled":{"type":"integer","title":"Sampled"},"sample_ids":{"items":{"type":"string"},"type":"array","title":"Sample Ids"},"actions":{"items":{"type":"string"},"type":"array","title":"Actions"}},"type":"object","required":["matched","sampled","sample_ids","actions"],"title":"RuleTestOut"},"RuleThen":{"properties":{"assign_to_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Assign To User Id"},"set_due_in_days":{"anyOf":[{"type":"integer","maximum":365.0,"minimum":0.0},{"type":"null"}],"title":"Set Due In Days"},"create_task":{"anyOf":[{"$ref":"#/components/schemas/CreateTaskSpec"},{"type":"null"}]},"require_approval":{"type":"boolean","title":"Require Approval","default":false},"notify_webhook_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Notify Webhook Id"}},"type":"object","title":"RuleThen"},"RuleWhen":{"properties":{"jurisdictions":{"items":{"type":"string"},"type":"array","title":"Jurisdictions","description":"Jurisdiction codes, e.g. ['US','EU']"},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"product_categories":{"items":{"type":"string"},"type":"array","title":"Product Categories"},"topics":{"items":{"type":"string"},"type":"array","title":"Topics"},"doc_types":{"items":{"type":"string"},"type":"array","title":"Doc Types"},"sources":{"items":{"type":"string"},"type":"array","title":"Sources","description":"Source ids"},"published_after":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published After"},"published_before":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published Before"},"updated_after":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated After"},"effective_after":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Effective After"},"languages":{"items":{"type":"string"},"type":"array","title":"Languages"},"q":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Q","description":"Case-insensitive substring match on title/summary"},"origin":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Origin","description":"public | internal; default both"},"min_confidence":{"anyOf":[{"type":"number","maximum":1.0,"minimum":0.0},{"type":"null"}],"title":"Min Confidence"},"enriched_only":{"type":"boolean","title":"Enriched Only","default":true},"min_level":{"type":"string","title":"Min Level","description":"Minimum impact level: low | medium | high","default":"medium"},"profile_ids":{"items":{"type":"string"},"type":"array","title":"Profile Ids","description":"Only impacts on these profiles"}},"type":"object","title":"RuleWhen","description":"DocumentFilter fields plus the impact-level and profile scope."},"SavedFilterIn":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"filter":{"$ref":"#/components/schemas/DocumentFilter"},"view":{"anyOf":[{"$ref":"#/components/schemas/SavedViewMeta"},{"type":"null"}],"description":"Present when the saved filter is a console view."},"digest":{"type":"boolean","title":"Digest","description":"Include this filter's signals in the email digest.","default":false}},"type":"object","required":["name","filter"],"title":"SavedFilterIn"},"SavedFilterOut":{"properties":{"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"filter":{"$ref":"#/components/schemas/DocumentFilter"},"view":{"anyOf":[{"$ref":"#/components/schemas/SavedViewMeta"},{"type":"null"}],"description":"Present when the saved filter is a console view."},"digest":{"type":"boolean","title":"Digest","description":"Include this filter's signals in the email digest.","default":false},"id":{"type":"string","title":"Id"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["name","filter","id","created_at"],"title":"SavedFilterOut"},"SavedViewMeta":{"properties":{"surface":{"type":"string","pattern":"^(signals|inbox)$","title":"Surface","description":"Which table the view belongs to."},"columns":{"items":{"type":"string"},"type":"array","title":"Columns","description":"Visible column ids, in order."},"sort":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Sort","description":"Sort key of the surface, e.g. `published`."},"pinned":{"type":"boolean","title":"Pinned","default":false},"shared":{"type":"boolean","title":"Shared","description":"False = visible only to the member who saved it.","default":true},"params":{"additionalProperties":{"type":"string"},"type":"object","title":"Params","description":"Surface-specific state that is not a DocumentFilter field (inbox rail, profile, published preset)."},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By","description":"Set by the server: the saving member's user id."}},"type":"object","required":["surface"],"title":"SavedViewMeta","description":"Console view metadata carried inside `SavedFilter.filter[\"view\"]`: a saved filter with a view is a view."},"SearchHit":{"properties":{"document":{"$ref":"#/components/schemas/DocumentOut"},"chunk_index":{"type":"integer","title":"Chunk Index"},"snippet":{"type":"string","title":"Snippet"},"similarity":{"type":"number","title":"Similarity"}},"type":"object","required":["document","chunk_index","snippet","similarity"],"title":"SearchHit"},"SearchIn":{"properties":{"query":{"type":"string","maxLength":1000,"minLength":2,"title":"Query"},"filter":{"$ref":"#/components/schemas/DocumentFilter"},"top_k":{"type":"integer","maximum":50.0,"minimum":1.0,"title":"Top K","default":10}},"type":"object","required":["query"],"title":"SearchIn"},"SearchOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/SearchHit"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"SearchOut"},"SeriesPoint":{"properties":{"date":{"type":"string","title":"Date"},"count":{"type":"integer","title":"Count"}},"type":"object","required":["date","count"],"title":"SeriesPoint"},"SignalIngestIn":{"properties":{"title":{"type":"string","maxLength":500,"minLength":3,"title":"Title"},"text":{"anyOf":[{"type":"string","maxLength":2000000,"minLength":20},{"type":"null"}],"title":"Text","description":"Plain text body."},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Url","description":"Alternatively, a URL we fetch (HTML or PDF)."},"jurisdiction":{"type":"string","title":"Jurisdiction","description":"Jurisdiction the document primarily concerns.","default":"EU"},"external_id":{"anyOf":[{"type":"string","maxLength":500},{"type":"null"}],"title":"External Id","description":"Your id; re-posting updates it."},"published_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published At"},"language":{"type":"string","maxLength":8,"title":"Language","default":"en"},"metadata":{"additionalProperties":true,"type":"object","title":"Metadata"},"enrich":{"type":"string","pattern":"^(async|sync|none)$","title":"Enrich","description":"async via worker, sync, none","default":"async"}},"type":"object","required":["title"],"title":"SignalIngestIn","description":"An internal document (policy, supplier notice, SOP, contract clause) submitted by the customer."},"SourceOut":{"properties":{"id":{"type":"string","title":"Id"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"publisher":{"type":"string","title":"Publisher"},"name":{"type":"string","title":"Name"},"url":{"type":"string","title":"Url"},"adapter":{"type":"string","title":"Adapter"},"verticals":{"items":{"type":"string"},"type":"array","title":"Verticals"},"language":{"type":"string","title":"Language"},"cadence_minutes":{"type":"integer","title":"Cadence Minutes"},"verified":{"type":"boolean","title":"Verified"},"active":{"type":"boolean","title":"Active"},"last_run_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Run At"},"last_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Status"},"document_count":{"type":"integer","title":"Document Count","default":0}},"type":"object","required":["id","jurisdiction","publisher","name","url","adapter","verticals","language","cadence_minutes","verified","active","last_run_at","last_status"],"title":"SourceOut"},"SubstanceOut":{"properties":{"id":{"type":"string","title":"Id"},"name":{"type":"string","title":"Name"},"cas":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Cas"},"ec_number":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Ec Number"},"unii":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Unii"},"inci":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Inci","description":"Upper-cased INCI name for cosmetic ingredients."},"pubchem_cid":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Pubchem Cid"},"synonyms":{"items":{"type":"string"},"type":"array","title":"Synonyms"},"source":{"type":"string","title":"Source","description":"local | gsrs | pubchem | cosing | manual"},"resolved":{"type":"boolean","title":"Resolved","description":"True once GSRS / PubChem were consulted for this substance."}},"type":"object","required":["id","name","source","resolved"],"title":"SubstanceOut","description":"One substance identity from the shared registry cache."},"SubstanceResolutionOut":{"properties":{"query":{"type":"string","title":"Query"},"status":{"type":"string","title":"Status","description":"matched | resolved | unverified | invalid"},"substance":{"anyOf":[{"$ref":"#/components/schemas/SubstanceOut"},{"type":"null"}]},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Message"}},"type":"object","required":["query","status"],"title":"SubstanceResolutionOut","description":"How one substance input resolved: matched (registry cache or curated list), resolved (found in\nGSRS / PubChem now), unverified (not found; kept as a manual substance on save) or invalid."},"TaskCreateIn":{"properties":{"title":{"type":"string","maxLength":300,"minLength":1,"title":"Title"},"description":{"type":"string","maxLength":10000,"title":"Description","default":""},"impact_match_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Impact Match Id"},"document_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Document Id"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"},"status":{"type":"string","title":"Status","default":"open"},"priority":{"type":"string","title":"Priority","default":"normal"},"owner_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner User Id","description":"Member user id, or empty string to unassign"},"due_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Due At"},"checklist":{"items":{"$ref":"#/components/schemas/ChecklistItem"},"type":"array","maxItems":50,"title":"Checklist"}},"type":"object","required":["title"],"title":"TaskCreateIn"},"TaskImpactRef":{"properties":{"id":{"type":"string","title":"Id"},"level":{"type":"string","title":"Level"},"score":{"type":"integer","title":"Score"},"review_status":{"type":"string","title":"Review Status"},"approval_status":{"type":"string","title":"Approval Status"},"document_id":{"type":"string","title":"Document Id"},"document_title":{"type":"string","title":"Document Title"},"jurisdiction":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Jurisdiction"},"profile_id":{"type":"string","title":"Profile Id"},"profile_name":{"type":"string","title":"Profile Name"}},"type":"object","required":["id","level","score","review_status","approval_status","document_id","document_title","jurisdiction","profile_id","profile_name"],"title":"TaskImpactRef"},"TaskOut":{"properties":{"id":{"type":"string","title":"Id"},"impact_match_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Impact Match Id"},"document_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Document Id"},"profile_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Profile Id"},"title":{"type":"string","title":"Title"},"description":{"type":"string","title":"Description"},"status":{"type":"string","title":"Status"},"priority":{"type":"string","title":"Priority"},"owner_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner User Id"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"due_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Due At"},"completed_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Completed At"},"checklist":{"items":{"$ref":"#/components/schemas/ChecklistItem"},"type":"array","title":"Checklist"},"checklist_done":{"type":"integer","title":"Checklist Done"},"checklist_total":{"type":"integer","title":"Checklist Total"},"overdue":{"type":"boolean","title":"Overdue"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"updated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Updated At"},"impact":{"anyOf":[{"$ref":"#/components/schemas/TaskImpactRef"},{"type":"null"}]}},"type":"object","required":["id","impact_match_id","document_id","profile_id","title","description","status","priority","owner_user_id","created_by","due_at","completed_at","checklist","checklist_done","checklist_total","overdue","created_at","updated_at","impact"],"title":"TaskOut"},"TaskPageOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/TaskOut"},"type":"array","title":"Items"},"total":{"type":"integer","title":"Total"},"has_more":{"type":"boolean","title":"Has More"}},"type":"object","required":["items","total","has_more"],"title":"TaskPageOut"},"TaskPatchIn":{"properties":{"title":{"anyOf":[{"type":"string","maxLength":300,"minLength":1},{"type":"null"}],"title":"Title"},"description":{"anyOf":[{"type":"string","maxLength":10000},{"type":"null"}],"title":"Description"},"status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Status"},"priority":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Priority"},"owner_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner User Id","description":"Member user id, or empty string to unassign"},"due_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Due At"},"clear_due":{"type":"boolean","title":"Clear Due","default":false},"checklist":{"anyOf":[{"items":{"$ref":"#/components/schemas/ChecklistItem"},"type":"array","maxItems":50},{"type":"null"}],"title":"Checklist"}},"type":"object","title":"TaskPatchIn"},"TaskSummaryOut":{"properties":{"by_status":{"additionalProperties":{"type":"integer"},"type":"object","title":"By Status"},"overdue":{"type":"integer","title":"Overdue"},"due_soon":{"type":"integer","title":"Due Soon"},"mine":{"type":"integer","title":"Mine"},"unassigned":{"type":"integer","title":"Unassigned"}},"type":"object","required":["by_status","overdue","due_soon","mine","unassigned"],"title":"TaskSummaryOut"},"TicketLinkListOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/TicketLinkOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"TicketLinkListOut"},"TicketLinkOut":{"properties":{"id":{"type":"string","title":"Id"},"connector_id":{"type":"string","title":"Connector Id"},"connector_name":{"type":"string","title":"Connector Name"},"provider":{"type":"string","title":"Provider"},"target_type":{"type":"string","title":"Target Type"},"target_id":{"type":"string","title":"Target Id"},"external_id":{"type":"string","title":"External Id"},"external_key":{"type":"string","title":"External Key"},"url":{"type":"string","title":"Url"},"status":{"type":"string","title":"Status"},"last_synced_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Last Synced At"},"created_by":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Created By"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"}},"type":"object","required":["id","connector_id","connector_name","provider","target_type","target_id","external_id","external_key","url","status","last_synced_at","created_by","created_at"],"title":"TicketLinkOut"},"TicketOverrides":{"properties":{"summary":{"anyOf":[{"type":"string","maxLength":250},{"type":"null"}],"title":"Summary"},"notes":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Notes"},"labels":{"anyOf":[{"items":{"type":"string"},"type":"array","maxItems":10},{"type":"null"}],"title":"Labels"},"assignee":{"anyOf":[{"type":"string","maxLength":200},{"type":"null"}],"title":"Assignee","description":"Jira accountId / ServiceNow user sys_id"},"level":{"anyOf":[{"type":"string","pattern":"^(none|low|medium|high)$"},{"type":"null"}],"title":"Level"}},"type":"object","title":"TicketOverrides"},"TranslationLanguagesOut":{"properties":{"languages":{"items":{"type":"string"},"type":"array","title":"Languages"}},"type":"object","required":["languages"],"title":"TranslationLanguagesOut"},"TranslationOut":{"properties":{"signal_id":{"type":"string","title":"Signal Id"},"lang":{"type":"string","title":"Lang"},"source_language":{"type":"string","title":"Source Language"},"title":{"type":"string","title":"Title"},"summary":{"type":"string","title":"Summary"},"key_points":{"items":{"type":"string"},"type":"array","title":"Key Points"},"model":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Model"},"translated_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Translated At"},"machine_translated":{"type":"boolean","title":"Machine Translated"},"cached":{"type":"boolean","title":"Cached"}},"type":"object","required":["signal_id","lang","source_language","title","summary","key_points","model","translated_at","machine_translated","cached"],"title":"TranslationOut"},"TrendAnomaly":{"properties":{"kind":{"type":"string","title":"Kind","description":"rising | falling"},"last":{"type":"integer","title":"Last","description":"Items in the last complete bucket"},"median":{"type":"number","title":"Median","description":"Median of the previous 8 complete buckets"},"ratio":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Ratio","description":"last / median; null when the median is 0 (nothing before)"}},"type":"object","required":["kind","last","median","ratio"],"title":"TrendAnomaly"},"TrendItem":{"properties":{"id":{"type":"string","title":"Id"},"title":{"type":"string","title":"Title"},"url":{"type":"string","title":"Url"},"jurisdiction":{"type":"string","title":"Jurisdiction"},"doc_type":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Doc Type"},"published_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Published At"}},"type":"object","required":["id","title","url","jurisdiction","doc_type","published_at"],"title":"TrendItem"},"TrendPoint":{"properties":{"date":{"type":"string","title":"Date","description":"Bucket start, yyyy-mm-dd (Monday for weeks, the 1st for months)"},"count":{"type":"integer","title":"Count"}},"type":"object","required":["date","count"],"title":"TrendPoint"},"TrendSeriesOut":{"properties":{"key":{"type":"string","title":"Key","description":"The dimension value: topic slug, vertical slug, jurisdiction code or doc type"},"total":{"type":"integer","title":"Total"},"points":{"items":{"$ref":"#/components/schemas/TrendPoint"},"type":"array","title":"Points"},"anomaly":{"anyOf":[{"$ref":"#/components/schemas/TrendAnomaly"},{"type":"null"}]},"top_items":{"items":{"$ref":"#/components/schemas/TrendItem"},"type":"array","title":"Top Items","description":"For rising series: the strongest items in the last complete bucket"}},"type":"object","required":["key","total","points","anomaly"],"title":"TrendSeriesOut"},"TrendsOut":{"properties":{"window_days":{"type":"integer","title":"Window Days"},"bucket":{"type":"string","title":"Bucket"},"dimension":{"type":"string","title":"Dimension"},"buckets":{"items":{"type":"string"},"type":"array","title":"Buckets","description":"Every bucket start in the window; the last one is still filling"},"last_complete_bucket":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Last Complete Bucket"},"series":{"items":{"$ref":"#/components/schemas/TrendSeriesOut"},"type":"array","title":"Series"}},"type":"object","required":["window_days","bucket","dimension","buckets","last_complete_bucket","series"],"title":"TrendsOut"},"TriageIn":{"properties":{"review_status":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Review Status"},"owner_user_id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Owner User Id","description":"Member user id, or empty string to unassign"},"due_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Due At"},"clear_due":{"type":"boolean","title":"Clear Due","default":false},"notes":{"anyOf":[{"type":"string","maxLength":5000},{"type":"null"}],"title":"Notes"}},"type":"object","title":"TriageIn"},"UrlOut":{"properties":{"url":{"type":"string","title":"Url"},"id":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Id"}},"type":"object","required":["url"],"title":"UrlOut"},"UsageOut":{"properties":{"org_id":{"type":"string","title":"Org Id"},"from":{"type":"string","format":"date-time","title":"From"},"to":{"type":"string","format":"date-time","title":"To"},"total_requests":{"type":"integer","title":"Total Requests"},"total_units":{"type":"integer","title":"Total Units"},"by_endpoint":{"additionalProperties":{"additionalProperties":{"type":"integer"},"type":"object"},"type":"object","title":"By Endpoint"},"llm":{"additionalProperties":{"additionalProperties":{"type":"integer"},"type":"object"},"type":"object","title":"Llm","description":"LLM calls and tokens by purpose"}},"type":"object","required":["org_id","from","to","total_requests","total_units","by_endpoint"],"title":"UsageOut"},"UserOut":{"properties":{"id":{"type":"string","title":"Id"},"email":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Email"},"display_name":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Display Name"}},"type":"object","required":["id","email","display_name"],"title":"UserOut"},"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"},"VersionDiffOut":{"properties":{"summary_changed":{"type":"boolean","title":"Summary Changed","default":false},"key_points_added":{"items":{"type":"string"},"type":"array","title":"Key Points Added"},"key_points_removed":{"items":{"type":"string"},"type":"array","title":"Key Points Removed"},"fields_changed":{"additionalProperties":true,"type":"object","title":"Fields Changed","description":"{field: {from, to}} for doc_type, effective_at, comment_deadline."}},"type":"object","title":"VersionDiffOut","description":"What changed between a version and the previous one."},"VersionsOut":{"properties":{"items":{"items":{"$ref":"#/components/schemas/DocumentVersionOut"},"type":"array","title":"Items"}},"type":"object","required":["items"],"title":"VersionsOut"},"WaitlistIn":{"properties":{"email":{"type":"string","format":"email","title":"Email"},"name":{"type":"string","maxLength":200,"minLength":1,"title":"Name"},"company":{"type":"string","maxLength":200,"title":"Company","default":""},"role":{"type":"string","maxLength":120,"title":"Role","default":""},"use_case":{"type":"string","maxLength":4000,"title":"Use Case","default":""},"jurisdictions":{"items":{"type":"string"},"type":"array","maxItems":40,"title":"Jurisdictions"},"source":{"type":"string","maxLength":60,"title":"Source","default":"website"}},"type":"object","required":["email","name"],"title":"WaitlistIn"},"WaitlistJoinOut":{"properties":{"received":{"type":"boolean","title":"Received","default":true}},"type":"object","title":"WaitlistJoinOut"},"WebhookIn":{"properties":{"url":{"type":"string","maxLength":2083,"minLength":1,"format":"uri","title":"Url"},"description":{"type":"string","maxLength":300,"title":"Description","default":""},"events":{"items":{"type":"string"},"type":"array","title":"Events"},"filter":{"additionalProperties":true,"type":"object","title":"Filter","description":"DocumentFilter fields for signal.* events; plus min_impact_level / profile_ids for impact.matched."},"active":{"type":"boolean","title":"Active","default":true}},"type":"object","required":["url"],"title":"WebhookIn"},"WebhookOut":{"properties":{"id":{"type":"string","title":"Id"},"url":{"type":"string","title":"Url"},"description":{"type":"string","title":"Description"},"events":{"items":{"type":"string"},"type":"array","title":"Events"},"filter":{"additionalProperties":true,"type":"object","title":"Filter"},"active":{"type":"boolean","title":"Active"},"failure_count":{"type":"integer","title":"Failure Count"},"created_at":{"anyOf":[{"type":"string","format":"date-time"},{"type":"null"}],"title":"Created At"},"secret":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Secret","description":"Only returned on creation and rotation."}},"type":"object","required":["id","url","description","events","filter","active","failure_count","created_at"],"title":"WebhookOut"}}},"tags":[{"name":"Signal APIs","description":"Detect: signal feed, detail, semantic search, internal ingestion."},{"name":"Intelligence APIs","description":"Understand: classify, ask with citations, impact matching."},{"name":"Action APIs","description":"Act: webhooks, saved filters, deliveries."},{"name":"Console","description":"Console: identity, organizations, members, roles, API keys, inbox, dashboard."},{"name":"Account","description":"Usage and metering."},{"name":"Meta","description":"Health, taxonomy, jurisdictions, sources."}]}