{"ok":true,"site":{"host":"sdds.blackswancausallabs.com","url":"https://sdds.blackswancausallabs.com/","type":"live","desc":"Create and export epidemiologic study design diagrams. By Black Swan Causal Labs.","tools":[{"name":"get_study_spec","kind":"answer","impl":"imperative","description":"Read the current specification and revision before editing. Blank strings and null days mean unresolved; never infer missing study facts.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"update_design_element","kind":"act","impl":"imperative","description":"Update only supplied fields on one timeline element. Use the current revision. Record source evidence or mark researcher-defined changes.","inputSchema":{"type":"object","properties":{"id":{"type":"string"},"expected_revision":{"type":"integer"},"patch":{"type":"object","properties":{"label":{"type":"string","maxLength":100},"category":{"enum":["washout","eligibility","exclusion","covariates","follow-up"],"type":"string"},"start":{"type":["integer","null"],"minimum":-36500,"maximum":36500},"end":{"type":["integer","null"],"minimum":-36500,"maximum":36500},"rule":{"type":"string"},"source":{"type":"string"},"endpointLabel":{"type":"string","maxLength":80}},"required":[],"additionalProperties":false}},"required":["id","expected_revision","patch"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"add_design_element","kind":"act","impl":"imperative","description":"Add a new window with a unique ID. Use null for unknown timing and explicit evidence in source.","inputSchema":{"type":"object","properties":{"expected_revision":{"type":"integer"},"element":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string","maxLength":100},"category":{"enum":["washout","eligibility","exclusion","covariates","follow-up"],"type":"string"},"start":{"type":["integer","null"],"minimum":-36500,"maximum":36500},"end":{"type":["integer","null"],"minimum":-36500,"maximum":36500},"rule":{"type":"string"},"source":{"type":"string"},"endpointLabel":{"type":"string","maxLength":80}},"required":["id","label","category","start","end","rule","source"],"additionalProperties":false}},"required":["expected_revision","element"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"remove_design_element","kind":"act","impl":"imperative","description":"Remove one window by ID. Read the current specification first. All other windows and study details are preserved. Reversible using the dashboard Undo button.","inputSchema":{"type":"object","properties":{"id":{"type":"string"},"expected_revision":{"type":"integer"}},"required":["id","expected_revision"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"reorder_design_elements","kind":"act","impl":"imperative","description":"Reorder rows top to bottom. Supply every current window ID exactly once in ordered_ids. Does not change dates, labels, definitions or study details. Reversible using the dashboard Undo button.","inputSchema":{"type":"object","properties":{"ordered_ids":{"type":"array","items":{"type":"string"},"maxItems":60,"uniqueItems":true},"expected_revision":{"type":"integer"}},"required":["ordered_ids","expected_revision"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"update_study_details","kind":"act","impl":"imperative","description":"Update study title, index event, groups, outcome, calendar entry, episode rules, stopping rules, footnotes or abbreviations. Does not change window dates.","inputSchema":{"type":"object","properties":{"expected_revision":{"type":"integer"},"patch":{"type":"object","properties":{"title":{"type":"string"},"design":{"type":"string"},"indexEvent":{"type":"string"},"exposure":{"type":"string"},"comparator":{"type":"string"},"entryPeriod":{"type":"string"},"episodeRule":{"type":"string"},"outcome":{"type":"string"},"endRules":{"type":"string"},"footnotes":{"type":"string"},"abbreviations":{"type":"string"}},"required":[],"additionalProperties":false}},"required":["expected_revision","patch"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"import_study_spec","kind":"act","impl":"imperative","description":"Replace the entire current design from a structured specification. Read the current revision first. Reversible using Undo.","inputSchema":{"type":"object","properties":{"expected_revision":{"type":"integer"},"spec":{"type":"object","properties":{"schemaVersion":{"const":1,"type":"integer"},"details":{"type":"object","properties":{"title":{"type":"string"},"design":{"type":"string"},"indexEvent":{"type":"string"},"exposure":{"type":"string"},"comparator":{"type":"string"},"entryPeriod":{"type":"string"},"episodeRule":{"type":"string"},"outcome":{"type":"string"},"endRules":{"type":"string"},"footnotes":{"type":"string"},"abbreviations":{"type":"string"}},"required":["title","design","indexEvent","exposure","comparator","entryPeriod","episodeRule","outcome","endRules"],"additionalProperties":false},"elements":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string","maxLength":100},"category":{"enum":["washout","eligibility","exclusion","covariates","follow-up"],"type":"string"},"start":{"type":["integer","null"],"minimum":-36500,"maximum":36500},"end":{"type":["integer","null"],"minimum":-36500,"maximum":36500},"rule":{"type":"string"},"source":{"type":"string"},"endpointLabel":{"type":"string","maxLength":80}},"required":["id","label","category","start","end","rule","source"],"additionalProperties":false}}},"required":["schemaVersion","details","elements"],"additionalProperties":false}},"required":["expected_revision","spec"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"clear_study_spec","kind":"act","impl":"imperative","description":"Clear all study details and windows to start a blank canvas. Reversible using Undo.","inputSchema":{"type":"object","properties":{"expected_revision":{"type":"integer"}},"required":["expected_revision"],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"validate_study_spec","kind":"answer","impl":"imperative","description":"Return the same structured completeness checklist shown on the dashboard, with stable IDs, labels, complete flags, missing window names and completion totals, plus review items. Read-only; populated information does not establish causal validity or source accuracy.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]},{"name":"export_schematic","kind":"answer","impl":"imperative","description":"Return an SVG document containing the current schematic, definitions and sources. Does not trigger a browser download.","inputSchema":{"type":"object","properties":{},"required":[],"additionalProperties":false},"hasHandler":true,"hasExecute":true,"__source":"spec","executable":true,"handlerField":"execute","page":"/","pages":["/"]}],"category":"Health & Education","favicon":"/favicons/sdds.blackswancausallabs.com.png","apiSurface":"spec","toolCount":10}}