{"openapi":"3.1.0","info":{"title":"Qraft public API","version":"v1","description":"Runtime schemas shared by HTTP and MCP. Generated; do not edit."},"servers":[{"url":"https://www.qraftpad.com"},{"url":"http://localhost:3000"}],"paths":{"/api/v1/boards/{id}/files/namespace":{"post":{"operationId":"manageFiles","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"manage_files","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"action":{"type":"string","const":"operation"}},"required":["boardId","driveId","action"],"additionalProperties":false},{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"action":{"type":"string","const":"patch"},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"metadataRevision":{"type":"string","pattern":"^\\d+$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":255},"parentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},"additionalProperties":false}},"required":["boardId","driveId","action","nodeId","metadataRevision","patch"],"additionalProperties":false},{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"action":{"type":"string","enum":["trash","restore"]},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"metadataRevision":{"type":"string","pattern":"^\\d+$"}},"required":["boardId","driveId","action","nodeId","metadataRevision"],"additionalProperties":false},{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"action":{"type":"string","const":"mkdir"},"input":{"type":"object","properties":{"parentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"name":{"type":"string","minLength":1,"maxLength":255},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"epoch":{"type":"string","minLength":1,"maxLength":4096}},"required":["parentId","name","requestId","epoch"],"additionalProperties":false}},"required":["boardId","driveId","action","input"],"additionalProperties":false}],"properties":{},"required":[]}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"kind":{"type":"string","examples":["file","folder"]},"name":{"type":"string","maxLength":255},"createdAt":{"type":"string"},"metadataRevision":{"type":"string","pattern":"^\\d+$"},"currentVersionId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"trashedAt":{"type":["string","null"]}},"required":["boardId","driveId","id","parentId","kind","name","metadataRevision","currentVersionId","trashedAt"]},{"type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"epoch":{"type":"string"}},"required":["requestId","epoch"]}]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/files/trash":{"get":{"operationId":"listFileTrash","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"list_file_trash","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"driveId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":4096}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"protocolVersion":{"type":"number","const":1},"items":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"kind":{"type":"string","examples":["file","folder"]},"name":{"type":"string","maxLength":255},"createdAt":{"type":"string"},"metadataRevision":{"type":"string","pattern":"^\\d+$"},"currentVersionId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"trashedAt":{"type":["string","null"]},"purgeAfter":{"type":"string"}},"required":["boardId","driveId","id","parentId","kind","name","metadataRevision","currentVersionId","trashedAt","purgeAfter"]}},"nextCursor":{"type":["string","null"]}},"required":["protocolVersion","items","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/files/versions":{"get":{"operationId":"listFileVersions","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"list_file_versions","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"driveId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"nodeId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","pattern":"^[1-9][0-9]{0,18}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"items":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"versionId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"contentRevision":{"type":"string","pattern":"^\\d+$"},"bytes":{"type":"integer","minimum":0,"maximum":1000000000},"createdAt":{"type":"string"}},"required":["versionId","contentRevision","bytes","createdAt"]}},"nextCursor":{"type":["string","null"]}},"required":["items","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/files/activate":{"post":{"operationId":"activateFiles","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"activate_files","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"tabId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},"required":[],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"rootId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"tabId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},"required":["driveId","rootId","tabId"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/lead-theme":{"get":{"operationId":"readLeadTheme","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_lead_theme","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"leadId","in":"query","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"snapshot":{"anyOf":[{"type":"string","pattern":"^[0-9a-f]{64}$"},{"type":"null"}]},"choice":{"type":"string","examples":["classic","midnight","ink","parchment","homebrew","inherit","project","other-project","unsupported"]},"presets":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","examples":["classic","midnight","ink","parchment","homebrew"]},"label":{"type":"string"},"hint":{"type":"string"}},"required":["id","label","hint"]}}},"required":["boardId","leadId","snapshot","choice","presets"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/call-speech":{"get":{"operationId":"readCallSpeech","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_call_speech","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"leadId","in":"query","required":true,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"speech":{"type":"object","properties":{"voice":{"type":"string","maxLength":300},"name":{"type":"string","maxLength":200},"rate":{"type":"number","minimum":0.8,"maximum":1.6,"multipleOf":0.01}},"required":["voice","name","rate"]},"hadSpeech":{"type":"boolean"}},"required":["boardId","leadId","speech","hadSpeech"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/folder":{"get":{"operationId":"readProjectFolderPlacement","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_project_folder_placement","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"folderId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},{"type":"null"}]}},"required":["boardId","folderId"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}},"post":{"operationId":"setProjectFolderPlacement","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"set_project_folder_placement","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folderId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},{"type":"null"}]},"expectedFolderId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},{"type":"null"}]}},"required":["folderId","expectedFolderId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"folderId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},{"type":"null"}]}},"required":["boardId","folderId"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/renders/{jobId}/cancel":{"post":{"operationId":"cancelMediaRender","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"cancel_media_render","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"jobId","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"expectedAttempt":{"type":"integer","minimum":1,"maximum":3}},"required":["expectedAttempt"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"job":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"status":{"type":"string","examples":["queued","running","succeeded","failed","cancelled"]},"attempt":{"type":"integer","minimum":1,"maximum":1000000},"progress":{"type":"number","minimum":0,"maximum":1},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,80}$"},"retryable":{"type":"boolean"}},"required":["code","retryable"]},{"type":"null"}]},"output":{"anyOf":[{"type":"object","properties":{"mimeType":{"type":"string","const":"video/mp4"},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"duration":{"type":"number","minimum":0,"maximum":21600},"width":{"type":"integer","minimum":1,"maximum":16384},"height":{"type":"integer","minimum":1,"maximum":16384},"frameRate":{"type":"number","minimum":1,"maximum":240},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"available":{"type":"boolean"}},"required":["mimeType","bytes","sha256","duration","width","height","frameRate","expiresAt","available"]},{"type":"null"}]}},"required":["id","status","attempt","progress","createdAt","updatedAt","error","output"]}},"required":["boardId","job"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/sources/{sourceId}/rename":{"post":{"operationId":"renameMediaSource","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"rename_media_source","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sourceId","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"expectedName":{"type":"string","maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["expectedName","name"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"source":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"name":{"type":"string","maxLength":200},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"status":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,48}$"},"provider":{"type":"string","examples":["r2","stream","unknown"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"duration":{"anyOf":[{"type":"number","minimum":0,"maximum":21600},{"type":"null"}]},"deleteAfter":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"hasError":{"type":"boolean"}},"required":["id","name","bytes","status","provider","createdAt","duration","deleteAfter","hasError"]},"freshness":{"type":"string","const":"stored"}},"required":["boardId","source","freshness"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/sources":{"get":{"operationId":"listMediaSources","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_media_sources","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sources":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"name":{"type":"string","maxLength":200},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"status":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,48}$"},"provider":{"type":"string","examples":["r2","stream","unknown"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"duration":{"anyOf":[{"type":"number","minimum":0,"maximum":21600},{"type":"null"}]},"deleteAfter":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"hasError":{"type":"boolean"}},"required":["id","name","bytes","status","provider","createdAt","duration","deleteAfter","hasError"]}},"nextCursor":{"type":["string","null"]},"freshness":{"type":"string","const":"stored"}},"required":["boardId","sources","nextCursor","freshness"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/renders/{jobId}/import":{"post":{"operationId":"importMediaRender","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"import_media_render","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"jobId","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"expectedAttempt":{"type":"integer","minimum":1,"maximum":3},"expectedSha256":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["expectedAttempt","expectedSha256"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"jobId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"attempt":{"type":"integer","minimum":1,"maximum":3},"asset":{"type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]}},"required":["boardId","jobId","attempt","asset"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/organizations/{orgId}/project-trash":{"get":{"operationId":"listOrganizationProjectTrash","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_organization_project_trash","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"orgId","in":"path","required":true,"schema":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":1000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"boards":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","maxLength":200},"trashId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deletedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["id","name","trashId","deletedAt","expiresAt"]}},"nextCursor":{"type":["string","null"]}},"required":["orgId","boards","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/organizations/{orgId}/domains/add":{"post":{"operationId":"addOrganizationDomain","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"add_organization_domain","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"orgId","in":"path","required":true,"schema":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"domain":{"type":"string","minLength":1,"maxLength":253}},"required":["domain"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"domain":{"type":"object","properties":{"id":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"domain":{"type":"string","minLength":1,"maxLength":253},"status":{"type":"string","examples":["pending","verified"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"verification":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string","maxLength":280},"content":{"type":"string","maxLength":180}},"required":["type","name","content"]},"setups":{"type":"object","properties":{"verify":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"receive":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"send":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]}}}},"required":["id","domain","status","verifiedAt","checkedAt","createdAt","verification","setups"]}},"required":["orgId","domain"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/organizations/{orgId}/domains/{domainId}/verify":{"post":{"operationId":"verifyOrganizationDomain","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"verify_organization_domain","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"orgId","in":"path","required":true,"schema":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"}},{"name":"domainId","in":"path","required":true,"schema":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"required":[],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"domain":{"type":"object","properties":{"id":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"domain":{"type":"string","minLength":1,"maxLength":253},"status":{"type":"string","examples":["pending","verified"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"verification":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string","maxLength":280},"content":{"type":"string","maxLength":180}},"required":["type","name","content"]},"setups":{"type":"object","properties":{"verify":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"receive":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"send":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]}}}},"required":["id","domain","status","verifiedAt","checkedAt","createdAt","verification","setups"]},"verified":{"type":"boolean"}},"required":["orgId","domain","verified"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/inbox/view/read":{"post":{"operationId":"clearInboxView","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"clear_inbox_view","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"viewBoardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"limit":{"default":100,"type":"integer","minimum":1,"maximum":500},"cursor":{"type":"string","minLength":1,"maxLength":1500}},"required":["viewBoardId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"viewBoardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cutoff":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"scanned":{"type":"integer","minimum":0,"maximum":1000},"marked":{"type":"integer","minimum":0,"maximum":1000},"nextCursor":{"type":["string","null"]}},"required":["viewBoardId","cutoff","scanned","marked","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/inbox/global/read":{"post":{"operationId":"markGlobalInboxRead","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"mark_global_inbox_read","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"ids":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["ids"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"marked":{"type":"integer","minimum":0,"maximum":1000}},"required":["marked"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/inbox/global":{"get":{"operationId":"readGlobalInbox","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_global_inbox","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"status","in":"query","required":false,"schema":{"default":"unread","type":"string","enum":["unread","read","all"]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":1000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"notifications":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","examples":["message","product_review_ready","product_review_failed","product_review_stopped","product_review_digest","support_ticket"]},"scope":{"type":"string","examples":["global","project"]},"title":{"type":"string","minLength":1,"maxLength":160},"body":{"type":"string","maxLength":2000},"boardId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"boardName":{"type":["string","null"]},"target":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"runId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"ticketId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"actor":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9a-f-]{36}$"},"name":{"type":"string","maxLength":200}}},"createdAt":{"type":"string"},"readAt":{"type":["string","null"]}},"required":["id","kind","title","body","boardId","boardName","target","actor","createdAt","readAt"]}},"nextCursor":{"type":["string","null"]}},"required":["notifications","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/documents/list":{"post":{"operationId":"listDocuments","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_documents","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"query":{"description":"Title contains (case-insensitive).","type":"string","maxLength":200},"type":{"type":"string","enum":["text","flowchart","slides"]},"origin":{"type":"string","enum":["tab","journal","breakdown"]},"ids":{"description":"Exactly these documents (other filters ignored).","minItems":1,"maxItems":100,"type":"array","items":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"cursor":{"type":"string","maxLength":300},"limit":{"description":"Default 50.","type":"integer","minimum":1,"maximum":100}},"required":[],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]},"title":{"type":"string"},"home":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"origin":{"type":"string","examples":["tab","journal","breakdown"]},"openIn":{"type":"array","items":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"updatedAt":{"type":"string"}},"required":["id","type","title","home","origin","openIn","updatedAt"]}},"nextCursor":{"type":["string","null"]}},"required":["documents","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/videos/read":{"post":{"operationId":"readVideo","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_video","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sourceId":{"description":"A media source (Video Library, Breakdown session, or a previous read_video result).","type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"assetId":{"description":"A video attached to a card, review, playtest note or comment (attachment media.id).","type":"string","pattern":"^[a-f0-9]{64}$"},"file":{"description":"A video in the Files tab.","type":"object","properties":{"driveId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"nodeId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["driveId","nodeId"],"additionalProperties":false},"cursor":{"description":"Transcript cue to start from: the previous transcript.nextCursor.","type":"integer","minimum":0,"maximum":9007199254740991},"chars":{"description":"Transcript page size in characters (default 12000).","type":"integer","minimum":500,"maximum":12000},"retry":{"description":"Restart preparation of a video whose last attempt failed.","type":"boolean"}},"required":[],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"state":{"type":"string","examples":["processing","ready","error","unsupported"],"description":"processing: call again after retryAfterSeconds. ready: transcript and keyframes are final (keyframes.state error means stills could not be made)."},"name":{"type":"string","maxLength":200},"duration":{"anyOf":[{"type":"number","minimum":0,"maximum":21600},{"type":"null"}]},"video":{"anyOf":[{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991},"hasAudio":{"type":"boolean"}},"required":["width","height","hasAudio"]},{"type":"null"}]},"transcript":{"type":"object","properties":{"state":{"type":"string","examples":["ready","processing","none"]},"cueCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"text":{"type":"string","description":"\"[m:ss] text\" lines"},"nextCursor":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["state","cueCount","text","nextCursor"]},"keyframes":{"type":"object","properties":{"state":{"type":"string","examples":["ready","processing","error","none"]},"labeled":{"description":"Contact sheet tiles carry their timestamp.","type":"boolean"},"frames":{"maxItems":48,"type":"array","items":{"type":"object","properties":{"t":{"type":"number","minimum":0,"maximum":21600},"kind":{"type":"string","examples":["scene","interval"]},"name":{"type":"string","pattern":"^(?:k0(?:0[1-9]|[1-3][0-9]|4[0-8])|sheet[1-4])\\.jpg$"},"download":{"type":"object","properties":{"path":{"type":"string","maxLength":1000},"bytes":{"type":"integer","exclusiveMinimum":0,"maximum":2097152},"etag":{"type":"string","pattern":"^\"[a-zA-Z0-9_-]{1,128}\"$"},"mimeType":{"type":"string","const":"image/jpeg"},"authentication":{"type":"string","const":"bearer"}},"required":["path","bytes","etag","mimeType","authentication"]}},"required":["t","kind","name","download"]}},"sheets":{"maxItems":4,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","pattern":"^(?:k0(?:0[1-9]|[1-3][0-9]|4[0-8])|sheet[1-4])\\.jpg$"},"from":{"type":"number","minimum":0,"maximum":21600},"to":{"type":"number","minimum":0,"maximum":21600},"count":{"type":"integer","minimum":1,"maximum":12},"download":{"type":"object","properties":{"path":{"type":"string","maxLength":1000},"bytes":{"type":"integer","exclusiveMinimum":0,"maximum":2097152},"etag":{"type":"string","pattern":"^\"[a-zA-Z0-9_-]{1,128}\"$"},"mimeType":{"type":"string","const":"image/jpeg"},"authentication":{"type":"string","const":"bearer"}},"required":["path","bytes","etag","mimeType","authentication"]}},"required":["name","from","to","count","download"]},"description":"Contact sheets: up to 12 timestamped frames each, 4 per row, in time order."}},"required":["state","frames","sheets"]},"error":{"type":"string","maxLength":500},"retryAfterSeconds":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["boardId","sourceId","state","name","duration","video","transcript","keyframes"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/sources/{sourceId}/download-info":{"get":{"operationId":"getMediaSourceDownload","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_media_source_download","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sourceId","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},{"name":"variant","in":"query","required":false,"schema":{"default":"video","type":"string","enum":["video","poster","transcript","transcript-json","keyframes","keyframe"]}},{"name":"name","in":"query","required":false,"schema":{"type":"string","pattern":"^(?:k0(?:0[1-9]|[1-3][0-9]|4[0-8])|sheet[1-4])\\.jpg$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"variant":{"type":"string","examples":["video","poster","transcript","transcript-json","keyframes","keyframe"]},"name":{"type":"string","pattern":"^(?:k0(?:0[1-9]|[1-3][0-9]|4[0-8])|sheet[1-4])\\.jpg$"},"path":{"type":"string","maxLength":1000},"bytes":{"type":"integer","minimum":0,"maximum":32212254720},"etag":{"type":"string","pattern":"^\"[a-zA-Z0-9_-]{1,128}\"$"},"mimeType":{"type":"string","examples":["video/mp4","image/jpeg","text/vtt","application/json"]},"authentication":{"type":"string","const":"bearer"}},"required":["boardId","sourceId","variant","path","bytes","etag","mimeType","authentication"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/renders/{jobId}/download-info":{"get":{"operationId":"getMediaRenderDownload","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_media_render_download","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"jobId","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"jobId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"attempt":{"type":"integer","minimum":1,"maximum":1000000},"path":{"type":"string","maxLength":500},"bytes":{"type":"integer","exclusiveMinimum":0,"maximum":32212254720},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"video/mp4"},"authentication":{"type":"string","const":"bearer"}},"required":["boardId","jobId","attempt","path","bytes","sha256","mimeType","authentication"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/renders":{"get":{"operationId":"listMediaRenders","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_media_renders","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"jobs":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"status":{"type":"string","examples":["queued","running","succeeded","failed","cancelled"]},"attempt":{"type":"integer","minimum":1,"maximum":1000000},"progress":{"type":"number","minimum":0,"maximum":1},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,80}$"},"retryable":{"type":"boolean"}},"required":["code","retryable"]},{"type":"null"}]},"output":{"anyOf":[{"type":"object","properties":{"mimeType":{"type":"string","const":"video/mp4"},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"duration":{"type":"number","minimum":0,"maximum":21600},"width":{"type":"integer","minimum":1,"maximum":16384},"height":{"type":"integer","minimum":1,"maximum":16384},"frameRate":{"type":"number","minimum":1,"maximum":240},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"available":{"type":"boolean"}},"required":["mimeType","bytes","sha256","duration","width","height","frameRate","expiresAt","available"]},{"type":"null"}]}},"required":["id","status","attempt","progress","createdAt","updatedAt","error","output"]}},"nextCursor":{"type":["string","null"]},"freshness":{"type":"string","const":"stored"}},"required":["boardId","jobs","nextCursor","freshness"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/sources/{sourceId}":{"get":{"operationId":"readMediaSource","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_media_source","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sourceId","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"source":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"name":{"type":"string","maxLength":200},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"status":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,48}$"},"provider":{"type":"string","examples":["r2","stream","unknown"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"duration":{"anyOf":[{"type":"number","minimum":0,"maximum":21600},{"type":"null"}]},"deleteAfter":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"hasError":{"type":"boolean"}},"required":["id","name","bytes","status","provider","createdAt","duration","deleteAfter","hasError"]},"freshness":{"type":"string","const":"stored"}},"required":["boardId","source","freshness"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/media-editor/renders/{jobId}":{"get":{"operationId":"readMediaRender","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_media_render","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"jobId","in":"path","required":true,"schema":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"job":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"status":{"type":"string","examples":["queued","running","succeeded","failed","cancelled"]},"attempt":{"type":"integer","minimum":1,"maximum":1000000},"progress":{"type":"number","minimum":0,"maximum":1},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,80}$"},"retryable":{"type":"boolean"}},"required":["code","retryable"]},{"type":"null"}]},"output":{"anyOf":[{"type":"object","properties":{"mimeType":{"type":"string","const":"video/mp4"},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"duration":{"type":"number","minimum":0,"maximum":21600},"width":{"type":"integer","minimum":1,"maximum":16384},"height":{"type":"integer","minimum":1,"maximum":16384},"frameRate":{"type":"number","minimum":1,"maximum":240},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"available":{"type":"boolean"}},"required":["mimeType","bytes","sha256","duration","width","height","frameRate","expiresAt","available"]},{"type":"null"}]}},"required":["id","status","attempt","progress","createdAt","updatedAt","error","output"]}},"required":["boardId","job"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/folders":{"post":{"operationId":"createProjectFolder","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"create_project_folder","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["requestId","name"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folder":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"name":{"type":"string","maxLength":48},"position":{"type":"integer","minimum":-2147483648,"maximum":2147483647}},"required":["id","name","position"]},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"replayed":{"type":"boolean"}},"required":["folder","requestId","replayed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}},"get":{"operationId":"listProjectFolders","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_project_folders","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folders":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"name":{"type":"string","maxLength":48},"position":{"type":"integer","minimum":-2147483648,"maximum":2147483647}},"required":["id","name","position"]}},"nextCursor":{"type":["string","null"]}},"required":["folders","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/folders/{folderId}/remove":{"post":{"operationId":"removeProjectFolder","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"remove_project_folder","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"folderId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"expectedName":{"type":"string","maxLength":48}},"required":["expectedName"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folderId":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"removed":{"type":"boolean","const":true}},"required":["folderId","removed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/folders/{folderId}/rename":{"post":{"operationId":"renameProjectFolder","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"rename_project_folder","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"folderId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"expectedName":{"type":"string","maxLength":48},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["expectedName","name"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folder":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"name":{"type":"string","maxLength":48},"position":{"type":"integer","minimum":-2147483648,"maximum":2147483647}},"required":["id","name","position"]}},"required":["folder"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/folders/{folderId}":{"get":{"operationId":"readProjectFolder","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_project_folder","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"folderId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folder":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"name":{"type":"string","maxLength":48},"position":{"type":"integer","minimum":-2147483648,"maximum":2147483647}},"required":["id","name","position"]}},"required":["folder"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/connections":{"get":{"operationId":"listConnections","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_connections","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"state","in":"query","required":false,"schema":{"default":"active","type":"string","enum":["active","revoked"]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"connections":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":128},"name":{"type":"string","maxLength":80},"clientId":{"type":"string","maxLength":256},"mode":{"type":"string","examples":["account","selected_boards"]},"boardCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"scopes":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":80}},"scopeCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"lastUsedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"expiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"revokedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]}},"required":["id","name","clientId","mode","boardCount","scopes","scopeCount","lastUsedAt","createdAt","expiresAt","revokedAt"]}},"nextCursor":{"type":["string","null"]}},"required":["connections","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/connections/{connectionId}":{"get":{"operationId":"readConnection","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_connection","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"connectionId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":128}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"connection":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":128},"name":{"type":"string","maxLength":80},"clientId":{"type":"string","maxLength":256},"mode":{"type":"string","examples":["account","selected_boards"]},"boardCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"scopes":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":80}},"scopeCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"lastUsedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"expiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"revokedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]}},"required":["id","name","clientId","mode","boardCount","scopes","scopeCount","lastUsedAt","createdAt","expiresAt","revokedAt"]}},"required":["connection"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/organizations/{orgId}/domains":{"get":{"operationId":"listOrganizationDomains","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_organization_domains","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"orgId","in":"path","required":true,"schema":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"domains":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"domain":{"type":"string","minLength":1,"maxLength":253},"status":{"type":"string","examples":["pending","verified"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"verification":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string","maxLength":280},"content":{"type":"string","maxLength":180}},"required":["type","name","content"]},"setups":{"type":"object","properties":{"verify":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"receive":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"send":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]}}}},"required":["id","domain","status","verifiedAt","checkedAt","createdAt","verification","setups"]}},"nextCursor":{"type":["string","null"]}},"required":["orgId","domains","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/organizations/{orgId}/domains/{domainId}":{"get":{"operationId":"readOrganizationDomain","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_organization_domain","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"orgId","in":"path","required":true,"schema":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"}},{"name":"domainId","in":"path","required":true,"schema":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"domain":{"type":"object","properties":{"id":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"domain":{"type":"string","minLength":1,"maxLength":253},"status":{"type":"string","examples":["pending","verified"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"verification":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string","maxLength":280},"content":{"type":"string","maxLength":180}},"required":["type","name","content"]},"setups":{"type":"object","properties":{"verify":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"receive":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"send":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]}}}},"required":["id","domain","status","verifiedAt","checkedAt","createdAt","verification","setups"]}},"required":["orgId","domain"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/organizations":{"get":{"operationId":"listOrganizations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_organizations","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"organizations":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"name":{"type":"string","maxLength":80},"role":{"type":"string","examples":["owner","admin","member"]},"personal":{"type":"boolean"}},"required":["id","name","role","personal"]}},"nextCursor":{"type":["string","null"]}},"required":["organizations","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/organizations/{orgId}":{"get":{"operationId":"readOrganization","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_organization","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"orgId","in":"path","required":true,"schema":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"organization":{"type":"object","properties":{"id":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"name":{"type":"string","maxLength":80},"role":{"type":"string","examples":["owner","admin","member"]},"personal":{"type":"boolean"}},"required":["id","name","role","personal"]}},"required":["organization"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/organizations/{orgId}/members":{"get":{"operationId":"listOrganizationMembers","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_organization_members","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"orgId","in":"path","required":true,"schema":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"members":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":256},"name":{"type":"string","maxLength":300},"email":{"type":"string","maxLength":320},"role":{"type":"string","examples":["owner","admin","member"]}},"required":["userId","name","email","role"]}},"nextCursor":{"type":["string","null"]}},"required":["orgId","members","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/digital-ads/{sheetId}/auto-pause":{"get":{"operationId":"readAdsAutoPause","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_ads_auto_pause","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetName":{"type":"string","maxLength":80},"version":{"type":"integer","minimum":0,"maximum":9007199254740991},"autoPause":{"type":"string","examples":["test","all","off"]}},"required":["boardId","sheetId","sheetName","version","autoPause"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/ads/verify":{"get":{"operationId":"verifyAds","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"verify_ads","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"network","in":"query","required":true,"schema":{"type":"string","const":"meta"}},{"name":"appId","in":"query","required":true,"schema":{"type":"string","pattern":"^[1-9][0-9]{0,31}$"}},{"name":"pageId","in":"query","required":true,"schema":{"type":"string","pattern":"^[1-9][0-9]{0,31}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"ok":{"type":"boolean","const":true},"app":{"type":"object","properties":{"id":{"type":"string","pattern":"^[1-9][0-9]{0,31}$"},"name":{"type":"string","minLength":1,"maxLength":1000}},"required":["id","name"]},"page":{"type":"object","properties":{"id":{"type":"string","pattern":"^[1-9][0-9]{0,31}$"},"name":{"type":"string","minLength":1,"maxLength":1000}},"required":["id","name"]},"graphVersion":{"type":"string"},"checkedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["ok","app","page","graphVersion","checkedAt"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/digital-ads/{sheetId}/policy":{"get":{"operationId":"readAdsPolicy","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_ads_policy","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetName":{"type":"string","maxLength":80},"version":{"type":"integer","minimum":0,"maximum":9007199254740991},"policy":{"anyOf":[{"anyOf":[{"type":"object","properties":{"enabled":{"type":"boolean"},"currency":{"type":"string","pattern":"^[A-Z]{3}$","description":"The ad accounts' billing currency; the caps are in it."},"timezone":{"type":"string","minLength":1,"maxLength":64,"description":"Calendar months use this IANA timezone."},"monthlyCapMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Lifetime budgets committed to a calendar month (policy timezone), each test shared over the months it runs."},"allowedAccounts":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}:[A-Za-z0-9_-]{1,64}$"},"description":"network:account, e.g. meta:act_123"},"maxDailyPerAdSetMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},"totalDailyCapMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"}},"required":["enabled","currency","timezone","monthlyCapMicros","allowedAccounts","maxDailyPerAdSetMicros","totalDailyCapMicros"]},{"type":"object","properties":{"enabled":{"type":"boolean"},"currency":{"type":"string","pattern":"^[A-Z]{3}$","description":"The ad accounts' billing currency; the caps are in it."},"timezone":{"type":"string","minLength":1,"maxLength":64,"description":"The policy's own clock: tests per day and months count here (the tab's timezone may change; this does not)."},"perTestBudgetMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Most one test (ad set) may commit as its lifetime budget."},"maxTestsPerDay":{"type":"integer","minimum":0,"maximum":100},"maxConcurrentTests":{"type":"integer","minimum":0,"maximum":200},"monthlyCapMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Lifetime budgets committed to a calendar month (policy timezone), each test shared over the months it runs."},"allowedAccounts":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}:[A-Za-z0-9_-]{1,64}$"},"description":"network:account, e.g. meta:act_123"},"maxTestDays":{"type":"integer","minimum":1,"maximum":30}},"required":["enabled","currency","timezone","perTestBudgetMicros","maxTestsPerDay","maxConcurrentTests","monthlyCapMicros","allowedAccounts","maxTestDays"]}]},{"type":"null"}]}},"required":["boardId","sheetId","sheetName","version","policy"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/members/{userId}":{"get":{"operationId":"getProjectMember","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_project_member","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"userId","in":"path","required":true,"schema":{"type":"string","minLength":1,"maxLength":256}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"organizationId":{"type":"string"},"member":{"anyOf":[{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":256},"name":{"type":"string","maxLength":300},"email":{"type":"string","maxLength":320},"role":{"type":"string","examples":["owner","admin","editor","viewer"]},"guest":{"type":"boolean"}},"required":["userId","name","email","role","guest"]},{"type":"null"}]}},"required":["boardId","organizationId","member"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/agents":{"get":{"operationId":"listProjectAgents","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_project_agents","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"agents":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","maxLength":80},"avatar":{"anyOf":[{"type":"string","pattern":"^(stock:(1[0-2]|[1-9])|image:[a-f0-9]{64})$"},{"type":"null"}]},"runtime":{"type":"string","maxLength":80},"runtimeLabel":{"type":"string","maxLength":80},"ownerName":{"type":"string","maxLength":80},"spawned":{"type":"boolean"},"temporary":{"type":"boolean"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["id","name","avatar","runtime","runtimeLabel","ownerName","spawned","temporary","updatedAt"]}},"nextCursor":{"type":["string","null"]},"presence":{"type":"string","const":"not_requested"}},"required":["boardId","agents","nextCursor","presence"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/agents/{projectAgentId}":{"get":{"operationId":"readProjectAgent","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_project_agent","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"projectAgentId","in":"path","required":true,"schema":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"agent":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","maxLength":80},"avatar":{"anyOf":[{"type":"string","pattern":"^(stock:(1[0-2]|[1-9])|image:[a-f0-9]{64})$"},{"type":"null"}]},"runtime":{"type":"string","maxLength":80},"runtimeLabel":{"type":"string","maxLength":80},"ownerName":{"type":"string","maxLength":80},"spawned":{"type":"boolean"},"temporary":{"type":"boolean"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["id","name","avatar","runtime","runtimeLabel","ownerName","spawned","temporary","updatedAt"]},"presence":{"type":"string","const":"not_requested"}},"required":["boardId","agent","presence"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/project-favicon":{"post":{"operationId":"setProjectFavicon","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"set_project_favicon","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"agentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false}},"required":["assetId","agentId","requestId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"assetId":{"type":"string"},"changeId":{"type":["string","null"]}},"required":["boardId","assetId","changeId"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/project-tags":{"post":{"operationId":"setProjectTags","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"set_project_tags","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"tags":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":32,"pattern":"^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"}},"expectedTags":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":32,"pattern":"^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"}},"agentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false}},"required":["tags","expectedTags","agentId","requestId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"tags":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":32,"pattern":"^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"}},"changeId":{"type":"string"}},"required":["boardId","tags","changeId"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}},"get":{"operationId":"readProjectTags","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_project_tags","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"tags":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":32,"pattern":"^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"}},"canEdit":{"type":"boolean"}},"required":["boardId","tags","canEdit"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/sharing":{"get":{"operationId":"readProjectSharing","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_project_sharing","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"role":{"type":"string","examples":["owner","admin","editor","viewer"]},"canEdit":{"type":"boolean"},"canShare":{"type":"boolean"},"linkAccess":{"type":"string","const":"restricted"},"storedLinkAccess":{"type":"string","examples":["restricted","anyone"]},"linkRole":{"type":"string","examples":["editor","viewer"]},"organizationId":{"type":"string"}},"required":["boardId","role","canEdit","canShare","linkAccess","storedLinkAccess","linkRole","organizationId"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/members":{"get":{"operationId":"listProjectMembers","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_project_members","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":2000}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"people":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":256},"name":{"type":"string"},"email":{"type":"string"},"role":{"type":"string","examples":["owner","admin","editor","viewer"]},"guest":{"type":"boolean"}},"required":["userId","name","email","role","guest"]}},"nextCursor":{"type":["string","null"]}},"required":["boardId","people","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/inbox":{"get":{"operationId":"readInbox","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_inbox","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"status","in":"query","required":false,"schema":{"default":"unread","type":"string","enum":["unread","read","all"]}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":160}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"unread":{"type":"integer","minimum":0,"maximum":9007199254740991},"notifications":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","examples":["message","product_review_ready","product_review_failed","product_review_stopped","product_review_digest","support_ticket"]},"scope":{"type":"string","examples":["global","project"]},"title":{"type":"string","minLength":1,"maxLength":160},"body":{"type":"string","maxLength":2000},"boardId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"boardName":{"type":["string","null"]},"target":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"runId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"ticketId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"actor":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9a-f-]{36}$"},"name":{"type":"string","maxLength":200}}},"createdAt":{"type":"string"},"readAt":{"type":["string","null"]}},"required":["id","kind","title","body","boardId","boardName","target","actor","createdAt","readAt"]}},"nextCursor":{"type":["string","null"]}},"required":["boardId","unread","notifications","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/inbox/read":{"post":{"operationId":"markInboxRead","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"mark_inbox_read","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"ids":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["ids"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"marked":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["boardId","marked"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/files/drives/{driveId}/nodes/{nodeId}/sharing":{"post":{"operationId":"fileSharing","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"file_sharing","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"driveId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"nodeId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"input":{"oneOf":[{"type":"object","properties":{"action":{"type":"string","const":"list"}},"required":["action"],"additionalProperties":false},{"type":"object","properties":{"action":{"type":"string","const":"create"},"requestId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["action","requestId"],"additionalProperties":false},{"type":"object","properties":{"action":{"type":"string","const":"revoke"},"linkId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["action","linkId"],"additionalProperties":false}]}},"required":["input"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"deleteAt":{"type":["string","null"]},"links":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"path":{"type":"string"},"createdAt":{"type":"string"},"fetches":{"type":"string","pattern":"^\\d+$"}},"required":["id","path","createdAt","fetches"]}}},"required":["deleteAt","links"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/files/drives/{driveId}/uploads":{"post":{"operationId":"fileUpload","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"file_upload","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"driveId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","oneOf":[{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"action":{"type":"string","const":"operation"}},"required":["boardId","driveId","action"],"additionalProperties":false},{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"action":{"type":"string","const":"begin"},"input":{"type":"object","properties":{"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"parentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"name":{"type":"string","maxLength":255},"bytes":{"type":"integer","minimum":0,"maximum":1000000000},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mime":{"type":"string","enum":["application/pdf","text/plain","image/jpeg","image/png","video/mp4","video/webm","image/webp","audio/mpeg","audio/mp4","audio/wav","audio/ogg","application/vnd.android.package-archive","application/zip","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/x-godot-pck"]},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"epoch":{"type":"string","maxLength":4096},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"metadataRevision":{"type":"string","pattern":"^[1-9][0-9]{0,18}$"},"contentRevision":{"type":"string","pattern":"^[1-9][0-9]{0,18}$"}},"required":["parentId","name","bytes","sha256","mime","requestId","epoch"],"additionalProperties":false}},"required":["boardId","driveId","action","input"],"additionalProperties":false},{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"action":{"type":"string","enum":["status","commit","abort"]},"uploadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},"required":["boardId","driveId","action","uploadId"],"additionalProperties":false}],"properties":{},"required":[]}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"protocolVersion":{"type":"number","const":1},"uploadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"state":{"type":"string"},"versionId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"bytes":{"type":"integer","minimum":0,"maximum":1000000000},"partBytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"partCount":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"received":{"maxItems":60,"type":"array","items":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"expiresAt":{"type":"string"},"ticket":{"type":["string","null"]},"ticketExpiresAt":{"type":["string","null"]}},"required":["protocolVersion","uploadId","nodeId","state","versionId","bytes","partBytes","partCount","received","expiresAt","ticket","ticketExpiresAt"]},{"type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"epoch":{"type":"string"}},"required":["requestId","epoch"]}]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/files/drives/{driveId}/nodes/{nodeId}/download":{"get":{"operationId":"getFileDownload","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"get_file_download","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"driveId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"nodeId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"versionId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"protocolVersion":{"type":"number","const":1},"path":{"type":"string"},"versionId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"bytes":{"type":"integer","minimum":0,"maximum":1000000000},"authentication":{"type":"string","const":"bearer"},"instructions":{"type":"string"}},"required":["protocolVersion","path","versionId","bytes","authentication","instructions"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/files/drives/{driveId}/nodes/{nodeId}":{"get":{"operationId":"getFile","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"get_file","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"driveId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"nodeId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"kind":{"type":"string","examples":["file","folder"]},"name":{"type":"string","maxLength":255},"createdAt":{"type":"string"},"metadataRevision":{"type":"string","pattern":"^\\d+$"},"currentVersionId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"trashedAt":{"type":["string","null"]},"tabId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"path":{"maxItems":65,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"name":{"type":"string"}},"required":["id","name"]}}},"required":["boardId","driveId","id","parentId","kind","name","metadataRevision","currentVersionId","trashedAt","tabId","path"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/files/drives/{driveId}/nodes":{"get":{"operationId":"listFiles","tags":["v1"],"x-qraft-enabled":false,"x-qraft-action":"list_files","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"driveId","in":"path","required":true,"schema":{"description":"Omit with all paging fields to discover drives. Required with parentId, cursor or limit.","type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"parentId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":4096}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"protocolVersion":{"type":"number","const":1},"rootId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"tabId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"items":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"kind":{"type":"string","examples":["file","folder"]},"name":{"type":"string","maxLength":255},"createdAt":{"type":"string"},"metadataRevision":{"type":"string","pattern":"^\\d+$"},"currentVersionId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"trashedAt":{"type":["string","null"]}},"required":["boardId","driveId","id","parentId","kind","name","metadataRevision","currentVersionId","trashedAt"]}},"nextCursor":{"type":["string","null"]}},"required":["protocolVersion","rootId","tabId","items","nextCursor"]},{"type":"object","properties":{"protocolVersion":{"type":"number","const":1},"items":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"tabId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"rootId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"policyRevision":{"type":"string","pattern":"^\\d+$"},"mode":{"type":"string","examples":["standard","private"]}},"required":["boardId","driveId","tabId","rootId","policyRevision"]}},"nextCursor":{"type":"null"}},"required":["protocolVersion","items","nextCursor"]}]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/policies":{"get":{"operationId":"readPolicies","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_policies","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"sheetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"cardIds","in":"query","required":false,"schema":{"description":"The cards you work on (needs sheetId): adds the policies of their task routes","minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}}},{"name":"routeIds","in":"query","required":false,"schema":{"description":"Task routes whose policies to add (qraft policy show --route)","minItems":1,"maxItems":40,"type":"array","items":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}}},{"name":"agentId","in":"query","required":false,"schema":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},{"name":"knownVersion","in":"query","required":false,"schema":{"description":"Cached version","type":"string","minLength":1,"maxLength":64}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"version":{"type":"string","description":"Changes whenever text or items change."},"unchanged":{"description":"knownVersion matched: text and items are left out.","type":"boolean","const":true},"text":{"type":"string"},"count":{"type":"integer","minimum":0,"maximum":9007199254740991},"role":{"type":"string","examples":["lead","sublead","agent"]},"truncated":{"type":"boolean"},"nextChangeAt":{"type":["string","null"]},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"audience":{"type":"string"},"runtime":{"anyOf":[{"type":"string","examples":["codex","claude-code","grok","antigravity","gemini-cli"]},{"type":"null"}]},"agentId":{"type":["string","null"]},"boardId":{"type":["string","null"]},"tag":{"anyOf":[{"type":"string","maxLength":32,"pattern":"^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"},{"type":"null"}]},"routeIds":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"sheetId":{"type":["string","null"]},"endsAt":{"type":["string","null"]}},"required":["id","title","revision","audience","agentId","boardId","sheetId","endsAt"]}}},"required":["version","count","role","truncated","nextChangeAt"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/task-routing":{"get":{"operationId":"readTaskRouting","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_task_routing","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"revision":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"routes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"useFor":{"type":"string"},"stack":{"type":"array","items":{"type":"object","properties":{"runtime":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"model":{"type":"string","pattern":"^[A-Za-z0-9_.:/[\\]-]{1,160}$"},"effort":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_.:/[\\]-]{1,160}$"},{"type":"null"}]}},"required":["runtime","model","effort"]}},"avoid":{"type":"array","items":{"type":"string"}},"color":{"type":"string"}},"required":["id","name","useFor","stack","avoid"]}},"paused":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"by":{"type":"string"},"at":{"type":"string"}},"required":["by","at"]}}},"required":["revision","routes","paused"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/skills":{"get":{"operationId":"readSkills","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_skills","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"sheetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"cardIds","in":"query","required":false,"schema":{"description":"The cards you work on (needs sheetId): adds their tab and route skills","minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}}},{"name":"agentId","in":"query","required":false,"schema":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},{"name":"view","in":"query","required":false,"schema":{"description":"applicable (default): yours here; all/changes/drafts: leads; skill: one skill (name); history: its versions; draft: one draft (draftId)","type":"string","enum":["applicable","all","skill","history","changes","drafts","draft"]}},{"name":"name","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":64,"pattern":"^[a-z0-9]+(-[a-z0-9]+)*$"}},{"name":"version","in":"query","required":false,"schema":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},{"name":"file","in":"query","required":false,"schema":{"description":"With name: a file to read (default SKILL.md)","type":"string","maxLength":255}},{"name":"offset","in":"query","required":false,"schema":{"description":"Byte offset into the file (nextOffset of the previous read)","type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"draftId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":100}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":400}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"knownVersion","in":"query","required":false,"schema":{"description":"Cached version of the applicable list","type":"string","minLength":1,"maxLength":64}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}},"post":{"operationId":"writeSkill","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"write_skill","x-qraft-mutates":true,"security":[{"oauth2":["boards:read","boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$","description":"Any project of the account the skill belongs to"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false},"requestId":{"type":"string","minLength":1,"maxLength":128},"operation":{"type":"object","properties":{"action":{"type":"string","enum":["upload","propose","create","update","target","rollback","rename","archive","restore","accept","decline"]}},"required":["action"],"additionalProperties":{},"description":"upload {files:[{content,encoding}]|check:[sha256]}; propose {name,files,sheetId,cardId,message}; create {name,files,targets?}; update {name,expectedVersion,files}; target {name,expectedVersion,targets}; rollback {name,expectedVersion,toVersion}; rename {name,expectedVersion,newName}; archive {name,expectedVersion}; restore {skillId}; accept {draftId}; decline {draftId,reason}. files: [{path,sha256,size,executable?}] from upload"}},"required":["operation"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/key-requests":{"post":{"operationId":"manageAppKeyRequests","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"manage_app_key_requests","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"proof":{"type":"object","properties":{"payload":{"type":"string","maxLength":120000},"signature":{"type":"string","pattern":"^[A-Za-z0-9_-]{86}$"}},"required":["payload","signature"],"additionalProperties":false}},"required":[],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"request":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"requests":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/tool-schema":{"get":{"operationId":"getToolSchema","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_tool_schema","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"toolName","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":100}},{"name":"operation","in":"query","required":false,"schema":{"description":"One operation type, such as patch_card or set_cells. Omit to list operation types and the batch envelope.","type":"string","minLength":1,"maxLength":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"toolName":{"type":"string"},"description":{"type":"string"},"scope":{"type":"string","examples":["tool","envelope","operation"]},"operationTypes":{"type":"array","items":{"type":"string"}},"inputSchema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["toolName","description","scope","operationTypes","inputSchema"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/tools":{"get":{"operationId":"listTools","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_tool_schema","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[],"responses":{"200":{"description":"Every tool callable at /tools/{name}","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolList"}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/tools/{name}":{"post":{"operationId":"callTool","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"per_tool","x-qraft-mutates":true,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"name","in":"path","required":true,"schema":{"type":"string","enum":["read_prefabs","manage_files","list_file_trash","list_file_versions","activate_files","file_sharing","file_upload","list_files","get_file","get_file_download","manage_app_key_requests","get_tool_schema","set_asset_poster","list_video_assets","get_asset_downloads","read_research","apply_research_operations","export_asset_version","upload_asset_from_url","create_asset_upload","create_asset_uploads","get_asset_upload","upload_asset","read_asset_board","apply_asset_board_operations","read_wireframe","apply_wireframe_operations","read_slide_deck","apply_slide_deck_operations","read_review_stream","apply_review_operations","read_mailbox","apply_mailbox_operations","read_breakdown","apply_breakdown_operations","read_product_review","apply_product_review_operations","read_support","apply_support_operations","read_experiments","read_crashes","apply_crashes_operations","apply_experiments_operations","read_digital_ads","apply_digital_ads_operations","read_localization","apply_localization_operations","read_analytics","apply_analytics_operations","read_hosted_pages","apply_hosted_pages_operations","read_store_assets","apply_store_assets_operations","read_journal","apply_journal_operations","read_pipeline","apply_pipeline_operations","read_art_bible","apply_art_bible_operations","capture_breakdown_frame","read_policies","read_task_routing","read_skills","write_skill","read_kanban","apply_kanban_operations","read_data","apply_data_operations","apply_document_operations","read_tags","read_lead_theme","read_call_speech","read_ads_auto_pause","verify_ads","read_ads_policy","list_project_agents","read_project_agent","read_project_folder_placement","set_project_folder_placement","cancel_media_render","rename_media_source","import_media_render","get_media_source_download","read_video","list_documents","get_media_render_download","list_media_renders","list_media_sources","read_media_source","read_media_render","create_project_folder","remove_project_folder","rename_project_folder","list_project_folders","read_project_folder","list_connections","read_connection","list_organization_domains","read_organization_domain","list_organizations","read_organization","list_organization_members","get_project_member","set_project_favicon","set_project_tags","read_project_tags","read_project_sharing","list_project_members","list_organization_project_trash","add_organization_domain","verify_organization_domain","clear_inbox_view","mark_global_inbox_read","read_global_inbox","read_inbox","mark_inbox_read","send_notification","list_sheets","manage_sheets","list_boards","create_board","read_board","search_board","apply_operations","list_changes","get_change","revert_change","get_operation_receipt","render_board","diff_board","export_board"]}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"description":"The tool's MCP arguments (see get_tool_schema), boardId included. Mutations need a requestId; reads take none. The tool's own scopes, quotas and receipts apply.","content":{"application/json":{"schema":{"type":"object"}}}},"responses":{"200":{"description":"The tool result, as MCP structuredContent","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ToolCall"}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-posters":{"post":{"operationId":"setAssetPoster","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"set_asset_poster","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"videoId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["requestId","videoId","posterId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"videoId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"ready":{"type":"boolean","const":true}},"required":["videoId","posterId","ready"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/video-assets":{"get":{"operationId":"listVideoAssets","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_video_assets","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"videos":{"maxItems":32,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"bytes":{"type":"number"},"mimeType":{"type":"string"},"posterReady":{"type":"boolean"}},"required":["id","bytes","mimeType","posterReady"]}},"nextCursor":{"type":["string","null"]}},"required":["videos","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-downloads":{"post":{"operationId":"getAssetDownloads","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_asset_downloads","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"ids":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"preview":{"type":"boolean"}},"required":["ids"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"downloads":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"info":{"type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]},"url":{"type":"string","format":"uri"},"expiresAt":{"type":"string"},"variant":{"type":"string","examples":["original","preview"]}},"required":["info","url","expiresAt","variant"]}}},"required":["downloads"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/research":{"get":{"operationId":"readResearch","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_research","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"collection","type":"string","enum":["collection","schema","subjects","comparison"]}},{"name":"subjectIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"parameterIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"includeContent","in":"query","required":false,"schema":{"default":false,"type":"boolean"}},{"name":"contentIds","in":"query","required":false,"schema":{"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"includeSchema","in":"query","required":false,"schema":{"default":true,"type":"boolean"}},{"name":"includeArchived","in":"query","required":false,"schema":{"default":false,"type":"boolean"}},{"name":"differencesOnly","in":"query","required":false,"schema":{"default":false,"type":"boolean"}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"tag","in":"query","required":false,"schema":{"type":"string","maxLength":60}},{"name":"filters","in":"query","required":false,"schema":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"parameterId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","contains","gt","gte","lt","lte","empty","not_empty"]},"value":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"],"additionalProperties":false},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"additionalProperties":false,"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"required":["parameterId","operator"],"additionalProperties":false}}},{"name":"sort","in":"query","required":false,"schema":{"type":"object","properties":{"parameterId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"direction":{"type":"string","enum":["asc","desc"]}},"required":["parameterId","direction"]}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"default":50,"type":"integer","minimum":1,"maximum":100}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g\\d+\\.r\\d+$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"research"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"description":{"type":"string"},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"]},"parameters":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"default":"","type":"string","maxLength":10000},"group":{"default":"","type":"string","maxLength":100},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"default":"","type":"string","maxLength":80},"currency":{"default":"USD","type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"default":2,"type":"integer","minimum":0,"maximum":6},"ratingMax":{"default":5,"type":"number","minimum":1,"maximum":100},"comparisonColor":{"default":"none","description":"Numeric comparison coloring; high/low chooses the green end. Missing and equal values stay neutral.","type":"string","examples":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"default":200,"type":"number","minimum":100,"maximum":800},"hidden":{"default":[],"type":"array","items":{"type":"string","examples":["table","detail","compare"]}},"archived":{"default":false,"type":"boolean"}},"required":["id","name","type","description","group","options","unit","currency","decimals","ratingMax","comparisonColor","width","hidden","archived"]}},"subjects":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"]},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"tags":{"default":[],"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"default":false,"type":"boolean"},"content":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]}},"required":["id","type","title","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"]}]}},"contentOrder":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","values","tags","archived","content","contentOrder"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["type","boardId","sheetId","revision","documentRevision","description","layout","parameters","subjects","total","nextCursor","partial"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/research/operations":{"post":{"operationId":"applyResearchOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_research_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"description":"Atomic, minimal updates. Example: [{type:\"add_subject\",subject:{id:\"subject_a\",values:{name:\"Subject A\"}}},{type:\"set_values\",edits:[{subjectId:\"subject_a\",parameterId:\"name\",expectedType:\"text\",expected:\"Subject A\",value:\"Updated subject\"}]}]. IDs are caller assigned. patch_parameter/patch_subject/configure must include the previous value of each patched field in expected. Archive with patch_subject or patch_parameter archived=true; restore with false. Values use null for missing, never false. put_content edits one stable research block, not the whole subject.","oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"add_parameter"},"parameter":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","enum":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"default":"","type":"string","maxLength":10000},"group":{"default":"","type":"string","maxLength":100},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"default":"","type":"string","maxLength":80},"currency":{"default":"USD","type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"default":2,"type":"integer","minimum":0,"maximum":6},"ratingMax":{"default":5,"type":"number","minimum":1,"maximum":100},"comparisonColor":{"default":"none","description":"Numeric comparison coloring; high/low chooses the green end. Missing and equal values stay neutral.","type":"string","enum":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"default":200,"type":"number","minimum":100,"maximum":800},"hidden":{"default":[],"type":"array","items":{"type":"string","enum":["table","detail","compare"]}},"archived":{"default":false,"type":"boolean"}},"required":["id","name","type"],"additionalProperties":false}},"required":["type","parameter"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_parameter"},"parameterId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","enum":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"type":"string","maxLength":10000},"group":{"type":"string","maxLength":100},"options":{"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"type":"string","maxLength":80},"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"type":"integer","minimum":0,"maximum":6},"ratingMax":{"type":"number","minimum":1,"maximum":100},"comparisonColor":{"type":"string","enum":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"type":"number","minimum":100,"maximum":800},"hidden":{"type":"array","items":{"type":"string","enum":["table","detail","compare"]}},"archived":{"type":"boolean"}},"additionalProperties":false},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","enum":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"type":"string","maxLength":10000},"group":{"type":"string","maxLength":100},"options":{"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"type":"string","maxLength":80},"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"type":"integer","minimum":0,"maximum":6},"ratingMax":{"type":"number","minimum":1,"maximum":100},"comparisonColor":{"type":"string","enum":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"type":"number","minimum":100,"maximum":800},"hidden":{"type":"array","items":{"type":"string","enum":["table","detail","compare"]}},"archived":{"type":"boolean"}},"additionalProperties":false}},"required":["type","parameterId","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_parameters"},"expected":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"ids":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","expected","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_subject"},"subject":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"],"additionalProperties":false},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"additionalProperties":false,"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"tags":{"default":[],"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"default":false,"type":"boolean"},"content":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","type","title","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"],"additionalProperties":false}]}},"contentOrder":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","values"],"additionalProperties":false}},"required":["type","subject"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_values"},"edits":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"parameterId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedType":{"type":"string","enum":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"expected":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"],"additionalProperties":false},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"additionalProperties":false,"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]},"value":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"],"additionalProperties":false},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"additionalProperties":false,"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"required":["subjectId","parameterId","expectedType","expected","value"],"additionalProperties":false}}},"required":["type","edits"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_subject"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"type":"boolean"}}},"patch":{"type":"object","properties":{"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"type":"boolean"}}}},"required":["type","subjectId","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_content"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"anyOf":[{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","type","title","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"],"additionalProperties":false}]},{"type":"null"}]},"content":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","type","title","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"],"additionalProperties":false}]}},"required":["type","subjectId","expected","content"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_content"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"contentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","type","title","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"],"additionalProperties":false}]}},"required":["type","subjectId","contentId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"configure"},"expected":{"type":"object","properties":{"description":{"type":"string"},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"],"additionalProperties":false}},"additionalProperties":false},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":10000},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"],"additionalProperties":false}},"additionalProperties":false}},"required":["type","expected","patch"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-board/export":{"get":{"operationId":"exportAssetVersion","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"export_asset_version","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"assetId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"versionId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"filename":{"type":"string"},"mimeType":{"type":"string","const":"application/zip"},"data":{"type":"string"},"manifest":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetName":{"type":"string"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"number"},"name":{"type":"string"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"notes":{"type":"string"},"parts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"sourceUrl":{"type":"string"},"prompt":{"type":"string"},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}},"filename":{"type":"string"},"text":{"type":"string"},"mediaId":{"type":"string"},"mimeType":{"type":"string"},"url":{"type":"string"},"posterUrl":{"type":"string"},"posterFilename":{"type":"string"}},"required":["id","name","type","filename"]}}},"required":["assetId","assetName","versionId","number","name","sourceVersionId","notes","parts"]}},"required":["filename","mimeType","data","manifest"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-imports":{"post":{"operationId":"uploadAssetFromUrl","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"upload_asset_from_url","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sourceUrl":{"type":"string","minLength":1,"maxLength":8192,"description":"Public or short-lived signed HTTPS file URL. The actual bytes are stored in Qraft; credentials are not logged. Never host a local file just for ingestion; use create_asset_upload instead."},"sha256":{"description":"Optional expected content hash, to pin changing sources.","type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["requestId","sourceUrl"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-uploads":{"post":{"operationId":"createAssetUpload","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"create_asset_upload","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"SHA-256 of the local file, computed locally without embedding it."},"bytes":{"type":"integer","minimum":1,"maximum":1073741824,"description":"Exact local file byte count. Over 16777216 bytes the ticket lists parts. Raster images must be <=8388608 bytes."}},"required":["sha256","bytes"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"url":{"type":"string"},"method":{"type":"string","const":"PUT"},"headers":{"type":"object","properties":{"Authorization":{"type":"string"},"Content-Type":{"type":"string","const":"application/octet-stream"}},"required":["Authorization","Content-Type"]},"expiresAt":{"type":"string"},"bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"parts":{"description":"Present for files over 16 MiB: PUT each part to url?part=N (1..count, part 1 first), body = bytes [(N-1)*partBytes, N*partBytes). The last part completes the upload and returns the asset.","type":"object","properties":{"partBytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["partBytes","count"]},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current overall upload ceiling in bytes; type-specific limits may be lower."},"maxRasterBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current raster-image upload ceiling in bytes."},"maxTextBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current text upload ceiling in bytes."},"finalization":{"type":"string","const":"automatic"},"instructions":{"type":"string"}},"required":["boardId","assetId","url","method","headers","expiresAt","bytes","maxBytes","maxRasterBytes","maxTextBytes","finalization","instructions"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}},"get":{"operationId":"getAssetUpload","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_asset_upload","x-qraft-mutates":false,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"assetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-f0-9]{64}$"}},{"name":"requestId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"requestId":{"type":"string"},"status":{"type":"string","examples":["not_found","pending","ready"]},"asset":{"type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]},"parts":{"description":"Pending multipart recovery: acknowledged part numbers. Resume only missing parts; if all are received, retry any part to finish verification.","type":"object","properties":{"partBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"count":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"received":{"type":"array","items":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}}},"required":["partBytes","count","received"]},"receiptExpiresAt":{"type":"string"}},"required":["boardId","status"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-uploads/batch":{"post":{"operationId":"createAssetUploads","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"create_asset_uploads","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"files":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"SHA-256 of one local file."},"bytes":{"type":"integer","minimum":1,"maximum":1073741824,"description":"Exact byte count of that file."}},"required":["sha256","bytes"],"additionalProperties":false},"description":"The files to authorize, computed locally. Duplicate hashes are returned once."}},"required":["files"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"method":{"type":"string","const":"PUT"},"headers":{"type":"object","properties":{"Authorization":{"type":"string"},"Content-Type":{"type":"string","const":"application/octet-stream"}},"required":["Authorization","Content-Type"],"description":"For every PUT in the batch."},"uploads":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"url":{"type":"string"},"bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"parts":{"description":"Present for files over 16 MiB: PUT each part to url?part=N (1..count, part 1 first), body = bytes [(N-1)*partBytes, N*partBytes). The last part completes the upload and returns the asset.","type":"object","properties":{"partBytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["partBytes","count"]}},"required":["assetId","url","bytes"]}},"expiresAt":{"type":"string"},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current overall upload ceiling in bytes; type-specific limits may be lower."},"maxRasterBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current raster-image upload ceiling in bytes."},"maxTextBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current text upload ceiling in bytes."},"finalization":{"type":"string","const":"automatic"},"instructions":{"type":"string"}},"required":["boardId","method","headers","uploads","expiresAt","maxBytes","maxRasterBytes","maxTextBytes","finalization","instructions"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-uploads/{assetId}":{"put":{"operationId":"putAssetUpload","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"upload_asset","x-qraft-mutates":true,"security":[{"assetUpload":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"assetId","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"description":"Raw file bytes: raster <=8 MiB, other supported media <=16 MiB in one PUT. Larger ZIP/APK/AAB/IPA packages (<=1 GiB), video (<=256 MiB), audio and PDF (<=64 MiB) are sent as ?part=N slices of the ticket's partBytes, part 1 first; the last part returns the asset. Prefer URL ingestion when an HTTPS URL exists; otherwise create_asset_upload provides this route without extracting OAuth credentials. Content-addressed and idempotent. A capability PUT verifies the exact SHA-256/size and completes automatically; recover via get_asset_upload.","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"responses":{"200":{"description":"Stored asset reference","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssetInfo"}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-board/media":{"post":{"operationId":"uploadAssetBase64","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"upload_asset","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"data":{"type":"string","minLength":4,"maxLength":2796204,"pattern":"^[A-Za-z0-9+/]+={0,2}$","description":"LAST RESORT only: base64 media, <=2 MiB decoded (raster <=2 MiB). Prefer upload_asset_from_url for an existing HTTPS URL, then create_asset_upload + raw HTTP for a local file."}},"required":["data"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-board":{"get":{"operationId":"readAssetBoard","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_asset_board","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"assetId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"versionId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"compareVersionId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"partIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"view","in":"query","required":false,"schema":{"default":"board","type":"string","enum":["board","library","asset","history","version","draft","comparison","manifest"]}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"tag","in":"query","required":false,"schema":{"type":"string","maxLength":60}},{"name":"mediaType","in":"query","required":false,"schema":{"type":"string","enum":["text","image","audio","video","model","mixed"]}},{"name":"includeModelInfo","in":"query","required":false,"schema":{"description":"Return cached GLB statistics and animation clips for the parts in this response, keyed by media ID. No model bytes are loaded.","type":"boolean"}},{"name":"includeArchived","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g\\d+\\.r\\d+$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"asset_board"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"view":{"type":"string"},"availableSections":{"type":"array","items":{"type":"string","examples":["asset","history","version","draft"]}},"models":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"assets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":100000},"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"notes":{"type":"string","maxLength":100000},"links":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","sheetId"]}},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"archived":{"type":"boolean"},"selectedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"latestVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"latestNumber":{"type":"number"},"selectedNumber":{"type":["number","null"]},"hasDraft":{"type":"boolean"},"cover":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type"]},{"type":"null"}]},"partCount":{"type":"number"}},"required":["name","tags","id","archived","selectedVersionId","latestVersionId","latestNumber","selectedNumber","hasDraft","cover","partCount"]}},"placements":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"required":["id","assetId","x","y","width","height","groupId","pinnedVersionId","archived"]}},"groups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"required":["id","name","x","y","width","height","archived"]}},"versions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","maxLength":300},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"},"partCount":{"type":"number"}},"required":["id","number","name","sourceVersionId","coverPartId","savedAt","savedBy","partCount"]}},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","createdAt","createdBy","id","number","savedAt","savedBy"]},"draft":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"}},"required":["id","sourceVersionId","name","notes","coverPartId","createdAt","createdBy"]},"parts":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"comparison":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","examples":["added","removed","changed","unchanged"]},"before":{"anyOf":[{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]},{"type":"null"}]},"after":{"anyOf":[{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]},{"type":"null"}]}},"required":["id","status","before","after"]}},"manifest":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetName":{"type":"string"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"number"},"name":{"type":"string"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"notes":{"type":"string"},"parts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"sourceUrl":{"type":"string"},"prompt":{"type":"string"},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}},"filename":{"type":"string"},"text":{"type":"string"},"mediaId":{"type":"string"},"mimeType":{"type":"string"},"url":{"type":"string"},"posterUrl":{"type":"string"},"posterFilename":{"type":"string"}},"required":["id","name","type","filename"]}}},"required":["assetId","assetName","versionId","number","name","sourceVersionId","notes","parts"]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","boardId","sheetId","revision","documentRevision","view","availableSections","assets","placements","groups","versions","parts","comparison","partial","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/asset-board/operations":{"post":{"operationId":"applyAssetBoardOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_asset_board_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"delete_asset"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId"],"additionalProperties":false,"description":"Permanently delete this asset, all versions/draft and every placement in this document including tab Trash. Cannot undo. Unreferenced media and retained copies are reclaimed asynchronously; media still used elsewhere is preserved."},{"type":"object","properties":{"type":{"type":"string","const":"delete_placement"},"placementId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","placementId"],"additionalProperties":false,"description":"Permanently remove only this placement. The shared asset, versions and media remain in the library."},{"type":"object","properties":{"type":{"type":"string","const":"delete_group"},"groupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","groupId"],"additionalProperties":false,"description":"Permanently remove this group and ungroup its cards. Assets are preserved."},{"type":"object","properties":{"type":{"type":"string","const":"auto_layout"},"viewportAspectRatio":{"description":"Visible canvas width divided by height, excluding toolbars and inspector. Searches group and card arrangements to maximize fit-to-content scale. Example: {type:\"auto_layout\",viewportAspectRatio:1.78}. Omitting this retains the default width-based layout.","type":"number","minimum":0.1,"maximum":10},"targetWidth":{"description":"Preferred width in board coordinates, default 1800. Expands when needed for large groups. Arranges all active placements inside assigned groups, fits group bounds and separates groups; loose cards follow below. Card sizes, versions and other tabs remain unchanged.","type":"number","minimum":600,"maximum":20000}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_asset"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","name","draftId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_asset"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":100000},"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"notes":{"type":"string","maxLength":100000},"links":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","sheetId"],"additionalProperties":false}}},"additionalProperties":false}},"required":["type","assetId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"archive_asset"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"archived":{"type":"boolean"}},"required":["type","assetId","archived"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_draft"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","assetId","draftId","sourceVersionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"discard_draft"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","draftId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_draft"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},{"type":"null"}]},"prompt":{"type":"string","maxLength":100000},"pending":{"anyOf":[{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","enum":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"],"additionalProperties":false},{"type":"null"}]}},"additionalProperties":false}},"required":["type","assetId","draftId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_part"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"text":{"type":"string","maxLength":100000},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},{"type":"null"}]},"prompt":{"type":"string","maxLength":100000},"poster":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"view":{"anyOf":[{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"],"additionalProperties":false},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}},"additionalProperties":false},{"type":"null"}]},"generation":{"anyOf":[{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},{"type":"null"}]}},"additionalProperties":false}},"required":["type","assetId","draftId","partId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_part"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"part":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","name","type","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","name","type","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","name","type","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"],"additionalProperties":false},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}},"additionalProperties":false}},"required":["id","name","type","media"],"additionalProperties":false}]}},"required":["type","assetId","draftId","part"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_part"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","draftId","partId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"save_iteration"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","draftId","versionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"select_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_placement"},"placement":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"required":["id","assetId","x","y","width","height","groupId","pinnedVersionId"],"additionalProperties":false}},"required":["type","placement"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_placement"},"placementId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"additionalProperties":false}},"required":["type","placementId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_group"},"group":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"required":["id","name","x","y","width","height"],"additionalProperties":false}},"required":["type","group"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_group"},"groupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"additionalProperties":false}},"required":["type","groupId","patch"],"additionalProperties":false}],"description":"Atomic operations. Example: [{type:\"create_asset\",assetId:\"grandma\",name:\"Grandma\",draftId:\"draft_1\"},{type:\"put_part\",assetId:\"grandma\",draftId:\"draft_1\",part:{id:\"character_name\",name:\"Character name\",type:\"text\",text:\"Evelyn\"}},{type:\"save_iteration\",assetId:\"grandma\",draftId:\"draft_1\",versionId:\"version_1\"},{type:\"select_version\",assetId:\"grandma\",versionId:\"version_1\"}]. Iteration: create_draft from any saved sourceVersionId, put_part only for changed parts, then save_iteration. Selection is always explicit. Layout example: [{type:\"auto_layout\"}]. One small command arranges the complete board server-side. Archive and restore use archived true/false."}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/assets":{"post":{"operationId":"uploadAsset","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_document_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"description":"Raw file bytes: raster <=8 MiB, other supported media <=16 MiB in one PUT. Larger ZIP/APK/AAB/IPA packages (<=1 GiB), video (<=256 MiB), audio and PDF (<=64 MiB) are sent as ?part=N slices of the ticket's partBytes, part 1 first; the last part returns the asset. Prefer URL ingestion when an HTTPS URL exists; otherwise create_asset_upload provides this route without extracting OAuth credentials. Content-addressed and idempotent. A capability PUT verifies the exact SHA-256/size and completes automatically; recover via get_asset_upload.","content":{"application/octet-stream":{"schema":{"type":"string","format":"binary"}}}},"responses":{"200":{"description":"Stored asset reference","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AssetInfo"}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/assets/{assetId}":{"get":{"operationId":"readAsset","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_board","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}},{"name":"assetId","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Private image bytes","content":{"image/*":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/assets/read":{"post":{"operationId":"readAssets","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_board","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["ids"],"additionalProperties":false,"properties":{"ids":{"type":"array","minItems":1,"maxItems":16,"items":{"type":"string","pattern":"^[a-f0-9]{64}$"}}}}}}},"responses":{"200":{"description":"4-byte big-endian JSON-directory length, UTF-8 AssetInfo array, then raw image bytes in directory order. Missing images are omitted.","content":{"application/vnd.qraft.assets":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/wireframe":{"get":{"operationId":"readWireframe","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_wireframe","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"screenId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"componentIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"view","in":"query","required":false,"schema":{"type":"string","enum":["full","screens","audit","prototype","annotations","sources","states"]}},{"name":"includeInitialState","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"prototype","in":"query","required":false,"schema":{"type":"object","properties":{"state":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"callers":{"description":"Scoped caller stack. Pass back unchanged to resume. Snapshot null means the selected variable was absent; it is removed on return.","maxItems":20,"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"transition":{"type":"string","enum":["navigate","open_modal","set_state"]},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]},{"type":"null"}]}}},"required":["screenId","history","modals","transition","variables"],"additionalProperties":false}}},"required":["screenId","history","modals","variables"],"additionalProperties":false},"interactionIds":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"additionalProperties":false,"description":"Stateless preview only; never writes the document. Omit state to start from initialState. Pass returned state to resume; interactionIds explicitly drives events/delays as well as clicks. No timers run implicitly."}},{"name":"fromScreenId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"toScreenId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"wireframe"},"stateLayers":{"maxItems":256,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatchOutput"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentOutput"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatchOutput"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}}}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]},{"type":"null"}]}}},"required":["id","name","condition","screens","interactions"]}},"stateLayerCount":{"type":"integer","minimum":0,"maximum":256},"approvals":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"status":{"type":"string","examples":["approved","pending"]},"inherited":{"type":"boolean"},"ancestorId":{"type":"string"}},"required":["status","inherited"]}},"annotations":{"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string"},"annotationId":{"type":"string"},"componentId":{"type":"string"},"text":{"type":"string"},"anchor":{"anyOf":[{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"]},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"]}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."},{"type":"null"}]},"targetMissing":{"type":"boolean"},"bounds":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"}},"required":["x","y","width","height"]}},"required":["screenId","annotationId","componentId","text","anchor","targetMissing","bounds"]}},"purpose":{"type":"string","examples":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"wireframeVersion":{"type":"string"},"startScreenId":{"type":["string","null"]},"screens":{"type":"array","items":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"interactions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}},"audit":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"screenId":{"type":"string"},"componentId":{"type":"string"},"interactionId":{"type":"string"},"message":{"type":"string"}},"required":["code","screenId","message"]}},"auditTotal":{"type":"number"},"auditScope":{"type":"string","const":"structural"},"prototype":{"type":"object","properties":{"state":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"callers":{"description":"Scoped caller stack. Pass back unchanged to resume. Snapshot null means the selected variable was absent; it is removed on return.","maxItems":20,"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"transition":{"type":"string","examples":["navigate","open_modal","set_state"]},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]},{"type":"null"}]}}},"required":["screenId","history","modals","transition","variables"]}}},"required":["screenId","history","modals","variables"]},"activeLayerIds":{"maxItems":256,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"steps":{"type":"array","items":{"type":"object","properties":{"interactionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"outcome":{"type":"string","examples":["applied","blocked","no_change"]},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"activeScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["interactionId","outcome","screenId","activeScreenId"]}},"availableInteractions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"trigger":{"type":"string"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"eventName":{"type":"string"},"delayMs":{"type":"number"}},"required":["id","trigger","sourceComponentId"]}}},"required":["state","steps","availableInteractions"]},"flow":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}},{"type":"null"}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","purpose","boardId","sheetId","revision","documentRevision","wireframeVersion","startScreenId","screens","interactions","audit","auditTotal","flow","partial","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/wireframe/operations":{"post":{"operationId":"applyWireframeOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_wireframe_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"expectedWireframeVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"operations":{"minItems":1,"maxItems":500,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"$ref":"#/components/schemas/WireframeScreenPatch"}},"required":["type","screenId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"component":{"$ref":"#/components/schemas/WireframeComponent"}},"required":["type","screenId","component"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"$ref":"#/components/schemas/WireframeComponentPatch"}},"required":["type","screenId","componentId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["type","screenId","componentId","x","y"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"resize_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","screenId","componentId","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_components"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","screenId","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_interaction"},"interaction":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}},"required":["type","interaction"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_interaction"},"interaction":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}},"required":["type","interaction"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_interaction"},"interactionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","interactionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"fit_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_state_layer"},"layer":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatch"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponent"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatch"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"additionalProperties":false}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false},{"type":"null"}]}}},"required":["id","name","condition"],"additionalProperties":false}},"required":["type","layer"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_state_layer"},"layerId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."}},"additionalProperties":false}},"required":["type","layerId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_state_layer"},"layerId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","layerId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_state_layers"},"ids":{"maxItems":256,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"edit_state_layer"},"layerId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"edits":{"minItems":1,"maxItems":500,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"$ref":"#/components/schemas/WireframeScreenPatch"}},"required":["type","screenId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"component":{"$ref":"#/components/schemas/WireframeComponent"}},"required":["type","screenId","component"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"$ref":"#/components/schemas/WireframeComponentPatch"}},"required":["type","screenId","componentId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["type","screenId","componentId","x","y"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"resize_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","screenId","componentId","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_components"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","screenId","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_interaction"},"interaction":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}},"required":["type","interaction"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_interaction"},"interaction":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}},"required":["type","interaction"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_interaction"},"interactionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","interactionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"fit_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","componentId"],"additionalProperties":false}]}}},"required":["type","layerId","edits"],"additionalProperties":false,"description":"Capture ordinary visual/interaction edits as layer differences. Base screens/components stay unchanged; deleting an existing component hides it only in this layer."},{"type":"object","properties":{"type":{"type":"string","const":"reset_state_override"},"layerId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"property":{"type":"string","enum":["media","mediaFit","visible","enabled","stateBinding","scroll","scrollX","scrollY","viewportId","type","x","y","width","height","content","fontSize","fontWeight","alignment","fill","color","border","borderWidth","cornerRadius","opacity","locked","groupId","masterId"]}},"required":["type","layerId","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_definition_kind"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","enum":["screen","template","component"]}},"required":["type","screenId","kind"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_inheritance"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenProperties":{"type":"string","enum":["preserve","inherit"]}},"required":["type","screenId","sourceId","screenProperties"],"additionalProperties":false,"description":"Reparent an existing definition without recreating descendants. Preserves resolved elements and IDs with sparse deltas; rejects missing inherited paths or changed conditional behavior. Explicitly preserve current screen properties or inherit the new parent properties."},{"type":"object","properties":{"type":{"type":"string","const":"set_hierarchy_parent"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","screenId","parentId"],"additionalProperties":false,"description":"Group definitions in the hierarchy without changing inheritance or appearance. null restores the inheritance parent."},{"type":"object","properties":{"type":{"type":"string","const":"derive_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"],"additionalProperties":false},"kind":{"type":"string","enum":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}},"additionalProperties":false}},"required":["sourceId"],"additionalProperties":false},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"],"additionalProperties":false}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverride"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","enum":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"],"additionalProperties":false},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponent"}}},"required":["id","name","x","y","width","height"],"additionalProperties":false}},"required":["type","screenId","screen"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_instance"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"instance":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"],"additionalProperties":false}},"required":["type","screenId","instance"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_instance"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"instanceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"additionalProperties":false}},"required":["type","screenId","instanceId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_instance"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"instanceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","instanceId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"convert_to_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentIds":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"instanceIds":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"definitionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"instanceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100}},"required":["type","screenId","definitionId","instanceId","name"],"additionalProperties":false,"description":"Extract local elements and whole reusable instances without detaching. Preserves sparse overrides, layers, routes and paint order."},{"type":"object","properties":{"type":{"type":"string","const":"reset_override"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Use the scalar resolved component ID from read_wireframe(view=full, screenId). Authored instance/leaf paths are not component IDs. Omit to reset screen overrides."},"property":{"type":"string"}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"restore_inherited_elements"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"detach_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_approval"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","enum":["pending","self","descendants"]}},"required":["type","screenId","scope"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_annotation"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"annotation":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"content":{"type":"string","maxLength":10000},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"default":240,"type":"number","minimum":1,"maximum":10000},"height":{"default":96,"type":"number","minimum":1,"maximum":10000},"anchor":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"],"additionalProperties":false}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."}},"required":["id","content","x","y"],"additionalProperties":false}},"required":["type","screenId","annotation"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_annotation"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"annotationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"content":{"type":"string","maxLength":10000},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"anchor":{"anyOf":[{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"],"additionalProperties":false}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."},{"type":"null"}]}},"additionalProperties":false}},"required":["type","screenId","annotationId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_annotation"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"annotationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","annotationId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"convert_annotation"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"to":{"type":"string","enum":["annotation","component"]},"anchor":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"],"additionalProperties":false}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."}},"required":["type","screenId","componentId","to"],"additionalProperties":false,"description":"Preserve the stable component ID and original UI styling. Converting to annotation removes its interactions and state binding. Converting back does not restore removed interactions. Callout position is preserved."},{"type":"object","properties":{"type":{"type":"string","const":"add_screen"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"],"additionalProperties":false},"kind":{"type":"string","enum":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}},"additionalProperties":false}},"required":["sourceId"],"additionalProperties":false},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"],"additionalProperties":false}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverride"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","enum":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"],"additionalProperties":false},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponent"}}},"required":["id","name","x","y","width","height"],"additionalProperties":false}},"required":["type","screen"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"duplicate_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"newScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"idMap":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","screenId","newScreenId","name","x","y","idMap"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"auto_layout_hierarchy"}},"required":["type"],"additionalProperties":false,"description":"Arrange all screens by template inheritance, preserving normal canvas positions and approvals."},{"type":"object","properties":{"type":{"type":"string","const":"arrange_screens"},"layout":{"description":"Defaults to canvas. Hierarchy writes only secondary positions.","type":"string","enum":["canvas","hierarchy"]},"positions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["screenId","x","y"],"additionalProperties":false}}},"required":["type","positions"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_wireframe_options"},"patch":{"type":"object","properties":{"purpose":{"type":"string","enum":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}}},"additionalProperties":false}},"required":["type","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_start_screen"},"screenId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"replace_wireframe"},"wireframe":{"type":"object","properties":{"stateLayers":{"maxItems":256,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatch"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponent"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatch"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"additionalProperties":false}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false},{"type":"null"}]}}},"required":["id","name","condition"],"additionalProperties":false}},"purpose":{"type":"string","enum":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"version":{"type":"number","const":1},"startScreenId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"screens":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"],"additionalProperties":false},"kind":{"type":"string","enum":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}},"additionalProperties":false}},"required":["sourceId"],"additionalProperties":false},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"],"additionalProperties":false}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverride"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","enum":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"],"additionalProperties":false},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponent"}}},"required":["id","name","x","y","width","height"],"additionalProperties":false}},"interactions":{"maxItems":5000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}}},"required":["version","startScreenId","screens","interactions"],"additionalProperties":false}},"required":["type","wireframe"],"additionalProperties":false}]},"description":"Discriminated operations; inspect items.oneOf for complete fields. Minimal screen: {\"type\":\"add_screen\",\"screen\":{\"id\":\"home\",\"name\":\"Home\",\"x\":0,\"y\":0,\"width\":390,\"height\":844}}. Minimal component: {\"type\":\"add_component\",\"screenId\":\"home\",\"component\":{\"id\":\"play\",\"type\":\"button\",\"x\":24,\"y\":80,\"width\":240,\"height\":48,\"content\":\"Play\"}}. Edit: {\"type\":\"update_component\",\"screenId\":\"home\",\"componentId\":\"play\",\"patch\":{\"content\":\"Start\"}}. IDs are caller-supplied and permanent."},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","expectedWireframeVersion","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/slide-deck":{"get":{"operationId":"readSlideDeck","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_slide_deck","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"description":"overview (default): every slide in brief. slides: whole slides with their elements.","type":"string","enum":["overview","slides"]}},{"name":"slideIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"query","in":"query","required":false,"schema":{"description":"slides whose text or notes contain this.","type":"string","maxLength":200}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"slide_deck"},"view":{"type":"string","examples":["overview","slides"]},"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"stage":{"type":"object","properties":{"width":{"type":"number"},"height":{"type":"number"}},"required":["width","height"]},"slideCount":{"type":"number"},"slides":{"description":"overview: every slide in brief, in order.","type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"index":{"type":"number"},"title":{"type":"string"},"layout":{"type":"string"},"elementCount":{"type":"number"},"transition":{"type":"string"},"hidden":{"type":"boolean"},"hasNotes":{"type":"boolean"}},"required":["id","index","title","layout","elementCount","transition","hidden","hasNotes"]}},"detail":{"description":"slides: whole slides (with index) and their elements, back to front.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","stage","slideCount","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/slide-deck/operations":{"post":{"operationId":"applySlideDeckOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_slide_deck_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":500,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"add_slide"},"slide":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"layout":{"default":"blank","type":"string","enum":["title","title_body","two_column","section","image","blank"]},"background":{"default":"#ffffff","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"backgroundMedia":{"default":null,"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"transition":{"default":"none","type":"string","enum":["none","fade","push","zoom"]},"transitionMs":{"default":500,"type":"integer","minimum":100,"maximum":3000},"notes":{"default":"","type":"string","maxLength":20000},"hidden":{"default":false,"type":"boolean"},"elements":{"default":[],"maxItems":300,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","enum":["text","image","shape","line"]},"x":{"type":"number","minimum":-4000,"maximum":6000},"y":{"type":"number","minimum":-4000,"maximum":6000},"width":{"type":"number","minimum":1,"maximum":8000},"height":{"type":"number","minimum":1,"maximum":8000},"rotation":{"default":0,"type":"number","minimum":-360,"maximum":360},"opacity":{"default":1,"type":"number","minimum":0,"maximum":1},"text":{"default":"","type":"string","maxLength":20000},"fontSize":{"default":40,"type":"number","minimum":8,"maximum":400},"fontWeight":{"default":400,"type":"integer","minimum":100,"maximum":900},"italic":{"default":false,"type":"boolean"},"underline":{"default":false,"type":"boolean"},"fontFamily":{"default":"sans","type":"string","enum":["sans","serif","mono"]},"align":{"default":"left","type":"string","enum":["left","center","right"]},"valign":{"default":"top","type":"string","enum":["top","middle","bottom"]},"list":{"default":"none","type":"string","enum":["none","bullet","number"]},"lineHeight":{"default":1.2,"type":"number","minimum":0.8,"maximum":3},"color":{"default":"#1f1d1a","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"fill":{"default":"transparent","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"stroke":{"default":"transparent","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"strokeWidth":{"default":0,"type":"number","minimum":0,"maximum":80},"cornerRadius":{"default":0,"type":"number","minimum":0,"maximum":1000},"shape":{"default":"rect","type":"string","enum":["rect","ellipse","triangle","diamond","arrow","star"]},"media":{"default":null,"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"fit":{"default":"contain","type":"string","enum":["contain","cover"]},"flip":{"default":false,"type":"boolean"},"arrowEnd":{"default":false,"type":"boolean"}},"required":["id","kind","x","y","width","height"],"additionalProperties":false}}},"required":["id"],"additionalProperties":false},"beforeSlideId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","slide"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_slide"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"layout":{"type":"string","enum":["title","title_body","two_column","section","image","blank"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"backgroundMedia":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"transition":{"type":"string","enum":["none","fade","push","zoom"]},"transitionMs":{"type":"integer","minimum":100,"maximum":3000},"notes":{"type":"string","maxLength":20000},"hidden":{"type":"boolean"}},"additionalProperties":false}},"required":["type","slideId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_slide"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","slideId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"duplicate_slide"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"newSlideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"beforeSlideId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","slideId","newSlideId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_slide"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"beforeSlideId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","slideId","beforeSlideId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_element"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"element":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","enum":["text","image","shape","line"]},"x":{"type":"number","minimum":-4000,"maximum":6000},"y":{"type":"number","minimum":-4000,"maximum":6000},"width":{"type":"number","minimum":1,"maximum":8000},"height":{"type":"number","minimum":1,"maximum":8000},"rotation":{"default":0,"type":"number","minimum":-360,"maximum":360},"opacity":{"default":1,"type":"number","minimum":0,"maximum":1},"text":{"default":"","type":"string","maxLength":20000},"fontSize":{"default":40,"type":"number","minimum":8,"maximum":400},"fontWeight":{"default":400,"type":"integer","minimum":100,"maximum":900},"italic":{"default":false,"type":"boolean"},"underline":{"default":false,"type":"boolean"},"fontFamily":{"default":"sans","type":"string","enum":["sans","serif","mono"]},"align":{"default":"left","type":"string","enum":["left","center","right"]},"valign":{"default":"top","type":"string","enum":["top","middle","bottom"]},"list":{"default":"none","type":"string","enum":["none","bullet","number"]},"lineHeight":{"default":1.2,"type":"number","minimum":0.8,"maximum":3},"color":{"default":"#1f1d1a","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"fill":{"default":"transparent","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"stroke":{"default":"transparent","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"strokeWidth":{"default":0,"type":"number","minimum":0,"maximum":80},"cornerRadius":{"default":0,"type":"number","minimum":0,"maximum":1000},"shape":{"default":"rect","type":"string","enum":["rect","ellipse","triangle","diamond","arrow","star"]},"media":{"default":null,"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"fit":{"default":"contain","type":"string","enum":["contain","cover"]},"flip":{"default":false,"type":"boolean"},"arrowEnd":{"default":false,"type":"boolean"}},"required":["id","kind","x","y","width","height"],"additionalProperties":false}},"required":["type","slideId","element"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_element"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"elementId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"x":{"type":"number","minimum":-4000,"maximum":6000},"y":{"type":"number","minimum":-4000,"maximum":6000},"width":{"type":"number","minimum":1,"maximum":8000},"height":{"type":"number","minimum":1,"maximum":8000},"rotation":{"type":"number","minimum":-360,"maximum":360},"opacity":{"type":"number","minimum":0,"maximum":1},"text":{"type":"string","maxLength":20000},"fontSize":{"type":"number","minimum":8,"maximum":400},"fontWeight":{"type":"integer","minimum":100,"maximum":900},"italic":{"type":"boolean"},"underline":{"type":"boolean"},"fontFamily":{"type":"string","enum":["sans","serif","mono"]},"align":{"type":"string","enum":["left","center","right"]},"valign":{"type":"string","enum":["top","middle","bottom"]},"list":{"type":"string","enum":["none","bullet","number"]},"lineHeight":{"type":"number","minimum":0.8,"maximum":3},"color":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"fill":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"stroke":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"strokeWidth":{"type":"number","minimum":0,"maximum":80},"cornerRadius":{"type":"number","minimum":0,"maximum":1000},"shape":{"type":"string","enum":["rect","ellipse","triangle","diamond","arrow","star"]},"media":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"fit":{"type":"string","enum":["contain","cover"]},"flip":{"type":"boolean"},"arrowEnd":{"type":"boolean"}},"additionalProperties":false}},"required":["type","slideId","elementId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_element"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"elementId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","slideId","elementId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_elements"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ids":{"maxItems":300,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","slideId","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"replace_deck"},"deck":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["type","deck"],"additionalProperties":false}]},"description":"Minimal slide: {\"type\":\"add_slide\",\"slide\":{\"id\":\"intro\"}}. Text: {\"type\":\"add_element\",\"slideId\":\"intro\",\"element\":{\"id\":\"title\",\"kind\":\"text\",\"x\":160,\"y\":380,\"width\":1600,\"height\":200,\"text\":\"Hello\",\"fontSize\":96,\"fontWeight\":700,\"align\":\"center\"}}. Edit: {\"type\":\"update_element\",\"slideId\":\"intro\",\"elementId\":\"title\",\"patch\":{\"text\":\"Welcome\"}}. IDs are caller-supplied and permanent; the stage is 1920 x 1080."},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/reviews":{"get":{"operationId":"readReviewStream","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_review_stream","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"reviewId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"metadataOnly","in":"query","required":false,"schema":{"description":"For Desktop peer handoffs: detail/thread/discussion retain identity and round metadata but omit submission and message content.","type":"boolean"}},{"name":"round","in":"query","required":false,"schema":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},{"name":"view","in":"query","required":false,"schema":{"type":"string","enum":["list","status","detail","discussion","thread"]}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["open","approved","rejected","cancelled"]}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"type":{"type":"string","const":"review_stream"},"metadataOnly":{"type":"boolean"},"view":{"type":"string","examples":["list","status","detail","discussion","thread"]},"availableSections":{"type":"array","items":{"type":"string","examples":["detail","discussion"]}},"entries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"number"},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"decisionBy":{"type":"string"},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"itemCount":{"type":"number"}},"required":["id","title","author","createdAt","submittedAt","status","round","claims","messageCount","reviewers","itemCount"]}},"review":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"integer","minimum":0,"maximum":1000},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"decisionBy":{"type":"string"},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["id","title","author","createdAt","submittedAt","status","round","claims"]},"submission":{"type":"object","properties":{"clipStage":{"type":"string","examples":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"]}}},"required":["id","prompt","options"]}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"]},"refines":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"picks":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"labels":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","maxLength":200}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["round","picks","labels","variants"]},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"snapshots":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"card":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","columnId","rank","archived","dependsOn","title","description","labels","dueDate","checklist","links","branch","worktree"]}},"required":["type","sheetId","cardId","title","card"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy","id","number","savedAt","savedBy"]}},"required":["type","assetId","versionId","title","version"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"required":["type","sheetId","screenId","title","screen"]}]}},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}}},"required":["notes","items","links","attachments","number","createdAt","author","reviewers"]},"attachmentChanges":{"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string","examples":["new","updated","unchanged"]},"previous":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"file":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"required":["round","file"]}},"required":["id","status"]}},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"body":{"type":"string","maxLength":8000},"links":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"action":{"type":"string","examples":["comment","approved","approved_with_changes","refined","rejected","cancelled","submitted","claimed","escalated","reassigned"]},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["id","round","body","links","attachments","author","createdAt","action"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["boardId","sheetId","revision","documentRevision","type","view","availableSections","entries","messages","total","nextCursor","partial"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/reviews/operations":{"post":{"operationId":"applyReviewOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_review_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Omit only when every operation is submit_review or comment.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"submit_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"reviewers":{"description":"Omit to route to the card’s reviewing lead, or the board owner. Explicit reviewers are preserved.","minItems":1,"maxItems":20,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"],"additionalProperties":false}]}},"submission":{"type":"object","properties":{"clipStage":{"type":"string","enum":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"additionalProperties":false,"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"],"additionalProperties":false}}},"required":["id","prompt","options"],"additionalProperties":false}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"],"additionalProperties":false}},"required":["notes","items"],"additionalProperties":false},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"],"additionalProperties":false}},"required":["humanReviewer"],"additionalProperties":false,"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"description":"Board tags for this review (see read_tags).","maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","title","submission"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_review_tags"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The review's current tags ([] when it has none); a concurrent change rejects the batch."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","expected","tags"],"additionalProperties":false,"description":"Replace a review's tags. Anyone who can edit the board may retag; it does not change the review's rounds or decision."},{"type":"object","properties":{"type":{"type":"string","const":"resubmit_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"title":{"type":"string","minLength":1,"maxLength":300},"reviewers":{"description":"Omit to route to the card lead with a live mandate, or the board owner. Explicit reviewers are preserved.","minItems":1,"maxItems":20,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"],"additionalProperties":false}]}},"submission":{"type":"object","properties":{"clipStage":{"type":"string","enum":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"additionalProperties":false,"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"],"additionalProperties":false}}},"required":["id","prompt","options"],"additionalProperties":false}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"],"additionalProperties":false}},"required":["notes","items"],"additionalProperties":false},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","expectedRound","submission"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_review_reviewers"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"],"additionalProperties":false}]}},"note":{"description":"Shown in the history and to new agent reviewers","type":"string","minLength":1,"maxLength":7000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","messageId","expectedRound","reviewers"],"additionalProperties":false,"description":"Replace an open round's reviewers (not peer cycles). Agents cannot add themselves or review their own work."},{"type":"object","properties":{"type":{"type":"string","const":"snooze_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"until":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}],"description":"ISO wake time (≤90 days); null wakes now"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","expectedRound","until"],"additionalProperties":false,"description":"Set an open review aside until a time: no counts, badges or nags meanwhile. Not by its author."},{"type":"object","properties":{"type":{"type":"string","const":"claim_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewerIndex":{"type":"integer","minimum":0,"maximum":19},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","expectedRound","reviewerIndex"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"comment"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"body":{"type":"string","maxLength":8000},"links":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"attachments":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","messageId","expectedRound","body"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"resolve_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"decision":{"type":"string","enum":["approved","approved_with_changes","refined","rejected","cancelled"]},"body":{"default":"","type":"string","maxLength":8000},"links":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"attachments":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"selections":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"description":"refined only: variants of each pick the next round brings (0 = just revise it)","type":"integer","minimum":0,"maximum":8},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","messageId","expectedRound","decision"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"},"peerReviewDeliveries":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceAgentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"targetAgentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"action":{"type":"string","examples":["submitted","approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["reviewId","round","sourceAgentId","targetAgentId","action"]}}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/breakdown":{"get":{"operationId":"readBreakdown","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_breakdown","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","description":"overview: sources, counts, finding summaries and questions. moments: excerpt rows with transcript/caption/note/tags/frames. transcript: one source as compact \"[m:ss] text\" lines (play sessions) or \"[file] / [block]\" lines. findings/questions: complete items.","type":"string","enum":["overview","moments","transcript","findings","questions"]}},{"name":"sourceId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"momentIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"findingIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"questionIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"section","in":"query","required":false,"content":{"application/json":{"schema":{"type":"string","maxLength":60}}}},{"name":"tag","in":"query","required":false,"schema":{"type":"string","maxLength":40}},{"name":"query","in":"query","required":false,"schema":{"description":"Case-insensitive substring over transcript, caption, note and tags (moments/transcript) or title/body (findings).","type":"string","maxLength":200}},{"name":"fromTime","in":"query","required":false,"schema":{"type":"number","minimum":0}},{"name":"toTime","in":"query","required":false,"schema":{"type":"number","minimum":0}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g\\d+\\.r\\d+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"breakdown"},"view":{"type":"string","examples":["overview","moments","transcript","findings","questions"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"description":{"type":"string"},"sources":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","examples":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"anyOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"]},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid","thumbnailBase"]},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"]}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","examples":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","status","video","durationSeconds","transcript","error","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","documentId","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","label"]}},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","files","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","sheetId","momentCount","frameCount"]}]}},"counts":{"type":"object","properties":{"moments":{"type":"integer","minimum":0,"maximum":9007199254740991},"findings":{"type":"integer","minimum":0,"maximum":9007199254740991},"questions":{"type":"integer","minimum":0,"maximum":9007199254740991},"frames":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["moments","findings","questions","frames"]},"sections":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"}},"moments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time","label"]}}},"required":["id","sourceId","time","endTime","fileId","blockId","transcript","caption","note","tags","frames"]}},"transcript":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string"}},"required":["sourceId","text"]},"findings":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title","section","body","evidence"]}},"findingSummaries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"bodyPreview":{"type":"string"},"bodyChars":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","title","section","evidence","bodyPreview","bodyChars"]}},"questions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","examples":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text","status","answer","evidence"]}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","description","sources","counts","sections","tags","total","partial","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/breakdown/operations":{"post":{"operationId":"applyBreakdownOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_breakdown_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"configure"},"expected":{"type":"object","properties":{"description":{"type":"string"}},"additionalProperties":false},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":4000}},"additionalProperties":false}},"required":["type","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_source"},"source":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","enum":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"oneOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"],"additionalProperties":false}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","enum":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000}},"required":["id","createdAt","name","kind"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."}},"required":["id","createdAt","name","kind","documentId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media"],"additionalProperties":false}}},"required":["id","createdAt","name","kind"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."}},"required":["id","createdAt","name","kind","sheetId"],"additionalProperties":false}]}},"required":["type","source"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_source"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"type":"string","maxLength":4000},"status":{"type":"string","enum":["uploading","processing","ready","error"]},"video":{"anyOf":[{"oneOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"],"additionalProperties":false}]},{"type":"null"}]},"durationSeconds":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"type":"string","enum":["none","pending","ready","error"]},"error":{"type":"string","maxLength":1000}},"additionalProperties":false},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"type":"string","maxLength":4000},"status":{"type":"string","enum":["uploading","processing","ready","error"]},"video":{"anyOf":[{"oneOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"],"additionalProperties":false}]},{"type":"null"}]},"durationSeconds":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"type":"string","enum":["none","pending","ready","error"]},"error":{"type":"string","maxLength":1000}},"additionalProperties":false}},"required":["type","sourceId","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_source"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","enum":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"oneOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"],"additionalProperties":false}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","enum":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000}},"required":["id","createdAt","name","kind"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."}},"required":["id","createdAt","name","kind","documentId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media"],"additionalProperties":false}}},"required":["id","createdAt","name","kind"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."}},"required":["id","createdAt","name","kind","sheetId"],"additionalProperties":false}]}},"required":["type","sourceId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_sources"},"ids":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"expected":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","ids","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_files"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"files":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media"],"additionalProperties":false}}},"required":["type","sourceId","files"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_file"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"fileId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media"],"additionalProperties":false}},"required":["type","sourceId","fileId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_moments"},"moments":{"minItems":1,"maxItems":2000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time"],"additionalProperties":false}}},"required":["id","sourceId"],"additionalProperties":false}}},"required":["type","moments"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_moment"},"momentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"time":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"type":"string","maxLength":4000},"caption":{"type":"string","maxLength":2000},"note":{"type":"string","maxLength":4000},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"additionalProperties":false},"patch":{"type":"object","properties":{"time":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"type":"string","maxLength":4000},"caption":{"type":"string","maxLength":2000},"note":{"type":"string","maxLength":4000},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"additionalProperties":false}},"required":["type","momentId","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_moment"},"momentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time"],"additionalProperties":false}}},"required":["id","sourceId"],"additionalProperties":false}},"required":["type","momentId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"attach_frame"},"momentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"frame":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time"],"additionalProperties":false}},"required":["type","momentId","frame"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_frame"},"momentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"frameId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time"],"additionalProperties":false}},"required":["type","momentId","frameId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_finding"},"finding":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title"],"additionalProperties":false},"expected":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title"],"additionalProperties":false},{"type":"null"}]}},"required":["type","finding","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_finding"},"findingId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title"],"additionalProperties":false}},"required":["type","findingId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_findings"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"expected":{"maxItems":500,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","ids","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_question"},"question":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","enum":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text"],"additionalProperties":false},"expected":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","enum":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text"],"additionalProperties":false},{"type":"null"}]}},"required":["type","question","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_question"},"questionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","enum":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text"],"additionalProperties":false}},"required":["type","questionId","expected"],"additionalProperties":false}],"description":"Atomic, minimal updates. Sources: add_source with kind play_session (browser upload, or external YouTube embed with video:{provider:\"youtube\",videoId:\"CGrkU15iUF8\"}, status:\"ready\", transcript:\"none\"; store no video bytes, add timed transcript excerpts with add_moments when available), document (documentId names a hosted document created empty on commit; write it with apply_document_operations) or files (one entry holding many uploaded assets; add_files/remove_file edit it; each file gets a moment automatically). Example: [{type:\"add_source\",source:{id:\"src_notes\",kind:\"document\",createdAt:\"2026-09-21T10:00:00.000Z\",name:\"Design notes\",documentId:\"doc_notes\"}},{type:\"put_finding\",expected:null,finding:{id:\"finding_loop\",title:\"Core loop\",section:\"Systems\",body:\"Harvest, craft, sell…\",evidence:[\"moment_12\"]}}]. IDs are caller assigned. patch_source/patch_moment/configure include the previous value of every patched field in expected; put_* send expected null to create or the current item to replace; remove_* send the exact current item (remove_source also removes its moments and, for a document source, the hosted document). add_moments inserts excerpts: time in seconds for play sessions, fileId for file sets, blockId for documents. attach_frame references an uploaded raster asset (or use capture_breakdown_frame to grab one from a session video)."}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/breakdown/frames":{"post":{"operationId":"captureBreakdownFrame","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"capture_breakdown_frame","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"momentId":{"description":"Attach the frame to this moment; time defaults to the moment time.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"description":"With time: create a new moment at that time in this play session and attach the frame.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"description":"Seconds into the session video.","type":"number","minimum":0},"height":{"description":"Frame height in pixels (default 720).","type":"integer","minimum":180,"maximum":1080},"label":{"type":"string","maxLength":300}},"required":["sheetId","requestId"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"},"momentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"frame":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time","label"]}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed","momentId","frame"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/product-review":{"get":{"operationId":"readProductReview","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_product_review","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","description":"overview: settings and runs in brief, newest first, a page at a time (limit, cursor). run: one run with its notes (paged); add undigested:true for only the notes a digest has not covered.","type":"string","enum":["overview","run"]}},{"name":"runId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"undigested","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"fixQueue","in":"query","required":false,"schema":{"description":"Only auto-fix notes queued or fixing.","type":"boolean"}},{"name":"include","in":"query","required":false,"schema":{"description":"view=run: add setup (setupPrompt, deployments, platformSetups with saved prompts), digests (prompts, targets, proposals) or settings. setup is always sent while setup is in progress, digests while a digest is requested. overview settings.setupPrompt is the template, not the run's prompt.","maxItems":3,"type":"array","items":{"type":"string","enum":["settings","setup","digests"]}}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g\\d+\\.r\\d+$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"product_review"},"view":{"type":"string","examples":["overview","run"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"settings":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"runs":{"description":"Overview runs, newest first: identity, status, agent, hosting progress, pending/live preview, checkout and comparison metadata, access/error, note counts and last digest.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"counts":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"number"}},"run":{"description":"run: the run in brief; include adds setupPrompt/deployments (setup) and digests (id, status, mode, prompt, target, noteIds, cards, proposals, summary).","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"notes":{"description":"run: notes (id, author, createdAt, text, attachments, digestId, cardIds), a page at a time.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"noteTotal":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/product-review/operations":{"post":{"operationId":"applyProductReviewOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_product_review_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Omit only when every operation is add_run or add_note.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","properties":{"setupPromptMode":{"type":"string","enum":["default","custom"]},"digestPromptMode":{"type":"string","enum":["default","custom"]},"setupPrompt":{"type":"string","maxLength":8000,"description":"What the agent does to start a run: build and run the product and report how to reach it."},"digestPrompt":{"type":"string","maxLength":8000,"description":"What the agent does with a run's notes. {kanban}, {column} and {tag} are filled in when a digest is asked for."},"digestMode":{"type":"string","enum":["direct","reviewed"]},"target":{"anyOf":[{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","columnId"],"additionalProperties":false},{"type":"null"}],"description":"The Kanban tab and column digests create cards in; null until chosen."},"agentId":{"anyOf":[{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},{"type":"null"}],"description":"The agent last asked, offered first next time."},"deployments":{"description":"Reusable setup choices. Missing or empty keeps the setup-prompt-only workflow.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"deliveries":{"description":"Present: build-only instructions with separately selectable delivery methods. Empty means build only. Absent: legacy combined build/deployment instructions.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"instructions":{"type":"string","minLength":1,"maxLength":2000},"kind":{"default":"custom","type":"string","enum":["custom","journal"]},"defaultSelection":{"default":"on","type":"string","enum":["on","off","remember"]}},"required":["id","name","instructions"],"additionalProperties":false}},"instructions":{"type":"string","minLength":1,"maxLength":2000},"selectedByDefault":{"default":true,"description":"Legacy default; used when defaultSelection is absent.","type":"boolean"},"defaultSelection":{"description":"Default for new runs: on, off, or repeat the last setup selection (on until first used).","type":"string","enum":["on","off","remember"]}},"required":["id","name","instructions"],"additionalProperties":false}},"journalSheetId":{"description":"Optional Journal tab on this board where setup records builds and deployment links.","anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"cardPlacement":{"type":"string","enum":["top","bottom"]}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched field (same keys as patch); use null for absent optional settings. A concurrent change rejects the batch."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_run"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":120},"tag":{"description":"Defaults to \"Run N\".","type":"string","minLength":1,"maxLength":40},"checkout":{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"],"additionalProperties":false},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"publish_hosted_preview"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"setupId":{"description":"Late platform request ID; publication preserves the original setup and records its source on that request.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"checkout":{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"],"additionalProperties":false},"whatsNew":{"description":"Agent-written Markdown summary of changes since comparisonBase, or an honest explanation when comparison is unavailable.","type":"string","minLength":1,"maxLength":4000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","assetId"],"additionalProperties":false,"description":"Publish an uploaded static-build ZIP (root index.html, relative asset paths; <=1 GiB ZIP, <=4 GiB expanded, <=512 files) as a public temporary test with guest notes. Send as the only operation; read hosting.status until ready (or failed) before sharing its short URL. Expires after 7 days or when the run ends."},{"type":"object","properties":{"type":{"type":"string","const":"rename_run"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":120},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","title"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_run"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId"],"additionalProperties":false,"description":"Remove a run and its notes. Cards it made stay on their Kanban."},{"type":"object","properties":{"type":{"type":"string","const":"start_setup"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agent":{"anyOf":[{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"],"additionalProperties":false},{"type":"null"}]},"deliveryIds":{"description":"Per selected build id, selected delivery ids. Omit a build key to use its defaults; [] explicitly means build only. Only valid on builds with deliveries configured.","type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"maxItems":12,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"deploymentIds":{"description":"Selected deployment ids; omitted uses settings defaults. Choose at least one when deployment options are configured.","maxItems":12,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"notes":{"description":"Added to the setup prompt.","type":"string","maxLength":2000},"wake":{"description":"Wake you when ready, failed or stopped.","type":"boolean"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","agent"],"additionalProperties":false,"description":"Mark setup as asked for, recording the agent and the setup prompt as it is now."},{"type":"object","properties":{"type":{"type":"string","const":"add_platforms"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"setupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"deploymentIds":{"maxItems":12,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"deliveryIds":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"maxItems":12,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"mode":{"type":"string","enum":["queue","interrupt"]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","setupId","deploymentIds","mode"],"additionalProperties":false,"description":"Add configured, previously unselected platforms to an active run, or unselected deliveries (deliveryIds keyed by a build already in the run; deploymentIds may then be []). Snapshots a scoped prompt and preserves original builds, links, notes and source."},{"type":"object","properties":{"type":{"type":"string","const":"retry_platforms"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"setupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mode":{"type":"string","enum":["queue","interrupt"]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","setupId","mode"],"additionalProperties":false,"description":"Retry a failed late-platform request with its saved scope and source, without selecting a platform twice."},{"type":"object","properties":{"type":{"type":"string","const":"update_setup_details"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"setupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"whatsNew":{"description":"Agent-written Markdown summary of changes since comparisonBase, or an honest explanation when comparison is unavailable.","type":"string","minLength":1,"maxLength":4000},"setupTimeline":{"type":"object","properties":{"clock":{"type":"string","const":"monotonic"},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"milestones":{"minItems":1,"maxItems":64,"type":"array","items":{"type":"object","properties":{"phase":{"type":"string","enum":["first_read","engine_pin_start","engine_pin_end","build_ready_start","build_ready_end","build_start","build_end","inspection_start","inspection_end","upload_start","upload_end","delivery_start","delivery_end","report_start","report_end","report_error"]},"elapsedMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["phase","elapsedMs"],"additionalProperties":false}},"truncated":{"type":"boolean","const":true}},"required":["clock","startedAt","milestones"],"additionalProperties":false},"setupTimings":{"type":"object","properties":{"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildReadyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"enginePinMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"exportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"uploadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"reportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"stageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildTotalMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"optimizeMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"packageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheLockMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheFingerprintMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheRestoreMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheSaveMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyApplyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyReimportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyVerifyMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false},"instructions":{"type":"string","maxLength":4000,"description":"How to reach and use it: login, seed data, what is ready and what is not. Markdown."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId"],"additionalProperties":false,"description":"Patch background setup details after ready or failed, without changing status, checkout, access links or sending another ready notification. Include setupId for an additional platform."},{"type":"object","properties":{"type":{"type":"string","const":"report_access"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"setupTimeline":{"description":"Bounded monotonic setup milestones from one host/boot; report completion stays in the local CLI log, without a second request.","type":"object","properties":{"clock":{"type":"string","const":"monotonic"},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"milestones":{"minItems":1,"maxItems":64,"type":"array","items":{"type":"object","properties":{"phase":{"type":"string","enum":["first_read","engine_pin_start","engine_pin_end","build_ready_start","build_ready_end","build_start","build_end","inspection_start","inspection_end","upload_start","upload_end","delivery_start","delivery_end","report_start","report_end","report_error"]},"elapsedMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["phase","elapsedMs"],"additionalProperties":false}},"truncated":{"type":"boolean","const":true}},"required":["clock","startedAt","milestones"],"additionalProperties":false},"setupTimings":{"description":"Optional measured setup milliseconds for ready or failed; phases may overlap. Omit unmeasured phases. reportMs is a previously measured report call, never an estimate of this request.","type":"object","properties":{"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildReadyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"enginePinMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"exportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"uploadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"reportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"stageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildTotalMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"optimizeMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"packageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheLockMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheFingerprintMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheRestoreMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheSaveMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyApplyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyReimportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyVerifyMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false},"timings":{"description":"Measured cleanup milliseconds; only with status stopped.","type":"object","properties":{"processStopMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"fileCleanupMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"hostingCleanupMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false},"setupId":{"description":"Report only this late platform request; omit for the original setup or shutdown.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","enum":["ready","failed","stopped"]},"whatsNew":{"description":"Short tester-facing changes from comparisonBase to checkout, based on the Git log. Optional at readiness; prefer update_setup_details after ready. Include limitations; never send with stopped.","type":"string","minLength":1,"maxLength":4000},"checkout":{"description":"Source inspected before the build; send with ready or failed, never with stopped. Omission preserves the recorded checkout.","type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"],"additionalProperties":false},"links":{"description":"All access destinations as labeled URLs, e.g. Localhost, LAN, HTTPS fallback. Each gets QR/Open/Copy controls. Omit for legacy url/instructions.","maxItems":24,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":80},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"url":{"default":null,"anyOf":[{"type":"string","format":"uri"},{"type":"null"}],"description":"Where to open the product, when it has one."},"instructions":{"default":"","type":"string","maxLength":4000,"description":"How to reach and use it: login, seed data, what is ready and what is not. Markdown."},"error":{"default":"","type":"string","maxLength":4000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","status"],"additionalProperties":false,"description":"The agent reports: ready with how to reach the product, failed with what went wrong, or stopped once the build is shut down."},{"type":"object","properties":{"type":{"type":"string","const":"set_run_agent"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"timings":{"description":"Dispatch timings, only with digestId.","type":"object","properties":{"readMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"requestMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"workerStartMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"noteReadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"draftMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"cardWriteMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false},"digestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"setupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agent":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"],"additionalProperties":false},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","agent"],"additionalProperties":false,"description":"Record who runs an unfinished run, or one of its digests or added platforms."},{"type":"object","properties":{"type":{"type":"string","const":"request_shutdown"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agent":{"anyOf":[{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"],"additionalProperties":false},{"type":"null"}]},"wake":{"description":"Wake you when ready, failed or stopped.","type":"boolean"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","agent"],"additionalProperties":false,"description":"Ask the agent in charge to shut the build down (a playtest ended)."},{"type":"object","properties":{"type":{"type":"string","const":"add_note"},"noteId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenName":{"description":"Product screen or scene when the tester opened the note.","type":"string","minLength":1,"maxLength":200},"ownerReview":{"description":"Tester requests owner review; false or absent leaves routing automatic.","type":"boolean"},"text":{"type":"string","maxLength":8000},"autoFix":{"description":"Run agent fixes it live.","type":"boolean"},"build":{"description":"The build (pack version) the tester ran.","type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"attachments":{"default":[],"description":"Uploaded screenshots (media IDs from upload_asset); reuse them as card attachments.","maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Set on a marked-up copy made in Qraft."}},"required":["id","media"],"additionalProperties":false}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","noteId","runId","text"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_note"},"noteId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedText":{"type":"string","maxLength":8000},"text":{"type":"string","maxLength":8000},"attachments":{"default":[],"description":"Uploaded screenshots (media IDs from upload_asset); reuse them as card attachments.","maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Set on a marked-up copy made in Qraft."}},"required":["id","media"],"additionalProperties":false}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","noteId","expectedText"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_note"},"noteId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","noteId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_note_fix"},"noteId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","enum":["fixing","fixed","deferred","failed"]},"detail":{"default":"","type":"string","maxLength":500},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","noteId","status"],"additionalProperties":false,"description":"Run agent (qraft playtest next/fix): fixing takes the oldest queued auto-fix note; then fixed+commit, deferred or failed."},{"type":"object","properties":{"type":{"type":"string","const":"set_note_cards"},"noteId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"target":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","columnId"],"additionalProperties":false},"cards":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"object","properties":{"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200}},"required":["cardId","title"],"additionalProperties":false}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","noteId","target","cards"],"additionalProperties":false,"description":"Run agent: cards made from the note it is fixing, in work order."},{"type":"object","properties":{"type":{"type":"string","const":"set_card_fix"},"noteId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","enum":["fixing","fixed","review","deferred","failed"]},"detail":{"default":"","type":"string","maxLength":500},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","noteId","cardId","status"],"additionalProperties":false,"description":"Run agent: fixing takes the next queued card; then fixed+commit, review, deferred or failed."},{"type":"object","properties":{"type":{"type":"string","const":"set_fix_verified"},"noteId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"description":"Omit for a note fixed without cards.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"verified":{"type":"boolean"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","noteId","verified"],"additionalProperties":false,"description":"Tester checked a fixed or in-review live-fix card in the game (false clears it)."},{"type":"object","properties":{"type":{"type":"string","const":"request_rebuild"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId"],"additionalProperties":false,"description":"Ask the run agent to rebuild to the same link."},{"type":"object","properties":{"type":{"type":"string","const":"report_build"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","enum":["building","ready","failed"]},"build":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"branch":{"type":"string","minLength":1,"maxLength":255},"file":{"description":"ready: the new pack's Qraft file link (qraft playtest update); the Sleeve swaps to it.","type":"string","maxLength":2000,"format":"uri"},"error":{"default":"","type":"string","maxLength":2000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","status"],"additionalProperties":false,"description":"Run agent: a live-fix build is building, ready (build number, commit, file) or failed."},{"type":"object","properties":{"type":{"type":"string","const":"request_digest"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"digestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agent":{"anyOf":[{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"],"additionalProperties":false},{"type":"null"}]},"shutDownAfter":{"default":false,"type":"boolean"},"wake":{"description":"Wake you when ready, failed or stopped.","type":"boolean"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","digestId","agent"],"additionalProperties":false,"description":"Ask for a digest of the run's notes not yet digested, recording the prompt and target as they are now."},{"type":"object","properties":{"type":{"type":"string","const":"complete_digest"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"timings":{"description":"Measured phase milliseconds; merged with dispatch timings.","type":"object","properties":{"readMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"requestMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"workerStartMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"noteReadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"draftMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"cardWriteMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"additionalProperties":false},"digestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cards":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","maxLength":300},"noteIds":{"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["cardId","title","noteIds"],"additionalProperties":false}},"summary":{"default":"","type":"string","maxLength":4000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","runId","digestId","cards"],"additionalProperties":false,"description":"After creating the cards with apply_kanban_operations, record them and which notes each came from."}]}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/mailbox":{"get":{"operationId":"readMailbox","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_mailbox","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"desktopProof","in":"query","required":false,"schema":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false}},{"name":"agentId","in":"query","required":false,"schema":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},{"name":"threadId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"originalMessageId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"originalFormat","in":"query","required":false,"schema":{"default":"headers","type":"string","enum":["headers","source"]}},{"name":"attachmentId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{24}$"}},{"name":"attachmentFormat","in":"query","required":false,"schema":{"type":"string","enum":["text","raw"]}},{"name":"folder","in":"query","required":false,"schema":{"default":"inbox","type":"string","enum":["inbox","sent","drafts","spam","trash","all"]}},{"name":"tag","in":"query","required":false,"schema":{"type":"string","maxLength":40}},{"name":"before","in":"query","required":false,"schema":{"type":"string","maxLength":500}},{"name":"messageBefore","in":"query","required":false,"schema":{"type":"string","maxLength":500}},{"name":"limit","in":"query","required":false,"schema":{"default":40,"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/mailbox/operations":{"post":{"operationId":"applyMailboxOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_mailbox_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false},"agentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"operations":{"minItems":1,"maxItems":1,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"send_domain_address_test"},"domainId":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"local":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9._-]{0,38}[a-z0-9])?$"}},"required":["type","domainId","local"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"claim_domain_address"},"domainId":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"local":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9._-]{0,38}[a-z0-9])?$"}},"required":["type","domainId","local"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"release_domain_address"},"confirm":{"type":"boolean","const":true}},"required":["type","confirm"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_receive_address"},"domainId":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"local":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9._-]{0,38}[a-z0-9])?$"},"confirm":{"type":"boolean","const":true}},"required":["type","domainId","local","confirm"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"send_alias_test"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"use_qraft_primary"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"claim_address"},"prefix":{"type":"string","pattern":"^[a-z0-9](?:[a-z0-9-]{1,38}[a-z0-9])$"}},"required":["type","prefix"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"settings"},"settings":{"type":"object","properties":{"visibility":{"default":"leads","type":"string","enum":["owner","leads","agents"]},"notifyOwner":{"default":false,"type":"boolean"},"pingLead":{"default":false,"type":"boolean"}},"additionalProperties":false}},"required":["type","settings"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"authorize"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"authorized":{"type":"boolean"}},"required":["type","threadId","authorized"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"allow_replies"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"allowed":{"type":"boolean"}},"required":["type","threadId","allowed"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_thread"},"to":{"type":"string","maxLength":254,"format":"email","pattern":"^(?:[A-Za-z0-9_'+\\-]+\\.)*[A-Za-z0-9_'+\\-]*[A-Za-z0-9_+-]@(?:[A-Za-z0-9][A-Za-z0-9\\-]*\\.)+[A-Za-z]{2,}$"},"subject":{"type":"string","minLength":1,"maxLength":200},"body":{"type":"string","minLength":1,"maxLength":16000}},"required":["type","to","subject"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"routing_labels"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"labels":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["type","threadId","labels"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_thread"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"unread":{"type":"boolean"},"folder":{"type":"string","enum":["inbox","archive","spam","trash"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["type","threadId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"prepare_attachment"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":120},"size":{"type":"integer","minimum":1,"maximum":10485760},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","threadId","name","size","sha256"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"attach_file"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["type","threadId","driveId","nodeId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"draft"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"subject":{"type":"string","minLength":1,"maxLength":200},"draftId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"integer","minimum":0,"maximum":9007199254740991},"body":{"type":"string","minLength":1,"maxLength":16000},"attachments":{"default":[],"maxItems":10,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{24}$"}}},"required":["type","threadId","draftId","expectedVersion","body"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"approve_draft"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["type","threadId","draftId","version"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"send"},"threadId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["type","threadId","draftId","version"],"additionalProperties":false}]}}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/support":{"get":{"operationId":"readSupport","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_support","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","type":"string","enum":["overview","ticket"]}},{"name":"ticketId","in":"query","required":false,"schema":{"type":"string","pattern":"^tk_[A-Za-z0-9_-]{6,40}$"}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["new","open","waiting","solved","active","all"]}},{"name":"kind","in":"query","required":false,"schema":{"type":"string","enum":["report","support","privacy","feedback"]}},{"name":"assignee","in":"query","required":false,"schema":{"type":"string","enum":["me","none"]}},{"name":"authorized","in":"query","required":false,"schema":{"description":"true: the tickets you may act on.","type":"boolean"}},{"name":"tag","in":"query","required":false,"schema":{"type":"string","maxLength":40}},{"name":"accountId","in":"query","required":false,"schema":{"type":"string","maxLength":128}},{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":300}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"agentId","in":"query","required":false,"schema":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"support"},"view":{"type":"string","examples":["overview","ticket"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"}},"required":["type","view","boardId","sheetId","revision","documentRevision"],"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/support/operations":{"post":{"operationId":"applySupportOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_support_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"dryRun":{"type":"boolean"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"operations":{"minItems":1,"maxItems":50,"type":"array","items":{"anyOf":[{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":2000},"instructions":{"type":"string","maxLength":20000,"description":"Triage policy and tone (Markdown). Read before triaging."},"email":{"type":"object","properties":{"signature":{"type":"string","maxLength":2000}},"required":["signature"],"additionalProperties":false}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false}]},{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_ticket"},"ticketId":{"type":"string","pattern":"^tk_[A-Za-z0-9_-]{6,40}$"},"patch":{"type":"object","properties":{"status":{"type":"string","enum":["new","open","waiting","solved"]},"priority":{"type":"string","enum":["low","normal","high","urgent"]},"kind":{"type":"string","enum":["report","support","privacy","feedback"]},"subject":{"type":"string","minLength":1,"maxLength":200},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"assignee":{"anyOf":[{"type":"string","const":"me"},{"type":"null"}]},"dueAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Current value of each patched key (assignee: name or null)."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","ticketId","patch","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_note"},"ticketId":{"type":"string","pattern":"^tk_[A-Za-z0-9_-]{6,40}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","ticketId","body"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"draft_reply"},"ticketId":{"type":"string","pattern":"^tk_[A-Za-z0-9_-]{6,40}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"replaces":{"type":"string","pattern":"^m_[A-Za-z0-9_-]{6,40}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","ticketId","body"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"send_reply"},"ticketId":{"type":"string","pattern":"^tk_[A-Za-z0-9_-]{6,40}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"draftId":{"description":"The draft this sends (it is removed).","type":"string","pattern":"^m_[A-Za-z0-9_-]{6,40}$"},"status":{"default":"waiting","description":"The ticket's status after sending.","type":"string","enum":["waiting","solved"]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","ticketId","body"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"discard_draft"},"ticketId":{"type":"string","pattern":"^tk_[A-Za-z0-9_-]{6,40}$"},"messageId":{"type":"string","pattern":"^m_[A-Za-z0-9_-]{6,40}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","ticketId","messageId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_ticket"},"kind":{"type":"string","enum":["report","support","privacy","feedback"]},"subject":{"type":"string","minLength":1,"maxLength":200},"body":{"default":"","type":"string","maxLength":8000},"requester":{"type":"object","properties":{"accountId":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[\\x21-\\x7e]+$"},"displayName":{"type":"string","maxLength":80},"email":{"type":"string","maxLength":254,"pattern":"^[^\\s@<>()\",;:]+@[^\\s@<>()\",;:]+\\.[^\\s@<>()\",;:]+$"},"guest":{"type":"boolean"}},"additionalProperties":false},"reported":{"type":"object","properties":{"accountId":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[\\x21-\\x7e]+$"},"displayName":{"type":"string","maxLength":80}},"required":["accountId"],"additionalProperties":false},"outbound":{"description":"Start an outbound conversation. Requires requester.email; body becomes the first draft, never sent. Agents may edit their own initial drafts until sending or inbound mail.","type":"boolean"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","kind","subject"],"additionalProperties":false}]}]}},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]},{"type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"committed":{"type":"boolean"},"results":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}},"required":["requestId","sheetId","committed","results"]}]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/localization":{"get":{"operationId":"readLocalization","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_localization","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","type":"string","enum":["overview","entries","entry","work","queue","packs","pack","store"]}},{"name":"entryId","in":"query","required":false,"schema":{"type":"string","pattern":"^le_[A-Za-z0-9]{8,32}$"}},{"name":"key","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9][A-Za-z0-9_.\\-/]{0,127}$","description":"Stable id (lobby.play_button), never the English text."}},{"name":"q","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"tag","in":"query","required":false,"schema":{"type":"string","maxLength":40}},{"name":"destinationId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"storeSheetId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"type","in":"query","required":false,"schema":{"type":"string","enum":["string","image","audio","json","store_text","store_media"]}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["missing","stale","review","owner","done"]}},{"name":"lang","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},{"name":"langs","in":"query","required":false,"schema":{"type":"string","maxLength":400}},{"name":"archived","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"role","in":"query","required":false,"schema":{"type":"string","enum":["translate","review"]}},{"name":"version","in":"query","required":false,"schema":{"type":"integer","minimum":0,"maximum":9007199254740991}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"localization"},"view":{"type":"string","examples":["overview","entries","entry","work","queue","packs","pack","store"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"}},"required":["type","view","boardId","sheetId","revision","documentRevision"],"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/localization/operations":{"post":{"operationId":"applyLocalizationOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_localization_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"dryRun":{"type":"boolean"},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"operations":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","enum":["upsert_entries","update_entry","archive_entries","delete_entries","add_language","update_language","remove_language","set_base","submit_translations","review_translations","decide","set_translation","retranslate","edit_image","collect_images","request_work","publish"]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type"],"additionalProperties":{},"description":"Fields per type: /docs/guides/localization.md"}]}},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"committed":{"type":"boolean"},"results":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}},"required":["requestId"],"additionalProperties":{},"description":"Results per operation. update_settings: the room receipt."}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/experiments":{"get":{"operationId":"readExperiments","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_experiments","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","type":"string","enum":["overview","experiment","report","exclusions","exclusion_audit"]}},{"name":"experimentId","in":"query","required":false,"schema":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"}},{"name":"after","in":"query","required":false,"schema":{"description":"Exclusions: last subject; exclusion_audit: last audit id.","type":"string","maxLength":200}},{"name":"environment","in":"query","required":false,"schema":{"description":"Report: which assignments count (default all).","type":"string","enum":["all","production","playtest","development"]}},{"name":"list","in":"query","required":false,"schema":{"description":"Overview: active experiments (default) or archived ones.","type":"string","enum":["active","archived"]}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"experiments"},"view":{"type":"string","examples":["overview","experiment","report","exclusions","exclusion_audit"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"}},"required":["type","view","boardId","sheetId","revision","documentRevision"],"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/digital-ads":{"get":{"operationId":"readDigitalAds","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_digital_ads","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","type":"string","enum":["overview","profiles","snapshot","meta_goals","tests","test","creatives","creative","campaigns","ad_assets","metrics","automation","search","search_campaign","keywords","search_terms","search_ads","search_estimates","targeting"]}},{"name":"targetingKind","in":"query","required":false,"schema":{"type":"string","enum":["locations","languages"]}},{"name":"query","in":"query","required":false,"schema":{"type":"string","minLength":2,"maxLength":80}},{"name":"metaGoalAfter","in":"query","required":false,"schema":{"description":"meta_goals: next page cursor.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"targetingIds","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{1,12}(,\\d{1,12}){0,49}$"}},{"name":"creativeId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"adId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"pageAfter","in":"query","required":false,"schema":{"description":"campaigns/creatives: opaque next window cursor; keep filters and sorting unchanged.","type":"string","maxLength":2048}},{"name":"copyAfter","in":"query","required":false,"schema":{"description":"creatives: next copy window cursor.","type":"string","maxLength":2048}},{"name":"parentId","in":"query","required":false,"schema":{"description":"campaigns: children of one campaign/ad set; unassigned for unplaced ads.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sortKey","in":"query","required":false,"schema":{"type":"string","enum":["created","name","status","role","budget","spend","impressions","clicks","conversions","cpa","ipm","ctr","roas","tests","ads"]}},{"name":"sortDirection","in":"query","required":false,"schema":{"type":"string","enum":["asc","desc"]}},{"name":"stage","in":"query","required":false,"schema":{"type":"string","enum":["draft","ready","testing","scaling","retired"]}},{"name":"pipelineStatus","in":"query","required":false,"schema":{"type":"string","enum":["draft","approved","pending_test","running","verdict","rejected"]}},{"name":"assetAfter","in":"query","required":false,"schema":{"type":"string","pattern":"^[a-z_]+:[a-f0-9]{64}$"}},{"name":"archived","in":"query","required":false,"schema":{"description":"tests: the archived tests instead.","type":"boolean"}},{"name":"cursor","in":"query","required":false,"schema":{"description":"tests: the previous page's next cursor.","type":"string","pattern":"^[0-9TZ:.+-]{10,40}~[A-Za-z0-9_-]{1,64}$"}},{"name":"from","in":"query","required":false,"schema":{"description":"First day (campaigns, metrics); default: all.","type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"period","in":"query","required":false,"schema":{"description":"One account-timezone calendar day: today is partial; yesterday is complete. Cannot combine with days/from/to.","type":"string","enum":["today","yesterday"]}},{"name":"days","in":"query","required":false,"schema":{"description":"Instead of from/to: the last N complete days (ending yesterday) in the tab's timezone.","type":"integer","minimum":1,"maximum":366}},{"name":"network","in":"query","required":false,"schema":{"description":"metrics: one network; targeting: whose ids to search (google, the default, microsoft, or meta: languages for campaign profiles).","type":"string","pattern":"^[a-z][a-z0-9_]{1,31}$"}},{"name":"campaignId","in":"query","required":false,"schema":{"description":"test: the test ad set (legacy single-set campaign ids also accepted); metrics: one campaign or ad set.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"limit","in":"query","required":false,"schema":{"description":"metrics: rows; tests: per page (up to 200).","type":"integer","minimum":1,"maximum":5000}},{"name":"before","in":"query","required":false,"schema":{"description":"automation: actions before this time (the previous page's last at).","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},{"name":"searchCampaignId","in":"query","required":false,"schema":{"description":"search_campaign (required), keywords, search_terms, search_ads: one search campaign.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"candidates","in":"query","required":false,"schema":{"description":"search_estimates: additional phrases for historical metrics; never added to the campaign.","maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":80}}},{"name":"offset","in":"query","required":false,"schema":{"description":"keywords, search_terms: rows to skip (pages of limit).","type":"integer","minimum":0,"maximum":10000}},{"name":"copy","in":"query","required":false,"schema":{"description":"profiles: also the tab's headlines and primary texts for a test, best first (Export & test's Copy picker).","type":"boolean"}},{"name":"hideBlocked","in":"query","required":false,"schema":{"description":"search_terms: leave out terms a negative already blocks.","type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"digital_ads"},"view":{"type":"string","examples":["overview","profiles","snapshot","meta_goals","tests","test","creatives","creative","campaigns","ad_assets","metrics","automation","search","search_campaign","keywords","search_terms","search_ads","search_estimates","targeting"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"}},"required":["type","view","boardId","sheetId","revision","documentRevision"],"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/digital-ads/operations":{"post":{"operationId":"applyDigitalAdsOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_digital_ads_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"dryRun":{"type":"boolean"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"operations":{"minItems":1,"maxItems":50,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"duplicate_campaign"},"network":{"type":"string","const":"meta"},"level":{"type":"string","const":"campaign"},"externalId":{"type":"string","minLength":1,"maxLength":100},"name":{"type":"string","minLength":1,"maxLength":200},"objective":{"type":"string","enum":["OUTCOME_APP_PROMOTION","OUTCOME_AWARENESS","OUTCOME_ENGAGEMENT","OUTCOME_LEADS","OUTCOME_SALES","OUTCOME_TRAFFIC"]},"optimizationGoal":{"type":"string","enum":["APP_INSTALLS","OFFSITE_CONVERSIONS","VALUE","LINK_CLICKS","LANDING_PAGE_VIEWS","REACH","IMPRESSIONS"]},"budgetMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","network","level","externalId","name","reason"],"additionalProperties":false,"description":"Deep-copy a Meta campaign and its ad sets/ads, always paused. Budget retains the source period and overrides the campaign budget, or each ad set budget when the source has no campaign budget. Goal overrides each copied ad set optimization goal. Reuse requestId on retry."},{"type":"object","properties":{"type":{"type":"string","const":"put_meta_goal"},"goal":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"{id (campaign goal), analyticsSheetId, event, where?, datasetId, metaEvent, mode off|test|live (default off), testEventCode?}"},"expectedVersion":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","goal","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"description, instructions, currency, timezone, analyticsSheetId (our data), goals [{id, name, event, source network|analytics, where {prop: value}, valueMicros, targetCpaMicros, maxCpaMicros, targetRoas, minRoas}], testRules {days, dailyBudgetMicros, minSpendMicros, minConversions, killSpendWithoutConversionMicros, killDailyCpaAboveMicros, keepCpaBelowMicros, killCpaAboveMicros, keepIpmAbove, killIpmBelow}. Money: integer micros strings."},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_creative"},"creative":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"{name, kind video|image|carousel|playable|other, description, stage, approval, reviewIds, tags, language, versions [{id, label, media {id, mimeType, bytes} | file {driveId, nodeId, versionId} (Files, no copy), aspect, language}], card {sheetId, cardId}}"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","creative"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_creative"},"creativeId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"description":"Guard: the item's current version.","type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"patch":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","creativeId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_pending_test"},"creativeId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"description":"Guard: the item's current version.","type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"test":{"anyOf":[{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},{"type":"null"}],"description":"{profileId, planId (both required: qraft ads profiles), versionId (null: newest), copyIds, notes}; null clears. No targeting, budget or days: the profile and plan have them. Approved creatives only; the owner runs it."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","creativeId","test"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"request_tweak"},"creativeId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string"},"versionId":{"type":["string","null"]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","creativeId","text"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_copy"},"copy":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"{kind primary_text|headline|description|call_to_action, text, name, language, tags}"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","copy"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_copy"},"copyId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"description":"Guard: the item's current version.","type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"patch":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","copyId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"upsert_campaign"},"campaign":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"{id | network + externalId, name, status, account, objective, role test|scale|other, goalId, budget {amountMicros, period}, startDay, endDay, notes; a test (role test): testStartDay, testRules (overrides), archived}"},"expectedVersion":{"description":"Guard: the item's current version.","type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaign"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"upsert_ad_set"},"adSet":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Campaign and test fields, plus campaignId | campaignExternalId."},"expectedVersion":{"description":"Guard: the item's current version.","type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","adSet"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"upsert_ad"},"ad":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"{id | network + externalId, adSetId | adSetExternalId, campaignId | campaignExternalId, creativeId, versionId, copyIds, name, status}"},"expectedVersion":{"description":"Guard: the item's current version.","type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","ad"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"push_metrics"},"rows":{"minItems":1,"maxItems":5000,"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"description":"[{adId | network + adExternalId, day, spendMicros, impressions, clicks, conversions, valueMicros, currency (required), extra}]; micros are integer strings; bad rows come back in errors"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","rows"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"import_report"},"network":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}$","description":"meta, google, tiktok, apple_search_ads…"},"rows":{"minItems":1,"maxItems":5000,"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"description":"A network's raw ad-level daily report rows (meta: Insights with ad_id, date_start, spend, impressions, clicks, actions, action_values)."},"goalEvent":{"type":"string","maxLength":64},"account":{"type":"string","maxLength":100},"currency":{"description":"The rows' currency when the report carries none (never assumed).","type":"string","pattern":"^[A-Z]{3}$"},"timezone":{"description":"The ad account's IANA timezone when the report carries none.","type":"string","maxLength":64},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","network","rows"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_item"},"kind":{"type":"string","enum":["creative","copy","ad"]},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","kind","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_campaign"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","id"],"additionalProperties":false,"description":"Deletes a campaign or ad set with its ads and metric history (archive instead: upsert status archived)."},{"type":"object","properties":{"type":{"type":"string","const":"manual_kill"},"network":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}$","description":"meta, google, tiktok, apple_search_ads…"},"level":{"type":"string","enum":["ad_set","ad"]},"externalId":{"type":"string","minLength":1,"maxLength":100},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","network","level","externalId"],"additionalProperties":false,"description":"Owner in the browser only: pause and permanently mark an ad or ad set manually killed."},{"type":"object","properties":{"type":{"type":"string","const":"void_launch"},"launchId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","launchId","reason"],"additionalProperties":false,"description":"Owner account only: void a failed creation and release its budget; never starts or deletes network objects."},{"type":"object","properties":{"type":{"type":"string","const":"refresh"},"days":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_test"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type"],"additionalProperties":{},"description":"{reason, creativeId, ads [{versionId, copyIds, networkCreativeId}] (one), profileId, planId (both required), activate}. Never targeting, budget, days or account: the owner's profile and run plan set them."},{"type":"object","properties":{"type":{"type":"string","const":"test_file"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type"],"additionalProperties":{},"description":"{reason, file {driveId, nodeId, versionId}, name (the creative to add it to or create; default the file name), aspect, language, profileId, planId (both required), start scheduled|now (default scheduled), copyIds (omit: the creative's pending-test copy, else its latest ad's, else the tab's best headline and primary text; a tab with no copy: refused [no_copy])}: links a Files video as a creative version (no copy) and launches its test, activated for the profile's next start time."},{"type":"object","properties":{"type":{"type":"string","const":"run_file"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type"],"additionalProperties":{},"description":"{reason, file {driveId, nodeId, versionId}, name, aspect, language, profileId, dailyBudgetMicros (required), endAt (optional; default 30 days), copyIds (defaults as test_file)}: links a Files video as a creative version and runs it as one ad set with one ad at that daily budget, live now, inside the budget policy."},{"type":"object","properties":{"type":{"type":"string","const":"launch_test"},"launchId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"reason":{"type":"string"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","launchId","reason"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"pause"},"launchId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"network":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}$","description":"meta, google, tiktok, apple_search_ads…"},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"externalId":{"type":"string"},"reason":{"type":"string"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reason"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_ad_set"},"profileId":{"type":"string","pattern":"^[a-z0-9][a-z0-9-]{0,39}$"},"creativeId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"dailyBudgetMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},"days":{"type":"integer","minimum":1,"maximum":30},"endAt":{"description":"Optional end; defaults to the policy duration. Do not combine with days.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"ads":{"minItems":1,"maxItems":1,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"versionId":{"description":"The creative version whose file runs (default: its first with a file).","type":"string","maxLength":40},"copyIds":{"default":[],"maxItems":10,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"networkCreativeId":{"description":"A creative already on the network, instead of uploading the version's file.","type":"string","minLength":1,"maxLength":100}},"additionalProperties":false}},"activate":{"default":false,"type":"boolean"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","profileId","creativeId","dailyBudgetMicros","ads","reason"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"extend_ad_set"},"network":{"type":"string","const":"meta"},"level":{"type":"string","const":"ad_set"},"externalId":{"type":"string","minLength":1,"maxLength":100},"endAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","network","level","externalId","endAt","reason"],"additionalProperties":false,"description":"Change a live Meta ad set end date, earlier or later, inside daily and monthly caps."},{"type":"object","properties":{"type":{"type":"string","const":"set_budget"},"network":{"type":"string","const":"meta"},"level":{"type":"string","enum":["campaign","ad_set"]},"externalId":{"type":"string"},"dailyBudgetMicros":{"type":"string"},"acknowledgeLearningReset":{"type":"boolean"},"reason":{"type":"string"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","network","level","externalId","dailyBudgetMicros","reason"],"additionalProperties":false,"description":"Change a Meta daily budget inside the owner budget policy. Strict daily-budget decreases need no end time or new commitment; increases and lifetime-to-daily calculations require a network end time."},{"type":"object","properties":{"type":{"type":"string","const":"resume_test"},"acknowledgeLearningReset":{"type":"boolean"},"launchId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"network":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}$","description":"meta, google, tiktok, apple_search_ads…"},"level":{"type":"string","enum":["campaign","ad_set"]},"externalId":{"type":"string"},"endAt":{"type":"string"},"reason":{"type":"string"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reason"],"additionalProperties":false,"description":"Resume a paused launched test inside the budget policy (endAt: a later end)."},{"type":"object","properties":{"type":{"type":"string","const":"archive"},"network":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}$","description":"meta, google, tiktok, apple_search_ads…"},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"externalId":{"type":"string"},"reason":{"type":"string"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","network","level","externalId","reason"],"additionalProperties":false,"description":"Archive it on the network (stops it for good)."},{"type":"object","properties":{"type":{"type":"string","const":"rename"},"network":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}$","description":"meta, google, tiktok, apple_search_ads…"},"level":{"type":"string","enum":["campaign","ad_set","ad"]},"externalId":{"type":"string"},"name":{"type":"string"},"reason":{"type":"string"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","network","level","externalId","name","reason"],"additionalProperties":false,"description":"Rename it on the network."},{"type":"object","properties":{"type":{"type":"string","const":"search_save_draft"},"campaignId":{"description":"Omit to create a draft.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"description":"Guard: the item's current version.","type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"campaign":{"type":"object","properties":{"conversionActionIds":{"description":"Explicit Google conversion action IDs. Required to launch on Google; never inherit account goals. Microsoft: not used yet.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^[1-9]\\d{0,19}$"}},"sitelinks":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":25},"finalUrl":{"type":"string","maxLength":2048,"format":"uri"},"description1":{"default":"","type":"string","maxLength":35},"description2":{"default":"","type":"string","maxLength":35}},"required":["text","finalUrl"],"additionalProperties":false}},"deviceBidModifiers":{"default":{},"type":"object","properties":{"mobile":{"anyOf":[{"type":"number","minimum":-90,"maximum":900},{"type":"number","const":-100}]},"tablet":{"anyOf":[{"type":"number","minimum":-90,"maximum":900},{"type":"number","const":-100}]}},"additionalProperties":false,"description":"Percentage adjustment: -90 = 0.1 multiplier; -100 excludes the device."},"name":{"type":"string","minLength":1,"maxLength":200},"network":{"default":"google","description":"google or microsoft. Fixed once the draft exists (copy it to the other network instead).","type":"string","enum":["google","microsoft"]},"account":{"description":"The account it runs in: a Google Ads customer id, or a Microsoft Advertising account id (default: the board's connected account).","type":["string","null"]},"dailyBudgetMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},"days":{"type":"integer","minimum":1,"maximum":30,"description":"Flight length: it ends on the network after this many days (extend later)."},"bidding":{"default":{"strategy":"maximize_clicks","cpcCapMicros":null},"oneOf":[{"type":"object","properties":{"strategy":{"type":"string","const":"maximize_clicks"},"cpcCapMicros":{"default":null,"description":"Highest bid the network may set.","anyOf":[{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},{"type":"null"}]}},"required":["strategy"],"additionalProperties":false},{"type":"object","properties":{"strategy":{"type":"string","const":"manual_cpc"},"defaultCpcMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"}},"required":["strategy","defaultCpcMicros"],"additionalProperties":false}]},"locations":{"default":[],"description":"The network's own location ids (Google geo targets: 2124 Canada, 2840 United States; Microsoft: its location ids; view targeting finds them); empty: everywhere.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"languages":{"default":["1000"],"description":"Language ids, Google's on both networks (1000 English, 1002 French).","maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"notes":{"default":"","type":"string","maxLength":4000},"adGroups":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"finalUrl":{"type":"string","maxLength":2048,"format":"uri","description":"The ad group's landing page (one per intent; never just the homepage)."},"cpcMicros":{"default":null,"description":"Manual CPC: the ad group's default bid.","anyOf":[{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},{"type":"null"}]},"keywords":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"matchType":{"type":"string","enum":["exact","phrase"]},"cpcMicros":{"default":null,"description":"Manual CPC only: this keyword's bid.","anyOf":[{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},{"type":"null"}]}},"required":["text","matchType"],"additionalProperties":false}},"ads":{"default":[],"maxItems":3,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"headlines":{"minItems":3,"maxItems":15,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":30},"pin":{"default":null,"anyOf":[{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},{"type":"null"}]}},"required":["text"],"additionalProperties":false}},"descriptions":{"minItems":2,"maxItems":4,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":90},"pin":{"default":null,"anyOf":[{"anyOf":[{"type":"number","const":1},{"type":"number","const":2}]},{"type":"null"}]}},"required":["text"],"additionalProperties":false}},"finalUrl":{"description":"Landing page; default: the ad group's.","type":"string","maxLength":2048,"format":"uri"},"path1":{"default":"","type":"string","maxLength":15,"pattern":"^[^\\s/]*$"},"path2":{"default":"","type":"string","maxLength":15,"pattern":"^[^\\s/]*$"}},"required":["headlines","descriptions"],"additionalProperties":false}},"negatives":{"default":[],"description":"This ad group's own negatives.","maxItems":200,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"matchType":{"type":"string","enum":["exact","phrase","broad"]}},"required":["text","matchType"],"additionalProperties":false}}},"required":["name","finalUrl"],"additionalProperties":false}},"negatives":{"default":[],"description":"Campaign-wide negatives.","maxItems":2000,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"matchType":{"type":"string","enum":["exact","phrase","broad"]}},"required":["text","matchType"],"additionalProperties":false}}},"required":["name","dailyBudgetMicros","days"],"additionalProperties":false},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaign"],"additionalProperties":false,"description":"Save a draft search campaign whole (ad groups, keywords, ads, negatives). Drafts only: no network call, no spend."},{"type":"object","properties":{"type":{"type":"string","const":"search_delete_draft"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"search_launch"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId"],"additionalProperties":false,"description":"Board owner only (browser): create the draft on Google and start it, inside the budget policy."},{"type":"object","properties":{"type":{"type":"string","const":"search_pause"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId","reason"],"additionalProperties":false,"description":"Pause on the network. Always allowed: it only stops spend."},{"type":"object","properties":{"type":{"type":"string","const":"search_resume"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId"],"additionalProperties":false,"description":"Board owner only (browser): resume within its flight."},{"type":"object","properties":{"type":{"type":"string","const":"search_extend"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"days":{"type":"integer","minimum":1,"maximum":30},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId","days"],"additionalProperties":false,"description":"Board owner only (browser): add a flight of `days` after the current end, inside the budget policy."},{"type":"object","properties":{"type":{"type":"string","const":"search_set_budget"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"dailyBudgetMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId","dailyBudgetMicros"],"additionalProperties":false,"description":"Change the daily budget. Lowering is always allowed; raising a launched campaign is the board owner's (browser), inside the budget policy."},{"type":"object","properties":{"type":{"type":"string","const":"search_add_negatives"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"negatives":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"matchType":{"type":"string","enum":["exact","phrase","broad"]},"adGroupId":{"default":null,"description":"One ad group's; null: campaign-wide.","anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["text","matchType"],"additionalProperties":false}},"source":{"default":"manual","type":"string","enum":["manual","search_term"]},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId","negatives","reason"],"additionalProperties":false,"description":"Add negative keywords (on the network too once launched). Always allowed: they only narrow where it shows."},{"type":"object","properties":{"type":{"type":"string","const":"search_remove_negative"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"negativeId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId","negativeId"],"additionalProperties":false,"description":"Board owner only (browser)."},{"type":"object","properties":{"type":{"type":"string","const":"search_update_live"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"reason":{"type":"string","minLength":1,"maxLength":500,"description":"Why: recorded in the tab's action log."},"conversionActionIds":{"description":"Explicit Google conversion action IDs. Required to launch on Google; never inherit account goals. Microsoft: not used yet.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^[1-9]\\d{0,19}$"}},"sitelinks":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":25},"finalUrl":{"type":"string","maxLength":2048,"format":"uri"},"description1":{"default":"","type":"string","maxLength":35},"description2":{"default":"","type":"string","maxLength":35}},"required":["text","finalUrl"],"additionalProperties":false}},"deviceBidModifiers":{"type":"object","properties":{"mobile":{"anyOf":[{"type":"number","minimum":-90,"maximum":900},{"type":"number","const":-100}]},"tablet":{"anyOf":[{"type":"number","minimum":-90,"maximum":900},{"type":"number","const":-100}]}},"additionalProperties":false,"description":"Percentage adjustment: -90 = 0.1 multiplier; -100 excludes the device."},"name":{"type":"string","minLength":1,"maxLength":200},"addKeywords":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"matchType":{"type":"string","enum":["exact","phrase"]},"cpcMicros":{"default":null,"description":"Manual CPC only: this keyword's bid.","anyOf":[{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},{"type":"null"}]},"adGroupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["text","matchType","adGroupId"],"additionalProperties":false}},"pauseKeywords":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"addAds":{"default":[],"maxItems":3,"type":"array","items":{"type":"object","properties":{"headlines":{"minItems":3,"maxItems":15,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":30},"pin":{"default":null,"anyOf":[{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},{"type":"null"}]}},"required":["text"],"additionalProperties":false}},"descriptions":{"minItems":2,"maxItems":4,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":90},"pin":{"default":null,"anyOf":[{"anyOf":[{"type":"number","const":1},{"type":"number","const":2}]},{"type":"null"}]}},"required":["text"],"additionalProperties":false}},"finalUrl":{"description":"Landing page; default: the ad group's.","type":"string","maxLength":2048,"format":"uri"},"path1":{"default":"","type":"string","maxLength":15,"pattern":"^[^\\s/]*$"},"path2":{"default":"","type":"string","maxLength":15,"pattern":"^[^\\s/]*$"},"adGroupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["headlines","descriptions","adGroupId"],"additionalProperties":false}},"pauseAds":{"default":[],"maxItems":60,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"enableKeywords":{"default":[],"description":"Paused keywords to run again.","maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"enableAds":{"default":[],"description":"Paused ads to run again.","maxItems":60,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"addAdGroups":{"default":[],"description":"New ad groups with their keywords and ads.","maxItems":20,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"finalUrl":{"type":"string","maxLength":2048,"format":"uri","description":"The ad group's landing page (one per intent; never just the homepage)."},"cpcMicros":{"default":null,"description":"Manual CPC: the ad group's default bid.","anyOf":[{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},{"type":"null"}]},"keywords":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"matchType":{"type":"string","enum":["exact","phrase"]},"cpcMicros":{"default":null,"description":"Manual CPC only: this keyword's bid.","anyOf":[{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},{"type":"null"}]}},"required":["text","matchType"],"additionalProperties":false}},"ads":{"default":[],"maxItems":3,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"headlines":{"minItems":3,"maxItems":15,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":30},"pin":{"default":null,"anyOf":[{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},{"type":"null"}]}},"required":["text"],"additionalProperties":false}},"descriptions":{"minItems":2,"maxItems":4,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":90},"pin":{"default":null,"anyOf":[{"anyOf":[{"type":"number","const":1},{"type":"number","const":2}]},{"type":"null"}]}},"required":["text"],"additionalProperties":false}},"finalUrl":{"description":"Landing page; default: the ad group's.","type":"string","maxLength":2048,"format":"uri"},"path1":{"default":"","type":"string","maxLength":15,"pattern":"^[^\\s/]*$"},"path2":{"default":"","type":"string","maxLength":15,"pattern":"^[^\\s/]*$"}},"required":["headlines","descriptions"],"additionalProperties":false}},"negatives":{"default":[],"description":"This ad group's own negatives.","maxItems":200,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"matchType":{"type":"string","enum":["exact","phrase","broad"]}},"required":["text","matchType"],"additionalProperties":false}}},"required":["name","finalUrl"],"additionalProperties":false}},"locations":{"description":"Replace the targeted locations (the network's ids; empty: everywhere).","maxItems":50,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"languages":{"description":"Replace the targeted languages (Google language ids).","minItems":1,"maxItems":20,"type":"array","items":{"type":"string","pattern":"^\\d{1,12}$"}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId"],"additionalProperties":false,"description":"Owner browser: edit a launched campaign. Owner agents may set explicit conversion goals, add sitelinks and reduce device bids (no positive adjustments); no budget, launch, targeting, keyword, ad or ad group changes."},{"type":"object","properties":{"type":{"type":"string","const":"search_copy_campaign"},"campaignId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The campaign to copy (any status)."},"network":{"type":"string","enum":["google","microsoft"],"description":"The network of the new draft."},"name":{"type":"string","minLength":1,"maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","campaignId","network"],"additionalProperties":false,"description":"Copy a search campaign into a new draft (ad groups, keywords, ads, negatives incl. ad group ones, sitelinks, device bids, budget, days, targeting mapped to the network). No network call, no spend; the result lists what could not be carried over."}]}},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"committed":{"type":"boolean"},"results":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}},"required":["requestId"],"additionalProperties":{},"description":"Results per operation. update_settings: the room receipt."}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/experiments/operations":{"post":{"operationId":"applyExperimentsOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_experiments_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"dryRun":{"type":"boolean"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"operations":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":2000},"instructions":{"type":"string","maxLength":20000,"description":"This product's rule facts and the Type Data its masks may change (Markdown). Read before writing experiments."}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false}]},{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"exclude_subjects"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"subjects":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_.:@-]{1,128}$"}},"reason":{"type":"string","minLength":1,"maxLength":1000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experimentId","expectedVersion","subjects","reason"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"include_subjects"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"subjects":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_.:@-]{1,128}$"}},"reason":{"type":"string","minLength":1,"maxLength":1000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experimentId","expectedVersion","subjects","reason"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_exclusion_cutoff"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"before":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"reason":{"type":"string","minLength":1,"maxLength":1000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experimentId","expectedVersion","before","reason"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_experiment"},"experiment":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"{key, name, description, rules (JSON), buckets [{id, name, weight, mask {table: {row_id: {field: value}}}}], minBuild, environments, maxOthers (0 exclusive, null any), joinLimit, priority, startsAt, stopsAt, report {analyticsSheetId, metrics [{id, label, event, where, value}]}}"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experiment"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_experiment"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"patch":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Experiment fields to change."}},"required":["type","experimentId","expectedVersion","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"duplicate_experiment"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"key":{"type":"string","pattern":"^[a-z0-9][a-z0-9_.-]{0,63}$","description":"Stable lower-case name clients use (area-order-v1)."},"name":{"type":"string","maxLength":80},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experimentId","key"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_experiment"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experimentId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"archive_experiment"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experimentId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"unarchive_experiment"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experimentId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"start_experiment"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"futureBuild":{"description":"Confirm a production minBuild above the newest BUILD production clients reported (a test for a build not yet shipped); without it that start or adjustment is refused.","type":"boolean"}},"required":["type","experimentId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stop_experiment"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","experimentId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"adjust_experiment"},"experimentId":{"type":"string","pattern":"^ex_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"futureBuild":{"description":"Confirm a production minBuild above the newest BUILD production clients reported (a test for a build not yet shipped); without it that start or adjustment is refused.","type":"boolean"},"patch":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"joinLimit, stopsAt, priority, maxOthers; minBuild, rules, environments only while joined is zero."}},"required":["type","experimentId","expectedVersion","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_override"},"override":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"{name, reason, changes [{table, row, field, from, to}], environments, typeDataSheetId, writeThrough, startBuild}"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","override"],"additionalProperties":false,"description":"A draft live override: {name, reason, changes [{table, row, field, from, to}], environments, typeDataSheetId, writeThrough, startBuild}."},{"type":"object","properties":{"type":{"type":"string","const":"update_override"},"overrideId":{"type":"string","pattern":"^ov_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"patch":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"Override fields to change."}},"required":["type","overrideId","expectedVersion","patch"],"additionalProperties":false,"description":"Drafts: any field. Live: name, reason."},{"type":"object","properties":{"type":{"type":"string","const":"apply_override"},"overrideId":{"type":"string","pattern":"^ov_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","overrideId","expectedVersion"],"additionalProperties":false,"description":"Production action: send it to builds startBuild ≤ BUILD < bakedBuild (and write `to` into Type Data unless writeThrough is false)."},{"type":"object","properties":{"type":{"type":"string","const":"revert_override"},"overrideId":{"type":"string","pattern":"^ov_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","overrideId","expectedVersion"],"additionalProperties":false,"description":"Production action: stop sending it (back to draft; the Type Data cell returns to `from` if it still holds `to`)."},{"type":"object","properties":{"type":{"type":"string","const":"set_override_baked"},"overrideId":{"type":"string","pattern":"^ov_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"bakedBuild":{"anyOf":[{"type":"integer","minimum":1,"maximum":2000000000},{"type":"null"}]},"bakedVersion":{"anyOf":[{"type":"string","minLength":1,"maxLength":40},{"type":"null"}]}},"required":["type","overrideId","expectedVersion","bakedBuild","bakedVersion"],"additionalProperties":false,"description":"Production action: the first build that bakes it (e.g. 41, \"1.0.28\"); that build and newer stop receiving it. null clears."},{"type":"object","properties":{"type":{"type":"string","const":"delete_override"},"overrideId":{"type":"string","pattern":"^ov_[A-Za-z0-9]{8,32}$"},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"The experiment's current version."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","overrideId","expectedVersion"],"additionalProperties":false,"description":"A draft: anyone. A live one: production action."},{"type":"object","properties":{"type":{"type":"string","const":"delete_obsolete_overrides"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type"],"additionalProperties":false,"description":"Production action: delete every override in the tab that a build already bakes."}]}]}},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"committed":{"type":"boolean"},"results":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}},"required":["requestId"],"additionalProperties":{},"description":"Experiment edits: results per operation. update_settings: the room receipt."}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/crashes":{"get":{"operationId":"readCrashes","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_crashes","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"issues","type":"string","enum":["issues","issue","symbols"]}},{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":90}},{"name":"environment","in":"query","required":false,"schema":{"type":"string","enum":["all","production","playtest","development"]}},{"name":"status","in":"query","required":false,"schema":{"type":"string","enum":["open","resolved","ignored","all"]}},{"name":"kind","in":"query","required":false,"schema":{"type":"string","enum":["all","crash","error"]}},{"name":"build","in":"query","required":false,"schema":{"type":"string","pattern":"^[\\x20-\\x7e]{1,64}$"}},{"name":"platform","in":"query","required":false,"schema":{"type":"string","maxLength":32}},{"name":"sort","in":"query","required":false,"schema":{"type":"string","enum":["events","users","last_seen","first_seen"]}},{"name":"fingerprint","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,128}$"}},{"name":"eventId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,64}$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"crashes"},"view":{"type":"string","examples":["issues","issue","symbols"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"}},"required":["type","view","boardId","sheetId","revision","documentRevision"],"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/crashes/operations":{"post":{"operationId":"applyCrashesOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_crashes_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"dryRun":{"type":"boolean"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"operations":{"minItems":1,"maxItems":50,"type":"array","items":{"anyOf":[{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":2000},"streamSheetId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"The Analytics tab (on this board) whose crash and error events this tab reads."},"environment":{"type":"string","enum":["all","production","playtest","development"],"description":"Which environment issues count by default."}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched setting."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false}]},{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"set_issue_status"},"fingerprint":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,128}$"},"status":{"type":"string","enum":["open","resolved","ignored"]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","fingerprint","status"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_symbols"},"symbolId":{"type":"string","pattern":"^sym_[a-f0-9]{24}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","symbolId"],"additionalProperties":false}]}]}},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"committed":{"type":"boolean"},"results":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}},"required":["requestId"],"additionalProperties":{},"description":"Results per operation. update_settings: the room receipt."}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/analytics":{"get":{"operationId":"readAnalytics","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_analytics","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","type":"string","enum":["overview","events","catalog","report","cached","values","query","conversions"]}},{"name":"reportId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sourceId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"targetId","in":"query","required":false,"schema":{"type":"string"}},{"name":"uploadStatus","in":"query","required":false,"schema":{"type":"string"}},{"name":"eventName","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"}},{"name":"actorId","in":"query","required":false,"schema":{"type":"string","maxLength":128}},{"name":"from","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":false,"schema":{"type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"environment","in":"query","required":false,"schema":{"type":"string","enum":["all","production","playtest","development"]}},{"name":"timezone","in":"query","required":false,"schema":{"description":"Overrides the tab's time zone for this read (day boundaries, from/to).","type":"string","maxLength":64}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":300}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200}},{"name":"sql","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":8000,"description":"One PostgreSQL SELECT. Reads `events` (this tab only: event_id, name, occurred_at, received_at, actor_id, session_id, sequence, build_id, environment, source_id, properties jsonb, context jsonb, install_id, install_context jsonb, session_context jsonb), `params` (range_start, range_end timestamptz; timezone text) and `assignments` (experiment, bucket, actor_id, environment, joined_at, left_at). Up to 500 rows; 64 KiB per row, 4 MiB total, maximum 8 seconds."}},{"name":"eventMode","in":"query","required":false,"schema":{"description":"query: enriched (default) includes install/session context; raw reads only stored events in the date window, without install filtering. Raw rejects context filters and breakdowns.","type":"string","enum":["enriched","raw"]}},{"name":"contextFilters","in":"query","required":false,"schema":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","enum":["session","install"]},"field":{"type":"string","enum":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"],"additionalProperties":false},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"],"additionalProperties":false}]}}},{"name":"breakdown","in":"query","required":false,"schema":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","enum":["session","install"]},"field":{"type":"string","enum":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"],"additionalProperties":false},{"type":"null"}]}},{"name":"includeTestInstalls","in":"query","required":false,"schema":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"}},{"name":"segmentId","in":"query","required":false,"schema":{"description":"report: also filter by this saved segment (ANDed with contextFilters).","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"cache","in":"query","required":false,"schema":{"description":"report: refresh (default) runs it and stores the result; use returns the stored result for the same inputs when there is one.","type":"string","enum":["refresh","use"]}},{"name":"runs","in":"query","required":false,"schema":{"description":"cached: report runs (with from/to/environment/timezone) to look up stored results for; never runs a query on events.","maxItems":72,"type":"array","items":{"type":"object","properties":{"reportId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"segmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","enum":["session","install"]},"field":{"type":"string","enum":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"],"additionalProperties":false},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"],"additionalProperties":false}]}},"breakdown":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","enum":["session","install"]},"field":{"type":"string","enum":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"],"additionalProperties":false},{"type":"null"}]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"}},"required":["reportId"],"additionalProperties":false}}},{"name":"field","in":"query","required":false,"schema":{"description":"values: the field to suggest values for (top 20, last 30 days).","type":"string","enum":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g\\d+\\.r\\d+$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"analytics"},"view":{"type":"string","examples":["overview","events","catalog","report","cached","values","query","conversions"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"}},"required":["type","view","boardId","sheetId","revision","documentRevision"],"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/analytics/operations":{"post":{"operationId":"applyAnalyticsOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_analytics_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Required for settings/report edits; source/data edits take none.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"dryRun":{"type":"boolean"},"operations":{"minItems":1,"maxItems":50,"type":"array","items":{"anyOf":[{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":2000,"description":"What this tab tracks, one or two lines."},"environment":{"type":"string","enum":["all","production","playtest","development"],"description":"Which sources reports use by default (each source has one environment)."},"timezone":{"type":"string","maxLength":64,"description":"Day boundaries for date ranges. Events are stored in UTC."},"instructions":{"type":"string","maxLength":20000,"description":"How the product is instrumented: its events, properties and conventions. Agents read this first."}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched setting."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_report"},"report":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"template":{"type":"string","enum":["progression","time_to_success","outcomes","retention","sql","revenue_curve"]}},"required":["id","template"],"additionalProperties":{},"description":"{id,name,description,template,...}: progression {steps:[{label,event,where}],windowDays}; time_to_success {start:{event,where},success,windowDays}; outcomes {start,finish,correlate,outcome,groupBy}; retention {start,activity} (local-day install D1/D7); sql {sql,eventMode?: enriched|raw,chart: table|bars|columns|line|number,chartUnit?: \"\"|\"%\"} (see read_analytics view=query); revenue_curve {} (LTV by days since install; breakdown {scope:install,field:source|campaign_name|…}). where: {property: value}. All reports: contextFilters [{scope: session|install,field,value,not?} | {scope: property,key,value,event?,not?}], breakdown {scope,field}, includeTestInstalls; countingUnit actor|session|install for non-SQL/non-retention templates."},"expectedRevision":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","report","expectedRevision"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_report"},"reportId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reportId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_report"},"reportId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"beforeReportId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reportId","beforeReportId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_segment"},"segment":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":40},"filters":{"minItems":1,"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","enum":["session","install"]},"field":{"type":"string","enum":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"],"additionalProperties":false},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"],"additionalProperties":false}]},"description":"All must hold (AND)."}},"required":["id","name","filters"],"additionalProperties":false},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","segment"],"additionalProperties":false,"description":"Create or replace a saved segment."},{"type":"object","properties":{"type":{"type":"string","const":"remove_segment"},"segmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","segmentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_dashboard"},"dashboard":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":40},"reportIds":{"maxItems":24,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"description":"Report IDs in display order."}},"required":["id","name","reportIds"],"additionalProperties":false},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","dashboard"],"additionalProperties":false,"description":"Create, rename or replace a dashboard (its name and report IDs). New ones go last; the first is the default."},{"type":"object","properties":{"type":{"type":"string","const":"remove_dashboard"},"dashboardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","dashboardId"],"additionalProperties":false,"description":"Remove a dashboard; its reports stay."},{"type":"object","properties":{"type":{"type":"string","const":"move_dashboard"},"dashboardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"beforeDashboardId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"null: move to the end."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","dashboardId","beforeDashboardId"],"additionalProperties":false,"description":"Reorder dashboards; moving one first makes it the default."}]},{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_source"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":60},"status":{"type":"string","enum":["active","paused","revoked"]}},"additionalProperties":false},"expected":{"type":"object","properties":{"name":{"type":"string","maxLength":60},"status":{"type":"string","enum":["active","paused","revoked"]}},"additionalProperties":false}},"required":["type","sourceId","patch","expected"],"additionalProperties":false,"description":"Rename, pause, resume or revoke (final)."},{"type":"object","properties":{"type":{"type":"string","const":"erase_actor"},"actorId":{"type":"string","pattern":"^[A-Za-z0-9_.:@-]{1,128}$"}},"required":["type","actorId"],"additionalProperties":false,"description":"Delete one actor's events; refuse theirs for 8 days."},{"type":"object","properties":{"type":{"type":"string","const":"clear_events"},"before":{"description":"Only events received before this time; default: now (everything).","type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}(:\\d{2}(\\.\\d+)?)?(Z|[+-]\\d{2}:\\d{2})$"},"environment":{"description":"Only this environment's events; default: all.","type":"string","enum":["production","playtest","development"]}},"required":["type"],"additionalProperties":false,"description":"Delete the tab's events (not undoable). Events from before the cut that devices resend later are dropped for 8 days."},{"type":"object","properties":{"type":{"type":"string","const":"put_conversion_target"},"target":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values.","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}},"platform":{"type":"string","enum":["google","microsoft"]},"destination":{"type":"string","minLength":1,"maxLength":100,"description":"Google: conversion action ID (Import from clicks). Microsoft: offline conversion goal name."},"valueProperty":{"description":"Event property holding the conversion value.","type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$"},"value":{"description":"A fixed value, when the event carries none.","type":"number","minimum":0,"maximum":1000000000},"currencyProperty":{"description":"Event property holding the ISO currency.","type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$"},"currency":{"description":"Fixed currency (default when the property is missing).","type":"string","pattern":"^[A-Z]{3}$"},"enabled":{"default":true,"type":"boolean"}},"required":["id","event","platform","destination"],"additionalProperties":false},"expectedVersion":{"anyOf":[{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["type","target","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_conversion_target"},"targetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["type","targetId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"retry_conversions"},"targetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"validate_google_conversion"},"targetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"event":{"type":"object","properties":{"name":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"eventId":{"type":"string","pattern":"^qa_[A-Za-z0-9_-]{1,60}$"},"occurredAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"properties":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["name","eventId","occurredAt"],"additionalProperties":false},"click":{"type":"object","properties":{"type":{"type":"string","enum":["gclid","gbraid","wbraid"]},"id":{"type":"string","minLength":1,"maxLength":300}},"required":["type","id"],"additionalProperties":false}},"required":["type","targetId","event","click"],"additionalProperties":false,"description":"Validate one synthetic qa_ event through Google Data Manager. Always validateOnly=true; never stores events, queues uploads or records a conversion."}]}]}},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]},{"type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"committed":{"type":"boolean"},"results":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}},"required":["requestId","sheetId","committed","results"]}]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/hosted-pages":{"get":{"operationId":"readHostedPages","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_hosted_pages","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"hosted_pages"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"pages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"assetId":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]},"publication":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string","format":"uri"},"publishedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","publishedAt"]},{"type":"null"}]},"pendingPublication":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string","format":"uri"},"publishedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","publishedAt"]},"hosting":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","examples":["publishing","ready","failed"]},"filesDone":{"type":"integer","minimum":0,"maximum":9007199254740991},"filesTotal":{"type":"integer","minimum":0,"maximum":9007199254740991},"bytesDone":{"type":"number","minimum":0},"bytesTotal":{"type":"number","minimum":0},"error":{"type":"string","maxLength":500}},"required":["id","status","filesDone","filesTotal","bytesDone","bytesTotal"]},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","title","assetId","publication","updatedAt","updatedBy"]}}},"required":["type","boardId","sheetId","revision","documentRevision","pages"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/hosted-pages/operations":{"post":{"operationId":"applyHostedPagesOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_hosted_pages_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"operations":{"minItems":1,"maxItems":50,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"add_page"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"agentName":{"type":"string","minLength":1,"maxLength":80}},"required":["type","pageId","title"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_page"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"agentName":{"type":"string","minLength":1,"maxLength":80}},"required":["type","pageId","title"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"publish_page"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"agentName":{"type":"string","minLength":1,"maxLength":80}},"required":["type","pageId","assetId"],"additionalProperties":false,"description":"Publish uploaded static ZIP (root index.html) alone. 1 GiB ZIP, 4 GiB expanded, 512 files. Async: read hosting.status until ready/failed. Prior build stays live. No expiry; sandbox disables storage, workers and external services."},{"type":"object","properties":{"type":{"type":"string","const":"unpublish_page"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"agentName":{"type":"string","minLength":1,"maxLength":80}},"required":["type","pageId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_page"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"agentName":{"type":"string","minLength":1,"maxLength":80}},"required":["type","pageId"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","expectedRevision","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/store-assets":{"get":{"operationId":"readStoreAssets","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_store_assets","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","type":"string","enum":["overview","destination","history","templates","product_sources"]}},{"name":"destinationId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"historyId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"slotIds","in":"query","required":false,"schema":{"description":"Focus destination detail on selected slot IDs; partial=true labels the filtered response.","minItems":1,"maxItems":600,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"maxResponseBytes","in":"query","required":false,"schema":{"description":"Detail byte budget: 262144 by default, explicitly opt into up to 4194304. Overview and history summary pages stay within 16384 bytes.","type":"integer","minimum":16384,"maximum":4194304}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"store_assets"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"view":{"type":"string"},"productSources":{"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetName":{"type":"string"},"tableName":{"type":"string"},"columns":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"}},"required":["id","name"]}}},"required":["sheetId","tableId","sheetName","tableName","columns"]}},"productIssues":{"type":"array","items":{"type":"object","properties":{"slotId":{"type":"string"},"kind":{"type":"string","const":"invalid"},"message":{"type":"string"}},"required":["slotId","kind","message"]}},"destinations":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"destination":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"template":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"checkedAt":{"type":"string","maxLength":30},"notes":{"type":"string","maxLength":3000},"localization":{"type":"object","properties":{"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"aliases":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"string","maxLength":30}},"verified":{"type":"boolean"},"sourceUrl":{"type":"string","format":"uri"}},"required":["supported","aliases","verified","sourceUrl"]},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled","allowFallback","containsText"]},"section":{"type":"string","examples":["copy","images","video","files"]},"kind":{"type":"string","examples":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}},"verified":{"type":"boolean"}},"required":["id","label","section","kind","required","help","scope","rules"]}}},"required":["id","name","version","sourceUrl","checkedAt","notes","slots"]},{"type":"null"}]},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled","allowFallback","containsText"]},"section":{"type":"string","examples":["copy","images","video","files"]},"kind":{"type":"string","examples":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}},"verified":{"type":"boolean"}},"required":["id","label","section","kind","required","help","scope","rules"]}},"productSource":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productIdColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"Store SKU column; null uses the Type Data record ID. IDs are joined exactly; empty SKUs are skipped."}},"required":["sheetId","tableId","productIdColumnId"]},"products":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productId":{"type":"string","minLength":1,"maxLength":150,"pattern":"^[A-Za-z0-9][A-Za-z0-9_.-]*$"},"type":{"type":"string","examples":["one-time","consumable","non-consumable","subscription"]},"status":{"type":"string","examples":["draft","active"]},"storeSource":{"type":"object","properties":{"resource":{"type":"string","examples":["inappproducts","onetimeproducts"]},"packageName":{"type":"string","minLength":1,"maxLength":255},"purchaseOptionId":{"type":"string","maxLength":63},"baseRegion":{"type":"string","pattern":"^[A-Z]{2}$"}},"required":["resource","packageName"]},"basePrice":{"anyOf":[{"type":"object","properties":{"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceMicros":{"type":"string","pattern":"^[1-9][0-9]{0,17}$"}},"required":["currency","priceMicros"]},{"type":"null"}]},"prices":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Z]{2}$"},"additionalProperties":{"type":"object","properties":{"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceMicros":{"type":"string","pattern":"^[1-9][0-9]{0,17}$"}},"required":["currency","priceMicros"]}}},"required":["id","productId"]}},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]}},"localization":{"type":"object","properties":{"storeSheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"languages":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}}},"required":["sheetId","base","languages"]},"localizationArchive":{"type":"object","properties":{"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"languages":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"fields":{"maxItems":20000,"type":"array","items":{"type":"object","properties":{"slotId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"lang":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"live":{"anyOf":[{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]},{"type":"null"}]},"draft":{"anyOf":[{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]},{"type":"null"}]}},"required":["slotId","lang","live","draft"]}}},"required":["base","languages","fields"]},"generations":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"pending":{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"outputs":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}},"required":["pending","outputs"]}},"history":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"field":{"type":"string","maxLength":100},"before":{},"after":{},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","field","before","after","at","by"]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","name","template","slots","values","generations","history","createdAt","updatedAt"]},"history":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"templates":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"checkedAt":{"type":"string","maxLength":30},"notes":{"type":"string","maxLength":3000},"localization":{"type":"object","properties":{"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"aliases":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"string","maxLength":30}},"verified":{"type":"boolean"},"sourceUrl":{"type":"string","format":"uri"}},"required":["supported","aliases","verified","sourceUrl"]},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled","allowFallback","containsText"]},"section":{"type":"string","examples":["copy","images","video","files"]},"kind":{"type":"string","examples":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}},"verified":{"type":"boolean"}},"required":["id","label","section","kind","required","help","scope","rules"]}}},"required":["id","name","version","sourceUrl","checkedAt","notes","slots"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"retention":{"type":"string"}},"required":["type","boardId","sheetId","revision","documentRevision","view","retention"],"additionalProperties":{}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/store-assets/operations":{"post":{"operationId":"applyStoreAssetsOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_store_assets_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"add_destination"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"template":{"default":null,"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"checkedAt":{"type":"string","maxLength":30},"notes":{"type":"string","maxLength":3000},"localization":{"type":"object","properties":{"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"aliases":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"string","maxLength":30}},"verified":{"type":"boolean"},"sourceUrl":{"type":"string","format":"uri"}},"required":["supported","verified","sourceUrl"],"additionalProperties":false},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled"],"additionalProperties":false},"section":{"type":"string","enum":["copy","images","video","files"]},"kind":{"type":"string","enum":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","enum":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}},"additionalProperties":false}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","enum":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}},"additionalProperties":false},"verified":{"type":"boolean"}},"required":["id","label","section","kind"],"additionalProperties":false}}},"required":["id","name","version","sourceUrl","checkedAt","notes","slots"],"additionalProperties":false},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_product_source"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"value":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productIdColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"Store SKU column; null uses the Type Data record ID. IDs are joined exactly; empty SKUs are skipped."}},"required":["sheetId","tableId","productIdColumnId"],"additionalProperties":false},"expected":{"anyOf":[{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productIdColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"Store SKU column; null uses the Type Data record ID. IDs are joined exactly; empty SKUs are skipped."}},"required":["sheetId","tableId","productIdColumnId"],"additionalProperties":false},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","value","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"save_product"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"product":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productId":{"type":"string","minLength":1,"maxLength":150,"pattern":"^[A-Za-z0-9][A-Za-z0-9_.-]*$"},"storeSource":{"type":"object","properties":{"resource":{"type":"string","enum":["inappproducts","onetimeproducts"]},"packageName":{"type":"string","minLength":1,"maxLength":255},"purchaseOptionId":{"type":"string","maxLength":63},"baseRegion":{"type":"string","pattern":"^[A-Z]{2}$"}},"required":["resource","packageName"],"additionalProperties":false}},"required":["id","productId"],"additionalProperties":false},"expected":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productId":{"type":"string","minLength":1,"maxLength":150,"pattern":"^[A-Za-z0-9][A-Za-z0-9_.-]*$"},"type":{"type":"string","enum":["one-time","consumable","non-consumable","subscription"]},"status":{"type":"string","enum":["draft","active"]},"storeSource":{"type":"object","properties":{"resource":{"type":"string","enum":["inappproducts","onetimeproducts"]},"packageName":{"type":"string","minLength":1,"maxLength":255},"purchaseOptionId":{"type":"string","maxLength":63},"baseRegion":{"type":"string","pattern":"^[A-Z]{2}$"}},"required":["resource","packageName"],"additionalProperties":false},"basePrice":{"anyOf":[{"type":"object","properties":{"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceMicros":{"type":"string","pattern":"^[1-9][0-9]{0,17}$"}},"required":["currency","priceMicros"],"additionalProperties":false},{"type":"null"}]},"prices":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Z]{2}$"},"additionalProperties":{"type":"object","properties":{"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceMicros":{"type":"string","pattern":"^[1-9][0-9]{0,17}$"}},"required":["currency","priceMicros"],"additionalProperties":false}}},"required":["id","productId"],"additionalProperties":false},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","product","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"import_product"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"value":{"type":"object","properties":{"product":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productId":{"type":"string","minLength":1,"maxLength":150,"pattern":"^[A-Za-z0-9][A-Za-z0-9_.-]*$"},"storeSource":{"type":"object","properties":{"resource":{"type":"string","enum":["inappproducts","onetimeproducts"]},"packageName":{"type":"string","minLength":1,"maxLength":255},"purchaseOptionId":{"type":"string","maxLength":63},"baseRegion":{"type":"string","pattern":"^[A-Z]{2}$"}},"required":["resource","packageName"],"additionalProperties":false}},"required":["id","productId"],"additionalProperties":false},"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"listings":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"title":{"type":"string","maxLength":100000},"description":{"type":"string","maxLength":100000}},"required":["title","description"],"additionalProperties":false}}},"required":["product","base","listings"],"additionalProperties":false},"expectedUpdatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","value","expectedUpdatedAt"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_localization"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"value":{"type":"object","properties":{"storeSheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"languages":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}}},"required":["sheetId","base","languages"],"additionalProperties":false},"expected":{"anyOf":[{"type":"object","properties":{"storeSheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"languages":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}}},"required":["sheetId","base","languages"],"additionalProperties":false},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","value","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_destination"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"expectedName":{"type":"string","minLength":1,"maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","name","expectedName"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_destination"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedUpdatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","expectedUpdatedAt"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"save_value"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"slotId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"value":{"anyOf":[{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"],"additionalProperties":false},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}},"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}}]},{"type":"null"}]},"expected":{"anyOf":[{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"],"additionalProperties":false},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}},"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}}]},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","slotId","value","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_generation"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"slotId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"value":{"anyOf":[{"type":"object","properties":{"pending":{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","enum":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"],"additionalProperties":false},"outputs":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"],"additionalProperties":false},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}},"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}}},"required":["pending"],"additionalProperties":false},{"type":"null"}]},"expected":{"anyOf":[{"type":"object","properties":{"pending":{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","enum":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"],"additionalProperties":false},"outputs":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"],"additionalProperties":false},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}},"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}}},"required":["pending"],"additionalProperties":false},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","slotId","value","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_slots"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled"],"additionalProperties":false},"section":{"type":"string","enum":["copy","images","video","files"]},"kind":{"type":"string","enum":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","enum":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}},"additionalProperties":false}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","enum":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}},"additionalProperties":false},"verified":{"type":"boolean"}},"required":["id","label","section","kind"],"additionalProperties":false}},"expected":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled"],"additionalProperties":false},"section":{"type":"string","enum":["copy","images","video","files"]},"kind":{"type":"string","enum":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","enum":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}},"additionalProperties":false}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","enum":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}},"additionalProperties":false},"verified":{"type":"boolean"}},"required":["id","label","section","kind"],"additionalProperties":false}},"template":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"checkedAt":{"type":"string","maxLength":30},"notes":{"type":"string","maxLength":3000},"localization":{"type":"object","properties":{"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"aliases":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"string","maxLength":30}},"verified":{"type":"boolean"},"sourceUrl":{"type":"string","format":"uri"}},"required":["supported","verified","sourceUrl"],"additionalProperties":false},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled"],"additionalProperties":false},"section":{"type":"string","enum":["copy","images","video","files"]},"kind":{"type":"string","enum":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","enum":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}},"additionalProperties":false}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","enum":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"],"additionalProperties":false}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}},"additionalProperties":false},"verified":{"type":"boolean"}},"required":["id","label","section","kind"],"additionalProperties":false}}},"required":["id","name","version","sourceUrl","checkedAt","notes","slots"],"additionalProperties":false},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","slots","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"restore_field"},"destinationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"historyId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","destinationId","historyId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_destinations"},"ids":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"expected":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","ids","expected"],"additionalProperties":false}],"description":"Save values with their current expected value (null when empty). History retains the most recent 1,000 saved changes per destination; restoration creates a new event. Media is uploaded once; source pins assetId/versionId/partId."}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/journal":{"get":{"operationId":"readJournal","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_journal","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","description":"overview: settings (with instructions) and entries in brief, pinned first then in the tab's order, paged. entry: one entry whole plus report size. document: paged report Markdown with image links.","type":"string","enum":["overview","entry","document"]}},{"name":"entryId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"entry","in":"query","required":false,"schema":{"description":"Entry ID or exact title; duplicate titles require an ID.","type":"string","minLength":1,"maxLength":500}},{"name":"page","in":"query","required":false,"schema":{"description":"document view: the report page, by id or exact title; defaults to the first page.","type":"string","minLength":1,"maxLength":128}},{"name":"tag","in":"query","required":false,"schema":{"description":"overview: only entries with this tag.","type":"string","maxLength":40}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g\\d+\\.r\\d+$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"journal"},"view":{"type":"string","examples":["overview","entry","document"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"settings":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"entries":{"description":"overview: id, number, title, values, tags, pinned, files (id, filename, mimeType), linkCount, createdAt, createdBy, and body cut to 300 characters.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"entry":{"description":"entry: the entry whole (body, values, files with media, links).","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"pages":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"markdown":{"type":"string"},"size":{"type":"object","properties":{"blocks":{"type":"number"},"bytes":{"type":"number"},"images":{"type":"number"}},"required":["blocks","bytes","images"]},"paging":{"type":"string"},"partial":{"type":"boolean"},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","settings"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/pipeline":{"get":{"operationId":"readPipeline","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_pipeline","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","description":"overview: settings and entries in brief (state, gate counts), newest first, paged. entry: one entry with every gate, its state and attempts.","type":"string","enum":["overview","entry"]}},{"name":"entryId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"status","in":"query","required":false,"schema":{"description":"overview: only entries with this status.","type":"string","enum":["open","live","abandoned"]}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g\\d+\\.r\\d+$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"pipeline"},"view":{"type":"string","examples":["overview","entry"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"settings":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"entries":{"description":"overview: id, number, title, ref, status, state (in_progress|blocked|ready|live|abandoned), gate counts, createdAt, liveAt.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"entry":{"description":"entry: the entry whole, each gate with state (passed|failed|pending) and, for kanban_clear, openCards.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"nextCursor":{"type":["string","null"]},"kanban":{"description":"overview: each Kanban tab (and tag) a kanban_clear gate watches: sheetId, tag, ready, openCards.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}}},"required":["type","view","boardId","sheetId","revision","documentRevision","settings"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/journal/operations":{"post":{"operationId":"applyJournalOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_journal_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Omit only when every operation is add_entry.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","properties":{"actionAccess":{"description":"Who can launch action agents; defaults to owner. Only the owner in the browser can change this.","type":"string","enum":["owner","editors"]},"actions":{"description":"Buttons that dispatch a temporary agent; options with no choices accept text.","maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":80},"instructions":{"type":"string","minLength":1,"maxLength":8000},"options":{"maxItems":10,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":60},"choices":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":100}},"multiple":{"default":false,"type":"boolean"}},"required":["id","label","choices"],"additionalProperties":false}},"routeId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"runtime":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"levelId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","instructions","options"],"additionalProperties":false}},"description":{"type":"string","maxLength":2000,"description":"What this journal is for, one or two lines."},"instructions":{"type":"string","maxLength":20000,"description":"How to add an entry (e.g. how to make and log a build). Markdown. Agents read these before adding one."},"entryName":{"type":"string","minLength":1,"maxLength":40,"description":"What an entry is called here: Entry, Build, Release, Session…"},"fields":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":60},"kind":{"type":"string","enum":["text","number","date","url","select","checkbox"],"description":"text, number, date (YYYY-MM-DD), url (http/https), select (one of options), checkbox."},"options":{"default":[],"description":"The choices of a select field.","maxItems":50,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}}},"required":["id","name","kind"],"additionalProperties":false},"description":"The fields every entry can fill in, in order."},"template":{"type":"string","maxLength":8000,"description":"Notes a new entry starts with. Markdown."},"order":{"type":"string","enum":["newest","oldest"],"description":"newest: the latest entry on top (a log). oldest: in the order they were added (a diary)."}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched setting (same keys as patch); a concurrent change rejects the batch."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false,"description":"Change settings. fields replaces the list: a field removed takes its values off every entry; a kept field keeps its kind."},{"type":"object","properties":{"type":{"type":"string","const":"add_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"document":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"markdown":{"type":"string","maxLength":200000}},"required":["id"],"additionalProperties":false,"description":"Create a hosted document, or attach an existing unowned document on this journal by id (omit markdown)."},"body":{"type":"string","maxLength":20000},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]},{"type":"null"}]},"description":"Field values by field id; null clears one."},"files":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{}},"required":["id","media"],"additionalProperties":false}},"links":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":40}},"pinned":{"type":"boolean"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","title"],"additionalProperties":false,"description":"Add an entry. body defaults to the template. Upload files first; pass their media."},{"type":"object","properties":{"type":{"type":"string","const":"update_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"body":{"type":"string","maxLength":20000},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]},{"type":"null"}]},"description":"Field values by field id; null clears one."},"files":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{}},"required":["id","media"],"additionalProperties":false}},"links":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":40}},"pinned":{"type":"boolean"}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched key; a concurrent change rejects the batch."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","patch","expected"],"additionalProperties":false,"description":"values merges by field; files, links and tags replace the list."},{"type":"object","properties":{"type":{"type":"string","const":"add_files"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"files":{"minItems":1,"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{}},"required":["id","media"],"additionalProperties":false}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","files"],"additionalProperties":false,"description":"Attach more files to an entry, keeping those it has."},{"type":"object","properties":{"type":{"type":"string","const":"attach_document"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"document":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"markdown":{"type":"string","maxLength":200000}},"required":["id"],"additionalProperties":false,"description":"Create a hosted document, or attach an existing unowned document on this journal by id (omit markdown)."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","document"],"additionalProperties":false,"description":"Give an entry without a document a new or existing hosted document."},{"type":"object","properties":{"type":{"type":"string","const":"set_document_attached"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"attached":{"type":"boolean"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","documentId","attached"],"additionalProperties":false,"description":"Hide or restore the entry document without deleting its content. documentId guards against concurrent replacement."},{"type":"object","properties":{"type":{"type":"string","const":"delete_document"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","documentId"],"additionalProperties":false,"description":"Delete the owned entry document, including a detached document. documentId guards against concurrent replacement."},{"type":"object","properties":{"type":{"type":"string","const":"add_report_page"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"page":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120}},"required":["id","title"],"additionalProperties":false},"afterPageId":{"description":"null: first; omit: last.","anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"markdown":{"type":"string","maxLength":200000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","page"],"additionalProperties":false,"description":"Add a page to an entry's report (the entry needs a document). Caller assigns page.id; each page has its own size limits, so a report too big for one page splits across pages."},{"type":"object","properties":{"type":{"type":"string","const":"rename_report_page"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedTitle":{"type":"string","minLength":1,"maxLength":120},"title":{"type":"string","minLength":1,"maxLength":120},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","pageId","expectedTitle","title"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_report_page"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"afterPageId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","pageId","afterPageId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_report_page"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"pageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedTitle":{"type":"string","minLength":1,"maxLength":120},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","pageId","expectedTitle"],"additionalProperties":false,"description":"Remove a report page and its content. The page whose id is the documentId cannot be removed."},{"type":"object","properties":{"type":{"type":"string","const":"start_action"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"actionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"options":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"maxItems":30,"type":"array","items":{"type":"string","maxLength":100}}]}},"routeId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"runtime":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","actionId","options"],"additionalProperties":false,"description":"Create a queued action run and its result entry. Dispatch separately through Desktop."},{"type":"object","properties":{"type":{"type":"string","const":"action_status"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","enum":["running","done","failed"]},"expectedStatus":{"type":"string","enum":["queued","running","done","failed"]},"detail":{"type":"string","maxLength":2000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","status","expectedStatus"],"additionalProperties":false,"description":"Claim a queued action as running, then mark done or failed after writing results to this entry. Compare expectedStatus."},{"type":"object","properties":{"type":{"type":"string","const":"remove_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/pipeline/operations":{"post":{"operationId":"applyPipelineOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_pipeline_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Optional for add_entry/record_gate only.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":2000},"instructions":{"type":"string","maxLength":20000,"description":"Markdown. Read before working an entry."},"entryName":{"type":"string","minLength":1,"maxLength":40,"description":"Release, Build, Asset…"},"gates":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Kept on each entry's copy."},"name":{"type":"string","minLength":1,"maxLength":80},"kind":{"type":"string","enum":["manual","report","kanban_clear"],"description":"manual: marked by a person or agent. report: an agent or CI reports. kanban_clear: passes while source's cards (with tag, if set) are finished or paused; computed."},"required":{"type":"boolean"},"description":{"type":"string","maxLength":2000},"source":{"anyOf":[{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tag":{"anyOf":[{"type":"string","minLength":1,"maxLength":40},{"type":"null"}]}},"required":["sheetId","tag"],"additionalProperties":false},{"type":"null"}],"description":"kanban_clear only."}},"required":["id","name","kind","required","description","source"],"additionalProperties":false},"description":"Template; new entries copy it."},"journalSheetId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"Journal tab logged to on go live."}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched key; a concurrent change rejects the batch."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"ref":{"type":"string","maxLength":200,"description":"Version or commit."},"notes":{"type":"string","maxLength":20000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","title"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"title":{"type":"string","minLength":1,"maxLength":200},"ref":{"type":"string","maxLength":200,"description":"Version or commit."},"notes":{"type":"string","maxLength":20000}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched key; a concurrent change rejects the batch."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","patch","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_gate"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"gate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Kept on each entry's copy."},"name":{"type":"string","minLength":1,"maxLength":80},"kind":{"type":"string","enum":["manual","report","kanban_clear"],"description":"manual: marked by a person or agent. report: an agent or CI reports. kanban_clear: passes while source's cards (with tag, if set) are finished or paused; computed."},"required":{"type":"boolean"},"description":{"type":"string","maxLength":2000},"source":{"anyOf":[{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tag":{"anyOf":[{"type":"string","minLength":1,"maxLength":40},{"type":"null"}]}},"required":["sheetId","tag"],"additionalProperties":false},{"type":"null"}],"description":"kanban_clear only."}},"required":["id","name","kind","required","description","source"],"additionalProperties":false},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","gate"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_gate"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"gateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","gateId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"record_gate"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"gateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","enum":["passed","failed","pending"]},"note":{"type":"string","maxLength":4000},"url":{"type":"string","maxLength":2000,"format":"uri"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","gateId","status"],"additionalProperties":false,"description":"pending waits again (re-run). History is kept."},{"type":"object","properties":{"type":{"type":"string","const":"go_live"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_status"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","enum":["open","abandoned"]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","status"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/art-bible":{"get":{"operationId":"readArtBible","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_art_bible","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"default":"overview","description":"overview: settings and counts per kind. entries: one kind, in order, paged. entry: one entry whole with the entries it refers to. guide: each kind's fields and the rules for editing. colour_flags: duplicate flags for entryIds against the entire bible. colour_matches: one entryId's matches, paged across all sections and opacity values.","type":"string","enum":["overview","entries","entry","guide","colour_flags","colour_matches"]}},{"name":"kind","in":"query","required":false,"schema":{"description":"entries: required.","type":"string","enum":["reference","rule","mockup","color","palette","font","text_style","metric","component","motion","style","recipe","box","image","widget","section"]}},{"name":"entryIds","in":"query","required":false,"schema":{"description":"colour_flags: loaded colour IDs; checks the full bible.","minItems":1,"maxItems":2001,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"entryId","in":"query","required":false,"schema":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"key","in":"query","required":false,"schema":{"description":"entry: by key instead of ID (with kind).","type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$"}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"toReview","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"art_bible"},"view":{"type":"string","examples":["overview","entries","entry","guide","colour_flags","colour_matches"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"flags":{"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"closest":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string"}},"matches":{"type":"array","items":{"type":"object","properties":{"entry":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"delta":{"type":"number"}},"required":["entry","delta"]}},"hasMore":{"type":"boolean"},"sections":{"type":"array","items":{}},"settings":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"counts":{"description":"overview: entries per kind, and toReview.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"number"}},"entries":{"type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"entry":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"related":{"description":"entry: the entries it refers to.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"guide":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"total":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/art-bible/operations":{"post":{"operationId":"applyArtBibleOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_art_bible_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Optional when every operation is add_entry, record_export or record_check.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_settings"},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":2000},"game":{"type":"string","maxLength":120},"orientation":{"type":"string","enum":["portrait","landscape"]},"targetAspect":{"description":"Short:long aspect, e.g. 9:16; oriented by orientation.","type":"object","properties":{"width":{"type":"number","minimum":1,"maximum":100},"height":{"type":"number","minimum":1,"maximum":100}},"required":["width","height"],"additionalProperties":false},"designWidth":{"type":"integer","minimum":240,"maximum":8192,"description":"The width design px refer to (Bingo: 1080)."},"namespace":{"type":"string","pattern":"^[A-Z][A-Za-z0-9]{0,31}$","description":"Engine theme namespace for game tokens, e.g. Gourmet."},"previewBackground":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"Colour entry behind previews."},"defaultTextStyle":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"text_style entry for the default font and size."},"shadeRamp":{"description":"How every colour's shades are computed. Absent: the default ramp.","type":"object","properties":{"lightest":{"type":"number","minimum":0,"maximum":1},"light":{"type":"number","minimum":0,"maximum":1},"dark":{"type":"number","minimum":-1,"maximum":0},"darkest":{"type":"number","minimum":-1,"maximum":0},"hueShift":{"type":"number","minimum":0,"maximum":60}},"required":["lightest","light","dark","darkest","hueShift"],"additionalProperties":false},"opacities":{"description":"Opacity steps in percent (e.g. 80, 50, 25) every colour use picks from, besides 100 and 0. Absent: 80, 50, 25.","maxItems":8,"type":"array","items":{"type":"integer","minimum":1,"maximum":99}}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched key; a concurrent change rejects the batch."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","patch","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","enum":["reference","rule","mockup","color","palette","font","text_style","metric","component","motion","style","recipe","box","image","widget","section"]},"key":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$"},"name":{"type":"string","minLength":1,"maxLength":120},"data":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The kind's data, whole (read_art_bible view=guide lists each kind's fields)."},"notes":{"type":"string","maxLength":4000},"useFor":{"default":"","description":"Required for tokens and kit items: where agents should use this item. Empty on legacy entries that need completion.","type":"string","maxLength":500},"rank":{"description":"Default: after the kind's last.","type":"number"},"section":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}]},"extends":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","kind","key","name","data"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"key":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$"},"name":{"type":"string","minLength":1,"maxLength":120},"notes":{"type":"string","maxLength":4000},"useFor":{"type":"string","maxLength":500},"data":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The kind's data, whole (read_art_bible view=guide lists each kind's fields)."},"extends":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}]}},"additionalProperties":false},"expected":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{},"description":"The current value of each patched key; a concurrent change rejects the batch."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","patch","expected"],"additionalProperties":false,"description":"data replaces the whole data; read the entry first."},{"type":"object","properties":{"type":{"type":"string","const":"move_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number","description":"Order within its list (and section)."},"section":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId","rank"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_entry"},"entryId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","entryId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"mark_reviewed"},"entryIds":{"description":"Omit for every entry to review.","minItems":1,"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type"],"additionalProperties":false,"description":"Owner only."},{"type":"object","properties":{"type":{"type":"string","const":"record_export"},"version":{"type":"string","pattern":"^[a-f0-9]{12,64}$"},"entries":{"type":"integer","minimum":0,"maximum":9007199254740991},"commit":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}]},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","version","entries"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"record_check"},"passed":{"type":"boolean"},"newIssues":{"type":"integer","minimum":0,"maximum":9007199254740991},"baseline":{"type":"integer","minimum":0,"maximum":9007199254740991,"description":"Known drift still to remove."},"summary":{"type":"string","maxLength":4000,"description":"The first issues, a line each."},"commit":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}]},"version":{"anyOf":[{"type":"string","maxLength":64},{"type":"null"}],"description":"The bible version checked against."},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","passed","newIssues","baseline","summary"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/kanban":{"get":{"operationId":"readKanban","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_kanban","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"view","in":"query","required":false,"schema":{"type":"string","enum":["summary","detail","guards"]}},{"name":"guardPosition","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"guardColumn","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":200}},{"name":"guardFields","in":"query","required":false,"schema":{"maxItems":12,"type":"array","items":{"type":"string","enum":["title","taskSummary","description","labels","dueDate","checklist","links","dependsOn","branch","worktree","archived","assignees"]}}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"agentId","in":"query","required":false,"schema":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},{"name":"discussionCardId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"columnId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"cardIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"columnsOnly","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"knownInstructions","in":"query","required":false,"schema":{"description":"Cached instructionsVersion","type":"string","minLength":1,"maxLength":64}},{"name":"includeArchived","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban"},"view":{"type":"string","const":"guards"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"columns":{"maxItems":2,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"}},"required":["id","name"]}},"cards":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"assignees":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"discussion":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","body","createdAt","author"]}},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"touchedBy":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72},"firstAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"lastAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"outside":{"type":"object","properties":{"kind":{"type":"string","examples":["email"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["kind","at"]}},"required":["userId","name","source","firstAt","lastAt"]}},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"positionVersion":{"type":"string"}},"required":["id"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","columns","cards","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"kanban"},"view":{"type":"string","examples":["summary","detail"]},"availableSections":{"type":"array","items":{"type":"string","examples":["instructions","detail","discussion"]}},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"description":{"type":"string"},"instructions":{"type":"string"},"policiesChangeAt":{"type":"string"},"instructionsVersion":{"type":"string"},"instructionsUnchanged":{"type":"boolean","const":true},"skills":{"description":"Agent Skills for this card: load one (SKILL.md) when a task matches","maxItems":100,"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}},"required":["name","description"]}},"columns":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","examples":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"},"version":{"type":"string"},"cardCount":{"type":"number"},"archivedCount":{"type":"number"}},"required":["id","name","color","version","cardCount","archivedCount"]}},"orderVersion":{"type":"string"},"cards":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"type":"string","maxLength":255},"worktree":{"type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"assignees":{"anyOf":[{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"agentId":{"type":"string"}},"required":["name"]}}]},"createdBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"string"}]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"blockedBy":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"usage":{"description":"Cards read by id: \"time · tokens · est. cost · lines +/−\" of metered agent work.","type":"string"},"discussionCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"version":{"type":"string"},"positionVersion":{"type":"string"}},"required":["id","columnId","rank","archived","title","labels","dueDate","discussionCount","version","positionVersion"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","availableSections","boardId","sheetId","revision","documentRevision","columns","orderVersion","cards","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"kanban_discussion"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"cardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","body","createdAt","author"]}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","boardId","sheetId","revision","documentRevision","cardId","messages","total","partial","nextCursor"]}]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/kanban/operations":{"post":{"operationId":"applyKanbanOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_kanban_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"agentId":{"description":"Required for agent edits unless an operation supplies agentId. Use QRAFT_AGENT_ID; human browser edits omit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Omit only when no operation carries a guard.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"patch_board"},"patches":{"minItems":1,"maxItems":2,"type":"array","items":{"oneOf":[{"type":"object","properties":{"field":{"type":"string","const":"description"},"expected":{"type":"string","maxLength":2000},"value":{"type":"string","maxLength":2000}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"instructions"},"expected":{"type":"string","maxLength":20000},"value":{"type":"string","maxLength":20000}},"required":["field","expected","value"],"additionalProperties":false}]}}},"required":["type","patches"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_column"},"column":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","enum":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"}},"required":["id","name"],"additionalProperties":false}},"required":["type","column"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_column"},"column":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","enum":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"}},"required":["id","name"],"additionalProperties":false},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","column","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_columns"},"ids":{"minItems":1,"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"expectedOrderVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","ids","expectedOrderVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_column"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","columnId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_card"},"ownerReviews":{"description":"Hosting leads only: require owner review for this new card.","type":"boolean"},"card":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text"],"additionalProperties":false}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"],"additionalProperties":false}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["id","columnId","title"],"additionalProperties":false},"beforeCardId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"position":{"description":"top or bottom of the column without reading it; overrides beforeCardId.","type":"string","enum":["top","bottom"]}},"required":["type","card"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_attachment"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"attachment":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"required":["type","cardId","attachment"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_attachment"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"required":["type","cardId","attachmentId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_cover"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"attachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"expectedAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","cardId","attachmentId","expectedAttachmentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"assign_self"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"onlyIfUnassigned":{"description":"Prevent two workers taking the same task: fail if anyone is already assigned. Batch with move_card; start work only after a committed success.","type":"boolean"},"claim":{"description":"Refuse finished or held cards","type":"boolean"}},"required":["type","cardId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"assign_person"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"userId":{"type":"string","minLength":1,"maxLength":200}},"required":["type","cardId","userId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"unassign_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"expected":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","enum":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"additionalProperties":false}},"required":["type","cardId","identityId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_comment"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"commentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","cardId","commentId","body"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patches":{"minItems":1,"maxItems":10,"type":"array","items":{"oneOf":[{"type":"object","properties":{"field":{"type":"string","const":"taskRouteId"},"expected":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"value":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"title"},"expected":{"type":"string","minLength":1,"maxLength":3000},"value":{"type":"string","minLength":1,"maxLength":3000}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"taskSummary"},"expected":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"value":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"description"},"expected":{"type":"string","maxLength":20000},"value":{"type":"string","maxLength":20000}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"labels"},"expected":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"value":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"dueDate"},"expected":{"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"value":{"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"checklist"},"expected":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text"],"additionalProperties":false}},"value":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text"],"additionalProperties":false}}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"links"},"expected":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"],"additionalProperties":false}},"value":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"],"additionalProperties":false}}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"dependsOn"},"expected":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"value":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"branch"},"expected":{"type":"string","maxLength":255},"value":{"type":"string","maxLength":255}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"worktree"},"expected":{"type":"string","maxLength":1000},"value":{"type":"string","maxLength":1000}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"archived"},"expected":{"type":"boolean"},"value":{"type":"boolean"}},"required":["field","value"],"additionalProperties":false}]}}},"required":["type","cardId","patches"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"label_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"add":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"remove":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["type","cardId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"beforeCardId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"position":{"description":"top or bottom of the column without reading it; overrides beforeCardId.","type":"string","enum":["top","bottom"]},"expectedPositionVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","cardId","columnId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","cardId","expectedVersion"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"routingSync":{"type":"object","properties":{"agentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"records":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"delegationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cardIds":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"recipientLeadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reviewBy":{"type":"string","enum":["lead","owner"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["delegationId","boardId","sheetId","cardIds","at"],"additionalProperties":false}},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false}},"required":["agentId","records","desktopProof"],"additionalProperties":false},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/data":{"get":{"operationId":"readData","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_data","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"auditAll","in":"query","required":false,"schema":{"description":"Audit every table, one per request; default audits changed tables plus tableId.","type":"boolean"}},{"name":"view","in":"query","required":false,"schema":{"type":"string","enum":["full","catalog","schema_compact","audit"]}},{"name":"includeVersions","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"columnIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"sheetId","in":"query","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"tableId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"recordIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"schemaOnly","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"issuesEvaluated":{"type":"boolean"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"type":{"type":"string","const":"data"},"view":{"type":"string","examples":["full","catalog","schema_compact","audit"]},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"description":{"type":"string"},"tables":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"description":{"type":"string"},"recordCount":{"type":"number"},"primaryDisplayColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"tags":{"type":"array","items":{"type":"string"}},"link":{"type":"string"},"referencedBy":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableName":{"type":"string"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnName":{"type":"string"},"targetTableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"targetColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"recordCount":{"type":"number"}},"required":["tableId","tableName","columnId","columnName","targetTableId","targetColumnId","recordCount"]}},"version":{"type":"string"},"schemaVersion":{"type":"string"},"metaVersion":{"type":"string"},"columns":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","name","type","required","unique","referenceTableId","referenceColumnId"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","name","description","type","required","unique","immutable","autoNumber","defaultValue","options","referenceTableId","referenceColumnId","width"]}]}}},"required":["id","name","description","recordCount","primaryDisplayColumnId","link","referencedBy","columns"]}},"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","values"]}},"issues":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"message":{"type":"string"}},"required":["tableId","message"]}},"issueCount":{"type":"number"},"auditTableIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"audit":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"message":{"type":"string"},"count":{"type":"number"},"sampleRecordIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["tableId","message","count","sampleRecordIds"]}},"dependencies":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableName":{"type":"string"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnName":{"type":"string"},"targetTableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"targetColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"recordCount":{"type":"number"}},"required":["tableId","tableName","columnId","columnName","targetTableId","targetColumnId","recordCount"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["issuesEvaluated","type","boardId","sheetId","revision","documentRevision","description","tables","records","issues","issueCount","partial","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/data/operations":{"post":{"operationId":"applyDataOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_data_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"patch_metadata"},"edits":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patches":{"minItems":1,"maxItems":5,"type":"array","items":{"oneOf":[{"type":"object","properties":{"field":{"type":"string","const":"name"},"expected":{"type":"string"},"value":{"type":"string","minLength":1,"maxLength":100}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"description"},"expected":{"type":"string"},"value":{"type":"string","maxLength":10000}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"width"},"expected":{"type":"number"},"value":{"type":"integer","minimum":80,"maximum":800}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"unit"},"expected":{"type":["string","null"]},"value":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}]}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"primaryDisplayColumnId"},"expected":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"value":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"tags"},"expected":{"maxItems":20,"type":"array","items":{"type":"string"}},"value":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["field","expected","value"],"additionalProperties":false}]}}},"required":["tableId","patches"],"additionalProperties":false}}},"required":["type","edits"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"migrate_reference"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"referenceColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"New key in the same target table, or null for internal record identity. Requires the exact current sheet revision; values and defaults are converted atomically."}},"required":["type","tableId","columnId","referenceColumnId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_table"},"table":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":20000},"primaryDisplayColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"nextId":{"default":1,"type":"integer","minimum":1,"maximum":9007199254740991},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"columns":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","enum":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","name","type"],"additionalProperties":false}},"records":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","values"],"additionalProperties":false}}},"required":["id","name","columns","records"],"additionalProperties":false}},"required":["type","table"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_table"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedMetaVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Use table.metaVersion from read_data, not table.version."},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"type":"string","maxLength":20000}},"required":["type","tableId","expectedMetaVersion","name","description"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_table"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Use table.version from read_data; referenced tables cannot be deleted until their dependencies are removed."}},"required":["type","tableId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_column"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedSchemaVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"column":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","enum":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","name","type"],"additionalProperties":false}},"required":["type","tableId","expectedSchemaVersion","column"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_column"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Use column.version from read_data; use patch_metadata for description/name/width/unit changes."},"column":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","enum":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","name","type"],"additionalProperties":false}},"required":["type","tableId","expectedVersion","column"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_column"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedTableVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","tableId","columnId","expectedTableVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_columns"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedSchemaVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"ids":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","tableId","expectedSchemaVersion","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_record"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedSchemaVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"record":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","values"],"additionalProperties":false}},"required":["type","tableId","expectedSchemaVersion","record"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_record"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Use record.version from read_data."}},"required":["type","tableId","recordId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_cells"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cells":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedColumnVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"expectedValue":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"value":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"required":["recordId","columnId","expectedColumnVersion","expectedValue","value"],"additionalProperties":false}}},"required":["type","tableId","cells"],"additionalProperties":false}]}},"preconditionMode":{"description":"batch_start checks version hashes against the initial snapshot, allowing dependent schema operations in one atomic batch. Expected cell values still check the state at that operation.","type":"string","enum":["sequential","batch_start"]},"returnVersions":{"type":"string","enum":["changed","none"]},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/document/operations":{"post":{"operationId":"applyDocumentOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_document_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","minLength":8,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"sheetId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"documentId":{"description":"The page of a Document tab to edit (omit for the tab's own page, whose id is the sheet id), or a document hosted by another tab such as a Breakdown source.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"conflictPolicy":{"default":"reject","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"append_blocks"},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","content"],"additionalProperties":false,"description":"Append to the current server-side tail. Append-only batches with merge_non_overlapping may omit expectedRevision."},{"type":"object","properties":{"type":{"type":"string","const":"insert_blocks"},"afterId":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},{"type":"null"}]},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","afterId","content"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"replace_block"},"blockId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Block version from read_board(includeVersions:true), or qraft doc read --versions --block ID. Copy blocks[].version, not revision/documentRevision."},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","blockId","expectedVersion","content"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_blocks"},"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Block version from read_board(includeVersions:true), or qraft doc read --versions --block ID. Copy blocks[].version, not revision/documentRevision."}},"required":["id","expectedVersion"],"additionalProperties":false}}},"required":["type","blocks"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"replace_document"},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","content"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_page"},"page":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["id","title"],"additionalProperties":false},"afterPageId":{"description":"null: first; omit: last.","anyOf":[{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},{"type":"null"}]},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","page"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_page"},"pageId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedTitle":{"type":"string","minLength":1,"maxLength":120},"title":{"type":"string","minLength":1,"maxLength":120}},"required":["type","pageId","expectedTitle","title"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_page"},"pageId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"afterPageId":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},{"type":"null"}]}},"required":["type","pageId","afterPageId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_page"},"pageId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedTitle":{"type":"string","minLength":1,"maxLength":120}},"required":["type","pageId","expectedTitle"],"additionalProperties":false,"description":"Delete its document (undoable); else close_page."},{"type":"object","properties":{"type":{"type":"string","const":"open_page"},"documentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"afterPageId":{"description":"null: first; omit: last.","anyOf":[{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},{"type":"null"}]}},"required":["type","documentId"],"additionalProperties":false,"description":"Open a list_documents document as a page."},{"type":"object","properties":{"type":{"type":"string","const":"close_page"},"pageId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["type","pageId"],"additionalProperties":false,"description":"Close a page; its document is kept."}]}},"dryRun":{"type":"boolean"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["requestId","sheetId","operations"],"additionalProperties":false,"$defs":{"__schema0":{"type":"object","properties":{"type":{"type":"string","enum":["doc","paragraph","heading","text","bulletList","orderedList","listItem","taskList","taskItem","blockquote","codeBlock","hardBreak","horizontalRule","image","table","tableRow","tableCell","tableHeader"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}},"text":{"type":"string"},"marks":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["bold","italic","strike","underline","code","link","textStyle","highlight"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema2"}}},"required":["type"],"additionalProperties":false}},"content":{"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["type"],"additionalProperties":false},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema2"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema2"}}]}}}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"},"pages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"home":{"description":"Tab holding it, if not this one.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]}},"required":["id","title"]}}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/sheets":{"get":{"operationId":"listSheets","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_sheets","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"peopleAfter","in":"query","required":false,"schema":{"description":"Continue includePeople from peopleNextCursor.","type":"string","minLength":1,"maxLength":256}},{"name":"includeTrash","in":"query","required":false,"schema":{"description":"Include deleted sheet metadata and restore tokens; additionally requires boards:history.","type":"boolean"}},{"name":"includePeople","in":"query","required":false,"schema":{"description":"Include the first 50 board members {userId,name,role}; use list_project_members to page the directory. Includes and reviewer agents {agentId,name,kind} for Review Stream reviewer selection.","type":"boolean"}},{"name":"includeArchived","in":"query","required":false,"schema":{"description":"Also list tabs in archive Folders.","type":"boolean"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"peopleNextCursor":{"type":["string","null"]},"archivedHidden":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"trash":{"type":"array","items":{"type":"object","properties":{"reason":{"type":"string"},"deletedBy":{"type":"string"},"parentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"trashId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"deletedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"index":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","trashId","name","type","deletedAt","expiresAt","index"]}},"trashRetentionDays":{"type":"number","const":30},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"timelineRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"behavior":{"type":"string","examples":["standard","archive"]},"archived":{"type":"boolean","const":true}},"required":["id","name","revision"]}},"people":{"type":"array","items":{"type":"object","properties":{"userId":{"type":"string"},"name":{"type":"string"},"role":{"type":"string","examples":["owner","editor","viewer"]}},"required":["userId","name","role"]}},"agents":{"type":"array","items":{"type":"object","properties":{"agentId":{"type":"string"},"name":{"type":"string"},"kind":{"type":"string","examples":["lead","project"]}},"required":["agentId","name","kind"]}}},"required":["boardId","documentRevision","timelineRevision","sheets"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}},"post":{"operationId":"manageSheets","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"manage_sheets","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"expectedRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"operation":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"move_document_to_journal"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"journalSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedJournalRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"entryId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","expectedSheetRevision","journalSheetId","expectedJournalRevision","entryId"],"additionalProperties":false,"description":"Atomically move all pages of a Document tab into an existing Journal entry without a document, then trash the tab."},{"type":"object","properties":{"type":{"type":"string","const":"move_journal_entries"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"journalSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedJournalRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"entries":{"anyOf":[{"minItems":1,"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":500}},{"type":"string","const":"all"}],"description":"Ids, exact titles, or \"all\""},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"dryRun":{"type":"boolean"}},"required":["type","sheetId","expectedSheetRevision","journalSheetId","expectedJournalRevision","entries"],"additionalProperties":false,"description":"Move entries whole (reports, files, values, authors, times) from journal sheetId to journalSheetId, verified before the source lets go."},{"type":"object","properties":{"type":{"type":"string","const":"convert_to_data"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"references":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"tableName":{"type":"string"},"columnName":{"type":"string"},"targetTableName":{"type":"string"},"targetColumnName":{"type":"string"}},"required":["tableName","columnName","targetTableName","targetColumnName"],"additionalProperties":false}}},"required":["type","sheetId","expectedSheetRevision","references"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_page_settings"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pageSettings":{"type":"object","properties":{"size":{"type":"string","enum":["a4","letter","legal","custom"]},"orientation":{"type":"string","enum":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"],"additionalProperties":false}},"required":["size","orientation","width","height","margins"],"additionalProperties":false},"expectedPageSettings":{"type":"object","properties":{"size":{"type":"string","enum":["a4","letter","legal","custom"]},"orientation":{"type":"string","enum":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"],"additionalProperties":false}},"required":["size","orientation","width","height","margins"],"additionalProperties":false}},"required":["type","sheetId","pageSettings","expectedPageSettings"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_git_repo"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"gitRepo":{"type":"object","properties":{"provider":{"default":"github","type":"string","enum":["github"]},"owner":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"repo":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"branch":{"default":"","type":"string","maxLength":200,"pattern":"^[^\\s~^:?*[\\\\]*$"},"path":{"default":"","type":"string","maxLength":500,"pattern":"^(?!\\/)(?!.*\\.\\.)[^\\s]*$"},"notes":{"default":"","type":"string","maxLength":4000}},"additionalProperties":false},"expectedGitRepo":{"type":"object","properties":{"provider":{"default":"github","type":"string","enum":["github"]},"owner":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"repo":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"branch":{"default":"","type":"string","maxLength":200,"pattern":"^[^\\s~^:?*[\\\\]*$"},"path":{"default":"","type":"string","maxLength":500,"pattern":"^(?!\\/)(?!.*\\.\\.)[^\\s]*$"},"notes":{"default":"","type":"string","maxLength":4000}},"additionalProperties":false}},"required":["type","sheetId","gitRepo","expectedGitRepo"],"additionalProperties":false,"description":"Point a Git repo tab at a GitHub repository. expectedGitRepo comes from read_board on that tab; a concurrent change rejects the command."},{"type":"object","properties":{"type":{"type":"string","const":"restore_sheet"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"trashId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","sheetId","trashId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_sheet"},"sheetType":{"type":"string","enum":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"name":{"type":"string","minLength":1,"maxLength":48},"parentId":{"description":"Create the tab inside this Folder or Breakdown tab.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"encrypted":{"description":"Files only, owner only: an Encrypted drive. Fixed at creation.","type":"boolean","const":true}},"required":["type","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_sheet_parent"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","sheetId","parentId"],"additionalProperties":false,"description":"Move a tab (and whatever is inside it) into a Folder, or a plain tab into a Breakdown (it becomes one of its sources); parentId null moves it back to the tab bar. Folders nest. Content, id and links are unchanged."},{"type":"object","properties":{"type":{"type":"string","const":"set_folder_behavior"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"behavior":{"type":"string","enum":["standard","archive"]}},"required":["type","sheetId","behavior"],"additionalProperties":false,"description":"archive: the Folder's tabs leave lists, pickers and tags until moved out."},{"type":"object","properties":{"type":{"type":"string","const":"rename_sheet"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","sheetId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"duplicate_sheet"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["type","sheetId","name","expectedSheetRevision"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_sheet"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["type","sheetId","expectedSheetRevision"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_sheets"},"ids":{"minItems":1,"maxItems":65536,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["type","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_document"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","name"],"additionalProperties":false}]},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false}},"required":["requestId","expectedRevision","operation"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"},"move":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/prefabs":{"get":{"operationId":"readPrefabs","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_prefabs","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"prefabId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":200}},{"name":"limit","in":"query","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":50}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","examples":["account","document"]},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"members":{"minItems":1,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"dx":{"type":"number","minimum":-1000000,"maximum":1000000},"dy":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","examples":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","examples":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"]}},"required":["id","dx","dy","width","height","text","shape","style"]}},"edges":{"type":"array","items":{"type":"object","properties":{"from":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"]},"to":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"]},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","examples":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"]}},"required":["from","to"]}}},"required":["id","scope","width","height","members","edges"]}},"nextCursor":{"type":["string","null"]}},"required":["items","nextCursor"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/tags":{"get":{"operationId":"readTags","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_tags","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"tag","in":"query","required":false,"schema":{"description":"List the items carrying this tag (case-insensitive) instead of every tag: only the tabs that use it are read.","type":"string","minLength":1,"maxLength":200}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"tags":{"type":"array","items":{"type":"object","properties":{"tag":{"type":"string"},"count":{"type":"integer","minimum":0,"maximum":9007199254740991},"sheets":{"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string"},"count":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["sheetId","count"]}}},"required":["tag","count","sheets"]}},"items":{"description":"With tag: the tagged items in tab order, assets (sheetId $library) last, at most 500.","type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string"},"kind":{"type":"string","examples":["card","subject","moment","node","review","screen","section","asset","table","column","record"]},"id":{"type":"string"},"title":{"type":"string"}},"required":["sheetId","kind","id","title"]}},"partial":{"type":"boolean"}},"required":["tags"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/notifications":{"post":{"operationId":"sendNotification","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"send_notification","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"scope":{"description":"project: visible only in this project; global: visible across projects. Defaults to global for existing clients.","type":"string","enum":["global","project"]},"title":{"type":"string","minLength":1,"maxLength":160,"description":"One line, what happened."},"body":{"description":"Detail shown under the title, plain text.","type":"string","maxLength":2000},"sheetId":{"description":"The tab the notification opens.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cardId":{"description":"A Kanban card on that tab to open.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"reviewId":{"description":"A review on that tab to open.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"agentId":{"description":"Your agent persona (QRAFT_AGENT_ID) so the notification shows your name and avatar.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["title"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"notified":{"type":"integer","minimum":0,"maximum":9007199254740991},"notificationIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["notified","notificationIds"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/preview":{"get":{"operationId":"renderBoard","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"render_board","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"saveAsMedia","in":"query","required":false,"schema":{"description":"Also store the PNG in this board and return its media ID (media.id), ready to attach to a review or card without a local file. Needs write access.","type":"boolean"}},{"name":"researchSubjectIds","in":"query","required":false,"schema":{"minItems":1,"maxItems":12,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"researchParameterIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"assetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"assetVersionId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"compareAssetVersionId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"assetPartIds","in":"query","required":false,"schema":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"modelView","in":"query","required":false,"schema":{"description":"Render actual 3D at this camera/animation pose instead of the saved poster. Requires assetId and exactly one assetPartIds entry; optional version comparison renders two models.","type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"],"additionalProperties":false},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}},"additionalProperties":false}},{"name":"perScreen","in":"query","required":false,"schema":{"description":"With screenIds (up to 12): one PNG per screen (images[], in order) from one render, not a contact sheet.","type":"boolean"}},{"name":"showAnnotations","in":"query","required":false,"schema":{"description":"Include design callouts and their anchors in PNG bounds. Defaults to false for clean product UI. Contact sheets reserve space for callouts. Read annotation text separately with read_wireframe(view=annotations, screenId).","type":"boolean"}},{"name":"prototypeVariables","in":"query","required":false,"schema":{"description":"Render stateBinding values with these overrides merged over initialState; never saves state. Pass variables returned by read_wireframe(view=prototype) to verify a particular outcome.","type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}}},{"name":"screenId","in":"query","required":false,"schema":{"description":"Render one Wireframe screen by stable ID; no coordinate calculation needed.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},{"name":"screenIds","in":"query","required":false,"schema":{"description":"Optional ordered selection for a contact sheet; IDs must be unique.","minItems":1,"maxItems":40,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},{"name":"showInteractions","in":"query","required":false,"schema":{"description":"Show navigation arrows without modifying links. Defaults to true on the canvas, false for contact sheets.","type":"boolean"}},{"name":"layout","in":"query","required":false,"schema":{"type":"string","enum":["canvas","contact_sheet"]}},{"name":"padding","in":"query","required":false,"schema":{"type":"integer","minimum":0,"maximum":200}},{"name":"columns","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":8}},{"name":"sheetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"tableId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"reportId","in":"query","required":false,"schema":{"description":"Analytics: capture this saved report. Omit to capture every report on the tab.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"from","in":"query","required":false,"schema":{"description":"Analytics: range start, YYYY-MM-DD in the tab time zone. Default: 30 days before to.","type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"to","in":"query","required":false,"schema":{"description":"Analytics: range end, YYYY-MM-DD. Default: today in the tab time zone.","type":"string","pattern":"^\\d{4}-\\d{2}-\\d{2}$"}},{"name":"environment","in":"query","required":false,"schema":{"description":"Analytics: all, production, playtest or development. Default: the tab setting.","type":"string","enum":["all","production","playtest","development"]}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"viewport","in":"query","required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["x","y","width","height"],"additionalProperties":false}}}},{"name":"maxDimension","in":"query","required":false,"schema":{"type":"integer","minimum":256,"maximum":2048}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"media":{"description":"With saveAsMedia: the stored PNG, as review and card attachments take it (attachments[].media).","type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"image/png"},"filename":{"type":"string"}},"required":["id","mimeType","filename"]},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"mimeType":{"type":"string","const":"image/png"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"viewport":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0}},"required":["x","y","width","height"]},"scale":{"type":"number","exclusiveMinimum":0},"reports":{"description":"Analytics captures return one image per report, in images[] order.","type":"array","items":{"type":"object","properties":{"reportId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["reportId","width","height"]}},"screens":{"description":"perScreen: each image's screen and size, in images[] order.","type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["screenId","width","height"]}},"image":{"description":"The PNG; absent for perScreen, which returns images.","type":"object","properties":{"mimeType":{"type":"string","const":"image/png"},"data":{"type":"string","maxLength":5592410}},"required":["mimeType","data"]},"images":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"mimeType":{"type":"string","const":"image/png"},"data":{"type":"string","maxLength":5592410},"screenId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["mimeType","data","screenId"]},{"type":"object","properties":{"mimeType":{"type":"string","const":"image/png"},"data":{"type":"string","maxLength":5592410},"reportId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["mimeType","data","reportId"]}]}}},"required":["boardId","revision","mimeType","width","height","viewport","scale"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/diff":{"get":{"operationId":"diffBoard","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"diff_board","x-qraft-mutates":false,"security":[{"oauth2":["boards:history"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"scope","in":"query","required":false,"schema":{"type":"string","enum":["sheet","document"]}},{"name":"sheetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"fromRevision","in":"query","required":true,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"toRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","examples":["sheet","document"]},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"fromRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"toRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"changes":{"type":"array","items":{"type":"object","properties":{"path":{"type":"array","items":{"type":"string"}},"before":{"anyOf":[{"type":"object","properties":{"exists":{"type":"boolean","const":false}},"required":["exists"]},{"type":"object","properties":{"exists":{"type":"boolean","const":true},"value":{"$ref":"#/$defs/__schema0"}},"required":["exists","value"]}]},"after":{"anyOf":[{"type":"object","properties":{"exists":{"type":"boolean","const":false}},"required":["exists"]},{"type":"object","properties":{"exists":{"type":"boolean","const":true},"value":{"$ref":"#/$defs/__schema0"}},"required":["exists","value"]}]}},"required":["path","before","after"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["boardId","fromRevision","toRevision","changes","partial","nextCursor"],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]}}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/capabilities":{"get":{"operationId":"getCapabilities","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"public","x-qraft-mutates":false,"security":[],"parameters":[],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Capabilities"}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards":{"get":{"operationId":"listBoards","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_boards","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}},{"name":"query","in":"query","required":false,"schema":{"type":"string","maxLength":200}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boards":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"savedAt":{"type":"string"},"role":{"type":"string","examples":["owner","editor","viewer"]}},"required":["id","name","savedAt","role"]}},"nextCursor":{"type":["string","null"]},"projectionFreshness":{"type":"string","const":"eventual"}},"required":["boards","nextCursor","projectionFreshness"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}},"post":{"operationId":"createBoard","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"create_board","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"name":{"type":"string","minLength":1,"maxLength":48},"operations":{"maxItems":500,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"insert_prefab"},"prefab":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","enum":["account","document"]},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"members":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"dx":{"type":"number","minimum":-1000000,"maximum":1000000},"dy":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"],"additionalProperties":false}},"required":["id","dx","dy","width","height","text","shape","style"],"additionalProperties":false}},"edges":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"from":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["from","to"],"additionalProperties":false}}},"required":["id","scope","width","height","members","edges"],"additionalProperties":false},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"tempRef":{"type":"string","maxLength":48,"pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"}},"required":["type","prefab","x","y","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"humanize"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"align_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["left","center_x","right","top","center_y","bottom"]}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"distribute_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["x","y"]},"gap":{"type":"number","minimum":0,"maximum":1000000}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"snap_to_grid"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"grid":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","grid"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"normalize_sizes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_metadata"},"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string"},"key":{"type":"string","maxLength":128,"pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"value":{"$ref":"#/$defs/__schema0"},"remove":{"type":"boolean"}},"required":["type","target","key","value"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_theme"},"theme":{"type":"object","properties":{"name":{"description":"Label shown in File → Themes, for example the game title.","type":"string","minLength":1,"maxLength":48},"scheme":{"description":"Default: inferred from background luminance.","type":"string","enum":["light","dark"]},"base":{"description":"Preset backing anything not derived. Default classic (dark) or parchment (light).","type":"string","enum":["classic","midnight","ink","parchment","homebrew"]},"colors":{"type":"object","properties":{"background":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$","description":"Chrome background; everything else derives from it unless given."},"surface":{"description":"Rail, cabinet and raised panels.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"text":{"description":"Chrome text; adjusted to stay readable.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"muted":{"description":"Secondary text and hints.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"accent":{"description":"Highlights, kickers, hover fills. Default brass.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"danger":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ok":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"canvas":{"description":"Flowchart canvas and sheet workspace.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"connector":{"description":"Default connector line and arrowhead color. Omit to derive a readable color against the canvas; per-edge colors still override it.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"paper":{"description":"Fallback node paper and selection rings.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ink":{"description":"Fallback node ink and outlines.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"}},"required":["background"],"additionalProperties":false},"fonts":{"type":"object","properties":{"ui":{"description":"Chrome font stack, e.g. \"Cinzel, Georgia, serif\". Families must be installed on the viewer's device or generic; no web fonts are downloaded.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"display":{"description":"Headline and kicker font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"node":{"description":"Default node text font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"}},"additionalProperties":false},"background":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."},"surfaces":{"description":"Default [\"canvas\"]; a tab type name shows it on those tabs; \"workspace\" adds all surfaces.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","enum":["canvas","rail","document","asset_board","data","kanban","journal","pipeline","art_bible","analytics","support","experiments","crashes","digital_ads","localization","review_stream","research","breakdown","product_review","folder","video_library","video_ad","schedules","resources","workspace"]}},"fit":{"description":"Default cover.","type":"string","enum":["cover","contain","tile","fill","none"]},"position":{"description":"Default center.","type":"string","enum":["center","top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"]},"attachment":{"description":"Default local for documents, fixed for canvas.","type":"string","enum":["local","fixed","scroll"]},"tileScale":{"description":"Multiplier for tile dimensions.","type":"number","minimum":0.05,"maximum":10},"tileSize":{"description":"Explicit tile width in pixels for tile fit.","type":"integer","minimum":16,"maximum":2048},"opacity":{"description":"Default 0.35 so content stays readable.","type":"number","minimum":0.05,"maximum":1},"surfaceOpacity":{"type":"object","properties":{"canvas":{"type":"number","minimum":0.05,"maximum":1},"rail":{"type":"number","minimum":0.05,"maximum":1},"document":{"type":"number","minimum":0.05,"maximum":1},"asset_board":{"type":"number","minimum":0.05,"maximum":1},"data":{"type":"number","minimum":0.05,"maximum":1},"kanban":{"type":"number","minimum":0.05,"maximum":1}},"additionalProperties":false},"blur":{"description":"Pixels. Default 0.","type":"number","minimum":0,"maximum":40},"blendMode":{"description":"CSS blend mode.","type":"string","enum":["normal","multiply","screen","overlay","soft-light","luminosity"]}},"required":["assetId"],"additionalProperties":false},"favicon":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."}},"required":["assetId"],"additionalProperties":false},"tokens":{"type":"object","propertyNames":{"type":"string","enum":["ink","paper","paper-deep","brass","brass-hot","graphite","graphite-2","walnut","walnut-2","rule","cream","muted","bg","bg-2","fg","fg-muted","chrome","chrome-line","rail-edge","rail-hint","surface","surface-2","fill-control","control-line","hover","glow","grid-glow","accent-line","danger","danger-fill","ok","workspace","workspace-text","workspace-muted","panel","panel-2","panel-line","accent-ink","shadow","board-bg","theme-chip","connector-color"]},"additionalProperties":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"description":"Direct overrides applied after derivation, keyed by CSS variable name without dashes (\"brass\"). Prefer colors."}},"required":["colors"],"additionalProperties":false}},"required":["type","theme"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_flowchart"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_theme"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_board"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_connector_default"},"connectors":{"type":"string","enum":["smooth","elbow"]}},"required":["type","connectors"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_node"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_node"},"id":{"type":"string"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_node"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_edge"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["type","tempRef","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_edge"},"id":{"type":"string"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}]},"connectors":{"anyOf":[{"type":"string","enum":["smooth","elbow"]},{"type":"null"}]},"color":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},{"type":"null"}]},"width":{"anyOf":[{"type":"number","exclusiveMinimum":0,"maximum":32},{"type":"null"}]},"labelStyle":{"anyOf":[{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false},{"type":"null"}]}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_edge"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_nodes"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string"}}},"required":["type","ids"],"additionalProperties":false}]}}},"required":["requestId"],"additionalProperties":false,"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]}}}}}},"responses":{"201":{"description":"Success","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateBoardResponse"}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}":{"get":{"operationId":"readBoard","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"read_board","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"documentId","in":"query","required":false,"schema":{"description":"Read one page of a Document tab (a pages[].id; omit for the tab's own page) or a document hosted by another sheet (a Breakdown source): blocks, versions and text.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"includeVersions","in":"query","required":false,"schema":{"type":"boolean"}},{"name":"includeRawText","in":"query","required":false,"schema":{"description":"Flowcharts: include exact stored node rawText and edge rawLabel for field preconditions. Compact/semantic text and label are normalized display values.","type":"boolean"}},{"name":"view","in":"query","required":false,"schema":{"type":"string","enum":["compact","full","layout","semantic"]}},{"name":"region","in":"query","required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["x","y","width","height"],"additionalProperties":false}}}},{"name":"selector","in":"query","required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"role":{"type":"string","maxLength":200},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"textContains":{"type":"string","maxLength":200}},"additionalProperties":false}}}},{"name":"nodeIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"blockIds","in":"query","required":false,"schema":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},{"name":"section","in":"query","required":false,"content":{"application/json":{"schema":{"anyOf":[{"type":"object","properties":{"headingId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["headingId"],"additionalProperties":false},{"type":"object","properties":{"heading":{"type":"string","minLength":1,"maxLength":1000},"occurrence":{"type":"integer","minimum":1,"maximum":10000}},"required":["heading"],"additionalProperties":false}]}}}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"inbox"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"note":{"type":"string"}},"required":["type","boardId","sheetId","note"]},{"type":"object","properties":{"type":{"type":"string","const":"git_repo"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"documentFormatVersion":{"type":"number","const":3},"gitRepo":{"type":"object","properties":{"provider":{"default":"github","type":"string","examples":["github"]},"owner":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"repo":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"branch":{"default":"","type":"string","maxLength":200,"pattern":"^[^\\s~^:?*[\\\\]*$"},"path":{"default":"","type":"string","maxLength":500,"pattern":"^(?!\\/)(?!.*\\.\\.)[^\\s]*$"},"notes":{"default":"","type":"string","maxLength":4000}},"required":["provider","owner","repo","branch","path","notes"]},"configured":{"type":"boolean"},"url":{"type":["string","null"]}},"required":["type","id","name","sheetId","revision","documentRevision","sheets","documentFormatVersion","gitRepo","configured","url"]},{"type":"object","properties":{"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"type":{"type":"string","const":"review_stream"},"metadataOnly":{"type":"boolean"},"view":{"type":"string","examples":["list","status","detail","discussion","thread"]},"availableSections":{"type":"array","items":{"type":"string","examples":["detail","discussion"]}},"entries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"number"},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"decisionBy":{"type":"string"},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"itemCount":{"type":"number"}},"required":["id","title","author","createdAt","submittedAt","status","round","claims","messageCount","reviewers","itemCount"]}},"review":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"integer","minimum":0,"maximum":1000},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"decisionBy":{"type":"string"},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["id","title","author","createdAt","submittedAt","status","round","claims"]},"submission":{"type":"object","properties":{"clipStage":{"type":"string","examples":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"]}}},"required":["id","prompt","options"]}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"]},"refines":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"picks":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"labels":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","maxLength":200}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["round","picks","labels","variants"]},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"snapshots":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"card":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","columnId","rank","archived","dependsOn","title","description","labels","dueDate","checklist","links","branch","worktree"]}},"required":["type","sheetId","cardId","title","card"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy","id","number","savedAt","savedBy"]}},"required":["type","assetId","versionId","title","version"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"required":["type","sheetId","screenId","title","screen"]}]}},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}}},"required":["notes","items","links","attachments","number","createdAt","author","reviewers"]},"attachmentChanges":{"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string","examples":["new","updated","unchanged"]},"previous":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"file":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"required":["round","file"]}},"required":["id","status"]}},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"body":{"type":"string","maxLength":8000},"links":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"action":{"type":"string","examples":["comment","approved","approved_with_changes","refined","rejected","cancelled","submitted","claimed","escalated","reassigned"]},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["id","round","body","links","attachments","author","createdAt","action"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["boardId","sheetId","revision","documentRevision","type","view","availableSections","entries","messages","total","nextCursor","partial"]},{"type":"object","properties":{"type":{"type":"string","const":"research"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"description":{"type":"string"},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"]},"parameters":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"default":"","type":"string","maxLength":10000},"group":{"default":"","type":"string","maxLength":100},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"default":"","type":"string","maxLength":80},"currency":{"default":"USD","type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"default":2,"type":"integer","minimum":0,"maximum":6},"ratingMax":{"default":5,"type":"number","minimum":1,"maximum":100},"comparisonColor":{"default":"none","description":"Numeric comparison coloring; high/low chooses the green end. Missing and equal values stay neutral.","type":"string","examples":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"default":200,"type":"number","minimum":100,"maximum":800},"hidden":{"default":[],"type":"array","items":{"type":"string","examples":["table","detail","compare"]}},"archived":{"default":false,"type":"boolean"}},"required":["id","name","type","description","group","options","unit","currency","decimals","ratingMax","comparisonColor","width","hidden","archived"]}},"subjects":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"]},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"tags":{"default":[],"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"default":false,"type":"boolean"},"content":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]}},"required":["id","type","title","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"]}]}},"contentOrder":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","values","tags","archived","content","contentOrder"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["type","boardId","sheetId","revision","documentRevision","description","layout","parameters","subjects","total","nextCursor","partial"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_board"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"view":{"type":"string"},"availableSections":{"type":"array","items":{"type":"string","examples":["asset","history","version","draft"]}},"models":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"assets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":100000},"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"notes":{"type":"string","maxLength":100000},"links":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","sheetId"]}},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"archived":{"type":"boolean"},"selectedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"latestVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"latestNumber":{"type":"number"},"selectedNumber":{"type":["number","null"]},"hasDraft":{"type":"boolean"},"cover":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type"]},{"type":"null"}]},"partCount":{"type":"number"}},"required":["name","tags","id","archived","selectedVersionId","latestVersionId","latestNumber","selectedNumber","hasDraft","cover","partCount"]}},"placements":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"required":["id","assetId","x","y","width","height","groupId","pinnedVersionId","archived"]}},"groups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"required":["id","name","x","y","width","height","archived"]}},"versions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","maxLength":300},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"},"partCount":{"type":"number"}},"required":["id","number","name","sourceVersionId","coverPartId","savedAt","savedBy","partCount"]}},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","createdAt","createdBy","id","number","savedAt","savedBy"]},"draft":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"}},"required":["id","sourceVersionId","name","notes","coverPartId","createdAt","createdBy"]},"parts":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"comparison":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","examples":["added","removed","changed","unchanged"]},"before":{"anyOf":[{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]},{"type":"null"}]},"after":{"anyOf":[{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]},{"type":"null"}]}},"required":["id","status","before","after"]}},"manifest":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetName":{"type":"string"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"number"},"name":{"type":"string"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"notes":{"type":"string"},"parts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"sourceUrl":{"type":"string"},"prompt":{"type":"string"},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}},"filename":{"type":"string"},"text":{"type":"string"},"mediaId":{"type":"string"},"mimeType":{"type":"string"},"url":{"type":"string"},"posterUrl":{"type":"string"},"posterFilename":{"type":"string"}},"required":["id","name","type","filename"]}}},"required":["assetId","assetName","versionId","number","name","sourceVersionId","notes","parts"]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","boardId","sheetId","revision","documentRevision","view","availableSections","assets","placements","groups","versions","parts","comparison","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe"},"stateLayers":{"maxItems":256,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatchOutput"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentOutput"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatchOutput"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}}}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]},{"type":"null"}]}}},"required":["id","name","condition","screens","interactions"]}},"stateLayerCount":{"type":"integer","minimum":0,"maximum":256},"approvals":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"status":{"type":"string","examples":["approved","pending"]},"inherited":{"type":"boolean"},"ancestorId":{"type":"string"}},"required":["status","inherited"]}},"annotations":{"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string"},"annotationId":{"type":"string"},"componentId":{"type":"string"},"text":{"type":"string"},"anchor":{"anyOf":[{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"]},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"]}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."},{"type":"null"}]},"targetMissing":{"type":"boolean"},"bounds":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"}},"required":["x","y","width","height"]}},"required":["screenId","annotationId","componentId","text","anchor","targetMissing","bounds"]}},"purpose":{"type":"string","examples":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"wireframeVersion":{"type":"string"},"startScreenId":{"type":["string","null"]},"screens":{"type":"array","items":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"interactions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}},"audit":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"screenId":{"type":"string"},"componentId":{"type":"string"},"interactionId":{"type":"string"},"message":{"type":"string"}},"required":["code","screenId","message"]}},"auditTotal":{"type":"number"},"auditScope":{"type":"string","const":"structural"},"prototype":{"type":"object","properties":{"state":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"callers":{"description":"Scoped caller stack. Pass back unchanged to resume. Snapshot null means the selected variable was absent; it is removed on return.","maxItems":20,"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"transition":{"type":"string","examples":["navigate","open_modal","set_state"]},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]},{"type":"null"}]}}},"required":["screenId","history","modals","transition","variables"]}}},"required":["screenId","history","modals","variables"]},"activeLayerIds":{"maxItems":256,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"steps":{"type":"array","items":{"type":"object","properties":{"interactionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"outcome":{"type":"string","examples":["applied","blocked","no_change"]},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"activeScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["interactionId","outcome","screenId","activeScreenId"]}},"availableInteractions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"trigger":{"type":"string"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"eventName":{"type":"string"},"delayMs":{"type":"number"}},"required":["id","trigger","sourceComponentId"]}}},"required":["state","steps","availableInteractions"]},"flow":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}},{"type":"null"}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","purpose","boardId","sheetId","revision","documentRevision","wireframeVersion","startScreenId","screens","interactions","audit","auditTotal","flow","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"slide_deck"},"view":{"type":"string","examples":["overview","slides"]},"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"stage":{"type":"object","properties":{"width":{"type":"number"},"height":{"type":"number"}},"required":["width","height"]},"slideCount":{"type":"number"},"slides":{"description":"overview: every slide in brief, in order.","type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"index":{"type":"number"},"title":{"type":"string"},"layout":{"type":"string"},"elementCount":{"type":"number"},"transition":{"type":"string"},"hidden":{"type":"boolean"},"hasNotes":{"type":"boolean"}},"required":["id","index","title","layout","elementCount","transition","hidden","hasNotes"]}},"detail":{"description":"slides: whole slides (with index) and their elements, back to front.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","stage","slideCount","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"kanban"},"view":{"type":"string","examples":["summary","detail"]},"availableSections":{"type":"array","items":{"type":"string","examples":["instructions","detail","discussion"]}},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"description":{"type":"string"},"instructions":{"type":"string"},"policiesChangeAt":{"type":"string"},"instructionsVersion":{"type":"string"},"instructionsUnchanged":{"type":"boolean","const":true},"skills":{"description":"Agent Skills for this card: load one (SKILL.md) when a task matches","maxItems":100,"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}},"required":["name","description"]}},"columns":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","examples":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"},"version":{"type":"string"},"cardCount":{"type":"number"},"archivedCount":{"type":"number"}},"required":["id","name","color","version","cardCount","archivedCount"]}},"orderVersion":{"type":"string"},"cards":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"type":"string","maxLength":255},"worktree":{"type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"assignees":{"anyOf":[{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"agentId":{"type":"string"}},"required":["name"]}}]},"createdBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"string"}]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"blockedBy":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"usage":{"description":"Cards read by id: \"time · tokens · est. cost · lines +/−\" of metered agent work.","type":"string"},"discussionCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"version":{"type":"string"},"positionVersion":{"type":"string"}},"required":["id","columnId","rank","archived","title","labels","dueDate","discussionCount","version","positionVersion"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","availableSections","boardId","sheetId","revision","documentRevision","columns","orderVersion","cards","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"breakdown"},"view":{"type":"string","examples":["overview","moments","transcript","findings","questions"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"description":{"type":"string"},"sources":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","examples":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"anyOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"]},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid","thumbnailBase"]},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"]}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","examples":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","status","video","durationSeconds","transcript","error","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","documentId","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","label"]}},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","files","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","sheetId","momentCount","frameCount"]}]}},"counts":{"type":"object","properties":{"moments":{"type":"integer","minimum":0,"maximum":9007199254740991},"findings":{"type":"integer","minimum":0,"maximum":9007199254740991},"questions":{"type":"integer","minimum":0,"maximum":9007199254740991},"frames":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["moments","findings","questions","frames"]},"sections":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"}},"moments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time","label"]}}},"required":["id","sourceId","time","endTime","fileId","blockId","transcript","caption","note","tags","frames"]}},"transcript":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string"}},"required":["sourceId","text"]},"findings":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title","section","body","evidence"]}},"findingSummaries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"bodyPreview":{"type":"string"},"bodyChars":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","title","section","evidence","bodyPreview","bodyChars"]}},"questions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","examples":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text","status","answer","evidence"]}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","description","sources","counts","sections","tags","total","partial","nextCursor"]},{"type":"object","properties":{"issuesEvaluated":{"type":"boolean"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"type":{"type":"string","const":"data"},"view":{"type":"string","examples":["full","catalog","schema_compact","audit"]},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"description":{"type":"string"},"tables":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"description":{"type":"string"},"recordCount":{"type":"number"},"primaryDisplayColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"tags":{"type":"array","items":{"type":"string"}},"link":{"type":"string"},"referencedBy":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableName":{"type":"string"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnName":{"type":"string"},"targetTableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"targetColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"recordCount":{"type":"number"}},"required":["tableId","tableName","columnId","columnName","targetTableId","targetColumnId","recordCount"]}},"version":{"type":"string"},"schemaVersion":{"type":"string"},"metaVersion":{"type":"string"},"columns":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","name","type","required","unique","referenceTableId","referenceColumnId"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","name","description","type","required","unique","immutable","autoNumber","defaultValue","options","referenceTableId","referenceColumnId","width"]}]}}},"required":["id","name","description","recordCount","primaryDisplayColumnId","link","referencedBy","columns"]}},"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","values"]}},"issues":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"message":{"type":"string"}},"required":["tableId","message"]}},"issueCount":{"type":"number"},"auditTableIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"audit":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"message":{"type":"string"},"count":{"type":"number"},"sampleRecordIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["tableId","message","count","sampleRecordIds"]}},"dependencies":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableName":{"type":"string"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnName":{"type":"string"},"targetTableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"targetColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"recordCount":{"type":"number"}},"required":["tableId","tableName","columnId","columnName","targetTableId","targetColumnId","recordCount"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["issuesEvaluated","type","boardId","sheetId","revision","documentRevision","description","tables","records","issues","issueCount","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","examples":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"text":{"type":"string","maxLength":20000},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"linkedTo":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rows":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string"},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["text"]}},"loopedFrom":{"type":"array","items":{"type":"object","properties":{"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"row":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["nodeId"]}},"rawText":{"type":"string"}},"required":["id","shape","text"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"rawLabel":{"type":"string"}},"required":["id","from","to"]}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges"]},{"type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","examples":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","examples":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","examples":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","x","y","width","height","text","shape","style"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","examples":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","from","to"]}},"prefabs":{"type":"array","items":{"$ref":"#/$defs/__schema1"}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges","prefabs"]},{"type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","examples":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","x","y","width","height","shape"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","examples":["smooth","elbow"]},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","from","to"]}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges"]},{"type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","examples":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"linkedTo":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rows":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string"},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["text"]}},"loopedFrom":{"type":"array","items":{"type":"object","properties":{"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"row":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["nodeId"]}},"rawText":{"type":"string"}},"required":["id","text","shape"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"rawLabel":{"type":"string"}},"required":["id","from","to"]}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges"]},{"type":"object","properties":{"type":{"type":"string","const":"document"},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pageId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"home":{"description":"Tab holding it, if not this one.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]},"order":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","title","order"]}},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"documentFormatVersion":{"type":"number","const":3},"blocks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"version":{"type":"string"},"text":{"type":"string"},"content":{"$ref":"#/$defs/__schema2"}},"required":["id","version","text"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","pageSettings","id","name","sheetId","revision","documentRevision","sheets","documentFormatVersion","blocks","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"analytics"},"view":{"type":"string","const":"content"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"settings":{"type":"object","properties":{"description":{"type":"string","maxLength":2000,"description":"What this tab tracks, one or two lines."},"environment":{"type":"string","examples":["all","production","playtest","development"],"description":"Which sources reports use by default (each source has one environment)."},"timezone":{"type":"string","maxLength":64,"description":"Day boundaries for date ranges. Events are stored in UTC."},"instructions":{"type":"string","maxLength":20000,"description":"How the product is instrumented: its events, properties and conventions. Agents read this first."}},"required":["description","environment","timezone","instructions"]},"reports":{"maxItems":24,"type":"array","items":{"anyOf":[{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"progression"},"countingUnit":{"description":"Counting/join unit: actor_id (default for existing reports), session_id, or install_id (stable across sign-in; reinstalls remain separate). Neither counts verified people. Cohorts exclude missing IDs; session-mode outcomes exclude missing session IDs.","type":"string","examples":["actor","session","install"]},"ordered":{"description":"Require each later step after the previous step; default false for existing progression reports.","type":"boolean"},"steps":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}},"label":{"type":"string","minLength":1,"maxLength":40}},"required":["event","where","label"]}},"windowDays":{"type":"integer","minimum":1,"maximum":90,"description":"Follow-up window: how long after the first step a later step still counts."},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","steps","windowDays","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"time_to_success"},"countingUnit":{"description":"Counting/join unit: actor_id (default for existing reports), session_id, or install_id (stable across sign-in; reinstalls remain separate). Neither counts verified people. Cohorts exclude missing IDs; session-mode outcomes exclude missing session IDs.","type":"string","examples":["actor","session","install"]},"start":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"success":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"windowDays":{"type":"integer","minimum":1,"maximum":90,"description":"Follow-up window: how long after the first step a later step still counts."},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","start","success","windowDays","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"outcomes"},"countingUnit":{"description":"Counting/join unit: actor_id (default for existing reports), session_id, or install_id (stable across sign-in; reinstalls remain separate). Neither counts verified people. Cohorts exclude missing IDs; session-mode outcomes exclude missing session IDs.","type":"string","examples":["actor","session","install"]},"start":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"finish":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"correlate":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"The property that ties an attempt's start to its finish (an attempt ID)."},"outcome":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"The finish property holding the outcome code."},"groupBy":{"default":null,"description":"A start property to break attempts down by (area, build…).","anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","start","finish","correlate","outcome","groupBy","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"retention"},"start":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"activity":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","start","activity","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"revenue_curve"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"sql"},"eventMode":{"description":"raw: only stored events in the requested date range; no install/session enrichment or install filtering. Context filters and breakdowns are unavailable. For server telemetry.","type":"string","examples":["enriched","raw"]},"sql":{"type":"string","minLength":1,"maxLength":8000,"description":"One PostgreSQL SELECT. Reads `events` (this tab only: event_id, name, occurred_at, received_at, actor_id, session_id, sequence, build_id, environment, source_id, properties jsonb, context jsonb, install_id, install_context jsonb, session_context jsonb), `params` (range_start, range_end timestamptz; timezone text) and `assignments` (experiment, bucket, actor_id, environment, joined_at, left_at). Up to 500 rows; 64 KiB per row, 4 MiB total, maximum 8 seconds."},"chart":{"default":"table","type":"string","examples":["table","bars","columns","line","number"]},"chartUnit":{"description":"Line chart y-axis unit. Percent values use 0–100, not fractions.","type":"string","examples":["","%"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","sql","chart","createdAt","createdBy","updatedAt","updatedBy","revision"]}]}},"segments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":40},"filters":{"minItems":1,"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]},"description":"All must hold (AND)."}},"required":["id","name","filters"]}},"dashboards":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":40},"reportIds":{"maxItems":24,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"description":"Report IDs in display order."}},"required":["id","name","reportIds"]}},"note":{"type":"string"}},"required":["type","view","boardId","sheetId","revision","documentRevision","settings","reports","note"]}],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]},"__schema2":{"type":"object","properties":{"type":{"type":"string","examples":["doc","paragraph","heading","text","bulletList","orderedList","listItem","taskList","taskItem","blockquote","codeBlock","hardBreak","horizontalRule","image","table","tableRow","tableCell","tableHeader"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema3"}},"text":{"type":"string"},"marks":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","examples":["bold","italic","strike","underline","code","link","textStyle","highlight"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema4"}}},"required":["type"]}},"content":{"type":"array","items":{"$ref":"#/$defs/__schema2"}}},"required":["type"]},"__schema3":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema3"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema3"}}]},"__schema4":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema4"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema4"}}]}}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/search":{"get":{"operationId":"searchBoard","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"search_board","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"documentId","in":"query","required":false,"schema":{"description":"Search one page of a Document tab, or a document hosted by this sheet, instead of the whole sheet.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"query","in":"query","required":true,"schema":{"type":"string","maxLength":200}},{"name":"mode","in":"query","required":false,"schema":{"type":"string","enum":["contains","exact","fuzzy"]}},{"name":"expectedRevision","in":"query","required":false,"schema":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"matches":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pageId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pageTitle":{"type":"string"},"snippet":{"type":"string"},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","snippet"]}},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["revision","matches","nextCursor","partial"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/operations":{"post":{"operationId":"applyOperations","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"apply_operations","x-qraft-mutates":true,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"commandSchemaVersion":{"type":"number","const":1},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"expectedRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"conflictPolicy":{"type":"string","enum":["reject","merge_non_overlapping"]},"preconditions":{"minItems":1,"maxItems":500,"type":"array","items":{"anyOf":[{"type":"object","properties":{"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"path":{"minItems":1,"maxItems":8,"type":"array","items":{"type":"string","minLength":1,"maxLength":128}},"expected":{"anyOf":[{"type":"object","properties":{"exists":{"type":"boolean","const":false}},"required":["exists"],"additionalProperties":false},{"type":"object","properties":{"exists":{"type":"boolean","const":true},"value":{"$ref":"#/$defs/__schema0"}},"required":["exists","value"],"additionalProperties":false}]}},"required":["target","path","expected"],"additionalProperties":false},{"type":"object","properties":{"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["target","version"],"additionalProperties":false}]}},"operations":{"minItems":1,"maxItems":500,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"insert_prefab"},"prefab":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","enum":["account","document"]},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"members":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"dx":{"type":"number","minimum":-1000000,"maximum":1000000},"dy":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"],"additionalProperties":false}},"required":["id","dx","dy","width","height","text","shape","style"],"additionalProperties":false}},"edges":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"from":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["from","to"],"additionalProperties":false}}},"required":["id","scope","width","height","members","edges"],"additionalProperties":false},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"tempRef":{"type":"string","maxLength":48,"pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"}},"required":["type","prefab","x","y","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"humanize"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"align_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["left","center_x","right","top","center_y","bottom"]}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"distribute_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["x","y"]},"gap":{"type":"number","minimum":0,"maximum":1000000}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"snap_to_grid"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"grid":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","grid"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"normalize_sizes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_metadata"},"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string"},"key":{"type":"string","maxLength":128,"pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"value":{"$ref":"#/$defs/__schema1"},"remove":{"type":"boolean"}},"required":["type","target","key","value"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_theme"},"theme":{"type":"object","properties":{"name":{"description":"Label shown in File → Themes, for example the game title.","type":"string","minLength":1,"maxLength":48},"scheme":{"description":"Default: inferred from background luminance.","type":"string","enum":["light","dark"]},"base":{"description":"Preset backing anything not derived. Default classic (dark) or parchment (light).","type":"string","enum":["classic","midnight","ink","parchment","homebrew"]},"colors":{"type":"object","properties":{"background":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$","description":"Chrome background; everything else derives from it unless given."},"surface":{"description":"Rail, cabinet and raised panels.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"text":{"description":"Chrome text; adjusted to stay readable.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"muted":{"description":"Secondary text and hints.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"accent":{"description":"Highlights, kickers, hover fills. Default brass.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"danger":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ok":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"canvas":{"description":"Flowchart canvas and sheet workspace.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"connector":{"description":"Default connector line and arrowhead color. Omit to derive a readable color against the canvas; per-edge colors still override it.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"paper":{"description":"Fallback node paper and selection rings.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ink":{"description":"Fallback node ink and outlines.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"}},"required":["background"],"additionalProperties":false},"fonts":{"type":"object","properties":{"ui":{"description":"Chrome font stack, e.g. \"Cinzel, Georgia, serif\". Families must be installed on the viewer's device or generic; no web fonts are downloaded.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"display":{"description":"Headline and kicker font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"node":{"description":"Default node text font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"}},"additionalProperties":false},"background":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."},"surfaces":{"description":"Default [\"canvas\"]; a tab type name shows it on those tabs; \"workspace\" adds all surfaces.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","enum":["canvas","rail","document","asset_board","data","kanban","journal","pipeline","art_bible","analytics","support","experiments","crashes","digital_ads","localization","review_stream","research","breakdown","product_review","folder","video_library","video_ad","schedules","resources","workspace"]}},"fit":{"description":"Default cover.","type":"string","enum":["cover","contain","tile","fill","none"]},"position":{"description":"Default center.","type":"string","enum":["center","top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"]},"attachment":{"description":"Default local for documents, fixed for canvas.","type":"string","enum":["local","fixed","scroll"]},"tileScale":{"description":"Multiplier for tile dimensions.","type":"number","minimum":0.05,"maximum":10},"tileSize":{"description":"Explicit tile width in pixels for tile fit.","type":"integer","minimum":16,"maximum":2048},"opacity":{"description":"Default 0.35 so content stays readable.","type":"number","minimum":0.05,"maximum":1},"surfaceOpacity":{"type":"object","properties":{"canvas":{"type":"number","minimum":0.05,"maximum":1},"rail":{"type":"number","minimum":0.05,"maximum":1},"document":{"type":"number","minimum":0.05,"maximum":1},"asset_board":{"type":"number","minimum":0.05,"maximum":1},"data":{"type":"number","minimum":0.05,"maximum":1},"kanban":{"type":"number","minimum":0.05,"maximum":1}},"additionalProperties":false},"blur":{"description":"Pixels. Default 0.","type":"number","minimum":0,"maximum":40},"blendMode":{"description":"CSS blend mode.","type":"string","enum":["normal","multiply","screen","overlay","soft-light","luminosity"]}},"required":["assetId"],"additionalProperties":false},"favicon":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."}},"required":["assetId"],"additionalProperties":false},"tokens":{"type":"object","propertyNames":{"type":"string","enum":["ink","paper","paper-deep","brass","brass-hot","graphite","graphite-2","walnut","walnut-2","rule","cream","muted","bg","bg-2","fg","fg-muted","chrome","chrome-line","rail-edge","rail-hint","surface","surface-2","fill-control","control-line","hover","glow","grid-glow","accent-line","danger","danger-fill","ok","workspace","workspace-text","workspace-muted","panel","panel-2","panel-line","accent-ink","shadow","board-bg","theme-chip","connector-color"]},"additionalProperties":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"description":"Direct overrides applied after derivation, keyed by CSS variable name without dashes (\"brass\"). Prefer colors."}},"required":["colors"],"additionalProperties":false}},"required":["type","theme"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_flowchart"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_theme"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_board"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_connector_default"},"connectors":{"type":"string","enum":["smooth","elbow"]}},"required":["type","connectors"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_node"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_node"},"id":{"type":"string"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_node"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_edge"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["type","tempRef","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_edge"},"id":{"type":"string"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}]},"connectors":{"anyOf":[{"type":"string","enum":["smooth","elbow"]},{"type":"null"}]},"color":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},{"type":"null"}]},"width":{"anyOf":[{"type":"number","exclusiveMinimum":0,"maximum":32},{"type":"null"}]},"labelStyle":{"anyOf":[{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false},{"type":"null"}]}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_edge"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_nodes"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string"}}},"required":["type","ids"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["requestId","expectedRevision","operations"],"additionalProperties":false,"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]}}}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/changes":{"get":{"operationId":"listChanges","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"list_changes","x-qraft-mutates":false,"security":[{"oauth2":["boards:history"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","maxLength":512}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":100}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"changes":{"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"changeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"actorId":{"type":"string"},"clientId":{"type":"string"},"grantId":{"type":"string"},"summary":{"type":"string"},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdAt":{"type":"string"},"changes":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"before":{"$ref":"#/$defs/__schema0"},"after":{"$ref":"#/$defs/__schema1"}},"required":["path","before","after"]}},"reverts":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revertedBy":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revertible":{"type":"boolean"}},"required":["changeId","requestId","actorId","clientId","grantId","summary","revisionBefore","revisionAfter","createdAt","changes","reverts","revertedBy","revertible"]}},"nextCursor":{"type":["string","null"]}},"required":["changes","nextCursor"],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]}}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/changes/{changeId}":{"get":{"operationId":"getChange","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_change","x-qraft-mutates":false,"security":[{"oauth2":["boards:history"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"changeId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"changeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"actorId":{"type":"string"},"clientId":{"type":"string"},"grantId":{"type":"string"},"summary":{"type":"string"},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdAt":{"type":"string"},"changes":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"before":{"$ref":"#/$defs/__schema0"},"after":{"$ref":"#/$defs/__schema1"}},"required":["path","before","after"]}},"reverts":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revertedBy":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revertible":{"type":"boolean"}},"required":["changeId","requestId","actorId","clientId","grantId","summary","revisionBefore","revisionAfter","createdAt","changes","reverts","revertedBy","revertible"],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]}}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/changes/{changeId}/revert":{"post":{"operationId":"revertChange","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"revert_change","x-qraft-mutates":true,"security":[{"oauth2":["boards:write","boards:history"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"changeId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"Idempotency-Key","in":"header","required":false,"description":"Must match requestId if both are supplied.","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"expectedRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["requestId","expectedRevision"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/receipts/{requestId}":{"get":{"operationId":"getReceipt","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"get_operation_receipt","x-qraft-mutates":false,"security":[{"oauth2":["boards:write"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"requestId","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"},"peerReviewDeliveries":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceAgentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"targetAgentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"action":{"type":"string","examples":["submitted","approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["reviewId","round","sourceAgentId","targetAgentId","action"]}},"outcome":{"type":"string","const":"committed"},"pages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"home":{"description":"Tab holding it, if not this one.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]}},"required":["id","title"]}}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}},"/api/v1/boards/{id}/export":{"get":{"operationId":"exportBoard","tags":["v1"],"x-qraft-enabled":true,"x-qraft-action":"export_board","x-qraft-mutates":false,"security":[{"oauth2":["boards:read"]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"sheetId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"documentId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"entry","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":500}},{"name":"scope","in":"query","required":false,"schema":{"type":"string","enum":["sheet","document"]}},{"name":"tableId","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},{"name":"format","in":"query","required":true,"schema":{"type":"string","enum":["json","jsonl","mermaid","markdown","pdf","csv"]}},{"name":"cursor","in":"query","required":false,"schema":{"description":"Export page: pass the last nextCursor.","type":"string","maxLength":2000}},{"name":"since","in":"query","required":false,"schema":{"description":"Data: a changesToken; returns a delta","type":"string","minLength":1,"maxLength":64}}],"responses":{"200":{"description":"Success","content":{"application/json":{"schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"format":{"type":"string","const":"jsonl"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"data":{"$ref":"#/$defs/__schema0"},"nextCursor":{"type":["string","null"]}},"required":["format","revision","data","nextCursor"]},{"type":"object","properties":{"format":{"type":"string","const":"csv"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"csv":{"type":"string"}},"required":["format","revision","csv"]},{"type":"object","properties":{"format":{"type":"string","const":"markdown"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"markdown":{"type":"string"}},"required":["format","revision","markdown"]},{"type":"object","properties":{"format":{"type":"string","const":"pdf"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"mimeType":{"type":"string","const":"application/pdf"},"data":{"type":"string"}},"required":["format","revision","mimeType","data"]},{"type":"object","properties":{"format":{"type":"string","const":"json"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"document":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"vgd-board"},"version":{"type":"number","const":1},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48},"savedAt":{"type":"string"},"camera":{"type":"object","properties":{"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"zoom":{"type":"number","exclusiveMinimum":0}},"required":["x","y","zoom"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","examples":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","examples":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["id","x","y","width","height","text","shape","style"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","examples":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["id","from","to"]}},"prefabs":{"type":"array","items":{"$ref":"#/$defs/__schema2"}},"connectors":{"type":"string","examples":["smooth","elbow"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["kind","version","id","name","savedAt","camera","nodes","edges","prefabs","connectors"]},{"type":"object","properties":{"kind":{"type":"string","const":"vgd-board"},"version":{"anyOf":[{"type":"number","const":2},{"type":"number","const":3}]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48},"savedAt":{"type":"string"},"prefabs":{"type":"array","items":{"$ref":"#/$defs/__schema2"}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}},"assetLibrary":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":100000},"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"notes":{"type":"string","maxLength":100000},"links":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","sheetId"]}},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"archived":{"type":"boolean"},"selectedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"versions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy","id","number","savedAt","savedBy"]}},"draft":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"}},"required":["id","sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy"]},{"type":"null"}]}},"required":["name","description","tags","notes","links","id","archived","selectedVersionId","versions","draft"]}},"sheets":{"minItems":1,"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"documents":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"type":{"type":"string","const":"doc"},"content":{"minItems":1,"type":"array","items":{"$ref":"#/$defs/__schema3"}}},"required":["type","content"]}},"pages":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"home":{"description":"Tab holding it, if not this one.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]}},"required":["id","title"]}},"breakdown":{"type":"object","properties":{"version":{"type":"number","const":2},"description":{"type":"string","maxLength":4000},"sources":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","examples":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"anyOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"]},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid","thumbnailBase"]},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"]}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","examples":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000}},"required":["id","createdAt","name","notes","kind","status","video","durationSeconds","transcript","error"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."}},"required":["id","createdAt","name","notes","kind","documentId"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","label"]}}},"required":["id","createdAt","name","notes","kind","files"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."}},"required":["id","createdAt","name","notes","kind","sheetId"]}]}},"sourceOrder":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"moments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time","label"]}}},"required":["id","sourceId","time","endTime","fileId","blockId","transcript","caption","note","tags","frames"]}},"momentOrder":{"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"findings":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title","section","body","evidence"]}},"findingOrder":{"maxItems":500,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"questions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","examples":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text","status","answer","evidence"]}},"questionOrder":{"maxItems":500,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["version","description","sources","sourceOrder","moments","momentOrder","findings","findingOrder","questions","questionOrder"]},"productReview":{"type":"object","properties":{"version":{"type":"number","const":1},"settings":{"type":"object","properties":{"setupPromptMode":{"type":"string","examples":["default","custom"]},"digestPromptMode":{"type":"string","examples":["default","custom"]},"setupPrompt":{"type":"string","maxLength":8000,"description":"What the agent does to start a run: build and run the product and report how to reach it."},"digestPrompt":{"type":"string","maxLength":8000,"description":"What the agent does with a run's notes. {kanban}, {column} and {tag} are filled in when a digest is asked for."},"digestMode":{"type":"string","examples":["direct","reviewed"]},"target":{"anyOf":[{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","columnId"]},{"type":"null"}],"description":"The Kanban tab and column digests create cards in; null until chosen."},"cardPlacement":{"default":"top","description":"Where in that column a digest puts its cards.","type":"string","examples":["top","bottom"]},"agentId":{"anyOf":[{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},{"type":"null"}],"description":"The agent last asked, offered first next time."},"lastDeliverySelection":{"description":"Managed by start_setup: remembered delivery selections per build.","type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"boolean"}}},"lastDeploymentSelection":{"description":"Managed by start_setup: whether each configured deployment was selected last time.","type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"boolean"}},"deployments":{"description":"Reusable setup choices. Missing or empty keeps the setup-prompt-only workflow.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"deliveries":{"description":"Present: build-only instructions with separately selectable delivery methods. Empty means build only. Absent: legacy combined build/deployment instructions.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"instructions":{"type":"string","minLength":1,"maxLength":2000},"kind":{"default":"custom","type":"string","examples":["custom","journal"]},"defaultSelection":{"default":"on","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","kind","defaultSelection"]}},"instructions":{"type":"string","minLength":1,"maxLength":2000},"selectedByDefault":{"default":true,"description":"Legacy default; used when defaultSelection is absent.","type":"boolean"},"defaultSelection":{"description":"Default for new runs: on, off, or repeat the last setup selection (on until first used).","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","selectedByDefault"]}},"journalSheetId":{"description":"Optional Journal tab on this board where setup records builds and deployment links.","anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["setupPrompt","digestPrompt","digestMode","target","cardPlacement","agentId"]},"runs":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"setupStartedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"setupTimings":{"type":"object","properties":{"time_to_playable":{"description":"Milliseconds from setup request to first ready, recorded by the server.","type":"integer","minimum":0,"maximum":9007199254740991},"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildReadyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"enginePinMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"exportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"uploadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"reportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"stageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildTotalMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"optimizeMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"packageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheLockMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheFingerprintMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheRestoreMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheSaveMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyApplyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyReimportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyVerifyMs":{"type":"integer","minimum":0,"maximum":9007199254740991}}},"setupTimeline":{"type":"object","properties":{"clock":{"type":"string","const":"monotonic"},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"milestones":{"minItems":1,"maxItems":64,"type":"array","items":{"type":"object","properties":{"phase":{"type":"string","examples":["first_read","engine_pin_start","engine_pin_end","build_ready_start","build_ready_end","build_start","build_end","inspection_start","inspection_end","upload_start","upload_end","delivery_start","delivery_end","report_start","report_end","report_error"]},"elapsedMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["phase","elapsedMs"]}},"truncated":{"type":"boolean","const":true}},"required":["clock","startedAt","milestones"]},"shutdown":{"type":"object","properties":{"requestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"queuedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"timings":{"type":"object","properties":{"processStopMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"fileCleanupMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"hostingCleanupMs":{"type":"integer","minimum":0,"maximum":9007199254740991}}},"detail":{"type":"string","maxLength":4000}}},"platformSetups":{"maxItems":48,"type":"array","items":{"type":"object","properties":{"setupTimings":{"type":"object","properties":{"time_to_playable":{"description":"Milliseconds from setup request to first ready, recorded by the server.","type":"integer","minimum":0,"maximum":9007199254740991},"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildReadyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"enginePinMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"exportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"uploadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"reportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"stageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildTotalMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"optimizeMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"packageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheLockMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheFingerprintMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheRestoreMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheSaveMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyApplyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyReimportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyVerifyMs":{"type":"integer","minimum":0,"maximum":9007199254740991}}},"setupTimeline":{"type":"object","properties":{"clock":{"type":"string","const":"monotonic"},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"milestones":{"minItems":1,"maxItems":64,"type":"array","items":{"type":"object","properties":{"phase":{"type":"string","examples":["first_read","engine_pin_start","engine_pin_end","build_ready_start","build_ready_end","build_start","build_end","inspection_start","inspection_end","upload_start","upload_end","delivery_start","delivery_end","report_start","report_end","report_error"]},"elapsedMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["phase","elapsedMs"]}},"truncated":{"type":"boolean","const":true}},"required":["clock","startedAt","milestones"]},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"requestedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"agent":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"]},"mode":{"type":"string","examples":["queue","interrupt"]},"status":{"type":"string","examples":["requested","ready","failed","cancelled"]},"deployments":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"deliveries":{"description":"Present: build-only instructions with separately selectable delivery methods. Empty means build only. Absent: legacy combined build/deployment instructions.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"instructions":{"type":"string","minLength":1,"maxLength":2000},"kind":{"default":"custom","type":"string","examples":["custom","journal"]},"defaultSelection":{"default":"on","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","kind","defaultSelection"]}},"instructions":{"type":"string","minLength":1,"maxLength":2000},"selectedByDefault":{"default":true,"description":"Legacy default; used when defaultSelection is absent.","type":"boolean"},"defaultSelection":{"description":"Default for new runs: on, off, or repeat the last setup selection (on until first used).","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","selectedByDefault"]}},"journalSheetId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"deliveriesOnly":{"description":"Builds already in the run: only their listed deliveries are new; reuse the existing output.","maxItems":12,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"prompt":{"type":"string","maxLength":32000},"sourceCheckout":{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},"checkout":{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},"access":{"anyOf":[{"type":"object","properties":{"links":{"maxItems":24,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":80},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}],"description":"Where to open the product, when it has one."},"instructions":{"type":"string","maxLength":4000,"description":"How to reach and use it: login, seed data, what is ready and what is not. Markdown."},"reportedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["url","instructions","reportedAt","author"]},{"type":"null"}]},"error":{"type":"string","maxLength":4000},"whatsNew":{"type":"string","maxLength":4000}},"required":["id","requestedAt","requestedBy","agent","mode","status","deployments","journalSheetId","prompt","access","error"]}},"live":{"type":"object","properties":{"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}]},"build":{"anyOf":[{"type":"object","properties":{"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"builtAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"file":{"type":"string","maxLength":2000,"format":"uri"}},"required":["number","builtAt"]},{"type":"null"}]},"rebuild":{"anyOf":[{"type":"object","properties":{"status":{"type":"string","examples":["requested","building","ready","failed"]},"requestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"requestedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"error":{"type":"string","maxLength":2000}},"required":["status","requestedAt","requestedBy","error"]},{"type":"null"}]}},"required":["branch","build","rebuild"]},"hostingSetupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"noteEndpoint":{"type":"object","properties":{"url":{"type":"string","maxLength":2048,"format":"uri"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["url","expiresAt"]},"hostedPreview":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","pattern":"^\\d{4}$"},"url":{"type":"string","format":"uri"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","expiresAt"]},"pendingHostedPreview":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","pattern":"^\\d{4}$"},"url":{"type":"string","format":"uri"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","expiresAt"]},"hosting":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","examples":["publishing","ready","failed"]},"filesDone":{"type":"integer","minimum":0,"maximum":9007199254740991},"filesTotal":{"type":"integer","minimum":0,"maximum":9007199254740991},"bytesDone":{"type":"number","minimum":0},"bytesTotal":{"type":"number","minimum":0},"error":{"type":"string","maxLength":500}},"required":["id","status","filesDone","filesTotal","bytesDone","bytesTotal"]},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"title":{"type":"string","minLength":1,"maxLength":120},"tag":{"type":"string","minLength":1,"maxLength":40,"description":"The label every card from this run carries."},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"comparisonCandidates":{"description":"Newest earlier successful tests at up to two distinct known commits, snapshotted at setup. Use the first differing from the actual checkout.","maxItems":2,"type":"array","items":{"type":"object","properties":{"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","maxLength":120},"checkout":{"anyOf":[{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},{"type":"null"}]}},"required":["runId","title","checkout"]}},"comparisonBase":{"description":"Nearest earlier successful test at a different known commit; resolved when checkout is reported. Null until then or if none exists.","anyOf":[{"type":"object","properties":{"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","maxLength":120},"checkout":{"anyOf":[{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},{"type":"null"}]}},"required":["runId","title","checkout"]},{"type":"null"}]},"whatsNew":{"description":"Agent-written Markdown summary of changes since comparisonBase, or an honest explanation when comparison is unavailable.","type":"string","minLength":1,"maxLength":4000},"checkout":{"description":"Source snapshot for the current setup. Absent on legacy runs or when Git metadata is unavailable.","type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},"status":{"type":"string","examples":["new","setting_up","ready","failed","stopping","stopped"],"description":"new: not started. setting_up: an agent is on it. ready: access reported. failed: setup went wrong. stopping: asked to shut down. stopped: the build is shut down."},"setupPrompt":{"type":"string","maxLength":32000,"description":"The full setup prompt, including selected deployments, as it was when setup was last asked for."},"lastDeploymentSelection":{"description":"Managed by start_setup: whether each configured deployment was selected last time.","type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"boolean"}},"deployments":{"description":"Snapshot of the original setup deployments; late additions are in platformSetups. Later settings changes do not alter either snapshot.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"deliveries":{"description":"Present: build-only instructions with separately selectable delivery methods. Empty means build only. Absent: legacy combined build/deployment instructions.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"instructions":{"type":"string","minLength":1,"maxLength":2000},"kind":{"default":"custom","type":"string","examples":["custom","journal"]},"defaultSelection":{"default":"on","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","kind","defaultSelection"]}},"instructions":{"type":"string","minLength":1,"maxLength":2000},"selectedByDefault":{"default":true,"description":"Legacy default; used when defaultSelection is absent.","type":"boolean"},"defaultSelection":{"description":"Default for new runs: on, off, or repeat the last setup selection (on until first used).","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","selectedByDefault"]}},"journalSheetId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"agent":{"anyOf":[{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"]},{"type":"null"}]},"wake":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"]},"access":{"anyOf":[{"type":"object","properties":{"links":{"maxItems":24,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":80},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}],"description":"Where to open the product, when it has one."},"instructions":{"type":"string","maxLength":4000,"description":"How to reach and use it: login, seed data, what is ready and what is not. Markdown."},"reportedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["url","instructions","reportedAt","author"]},{"type":"null"}]},"error":{"type":"string","maxLength":4000},"digests":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"timings":{"type":"object","properties":{"readMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"requestMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"workerStartMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"noteReadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"draftMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"cardWriteMs":{"type":"integer","minimum":0,"maximum":9007199254740991}}},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"requestedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"agent":{"anyOf":[{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"]},{"type":"null"}]},"mode":{"type":"string","examples":["direct","reviewed"]},"prompt":{"type":"string","maxLength":32000,"description":"The digest prompt as it was when this digest was asked for."},"target":{"anyOf":[{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","columnId"]},{"type":"null"}]},"noteIds":{"maxItems":2000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"description":"The notes this digest covers: those not yet digested when it was asked for."},"shutDownAfter":{"default":false,"description":"After the digest, shut the build down and report_access status stopped.","type":"boolean"},"status":{"type":"string","examples":["requested","proposed","done"],"description":"requested: waiting for the agent. proposed: cards proposed, a person picks. done: cards created."},"summary":{"type":"string","maxLength":4000},"cards":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","maxLength":300},"noteIds":{"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["cardId","title","noteIds"]}},"proposals":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"noteIds":{"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"status":{"type":"string","examples":["pending","accepted","dismissed"]},"cardId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"The card it became, once accepted."}},"required":["id","title","description","labels","noteIds","status","cardId"]}},"completedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]}},"required":["id","requestedAt","requestedBy","agent","mode","prompt","target","noteIds","shutDownAfter","status","summary","cards","proposals","completedAt"]}}},"required":["id","number","title","tag","createdAt","createdBy","status","setupPrompt","agent","access","error","digests"]}},"runOrder":{"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"notes":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"screenName":{"description":"Product screen or scene when the tester opened the note.","type":"string","minLength":1,"maxLength":200},"text":{"type":"string","maxLength":8000},"attachments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"digestId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"The digest that covered this note."},"autoFix":{"type":"boolean"},"ownerReview":{"description":"Tester requests owner review; false or absent leaves routing automatic.","type":"boolean"},"build":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"fix":{"type":"object","properties":{"status":{"type":"string","examples":["queued","fixing","fixed","deferred","failed"]},"detail":{"type":"string","maxLength":500},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"build":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"target":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","columnId"]},"cards":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"status":{"type":"string","examples":["queued","fixing","fixed","review","deferred","failed"]},"detail":{"type":"string","maxLength":500},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"build":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"verified":{"type":"object","properties":{"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["by","at"]}},"required":["cardId","title","status","detail","at"]}},"verified":{"type":"object","properties":{"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["by","at"]}},"required":["status","detail","at"]},"cardIds":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"description":"Cards made from this note."}},"required":["id","runId","author","createdAt","updatedAt","text","attachments","digestId","cardIds"]}},"noteOrder":{"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"nextRunNumber":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["version","settings","runs","runOrder","notes","noteOrder"]},"hostedPages":{"type":"object","properties":{"version":{"type":"number","const":1},"pages":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"assetId":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]},"publication":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string","format":"uri"},"publishedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","publishedAt"]},{"type":"null"}]},"pendingPublication":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string","format":"uri"},"publishedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","publishedAt"]},"hosting":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","examples":["publishing","ready","failed"]},"filesDone":{"type":"integer","minimum":0,"maximum":9007199254740991},"filesTotal":{"type":"integer","minimum":0,"maximum":9007199254740991},"bytesDone":{"type":"number","minimum":0},"bytesTotal":{"type":"number","minimum":0},"error":{"type":"string","maxLength":500}},"required":["id","status","filesDone","filesTotal","bytesDone","bytesTotal"]},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","title","assetId","publication","updatedAt","updatedBy"]}}},"required":["version","pages"]},"analytics":{"description":"An Analytics tab's settings and report definitions (checked in full on import); read_analytics describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"support":{"description":"A Support tab's settings (checked in full on import); tickets are not part of the document.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"experiments":{"description":"An Experiments tab's settings; experiments are not part of the document.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"crashes":{"description":"A Crashes tab's settings; issues are its stream's events.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"digitalAds":{"description":"A Digital Ads tab's settings; creatives, ads and metrics are not part of the document.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"localization":{"description":"A Localization tab's settings; entries and translations are not part of the document.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"storeAssets":{"type":"object","properties":{"version":{"type":"number","const":1},"destinations":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"template":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"checkedAt":{"type":"string","maxLength":30},"notes":{"type":"string","maxLength":3000},"localization":{"type":"object","properties":{"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"aliases":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"string","maxLength":30}},"verified":{"type":"boolean"},"sourceUrl":{"type":"string","format":"uri"}},"required":["supported","aliases","verified","sourceUrl"]},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled","allowFallback","containsText"]},"section":{"type":"string","examples":["copy","images","video","files"]},"kind":{"type":"string","examples":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}},"verified":{"type":"boolean"}},"required":["id","label","section","kind","required","help","scope","rules"]}}},"required":["id","name","version","sourceUrl","checkedAt","notes","slots"]},{"type":"null"}]},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled","allowFallback","containsText"]},"section":{"type":"string","examples":["copy","images","video","files"]},"kind":{"type":"string","examples":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}},"verified":{"type":"boolean"}},"required":["id","label","section","kind","required","help","scope","rules"]}},"productSource":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productIdColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"Store SKU column; null uses the Type Data record ID. IDs are joined exactly; empty SKUs are skipped."}},"required":["sheetId","tableId","productIdColumnId"]},"products":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productId":{"type":"string","minLength":1,"maxLength":150,"pattern":"^[A-Za-z0-9][A-Za-z0-9_.-]*$"},"type":{"type":"string","examples":["one-time","consumable","non-consumable","subscription"]},"status":{"type":"string","examples":["draft","active"]},"storeSource":{"type":"object","properties":{"resource":{"type":"string","examples":["inappproducts","onetimeproducts"]},"packageName":{"type":"string","minLength":1,"maxLength":255},"purchaseOptionId":{"type":"string","maxLength":63},"baseRegion":{"type":"string","pattern":"^[A-Z]{2}$"}},"required":["resource","packageName"]},"basePrice":{"anyOf":[{"type":"object","properties":{"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceMicros":{"type":"string","pattern":"^[1-9][0-9]{0,17}$"}},"required":["currency","priceMicros"]},{"type":"null"}]},"prices":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Z]{2}$"},"additionalProperties":{"type":"object","properties":{"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceMicros":{"type":"string","pattern":"^[1-9][0-9]{0,17}$"}},"required":["currency","priceMicros"]}}},"required":["id","productId"]}},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]}},"localization":{"type":"object","properties":{"storeSheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"languages":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}}},"required":["sheetId","base","languages"]},"localizationArchive":{"type":"object","properties":{"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"languages":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"fields":{"maxItems":20000,"type":"array","items":{"type":"object","properties":{"slotId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"lang":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"live":{"anyOf":[{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]},{"type":"null"}]},"draft":{"anyOf":[{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]},{"type":"null"}]}},"required":["slotId","lang","live","draft"]}}},"required":["base","languages","fields"]},"generations":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"pending":{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"outputs":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}},"required":["pending","outputs"]}},"history":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"field":{"type":"string","maxLength":100},"before":{},"after":{},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","field","before","after","at","by"]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","name","template","slots","values","generations","history","createdAt","updatedAt"]}},"order":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["version","destinations","order"]},"journal":{"description":"A Journal tab's entries and settings (checked in full on import); read_journal describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"pipeline":{"description":"A Pipeline tab (checked in full on import); read_pipeline describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"artBible":{"description":"An Art Bible tab; read_art_bible describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"slideDeck":{"description":"A Slide Deck tab's deck (checked in full on import); read_slide_deck describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"gitRepo":{"type":"object","properties":{"provider":{"default":"github","type":"string","examples":["github"]},"owner":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"repo":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"branch":{"default":"","type":"string","maxLength":200,"pattern":"^[^\\s~^:?*[\\\\]*$"},"path":{"default":"","type":"string","maxLength":500,"pattern":"^(?!\\/)(?!.*\\.\\.)[^\\s]*$"},"notes":{"default":"","type":"string","maxLength":4000}},"required":["provider","owner","repo","branch","path","notes"]},"reviewStream":{"type":"object","properties":{"version":{"type":"number","const":1},"entries":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"rounds":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"clipStage":{"type":"string","examples":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"]}}},"required":["id","prompt","options"]}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"]},"refines":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"picks":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"labels":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","maxLength":200}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["round","picks","labels","variants"]},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"snapshots":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"card":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","columnId","rank","archived","dependsOn","title","description","labels","dueDate","checklist","links","branch","worktree"]}},"required":["type","sheetId","cardId","title","card"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy","id","number","savedAt","savedBy"]}},"required":["type","assetId","versionId","title","version"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"required":["type","sheetId","screenId","title","screen"]}]}},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}}},"required":["notes","items","links","attachments","number","createdAt","author","reviewers"]}},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"integer","minimum":0,"maximum":1000},"messages":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"body":{"type":"string","maxLength":8000},"links":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"action":{"type":"string","examples":["comment","approved","approved_with_changes","refined","rejected","cancelled","submitted","claimed","escalated","reassigned"]},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["id","round","body","links","attachments","author","createdAt","action"]}},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","title","author","createdAt","submittedAt","status","round","rounds","claims","messages"]}}},"required":["version","entries"]},"research":{"type":"object","properties":{"version":{"type":"number","const":1},"description":{"type":"string","maxLength":10000},"parameters":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"default":"","type":"string","maxLength":10000},"group":{"default":"","type":"string","maxLength":100},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"default":"","type":"string","maxLength":80},"currency":{"default":"USD","type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"default":2,"type":"integer","minimum":0,"maximum":6},"ratingMax":{"default":5,"type":"number","minimum":1,"maximum":100},"comparisonColor":{"default":"none","description":"Numeric comparison coloring; high/low chooses the green end. Missing and equal values stay neutral.","type":"string","examples":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"default":200,"type":"number","minimum":100,"maximum":800},"hidden":{"default":[],"type":"array","items":{"type":"string","examples":["table","detail","compare"]}},"archived":{"default":false,"type":"boolean"}},"required":["id","name","type","description","group","options","unit","currency","decimals","ratingMax","comparisonColor","width","hidden","archived"]}},"parameterOrder":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"subjects":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"]},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"tags":{"default":[],"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"default":false,"type":"boolean"},"content":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]}},"required":["id","type","title","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"]}]}},"contentOrder":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","values","tags","archived","content","contentOrder"]}},"subjectOrder":{"maxItems":10000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"]}},"required":["version","description","parameters","parameterOrder","subjects","subjectOrder","layout"]},"assetBoard":{"type":"object","properties":{"placements":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"required":["id","assetId","x","y","width","height","groupId","pinnedVersionId","archived"]}},"groups":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"required":["id","name","x","y","width","height","archived"]}}},"required":["placements","groups"]},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"content":{"type":"object","properties":{"type":{"type":"string","const":"doc"},"content":{"minItems":1,"type":"array","items":{"$ref":"#/$defs/__schema3"}}},"required":["type","content"]},"data":{"type":"object","properties":{"version":{"type":"number","const":1},"description":{"default":"","type":"string","maxLength":20000},"tables":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":20000},"primaryDisplayColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"nextId":{"default":1,"type":"integer","minimum":1,"maximum":9007199254740991},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"columns":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","name","description","type","required","unique","immutable","autoNumber","defaultValue","options","referenceTableId","referenceColumnId","width"]}},"records":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","values"]}}},"required":["id","name","description","nextId","columns","records"]}}},"required":["version","description","tables"]},"kanban":{"type":"object","properties":{"version":{"type":"number","const":1},"description":{"type":"string","maxLength":2000},"instructions":{"type":"string","maxLength":20000},"columns":{"minItems":1,"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","examples":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"}},"required":["id","name","color"]}},"cards":{"maxItems":5000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"assignees":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"discussion":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","body","createdAt","author"]}},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"touchedBy":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72},"firstAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"lastAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"outside":{"type":"object","properties":{"kind":{"type":"string","examples":["email"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["kind","at"]}},"required":["userId","name","source","firstAt","lastAt"]}},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","columnId","rank","archived","dependsOn","title","description","labels","dueDate","checklist","links","branch","worktree"]}}},"required":["version","columns","cards"]},"wireframe":{"type":"object","properties":{"stateLayers":{"maxItems":256,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatchOutput"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentOutput"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatchOutput"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}}}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]},{"type":"null"}]}}},"required":["id","name","condition","screens","interactions"]}},"purpose":{"type":"string","examples":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"version":{"type":"number","const":1},"startScreenId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"screens":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"interactions":{"maxItems":5000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}}},"required":["version","startScreenId","screens","interactions"]},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"parentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"behavior":{"type":"string","examples":["standard","archive"]},"encrypted":{"type":"boolean","const":true},"name":{"type":"string","minLength":1,"maxLength":48},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string"},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","examples":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","examples":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["id","x","y","width","height","text","shape","style"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string"},"connectors":{"type":"string","examples":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["id","from","to"]}},"connectors":{"type":"string","examples":["smooth","elbow"]},"camera":{"type":"object","properties":{"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"zoom":{"type":"number","exclusiveMinimum":0}},"required":["x","y","zoom"]}},"required":["id","name","nodes","edges","connectors"]}}},"required":["kind","version","id","name","savedAt","prefabs","sheets"]}]},"nextCursor":{"description":"More records follow: call again with cursor.","type":["string","null"]},"changesToken":{"type":"string"},"delta":{"type":"object","properties":{"tables":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}}},"required":["tables"]},"pagedSheets":{"description":"Tabs exported without records; export each by sheetId.","type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["format","revision","document"]},{"type":"object","properties":{"format":{"type":"string","const":"mermaid"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"mermaid":{"type":"string"}},"required":["format","revision","mermaid"]}],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema2"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema2"}}]},"__schema3":{"type":"object","properties":{"type":{"type":"string","examples":["doc","paragraph","heading","text","bulletList","orderedList","listItem","taskList","taskItem","blockquote","codeBlock","hardBreak","horizontalRule","image","table","tableRow","tableCell","tableHeader"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema4"}},"text":{"type":"string"},"marks":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","examples":["bold","italic","strike","underline","code","link","textStyle","highlight"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema5"}}},"required":["type"]}},"content":{"type":"array","items":{"$ref":"#/$defs/__schema3"}}},"required":["type"]},"__schema4":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema4"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema4"}}]},"__schema5":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema5"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema5"}}]}}}}}},"400":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"401":{"description":"OAuth token required","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"403":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"404":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"409":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"410":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"413":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"422":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"428":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"429":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}},"503":{"description":"Domain error; see code","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorBody"}}}}}}}},"components":{"schemas":{"WireframeComponent":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"annotation":{"description":"Explicit design annotation; omitted means ordinary product UI. Annotation appearance is independent of UI styling. Never interactive.","type":"object","properties":{"anchor":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"],"additionalProperties":false}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."}},"additionalProperties":false},"visible":{"type":"boolean"},"enabled":{"type":"boolean"},"stateBinding":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"scroll":{"description":"Makes this element a scroll viewport: members (viewportId) are clipped to it and scroll; everything else stays fixed.","anyOf":[{"type":"string","enum":["vertical","horizontal","both"]},{"type":"null"}]},"scrollX":{"type":"number","minimum":0,"maximum":100000},"scrollY":{"description":"Initial scroll offset shown by renders and on arrival in the prototype.","type":"number","minimum":0,"maximum":100000},"viewportId":{"description":"Scroll viewport this element belongs to; x/y are then offsets in its content from the viewport top-left, and content may extend past its height.","anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"media":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"mediaFit":{"type":"string","enum":["cover","contain"]},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","enum":["text","heading","button","image_placeholder","icon_placeholder","card","panel","list_item","tab_bar","navigation_bar","modal","input","checkbox","toggle","progress_bar","slider","badge","currency_counter","timer","leaderboard_row","hud_element","container","hotspot"]},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"content":{"default":"","type":"string","maxLength":10000},"fontSize":{"default":16,"type":"number","minimum":6,"maximum":200},"fontWeight":{"default":400,"type":"integer","minimum":100,"maximum":900},"alignment":{"default":"left","type":"string","enum":["left","center","right"]},"fill":{"default":"#ffffff","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"color":{"default":"#302d27","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"border":{"default":"#a8a297","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"borderWidth":{"default":1,"type":"number","minimum":0,"maximum":20},"cornerRadius":{"default":4,"type":"number","minimum":0,"maximum":500},"opacity":{"default":1,"type":"number","minimum":0,"maximum":1},"locked":{"default":false,"type":"boolean"},"groupId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"masterId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["id","type","x","y","width","height"],"additionalProperties":false},"WireframeComponentOutput":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"annotation":{"description":"Explicit design annotation; omitted means ordinary product UI. Annotation appearance is independent of UI styling. Never interactive.","type":"object","properties":{"anchor":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"]},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"]}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."}}},"visible":{"type":"boolean"},"enabled":{"type":"boolean"},"stateBinding":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"scroll":{"description":"Makes this element a scroll viewport: members (viewportId) are clipped to it and scroll; everything else stays fixed.","anyOf":[{"type":"string","examples":["vertical","horizontal","both"]},{"type":"null"}]},"scrollX":{"type":"number","minimum":0,"maximum":100000},"scrollY":{"description":"Initial scroll offset shown by renders and on arrival in the prototype.","type":"number","minimum":0,"maximum":100000},"viewportId":{"description":"Scroll viewport this element belongs to; x/y are then offsets in its content from the viewport top-left, and content may extend past its height.","anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"media":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},{"type":"null"}]},"mediaFit":{"type":"string","examples":["cover","contain"]},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["text","heading","button","image_placeholder","icon_placeholder","card","panel","list_item","tab_bar","navigation_bar","modal","input","checkbox","toggle","progress_bar","slider","badge","currency_counter","timer","leaderboard_row","hud_element","container","hotspot"]},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"content":{"default":"","type":"string","maxLength":10000},"fontSize":{"default":16,"type":"number","minimum":6,"maximum":200},"fontWeight":{"default":400,"type":"integer","minimum":100,"maximum":900},"alignment":{"default":"left","type":"string","examples":["left","center","right"]},"fill":{"default":"#ffffff","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"color":{"default":"#302d27","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"border":{"default":"#a8a297","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"borderWidth":{"default":1,"type":"number","minimum":0,"maximum":20},"cornerRadius":{"default":4,"type":"number","minimum":0,"maximum":500},"opacity":{"default":1,"type":"number","minimum":0,"maximum":1},"locked":{"default":false,"type":"boolean"},"groupId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"masterId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["id","type","x","y","width","height","content","fontSize","fontWeight","alignment","fill","color","border","borderWidth","cornerRadius","opacity","locked","groupId","masterId"]},"WireframeComponentPatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"media":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"mediaFit":{"type":"string","enum":["cover","contain"]},"visible":{"type":"boolean"},"enabled":{"type":"boolean"},"stateBinding":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"scroll":{"anyOf":[{"type":"string","enum":["vertical","horizontal","both"]},{"type":"null"}]},"scrollX":{"type":"number","minimum":0,"maximum":100000},"scrollY":{"type":"number","minimum":0,"maximum":100000},"viewportId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"type":{"type":"string","enum":["text","heading","button","image_placeholder","icon_placeholder","card","panel","list_item","tab_bar","navigation_bar","modal","input","checkbox","toggle","progress_bar","slider","badge","currency_counter","timer","leaderboard_row","hud_element","container","hotspot"]},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"content":{"type":"string","maxLength":10000},"fontSize":{"type":"number","minimum":6,"maximum":200},"fontWeight":{"type":"integer","minimum":100,"maximum":900},"alignment":{"type":"string","enum":["left","center","right"]},"fill":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"color":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"border":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"borderWidth":{"type":"number","minimum":0,"maximum":20},"cornerRadius":{"type":"number","minimum":0,"maximum":500},"opacity":{"type":"number","minimum":0,"maximum":1},"locked":{"type":"boolean"},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"masterId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"additionalProperties":false},"WireframeComponentPatchOutput":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"media":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},{"type":"null"}]},"mediaFit":{"type":"string","examples":["cover","contain"]},"visible":{"type":"boolean"},"enabled":{"type":"boolean"},"stateBinding":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"scroll":{"anyOf":[{"type":"string","examples":["vertical","horizontal","both"]},{"type":"null"}]},"scrollX":{"type":"number","minimum":0,"maximum":100000},"scrollY":{"type":"number","minimum":0,"maximum":100000},"viewportId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"type":{"type":"string","examples":["text","heading","button","image_placeholder","icon_placeholder","card","panel","list_item","tab_bar","navigation_bar","modal","input","checkbox","toggle","progress_bar","slider","badge","currency_counter","timer","leaderboard_row","hud_element","container","hotspot"]},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"content":{"type":"string","maxLength":10000},"fontSize":{"type":"number","minimum":6,"maximum":200},"fontWeight":{"type":"integer","minimum":100,"maximum":900},"alignment":{"type":"string","examples":["left","center","right"]},"fill":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"color":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"border":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"borderWidth":{"type":"number","minimum":0,"maximum":20},"cornerRadius":{"type":"number","minimum":0,"maximum":500},"opacity":{"type":"number","minimum":0,"maximum":1},"locked":{"type":"boolean"},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"masterId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}}},"WireframeElementOverride":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"media":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"mediaFit":{"type":"string","enum":["cover","contain"]},"visible":{"type":"boolean"},"enabled":{"type":"boolean"},"stateBinding":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"scroll":{"anyOf":[{"type":"string","enum":["vertical","horizontal","both"]},{"type":"null"}]},"scrollX":{"type":"number","minimum":0,"maximum":100000},"scrollY":{"type":"number","minimum":0,"maximum":100000},"viewportId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"type":{"type":"string","enum":["text","heading","button","image_placeholder","icon_placeholder","card","panel","list_item","tab_bar","navigation_bar","modal","input","checkbox","toggle","progress_bar","slider","badge","currency_counter","timer","leaderboard_row","hud_element","container","hotspot"]},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"content":{"type":"string","maxLength":10000},"fontSize":{"type":"number","minimum":6,"maximum":200},"fontWeight":{"type":"integer","minimum":100,"maximum":900},"alignment":{"type":"string","enum":["left","center","right"]},"fill":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"color":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"border":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"borderWidth":{"type":"number","minimum":0,"maximum":20},"cornerRadius":{"type":"number","minimum":0,"maximum":500},"opacity":{"type":"number","minimum":0,"maximum":1},"locked":{"type":"boolean"},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"masterId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"annotation":{"type":"object","properties":{"anchor":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"],"additionalProperties":false}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."}},"additionalProperties":false}},"additionalProperties":false},"WireframeElementOverrideOutput":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"media":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},{"type":"null"}]},"mediaFit":{"type":"string","examples":["cover","contain"]},"visible":{"type":"boolean"},"enabled":{"type":"boolean"},"stateBinding":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"scroll":{"anyOf":[{"type":"string","examples":["vertical","horizontal","both"]},{"type":"null"}]},"scrollX":{"type":"number","minimum":0,"maximum":100000},"scrollY":{"type":"number","minimum":0,"maximum":100000},"viewportId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"type":{"type":"string","examples":["text","heading","button","image_placeholder","icon_placeholder","card","panel","list_item","tab_bar","navigation_bar","modal","input","checkbox","toggle","progress_bar","slider","badge","currency_counter","timer","leaderboard_row","hud_element","container","hotspot"]},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"content":{"type":"string","maxLength":10000},"fontSize":{"type":"number","minimum":6,"maximum":200},"fontWeight":{"type":"integer","minimum":100,"maximum":900},"alignment":{"type":"string","examples":["left","center","right"]},"fill":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"color":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"border":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"borderWidth":{"type":"number","minimum":0,"maximum":20},"cornerRadius":{"type":"number","minimum":0,"maximum":500},"opacity":{"type":"number","minimum":0,"maximum":1},"locked":{"type":"boolean"},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"masterId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"annotation":{"type":"object","properties":{"anchor":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"]},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"]}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."}}}}},"WireframeScreenPatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"hierarchyPosition":{"type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"],"additionalProperties":false},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The screen's tags, replacing any it has. [] removes them. Reuse the board's spelling from read_tags."}},"additionalProperties":false},"WireframeScreenPatchOutput":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"hierarchyPosition":{"type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The screen's tags, replacing any it has. [] removes them. Reuse the board's spelling from read_tags."}}},"ToolSchemaReference":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"toolName":{"type":"string"},"description":{"type":"string"},"scope":{"type":"string","examples":["tool","envelope","operation"]},"operationTypes":{"type":"array","items":{"type":"string"}},"inputSchema":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["toolName","description","scope","operationTypes","inputSchema"]},"ToolList":{"type":"object","required":["tools"],"properties":{"tools":{"type":"array","items":{"type":"object","required":["name","readOnly","receipt","summary"],"properties":{"name":{"type":"string"},"readOnly":{"type":"boolean"},"receipt":{"type":"boolean","description":"Send a requestId; the mutation stores an idempotency receipt."},"summary":{"type":"string"},"limitMax":{"type":"integer","description":"Largest page size."},"operationsMax":{"type":"integer","description":"Most operations per call."},"agentId":{"type":"boolean","description":"Takes a batch agentId (QRAFT_AGENT_ID)."},"expectedRevision":{"type":"string","enum":["required","optional"]},"sheetId":{"type":"string","enum":["required","optional"]}}}}}},"ToolCall":{"type":"object","description":"The named tool's MCP result body, unchanged. See the tool reference for each shape."},"AssetPoster":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"videoId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"ready":{"type":"boolean","const":true}},"required":["videoId","posterId","ready"]},"VideoAssets":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"videos":{"maxItems":32,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"bytes":{"type":"number"},"mimeType":{"type":"string"},"posterReady":{"type":"boolean"}},"required":["id","bytes","mimeType","posterReady"]}},"nextCursor":{"type":["string","null"]}},"required":["videos","nextCursor"]},"AssetDownloads":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"downloads":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"info":{"type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]},"url":{"type":"string","format":"uri"},"expiresAt":{"type":"string"},"variant":{"type":"string","examples":["original","preview"]}},"required":["info","url","expiresAt","variant"]}}},"required":["downloads"]},"AssetInfo":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]},"AssetUpload":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"url":{"type":"string"},"method":{"type":"string","const":"PUT"},"headers":{"type":"object","properties":{"Authorization":{"type":"string"},"Content-Type":{"type":"string","const":"application/octet-stream"}},"required":["Authorization","Content-Type"]},"expiresAt":{"type":"string"},"bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"parts":{"description":"Present for files over 16 MiB: PUT each part to url?part=N (1..count, part 1 first), body = bytes [(N-1)*partBytes, N*partBytes). The last part completes the upload and returns the asset.","type":"object","properties":{"partBytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["partBytes","count"]},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current overall upload ceiling in bytes; type-specific limits may be lower."},"maxRasterBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current raster-image upload ceiling in bytes."},"maxTextBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current text upload ceiling in bytes."},"finalization":{"type":"string","const":"automatic"},"instructions":{"type":"string"}},"required":["boardId","assetId","url","method","headers","expiresAt","bytes","maxBytes","maxRasterBytes","maxTextBytes","finalization","instructions"]},"AssetUploadBatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"method":{"type":"string","const":"PUT"},"headers":{"type":"object","properties":{"Authorization":{"type":"string"},"Content-Type":{"type":"string","const":"application/octet-stream"}},"required":["Authorization","Content-Type"],"description":"For every PUT in the batch."},"uploads":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"url":{"type":"string"},"bytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"parts":{"description":"Present for files over 16 MiB: PUT each part to url?part=N (1..count, part 1 first), body = bytes [(N-1)*partBytes, N*partBytes). The last part completes the upload and returns the asset.","type":"object","properties":{"partBytes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"count":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991}},"required":["partBytes","count"]}},"required":["assetId","url","bytes"]}},"expiresAt":{"type":"string"},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current overall upload ceiling in bytes; type-specific limits may be lower."},"maxRasterBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current raster-image upload ceiling in bytes."},"maxTextBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Current text upload ceiling in bytes."},"finalization":{"type":"string","const":"automatic"},"instructions":{"type":"string"}},"required":["boardId","method","headers","uploads","expiresAt","maxBytes","maxRasterBytes","maxTextBytes","finalization","instructions"]},"AssetUploadStatus":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"requestId":{"type":"string"},"status":{"type":"string","examples":["not_found","pending","ready"]},"asset":{"type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]},"parts":{"description":"Pending multipart recovery: acknowledged part numbers. Resume only missing parts; if all are received, retry any part to finish verification.","type":"object","properties":{"partBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"count":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"received":{"type":"array","items":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}}},"required":["partBytes","count","received"]},"receiptExpiresAt":{"type":"string"}},"required":["boardId","status"]},"AssetVersionExport":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"filename":{"type":"string"},"mimeType":{"type":"string","const":"application/zip"},"data":{"type":"string"},"manifest":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetName":{"type":"string"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"number"},"name":{"type":"string"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"notes":{"type":"string"},"parts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"sourceUrl":{"type":"string"},"prompt":{"type":"string"},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}},"filename":{"type":"string"},"text":{"type":"string"},"mediaId":{"type":"string"},"mimeType":{"type":"string"},"url":{"type":"string"},"posterUrl":{"type":"string"},"posterFilename":{"type":"string"}},"required":["id","name","type","filename"]}}},"required":["assetId","assetName","versionId","number","name","sourceVersionId","notes","parts"]}},"required":["filename","mimeType","data","manifest"]},"ResearchRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"research"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"description":{"type":"string"},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"]},"parameters":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"default":"","type":"string","maxLength":10000},"group":{"default":"","type":"string","maxLength":100},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"default":"","type":"string","maxLength":80},"currency":{"default":"USD","type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"default":2,"type":"integer","minimum":0,"maximum":6},"ratingMax":{"default":5,"type":"number","minimum":1,"maximum":100},"comparisonColor":{"default":"none","description":"Numeric comparison coloring; high/low chooses the green end. Missing and equal values stay neutral.","type":"string","examples":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"default":200,"type":"number","minimum":100,"maximum":800},"hidden":{"default":[],"type":"array","items":{"type":"string","examples":["table","detail","compare"]}},"archived":{"default":false,"type":"boolean"}},"required":["id","name","type","description","group","options","unit","currency","decimals","ratingMax","comparisonColor","width","hidden","archived"]}},"subjects":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"]},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"tags":{"default":[],"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"default":false,"type":"boolean"},"content":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]}},"required":["id","type","title","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"]}]}},"contentOrder":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","values","tags","archived","content","contentOrder"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["type","boardId","sheetId","revision","documentRevision","description","layout","parameters","subjects","total","nextCursor","partial"]},"ResearchCommand":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"description":"Atomic, minimal updates. Example: [{type:\"add_subject\",subject:{id:\"subject_a\",values:{name:\"Subject A\"}}},{type:\"set_values\",edits:[{subjectId:\"subject_a\",parameterId:\"name\",expectedType:\"text\",expected:\"Subject A\",value:\"Updated subject\"}]}]. IDs are caller assigned. patch_parameter/patch_subject/configure must include the previous value of each patched field in expected. Archive with patch_subject or patch_parameter archived=true; restore with false. Values use null for missing, never false. put_content edits one stable research block, not the whole subject.","oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"add_parameter"},"parameter":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","enum":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"default":"","type":"string","maxLength":10000},"group":{"default":"","type":"string","maxLength":100},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"default":"","type":"string","maxLength":80},"currency":{"default":"USD","type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"default":2,"type":"integer","minimum":0,"maximum":6},"ratingMax":{"default":5,"type":"number","minimum":1,"maximum":100},"comparisonColor":{"default":"none","description":"Numeric comparison coloring; high/low chooses the green end. Missing and equal values stay neutral.","type":"string","enum":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"default":200,"type":"number","minimum":100,"maximum":800},"hidden":{"default":[],"type":"array","items":{"type":"string","enum":["table","detail","compare"]}},"archived":{"default":false,"type":"boolean"}},"required":["id","name","type"],"additionalProperties":false}},"required":["type","parameter"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_parameter"},"parameterId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","enum":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"type":"string","maxLength":10000},"group":{"type":"string","maxLength":100},"options":{"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"type":"string","maxLength":80},"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"type":"integer","minimum":0,"maximum":6},"ratingMax":{"type":"number","minimum":1,"maximum":100},"comparisonColor":{"type":"string","enum":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"type":"number","minimum":100,"maximum":800},"hidden":{"type":"array","items":{"type":"string","enum":["table","detail","compare"]}},"archived":{"type":"boolean"}},"additionalProperties":false},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","enum":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"type":"string","maxLength":10000},"group":{"type":"string","maxLength":100},"options":{"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"type":"string","maxLength":80},"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"type":"integer","minimum":0,"maximum":6},"ratingMax":{"type":"number","minimum":1,"maximum":100},"comparisonColor":{"type":"string","enum":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"type":"number","minimum":100,"maximum":800},"hidden":{"type":"array","items":{"type":"string","enum":["table","detail","compare"]}},"archived":{"type":"boolean"}},"additionalProperties":false}},"required":["type","parameterId","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_parameters"},"expected":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"ids":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","expected","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_subject"},"subject":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"],"additionalProperties":false},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"additionalProperties":false,"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"tags":{"default":[],"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"default":false,"type":"boolean"},"content":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","type","title","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"],"additionalProperties":false}]}},"contentOrder":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","values"],"additionalProperties":false}},"required":["type","subject"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_values"},"edits":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"parameterId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedType":{"type":"string","enum":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"expected":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"],"additionalProperties":false},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"additionalProperties":false,"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]},"value":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"],"additionalProperties":false},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"additionalProperties":false,"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"required":["subjectId","parameterId","expectedType","expected","value"],"additionalProperties":false}}},"required":["type","edits"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_subject"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"type":"boolean"}}},"patch":{"type":"object","properties":{"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"type":"boolean"}}}},"required":["type","subjectId","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_content"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"anyOf":[{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","type","title","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"],"additionalProperties":false}]},{"type":"null"}]},"content":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","type","title","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"],"additionalProperties":false}]}},"required":["type","subjectId","expected","content"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_content"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"contentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","type","title","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"],"additionalProperties":false}]}},"required":["type","subjectId","contentId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"configure"},"expected":{"type":"object","properties":{"description":{"type":"string"},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"],"additionalProperties":false}},"additionalProperties":false},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":10000},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"],"additionalProperties":false}},"additionalProperties":false}},"required":["type","expected","patch"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations","boardId"],"additionalProperties":false},"AssetBoardRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"asset_board"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"view":{"type":"string"},"availableSections":{"type":"array","items":{"type":"string","examples":["asset","history","version","draft"]}},"models":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"assets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":100000},"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"notes":{"type":"string","maxLength":100000},"links":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","sheetId"]}},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"archived":{"type":"boolean"},"selectedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"latestVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"latestNumber":{"type":"number"},"selectedNumber":{"type":["number","null"]},"hasDraft":{"type":"boolean"},"cover":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type"]},{"type":"null"}]},"partCount":{"type":"number"}},"required":["name","tags","id","archived","selectedVersionId","latestVersionId","latestNumber","selectedNumber","hasDraft","cover","partCount"]}},"placements":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"required":["id","assetId","x","y","width","height","groupId","pinnedVersionId","archived"]}},"groups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"required":["id","name","x","y","width","height","archived"]}},"versions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","maxLength":300},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"},"partCount":{"type":"number"}},"required":["id","number","name","sourceVersionId","coverPartId","savedAt","savedBy","partCount"]}},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","createdAt","createdBy","id","number","savedAt","savedBy"]},"draft":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"}},"required":["id","sourceVersionId","name","notes","coverPartId","createdAt","createdBy"]},"parts":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"comparison":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","examples":["added","removed","changed","unchanged"]},"before":{"anyOf":[{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]},{"type":"null"}]},"after":{"anyOf":[{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]},{"type":"null"}]}},"required":["id","status","before","after"]}},"manifest":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetName":{"type":"string"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"number"},"name":{"type":"string"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"notes":{"type":"string"},"parts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"sourceUrl":{"type":"string"},"prompt":{"type":"string"},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}},"filename":{"type":"string"},"text":{"type":"string"},"mediaId":{"type":"string"},"mimeType":{"type":"string"},"url":{"type":"string"},"posterUrl":{"type":"string"},"posterFilename":{"type":"string"}},"required":["id","name","type","filename"]}}},"required":["assetId","assetName","versionId","number","name","sourceVersionId","notes","parts"]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","boardId","sheetId","revision","documentRevision","view","availableSections","assets","placements","groups","versions","parts","comparison","partial","nextCursor"]},"AssetBoardCommand":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"delete_asset"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId"],"additionalProperties":false,"description":"Permanently delete this asset, all versions/draft and every placement in this document including tab Trash. Cannot undo. Unreferenced media and retained copies are reclaimed asynchronously; media still used elsewhere is preserved."},{"type":"object","properties":{"type":{"type":"string","const":"delete_placement"},"placementId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","placementId"],"additionalProperties":false,"description":"Permanently remove only this placement. The shared asset, versions and media remain in the library."},{"type":"object","properties":{"type":{"type":"string","const":"delete_group"},"groupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","groupId"],"additionalProperties":false,"description":"Permanently remove this group and ungroup its cards. Assets are preserved."},{"type":"object","properties":{"type":{"type":"string","const":"auto_layout"},"viewportAspectRatio":{"description":"Visible canvas width divided by height, excluding toolbars and inspector. Searches group and card arrangements to maximize fit-to-content scale. Example: {type:\"auto_layout\",viewportAspectRatio:1.78}. Omitting this retains the default width-based layout.","type":"number","minimum":0.1,"maximum":10},"targetWidth":{"description":"Preferred width in board coordinates, default 1800. Expands when needed for large groups. Arranges all active placements inside assigned groups, fits group bounds and separates groups; loose cards follow below. Card sizes, versions and other tabs remain unchanged.","type":"number","minimum":600,"maximum":20000}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_asset"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","name","draftId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_asset"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":100000},"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"notes":{"type":"string","maxLength":100000},"links":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","sheetId"],"additionalProperties":false}}},"additionalProperties":false}},"required":["type","assetId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"archive_asset"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"archived":{"type":"boolean"}},"required":["type","assetId","archived"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"create_draft"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","assetId","draftId","sourceVersionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"discard_draft"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","draftId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_draft"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},{"type":"null"}]},"prompt":{"type":"string","maxLength":100000},"pending":{"anyOf":[{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","enum":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"],"additionalProperties":false},{"type":"null"}]}},"additionalProperties":false}},"required":["type","assetId","draftId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_part"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"text":{"type":"string","maxLength":100000},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},{"type":"null"}]},"prompt":{"type":"string","maxLength":100000},"poster":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"view":{"anyOf":[{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"],"additionalProperties":false},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}},"additionalProperties":false},{"type":"null"}]},"generation":{"anyOf":[{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},{"type":"null"}]}},"additionalProperties":false}},"required":["type","assetId","draftId","partId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_part"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"part":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","name","type","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","name","type","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false}},"required":["id","name","type","media"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"],"additionalProperties":false}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"],"additionalProperties":false},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"],"additionalProperties":false},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}},"additionalProperties":false}},"required":["id","name","type","media"],"additionalProperties":false}]}},"required":["type","assetId","draftId","part"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_part"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","draftId","partId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"save_iteration"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","draftId","versionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"select_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_placement"},"placement":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"required":["id","assetId","x","y","width","height","groupId","pinnedVersionId"],"additionalProperties":false}},"required":["type","placement"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_placement"},"placementId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"additionalProperties":false}},"required":["type","placementId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_group"},"group":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"required":["id","name","x","y","width","height"],"additionalProperties":false}},"required":["type","group"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_group"},"groupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"additionalProperties":false}},"required":["type","groupId","patch"],"additionalProperties":false}],"description":"Atomic operations. Example: [{type:\"create_asset\",assetId:\"grandma\",name:\"Grandma\",draftId:\"draft_1\"},{type:\"put_part\",assetId:\"grandma\",draftId:\"draft_1\",part:{id:\"character_name\",name:\"Character name\",type:\"text\",text:\"Evelyn\"}},{type:\"save_iteration\",assetId:\"grandma\",draftId:\"draft_1\",versionId:\"version_1\"},{type:\"select_version\",assetId:\"grandma\",versionId:\"version_1\"}]. Iteration: create_draft from any saved sourceVersionId, put_part only for changed parts, then save_iteration. Selection is always explicit. Layout example: [{type:\"auto_layout\"}]. One small command arranges the complete board server-side. Archive and restore use archived true/false."}},"dryRun":{"type":"boolean"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations","boardId"],"additionalProperties":false},"WireframeRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"wireframe"},"stateLayers":{"maxItems":256,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatchOutput"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentOutput"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatchOutput"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}}}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]},{"type":"null"}]}}},"required":["id","name","condition","screens","interactions"]}},"stateLayerCount":{"type":"integer","minimum":0,"maximum":256},"approvals":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"status":{"type":"string","examples":["approved","pending"]},"inherited":{"type":"boolean"},"ancestorId":{"type":"string"}},"required":["status","inherited"]}},"annotations":{"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string"},"annotationId":{"type":"string"},"componentId":{"type":"string"},"text":{"type":"string"},"anchor":{"anyOf":[{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"]},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"]}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."},{"type":"null"}]},"targetMissing":{"type":"boolean"},"bounds":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"}},"required":["x","y","width","height"]}},"required":["screenId","annotationId","componentId","text","anchor","targetMissing","bounds"]}},"purpose":{"type":"string","examples":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"wireframeVersion":{"type":"string"},"startScreenId":{"type":["string","null"]},"screens":{"type":"array","items":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"interactions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}},"audit":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"screenId":{"type":"string"},"componentId":{"type":"string"},"interactionId":{"type":"string"},"message":{"type":"string"}},"required":["code","screenId","message"]}},"auditTotal":{"type":"number"},"auditScope":{"type":"string","const":"structural"},"prototype":{"type":"object","properties":{"state":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"callers":{"description":"Scoped caller stack. Pass back unchanged to resume. Snapshot null means the selected variable was absent; it is removed on return.","maxItems":20,"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"transition":{"type":"string","examples":["navigate","open_modal","set_state"]},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]},{"type":"null"}]}}},"required":["screenId","history","modals","transition","variables"]}}},"required":["screenId","history","modals","variables"]},"activeLayerIds":{"maxItems":256,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"steps":{"type":"array","items":{"type":"object","properties":{"interactionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"outcome":{"type":"string","examples":["applied","blocked","no_change"]},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"activeScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["interactionId","outcome","screenId","activeScreenId"]}},"availableInteractions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"trigger":{"type":"string"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"eventName":{"type":"string"},"delayMs":{"type":"number"}},"required":["id","trigger","sourceComponentId"]}}},"required":["state","steps","availableInteractions"]},"flow":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}},{"type":"null"}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","purpose","boardId","sheetId","revision","documentRevision","wireframeVersion","startScreenId","screens","interactions","audit","auditTotal","flow","partial","nextCursor"]},"WireframeOperationBatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"expectedWireframeVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"operations":{"minItems":1,"maxItems":500,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"$ref":"#/components/schemas/WireframeScreenPatch"}},"required":["type","screenId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"component":{"$ref":"#/components/schemas/WireframeComponent"}},"required":["type","screenId","component"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"$ref":"#/components/schemas/WireframeComponentPatch"}},"required":["type","screenId","componentId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["type","screenId","componentId","x","y"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"resize_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","screenId","componentId","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_components"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","screenId","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_interaction"},"interaction":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}},"required":["type","interaction"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_interaction"},"interaction":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}},"required":["type","interaction"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_interaction"},"interactionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","interactionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"fit_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_state_layer"},"layer":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatch"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponent"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatch"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"additionalProperties":false}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false},{"type":"null"}]}}},"required":["id","name","condition"],"additionalProperties":false}},"required":["type","layer"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_state_layer"},"layerId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."}},"additionalProperties":false}},"required":["type","layerId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_state_layer"},"layerId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","layerId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_state_layers"},"ids":{"maxItems":256,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"edit_state_layer"},"layerId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"edits":{"minItems":1,"maxItems":500,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"update_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"$ref":"#/components/schemas/WireframeScreenPatch"}},"required":["type","screenId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"component":{"$ref":"#/components/schemas/WireframeComponent"}},"required":["type","screenId","component"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"$ref":"#/components/schemas/WireframeComponentPatch"}},"required":["type","screenId","componentId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["type","screenId","componentId","x","y"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"resize_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","screenId","componentId","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_components"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","screenId","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_interaction"},"interaction":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}},"required":["type","interaction"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_interaction"},"interaction":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}},"required":["type","interaction"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_interaction"},"interactionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","interactionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"fit_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","componentId"],"additionalProperties":false}]}}},"required":["type","layerId","edits"],"additionalProperties":false,"description":"Capture ordinary visual/interaction edits as layer differences. Base screens/components stay unchanged; deleting an existing component hides it only in this layer."},{"type":"object","properties":{"type":{"type":"string","const":"reset_state_override"},"layerId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"property":{"type":"string","enum":["media","mediaFit","visible","enabled","stateBinding","scroll","scrollX","scrollY","viewportId","type","x","y","width","height","content","fontSize","fontWeight","alignment","fill","color","border","borderWidth","cornerRadius","opacity","locked","groupId","masterId"]}},"required":["type","layerId","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_definition_kind"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","enum":["screen","template","component"]}},"required":["type","screenId","kind"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_inheritance"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenProperties":{"type":"string","enum":["preserve","inherit"]}},"required":["type","screenId","sourceId","screenProperties"],"additionalProperties":false,"description":"Reparent an existing definition without recreating descendants. Preserves resolved elements and IDs with sparse deltas; rejects missing inherited paths or changed conditional behavior. Explicitly preserve current screen properties or inherit the new parent properties."},{"type":"object","properties":{"type":{"type":"string","const":"set_hierarchy_parent"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","screenId","parentId"],"additionalProperties":false,"description":"Group definitions in the hierarchy without changing inheritance or appearance. null restores the inheritance parent."},{"type":"object","properties":{"type":{"type":"string","const":"derive_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"],"additionalProperties":false},"kind":{"type":"string","enum":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}},"additionalProperties":false}},"required":["sourceId"],"additionalProperties":false},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"],"additionalProperties":false}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverride"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","enum":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"],"additionalProperties":false},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponent"}}},"required":["id","name","x","y","width","height"],"additionalProperties":false}},"required":["type","screenId","screen"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_instance"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"instance":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"],"additionalProperties":false}},"required":["type","screenId","instance"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_instance"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"instanceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"additionalProperties":false}},"required":["type","screenId","instanceId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_instance"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"instanceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","instanceId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"convert_to_component"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentIds":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"instanceIds":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"definitionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"instanceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100}},"required":["type","screenId","definitionId","instanceId","name"],"additionalProperties":false,"description":"Extract local elements and whole reusable instances without detaching. Preserves sparse overrides, layers, routes and paint order."},{"type":"object","properties":{"type":{"type":"string","const":"reset_override"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Use the scalar resolved component ID from read_wireframe(view=full, screenId). Authored instance/leaf paths are not component IDs. Omit to reset screen overrides."},"property":{"type":"string"}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"restore_inherited_elements"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"detach_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_approval"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","enum":["pending","self","descendants"]}},"required":["type","screenId","scope"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_annotation"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"annotation":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"content":{"type":"string","maxLength":10000},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"default":240,"type":"number","minimum":1,"maximum":10000},"height":{"default":96,"type":"number","minimum":1,"maximum":10000},"anchor":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"],"additionalProperties":false}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."}},"required":["id","content","x","y"],"additionalProperties":false}},"required":["type","screenId","annotation"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_annotation"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"annotationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"content":{"type":"string","maxLength":10000},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"anchor":{"anyOf":[{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"],"additionalProperties":false}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."},{"type":"null"}]}},"additionalProperties":false}},"required":["type","screenId","annotationId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_annotation"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"annotationId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId","annotationId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"convert_annotation"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"to":{"type":"string","enum":["annotation","component"]},"anchor":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"],"additionalProperties":false}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."}},"required":["type","screenId","componentId","to"],"additionalProperties":false,"description":"Preserve the stable component ID and original UI styling. Converting to annotation removes its interactions and state binding. Converting back does not restore removed interactions. Callout position is preserved."},{"type":"object","properties":{"type":{"type":"string","const":"add_screen"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"],"additionalProperties":false},"kind":{"type":"string","enum":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}},"additionalProperties":false}},"required":["sourceId"],"additionalProperties":false},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"],"additionalProperties":false}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverride"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","enum":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"],"additionalProperties":false},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponent"}}},"required":["id","name","x","y","width","height"],"additionalProperties":false}},"required":["type","screen"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"duplicate_screen"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"newScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"idMap":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","screenId","newScreenId","name","x","y","idMap"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"auto_layout_hierarchy"}},"required":["type"],"additionalProperties":false,"description":"Arrange all screens by template inheritance, preserving normal canvas positions and approvals."},{"type":"object","properties":{"type":{"type":"string","const":"arrange_screens"},"layout":{"description":"Defaults to canvas. Hierarchy writes only secondary positions.","type":"string","enum":["canvas","hierarchy"]},"positions":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["screenId","x","y"],"additionalProperties":false}}},"required":["type","positions"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_wireframe_options"},"patch":{"type":"object","properties":{"purpose":{"type":"string","enum":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}}},"additionalProperties":false}},"required":["type","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_start_screen"},"screenId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","screenId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"replace_wireframe"},"wireframe":{"type":"object","properties":{"stateLayers":{"maxItems":256,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatch"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponent"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatch"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"additionalProperties":false}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false},{"type":"null"}]}}},"required":["id","name","condition"],"additionalProperties":false}},"purpose":{"type":"string","enum":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"version":{"type":"number","const":1},"startScreenId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"screens":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"],"additionalProperties":false},"kind":{"type":"string","enum":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}},"additionalProperties":false}},"required":["sourceId"],"additionalProperties":false},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"],"additionalProperties":false}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverride"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","enum":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"],"additionalProperties":false},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","enum":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponent"}}},"required":["id","name","x","y","width","height"],"additionalProperties":false}},"interactions":{"maxItems":5000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","enum":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","enum":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["all"],"additionalProperties":false},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","enum":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"],"additionalProperties":false}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}]}}},"required":["any"],"additionalProperties":false}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","enum":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"],"additionalProperties":false}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action"],"additionalProperties":false}}},"required":["version","startScreenId","screens","interactions"],"additionalProperties":false}},"required":["type","wireframe"],"additionalProperties":false}]},"description":"Discriminated operations; inspect items.oneOf for complete fields. Minimal screen: {\"type\":\"add_screen\",\"screen\":{\"id\":\"home\",\"name\":\"Home\",\"x\":0,\"y\":0,\"width\":390,\"height\":844}}. Minimal component: {\"type\":\"add_component\",\"screenId\":\"home\",\"component\":{\"id\":\"play\",\"type\":\"button\",\"x\":24,\"y\":80,\"width\":240,\"height\":48,\"content\":\"Play\"}}. Edit: {\"type\":\"update_component\",\"screenId\":\"home\",\"componentId\":\"play\",\"patch\":{\"content\":\"Start\"}}. IDs are caller-supplied and permanent."},"dryRun":{"type":"boolean"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","expectedWireframeVersion","operations","boardId"],"additionalProperties":false},"SlideDeckRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"slide_deck"},"view":{"type":"string","examples":["overview","slides"]},"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"stage":{"type":"object","properties":{"width":{"type":"number"},"height":{"type":"number"}},"required":["width","height"]},"slideCount":{"type":"number"},"slides":{"description":"overview: every slide in brief, in order.","type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"index":{"type":"number"},"title":{"type":"string"},"layout":{"type":"string"},"elementCount":{"type":"number"},"transition":{"type":"string"},"hidden":{"type":"boolean"},"hasNotes":{"type":"boolean"}},"required":["id","index","title","layout","elementCount","transition","hidden","hasNotes"]}},"detail":{"description":"slides: whole slides (with index) and their elements, back to front.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","stage","slideCount","nextCursor"]},"SlideDeckOperationBatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":500,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"add_slide"},"slide":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"layout":{"default":"blank","type":"string","enum":["title","title_body","two_column","section","image","blank"]},"background":{"default":"#ffffff","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"backgroundMedia":{"default":null,"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"transition":{"default":"none","type":"string","enum":["none","fade","push","zoom"]},"transitionMs":{"default":500,"type":"integer","minimum":100,"maximum":3000},"notes":{"default":"","type":"string","maxLength":20000},"hidden":{"default":false,"type":"boolean"},"elements":{"default":[],"maxItems":300,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","enum":["text","image","shape","line"]},"x":{"type":"number","minimum":-4000,"maximum":6000},"y":{"type":"number","minimum":-4000,"maximum":6000},"width":{"type":"number","minimum":1,"maximum":8000},"height":{"type":"number","minimum":1,"maximum":8000},"rotation":{"default":0,"type":"number","minimum":-360,"maximum":360},"opacity":{"default":1,"type":"number","minimum":0,"maximum":1},"text":{"default":"","type":"string","maxLength":20000},"fontSize":{"default":40,"type":"number","minimum":8,"maximum":400},"fontWeight":{"default":400,"type":"integer","minimum":100,"maximum":900},"italic":{"default":false,"type":"boolean"},"underline":{"default":false,"type":"boolean"},"fontFamily":{"default":"sans","type":"string","enum":["sans","serif","mono"]},"align":{"default":"left","type":"string","enum":["left","center","right"]},"valign":{"default":"top","type":"string","enum":["top","middle","bottom"]},"list":{"default":"none","type":"string","enum":["none","bullet","number"]},"lineHeight":{"default":1.2,"type":"number","minimum":0.8,"maximum":3},"color":{"default":"#1f1d1a","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"fill":{"default":"transparent","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"stroke":{"default":"transparent","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"strokeWidth":{"default":0,"type":"number","minimum":0,"maximum":80},"cornerRadius":{"default":0,"type":"number","minimum":0,"maximum":1000},"shape":{"default":"rect","type":"string","enum":["rect","ellipse","triangle","diamond","arrow","star"]},"media":{"default":null,"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"fit":{"default":"contain","type":"string","enum":["contain","cover"]},"flip":{"default":false,"type":"boolean"},"arrowEnd":{"default":false,"type":"boolean"}},"required":["id","kind","x","y","width","height"],"additionalProperties":false}}},"required":["id"],"additionalProperties":false},"beforeSlideId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","slide"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_slide"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"layout":{"type":"string","enum":["title","title_body","two_column","section","image","blank"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"backgroundMedia":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"transition":{"type":"string","enum":["none","fade","push","zoom"]},"transitionMs":{"type":"integer","minimum":100,"maximum":3000},"notes":{"type":"string","maxLength":20000},"hidden":{"type":"boolean"}},"additionalProperties":false}},"required":["type","slideId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_slide"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","slideId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"duplicate_slide"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"newSlideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"beforeSlideId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","slideId","newSlideId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_slide"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"beforeSlideId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","slideId","beforeSlideId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_element"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"element":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","enum":["text","image","shape","line"]},"x":{"type":"number","minimum":-4000,"maximum":6000},"y":{"type":"number","minimum":-4000,"maximum":6000},"width":{"type":"number","minimum":1,"maximum":8000},"height":{"type":"number","minimum":1,"maximum":8000},"rotation":{"default":0,"type":"number","minimum":-360,"maximum":360},"opacity":{"default":1,"type":"number","minimum":0,"maximum":1},"text":{"default":"","type":"string","maxLength":20000},"fontSize":{"default":40,"type":"number","minimum":8,"maximum":400},"fontWeight":{"default":400,"type":"integer","minimum":100,"maximum":900},"italic":{"default":false,"type":"boolean"},"underline":{"default":false,"type":"boolean"},"fontFamily":{"default":"sans","type":"string","enum":["sans","serif","mono"]},"align":{"default":"left","type":"string","enum":["left","center","right"]},"valign":{"default":"top","type":"string","enum":["top","middle","bottom"]},"list":{"default":"none","type":"string","enum":["none","bullet","number"]},"lineHeight":{"default":1.2,"type":"number","minimum":0.8,"maximum":3},"color":{"default":"#1f1d1a","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"fill":{"default":"transparent","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"stroke":{"default":"transparent","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"strokeWidth":{"default":0,"type":"number","minimum":0,"maximum":80},"cornerRadius":{"default":0,"type":"number","minimum":0,"maximum":1000},"shape":{"default":"rect","type":"string","enum":["rect","ellipse","triangle","diamond","arrow","star"]},"media":{"default":null,"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"fit":{"default":"contain","type":"string","enum":["contain","cover"]},"flip":{"default":false,"type":"boolean"},"arrowEnd":{"default":false,"type":"boolean"}},"required":["id","kind","x","y","width","height"],"additionalProperties":false}},"required":["type","slideId","element"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_element"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"elementId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patch":{"type":"object","properties":{"x":{"type":"number","minimum":-4000,"maximum":6000},"y":{"type":"number","minimum":-4000,"maximum":6000},"width":{"type":"number","minimum":1,"maximum":8000},"height":{"type":"number","minimum":1,"maximum":8000},"rotation":{"type":"number","minimum":-360,"maximum":360},"opacity":{"type":"number","minimum":0,"maximum":1},"text":{"type":"string","maxLength":20000},"fontSize":{"type":"number","minimum":8,"maximum":400},"fontWeight":{"type":"integer","minimum":100,"maximum":900},"italic":{"type":"boolean"},"underline":{"type":"boolean"},"fontFamily":{"type":"string","enum":["sans","serif","mono"]},"align":{"type":"string","enum":["left","center","right"]},"valign":{"type":"string","enum":["top","middle","bottom"]},"list":{"type":"string","enum":["none","bullet","number"]},"lineHeight":{"type":"number","minimum":0.8,"maximum":3},"color":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"fill":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"stroke":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"strokeWidth":{"type":"number","minimum":0,"maximum":80},"cornerRadius":{"type":"number","minimum":0,"maximum":1000},"shape":{"type":"string","enum":["rect","ellipse","triangle","diamond","arrow","star"]},"media":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},{"type":"null"}]},"fit":{"type":"string","enum":["contain","cover"]},"flip":{"type":"boolean"},"arrowEnd":{"type":"boolean"}},"additionalProperties":false}},"required":["type","slideId","elementId","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_element"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"elementId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","slideId","elementId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_elements"},"slideId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ids":{"maxItems":300,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","slideId","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"replace_deck"},"deck":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"required":["type","deck"],"additionalProperties":false}]},"description":"Minimal slide: {\"type\":\"add_slide\",\"slide\":{\"id\":\"intro\"}}. Text: {\"type\":\"add_element\",\"slideId\":\"intro\",\"element\":{\"id\":\"title\",\"kind\":\"text\",\"x\":160,\"y\":380,\"width\":1600,\"height\":200,\"text\":\"Hello\",\"fontSize\":96,\"fontWeight\":700,\"align\":\"center\"}}. Edit: {\"type\":\"update_element\",\"slideId\":\"intro\",\"elementId\":\"title\",\"patch\":{\"text\":\"Welcome\"}}. IDs are caller-supplied and permanent; the stage is 1920 x 1080."},"dryRun":{"type":"boolean"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations","boardId"],"additionalProperties":false},"ReviewRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"type":{"type":"string","const":"review_stream"},"metadataOnly":{"type":"boolean"},"view":{"type":"string","examples":["list","status","detail","discussion","thread"]},"availableSections":{"type":"array","items":{"type":"string","examples":["detail","discussion"]}},"entries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"number"},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"decisionBy":{"type":"string"},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"itemCount":{"type":"number"}},"required":["id","title","author","createdAt","submittedAt","status","round","claims","messageCount","reviewers","itemCount"]}},"review":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"integer","minimum":0,"maximum":1000},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"decisionBy":{"type":"string"},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["id","title","author","createdAt","submittedAt","status","round","claims"]},"submission":{"type":"object","properties":{"clipStage":{"type":"string","examples":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"]}}},"required":["id","prompt","options"]}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"]},"refines":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"picks":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"labels":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","maxLength":200}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["round","picks","labels","variants"]},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"snapshots":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"card":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","columnId","rank","archived","dependsOn","title","description","labels","dueDate","checklist","links","branch","worktree"]}},"required":["type","sheetId","cardId","title","card"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy","id","number","savedAt","savedBy"]}},"required":["type","assetId","versionId","title","version"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"required":["type","sheetId","screenId","title","screen"]}]}},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}}},"required":["notes","items","links","attachments","number","createdAt","author","reviewers"]},"attachmentChanges":{"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string","examples":["new","updated","unchanged"]},"previous":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"file":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"required":["round","file"]}},"required":["id","status"]}},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"body":{"type":"string","maxLength":8000},"links":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"action":{"type":"string","examples":["comment","approved","approved_with_changes","refined","rejected","cancelled","submitted","claimed","escalated","reassigned"]},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["id","round","body","links","attachments","author","createdAt","action"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["boardId","sheetId","revision","documentRevision","type","view","availableSections","entries","messages","total","nextCursor","partial"]},"ReviewOperationBatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Omit only when every operation is submit_review or comment.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"submit_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"reviewers":{"description":"Omit to route to the card’s reviewing lead, or the board owner. Explicit reviewers are preserved.","minItems":1,"maxItems":20,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"],"additionalProperties":false}]}},"submission":{"type":"object","properties":{"clipStage":{"type":"string","enum":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"additionalProperties":false,"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"],"additionalProperties":false}}},"required":["id","prompt","options"],"additionalProperties":false}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"],"additionalProperties":false}},"required":["notes","items"],"additionalProperties":false},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"],"additionalProperties":false}},"required":["humanReviewer"],"additionalProperties":false,"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"description":"Board tags for this review (see read_tags).","maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","title","submission"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_review_tags"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The review's current tags ([] when it has none); a concurrent change rejects the batch."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","expected","tags"],"additionalProperties":false,"description":"Replace a review's tags. Anyone who can edit the board may retag; it does not change the review's rounds or decision."},{"type":"object","properties":{"type":{"type":"string","const":"resubmit_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"title":{"type":"string","minLength":1,"maxLength":300},"reviewers":{"description":"Omit to route to the card lead with a live mandate, or the board owner. Explicit reviewers are preserved.","minItems":1,"maxItems":20,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"],"additionalProperties":false}]}},"submission":{"type":"object","properties":{"clipStage":{"type":"string","enum":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"additionalProperties":false,"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"],"additionalProperties":false}}},"required":["id","prompt","options"],"additionalProperties":false}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"],"additionalProperties":false}},"required":["notes","items"],"additionalProperties":false},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","expectedRound","submission"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_review_reviewers"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"],"additionalProperties":false}]}},"note":{"description":"Shown in the history and to new agent reviewers","type":"string","minLength":1,"maxLength":7000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","messageId","expectedRound","reviewers"],"additionalProperties":false,"description":"Replace an open round's reviewers (not peer cycles). Agents cannot add themselves or review their own work."},{"type":"object","properties":{"type":{"type":"string","const":"snooze_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"until":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}],"description":"ISO wake time (≤90 days); null wakes now"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","expectedRound","until"],"additionalProperties":false,"description":"Set an open review aside until a time: no counts, badges or nags meanwhile. Not by its author."},{"type":"object","properties":{"type":{"type":"string","const":"claim_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewerIndex":{"type":"integer","minimum":0,"maximum":19},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","expectedRound","reviewerIndex"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"comment"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"body":{"type":"string","maxLength":8000},"links":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"attachments":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","messageId","expectedRound","body"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"resolve_review"},"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRound":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"decision":{"type":"string","enum":["approved","approved_with_changes","refined","rejected","cancelled"]},"body":{"default":"","type":"string","maxLength":8000},"links":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"],"additionalProperties":false}},"attachments":{"default":[],"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"selections":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"description":"refined only: variants of each pick the next round brings (0 = just revise it)","type":"integer","minimum":0,"maximum":8},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","reviewId","messageId","expectedRound","decision"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["sheetId","requestId","operations","boardId"],"additionalProperties":false},"FilesNamespace":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"kind":{"type":"string","examples":["file","folder"]},"name":{"type":"string","maxLength":255},"createdAt":{"type":"string"},"metadataRevision":{"type":"string","pattern":"^\\d+$"},"currentVersionId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"trashedAt":{"type":["string","null"]}},"required":["boardId","driveId","id","parentId","kind","name","metadataRevision","currentVersionId","trashedAt"]},{"type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"epoch":{"type":"string"}},"required":["requestId","epoch"]}]},"FilesTrash":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"protocolVersion":{"type":"number","const":1},"items":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"kind":{"type":"string","examples":["file","folder"]},"name":{"type":"string","maxLength":255},"createdAt":{"type":"string"},"metadataRevision":{"type":"string","pattern":"^\\d+$"},"currentVersionId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},{"type":"null"}]},"trashedAt":{"type":["string","null"]},"purgeAfter":{"type":"string"}},"required":["boardId","driveId","id","parentId","kind","name","metadataRevision","currentVersionId","trashedAt","purgeAfter"]}},"nextCursor":{"type":["string","null"]}},"required":["protocolVersion","items","nextCursor"]},"FilesVersions":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"items":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"versionId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"contentRevision":{"type":"string","pattern":"^\\d+$"},"bytes":{"type":"integer","minimum":0,"maximum":1000000000},"createdAt":{"type":"string"}},"required":["versionId","contentRevision","bytes","createdAt"]}},"nextCursor":{"type":["string","null"]}},"required":["items","nextCursor"]},"FileActivation":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"driveId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"rootId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"},"tabId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,128}$"}},"required":["driveId","rootId","tabId"]},"ProjectTags":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"tags":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":32,"pattern":"^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"}},"canEdit":{"type":"boolean"}},"required":["boardId","tags","canEdit"]},"ProjectFaviconChange":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"assetId":{"type":"string"},"changeId":{"type":["string","null"]}},"required":["boardId","assetId","changeId"]},"ProjectTagsChange":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string"},"tags":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":32,"pattern":"^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"}},"changeId":{"type":"string"}},"required":["boardId","tags","changeId"]},"Policies":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"version":{"type":"string","description":"Changes whenever text or items change."},"unchanged":{"description":"knownVersion matched: text and items are left out.","type":"boolean","const":true},"text":{"type":"string"},"count":{"type":"integer","minimum":0,"maximum":9007199254740991},"role":{"type":"string","examples":["lead","sublead","agent"]},"truncated":{"type":"boolean"},"nextChangeAt":{"type":["string","null"]},"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"title":{"type":"string"},"revision":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"audience":{"type":"string"},"runtime":{"anyOf":[{"type":"string","examples":["codex","claude-code","grok","antigravity","gemini-cli"]},{"type":"null"}]},"agentId":{"type":["string","null"]},"boardId":{"type":["string","null"]},"tag":{"anyOf":[{"type":"string","maxLength":32,"pattern":"^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$"},{"type":"null"}]},"routeIds":{"anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}]},"sheetId":{"type":["string","null"]},"endsAt":{"type":["string","null"]}},"required":["id","title","revision","audience","agentId","boardId","sheetId","endsAt"]}}},"required":["version","count","role","truncated","nextChangeAt"]},"TaskRouting":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"revision":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"routes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"name":{"type":"string"},"useFor":{"type":"string"},"stack":{"type":"array","items":{"type":"object","properties":{"runtime":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"model":{"type":"string","pattern":"^[A-Za-z0-9_.:/[\\]-]{1,160}$"},"effort":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_.:/[\\]-]{1,160}$"},{"type":"null"}]}},"required":["runtime","model","effort"]}},"avoid":{"type":"array","items":{"type":"string"}},"color":{"type":"string"}},"required":["id","name","useFor","stack","avoid"]}},"paused":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"by":{"type":"string"},"at":{"type":"string"}},"required":["by","at"]}}},"required":["revision","routes","paused"]},"Skills":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":{}},"SkillWrite":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{},"additionalProperties":{}},"LeadTheme":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"snapshot":{"anyOf":[{"type":"string","pattern":"^[0-9a-f]{64}$"},{"type":"null"}]},"choice":{"type":"string","examples":["classic","midnight","ink","parchment","homebrew","inherit","project","other-project","unsupported"]},"presets":{"maxItems":5,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","examples":["classic","midnight","ink","parchment","homebrew"]},"label":{"type":"string"},"hint":{"type":"string"}},"required":["id","label","hint"]}}},"required":["boardId","leadId","snapshot","choice","presets"]},"CallSpeech":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"speech":{"type":"object","properties":{"voice":{"type":"string","maxLength":300},"name":{"type":"string","maxLength":200},"rate":{"type":"number","minimum":0.8,"maximum":1.6,"multipleOf":0.01}},"required":["voice","name","rate"]},"hadSpeech":{"type":"boolean"}},"required":["boardId","leadId","speech","hadSpeech"]},"ProjectAgents":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"agents":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","maxLength":80},"avatar":{"anyOf":[{"type":"string","pattern":"^(stock:(1[0-2]|[1-9])|image:[a-f0-9]{64})$"},{"type":"null"}]},"runtime":{"type":"string","maxLength":80},"runtimeLabel":{"type":"string","maxLength":80},"ownerName":{"type":"string","maxLength":80},"spawned":{"type":"boolean"},"temporary":{"type":"boolean"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["id","name","avatar","runtime","runtimeLabel","ownerName","spawned","temporary","updatedAt"]}},"nextCursor":{"type":["string","null"]},"presence":{"type":"string","const":"not_requested"}},"required":["boardId","agents","nextCursor","presence"]},"ProjectAgent":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"agent":{"type":"object","properties":{"id":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","maxLength":80},"avatar":{"anyOf":[{"type":"string","pattern":"^(stock:(1[0-2]|[1-9])|image:[a-f0-9]{64})$"},{"type":"null"}]},"runtime":{"type":"string","maxLength":80},"runtimeLabel":{"type":"string","maxLength":80},"ownerName":{"type":"string","maxLength":80},"spawned":{"type":"boolean"},"temporary":{"type":"boolean"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["id","name","avatar","runtime","runtimeLabel","ownerName","spawned","temporary","updatedAt"]},"presence":{"type":"string","const":"not_requested"}},"required":["boardId","agent","presence"]},"ProjectFolderPlacement":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"folderId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},{"type":"null"}]}},"required":["boardId","folderId"]},"MediaSourcesWindow":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sources":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"name":{"type":"string","maxLength":200},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"status":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,48}$"},"provider":{"type":"string","examples":["r2","stream","unknown"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"duration":{"anyOf":[{"type":"number","minimum":0,"maximum":21600},{"type":"null"}]},"deleteAfter":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"hasError":{"type":"boolean"}},"required":["id","name","bytes","status","provider","createdAt","duration","deleteAfter","hasError"]}},"nextCursor":{"type":["string","null"]},"freshness":{"type":"string","const":"stored"}},"required":["boardId","sources","nextCursor","freshness"]},"ImportedMediaRender":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"jobId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"attempt":{"type":"integer","minimum":1,"maximum":3},"asset":{"type":"object","properties":{"boardId":{"type":"string"},"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"src":{"type":"string"},"mimeType":{"type":"string"},"bytes":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"},"duration":{"type":"number","minimum":0},"model":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"required":["boardId","id","src","mimeType","bytes","width","height"]}},"required":["boardId","jobId","attempt","asset"]},"OrganizationProjectTrash":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"boards":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","maxLength":200},"trashId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"deletedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"}},"required":["id","name","trashId","deletedAt","expiresAt"]}},"nextCursor":{"type":["string","null"]}},"required":["orgId","boards","nextCursor"]},"AddedOrganizationDomain":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"domain":{"type":"object","properties":{"id":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"domain":{"type":"string","minLength":1,"maxLength":253},"status":{"type":"string","examples":["pending","verified"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"verification":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string","maxLength":280},"content":{"type":"string","maxLength":180}},"required":["type","name","content"]},"setups":{"type":"object","properties":{"verify":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"receive":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"send":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]}}}},"required":["id","domain","status","verifiedAt","checkedAt","createdAt","verification","setups"]}},"required":["orgId","domain"]},"VerifiedOrganizationDomain":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"domain":{"type":"object","properties":{"id":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"domain":{"type":"string","minLength":1,"maxLength":253},"status":{"type":"string","examples":["pending","verified"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"verification":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string","maxLength":280},"content":{"type":"string","maxLength":180}},"required":["type","name","content"]},"setups":{"type":"object","properties":{"verify":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"receive":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"send":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]}}}},"required":["id","domain","status","verifiedAt","checkedAt","createdAt","verification","setups"]},"verified":{"type":"boolean"}},"required":["orgId","domain","verified"]},"InboxViewAcknowledged":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"viewBoardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cutoff":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"scanned":{"type":"integer","minimum":0,"maximum":1000},"marked":{"type":"integer","minimum":0,"maximum":1000},"nextCursor":{"type":["string","null"]}},"required":["viewBoardId","cutoff","scanned","marked","nextCursor"]},"GlobalInboxAcknowledged":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"marked":{"type":"integer","minimum":0,"maximum":1000}},"required":["marked"]},"GlobalInboxPage":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"notifications":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","examples":["message","product_review_ready","product_review_failed","product_review_stopped","product_review_digest","support_ticket"]},"scope":{"type":"string","examples":["global","project"]},"title":{"type":"string","minLength":1,"maxLength":160},"body":{"type":"string","maxLength":2000},"boardId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"boardName":{"type":["string","null"]},"target":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"runId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"ticketId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"actor":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9a-f-]{36}$"},"name":{"type":"string","maxLength":200}}},"createdAt":{"type":"string"},"readAt":{"type":["string","null"]}},"required":["id","kind","title","body","boardId","boardName","target","actor","createdAt","readAt"]}},"nextCursor":{"type":["string","null"]}},"required":["notifications","nextCursor"]},"MediaSourceDownload":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"variant":{"type":"string","examples":["video","poster","transcript","transcript-json","keyframes","keyframe"]},"name":{"type":"string","pattern":"^(?:k0(?:0[1-9]|[1-3][0-9]|4[0-8])|sheet[1-4])\\.jpg$"},"path":{"type":"string","maxLength":1000},"bytes":{"type":"integer","minimum":0,"maximum":32212254720},"etag":{"type":"string","pattern":"^\"[a-zA-Z0-9_-]{1,128}\"$"},"mimeType":{"type":"string","examples":["video/mp4","image/jpeg","text/vtt","application/json"]},"authentication":{"type":"string","const":"bearer"}},"required":["boardId","sourceId","variant","path","bytes","etag","mimeType","authentication"]},"VideoRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"state":{"type":"string","examples":["processing","ready","error","unsupported"],"description":"processing: call again after retryAfterSeconds. ready: transcript and keyframes are final (keyframes.state error means stills could not be made)."},"name":{"type":"string","maxLength":200},"duration":{"anyOf":[{"type":"number","minimum":0,"maximum":21600},{"type":"null"}]},"video":{"anyOf":[{"type":"object","properties":{"width":{"type":"integer","minimum":0,"maximum":9007199254740991},"height":{"type":"integer","minimum":0,"maximum":9007199254740991},"hasAudio":{"type":"boolean"}},"required":["width","height","hasAudio"]},{"type":"null"}]},"transcript":{"type":"object","properties":{"state":{"type":"string","examples":["ready","processing","none"]},"cueCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"text":{"type":"string","description":"\"[m:ss] text\" lines"},"nextCursor":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["state","cueCount","text","nextCursor"]},"keyframes":{"type":"object","properties":{"state":{"type":"string","examples":["ready","processing","error","none"]},"labeled":{"description":"Contact sheet tiles carry their timestamp.","type":"boolean"},"frames":{"maxItems":48,"type":"array","items":{"type":"object","properties":{"t":{"type":"number","minimum":0,"maximum":21600},"kind":{"type":"string","examples":["scene","interval"]},"name":{"type":"string","pattern":"^(?:k0(?:0[1-9]|[1-3][0-9]|4[0-8])|sheet[1-4])\\.jpg$"},"download":{"type":"object","properties":{"path":{"type":"string","maxLength":1000},"bytes":{"type":"integer","exclusiveMinimum":0,"maximum":2097152},"etag":{"type":"string","pattern":"^\"[a-zA-Z0-9_-]{1,128}\"$"},"mimeType":{"type":"string","const":"image/jpeg"},"authentication":{"type":"string","const":"bearer"}},"required":["path","bytes","etag","mimeType","authentication"]}},"required":["t","kind","name","download"]}},"sheets":{"maxItems":4,"type":"array","items":{"type":"object","properties":{"name":{"type":"string","pattern":"^(?:k0(?:0[1-9]|[1-3][0-9]|4[0-8])|sheet[1-4])\\.jpg$"},"from":{"type":"number","minimum":0,"maximum":21600},"to":{"type":"number","minimum":0,"maximum":21600},"count":{"type":"integer","minimum":1,"maximum":12},"download":{"type":"object","properties":{"path":{"type":"string","maxLength":1000},"bytes":{"type":"integer","exclusiveMinimum":0,"maximum":2097152},"etag":{"type":"string","pattern":"^\"[a-zA-Z0-9_-]{1,128}\"$"},"mimeType":{"type":"string","const":"image/jpeg"},"authentication":{"type":"string","const":"bearer"}},"required":["path","bytes","etag","mimeType","authentication"]}},"required":["name","from","to","count","download"]},"description":"Contact sheets: up to 12 timestamped frames each, 4 per row, in time order."}},"required":["state","frames","sheets"]},"error":{"type":"string","maxLength":500},"retryAfterSeconds":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["boardId","sourceId","state","name","duration","video","transcript","keyframes"]},"DocumentList":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"documents":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]},"title":{"type":"string"},"home":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"origin":{"type":"string","examples":["tab","journal","breakdown"]},"openIn":{"type":"array","items":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"updatedAt":{"type":"string"}},"required":["id","type","title","home","origin","openIn","updatedAt"]}},"nextCursor":{"type":["string","null"]}},"required":["documents","nextCursor"]},"MediaRenderDownload":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"jobId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"attempt":{"type":"integer","minimum":1,"maximum":1000000},"path":{"type":"string","maxLength":500},"bytes":{"type":"integer","exclusiveMinimum":0,"maximum":32212254720},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"video/mp4"},"authentication":{"type":"string","const":"bearer"}},"required":["boardId","jobId","attempt","path","bytes","sha256","mimeType","authentication"]},"MediaRendersWindow":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"jobs":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"status":{"type":"string","examples":["queued","running","succeeded","failed","cancelled"]},"attempt":{"type":"integer","minimum":1,"maximum":1000000},"progress":{"type":"number","minimum":0,"maximum":1},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,80}$"},"retryable":{"type":"boolean"}},"required":["code","retryable"]},{"type":"null"}]},"output":{"anyOf":[{"type":"object","properties":{"mimeType":{"type":"string","const":"video/mp4"},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"duration":{"type":"number","minimum":0,"maximum":21600},"width":{"type":"integer","minimum":1,"maximum":16384},"height":{"type":"integer","minimum":1,"maximum":16384},"frameRate":{"type":"number","minimum":1,"maximum":240},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"available":{"type":"boolean"}},"required":["mimeType","bytes","sha256","duration","width","height","frameRate","expiresAt","available"]},{"type":"null"}]}},"required":["id","status","attempt","progress","createdAt","updatedAt","error","output"]}},"nextCursor":{"type":["string","null"]},"freshness":{"type":"string","const":"stored"}},"required":["boardId","jobs","nextCursor","freshness"]},"MediaSourceMetadata":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"source":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"name":{"type":"string","maxLength":200},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"status":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,48}$"},"provider":{"type":"string","examples":["r2","stream","unknown"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"duration":{"anyOf":[{"type":"number","minimum":0,"maximum":21600},{"type":"null"}]},"deleteAfter":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"hasError":{"type":"boolean"}},"required":["id","name","bytes","status","provider","createdAt","duration","deleteAfter","hasError"]},"freshness":{"type":"string","const":"stored"}},"required":["boardId","source","freshness"]},"MediaRenderStatus":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"job":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"},"status":{"type":"string","examples":["queued","running","succeeded","failed","cancelled"]},"attempt":{"type":"integer","minimum":1,"maximum":1000000},"progress":{"type":"number","minimum":0,"maximum":1},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"anyOf":[{"type":"object","properties":{"code":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,80}$"},"retryable":{"type":"boolean"}},"required":["code","retryable"]},{"type":"null"}]},"output":{"anyOf":[{"type":"object","properties":{"mimeType":{"type":"string","const":"video/mp4"},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"sha256":{"type":"string","pattern":"^[a-f0-9]{64}$"},"duration":{"type":"number","minimum":0,"maximum":21600},"width":{"type":"integer","minimum":1,"maximum":16384},"height":{"type":"integer","minimum":1,"maximum":16384},"frameRate":{"type":"number","minimum":1,"maximum":240},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"available":{"type":"boolean"}},"required":["mimeType","bytes","sha256","duration","width","height","frameRate","expiresAt","available"]},{"type":"null"}]}},"required":["id","status","attempt","progress","createdAt","updatedAt","error","output"]}},"required":["boardId","job"]},"CreatedProjectFolder":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folder":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"name":{"type":"string","maxLength":48},"position":{"type":"integer","minimum":-2147483648,"maximum":2147483647}},"required":["id","name","position"]},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"replayed":{"type":"boolean"}},"required":["folder","requestId","replayed"]},"RemovedProjectFolder":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folderId":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"removed":{"type":"boolean","const":true}},"required":["folderId","removed"]},"RenamedProjectFolder":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folder":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"name":{"type":"string","maxLength":48},"position":{"type":"integer","minimum":-2147483648,"maximum":2147483647}},"required":["id","name","position"]}},"required":["folder"]},"ProjectFolders":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folders":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"name":{"type":"string","maxLength":48},"position":{"type":"integer","minimum":-2147483648,"maximum":2147483647}},"required":["id","name","position"]}},"nextCursor":{"type":["string","null"]}},"required":["folders","nextCursor"]},"ProjectFolder":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"folder":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{21}$"},"name":{"type":"string","maxLength":48},"position":{"type":"integer","minimum":-2147483648,"maximum":2147483647}},"required":["id","name","position"]}},"required":["folder"]},"Connections":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"connections":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":128},"name":{"type":"string","maxLength":80},"clientId":{"type":"string","maxLength":256},"mode":{"type":"string","examples":["account","selected_boards"]},"boardCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"scopes":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":80}},"scopeCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"lastUsedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"expiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"revokedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]}},"required":["id","name","clientId","mode","boardCount","scopes","scopeCount","lastUsedAt","createdAt","expiresAt","revokedAt"]}},"nextCursor":{"type":["string","null"]}},"required":["connections","nextCursor"]},"Connection":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"connection":{"type":"object","properties":{"id":{"type":"string","minLength":1,"maxLength":128},"name":{"type":"string","maxLength":80},"clientId":{"type":"string","maxLength":256},"mode":{"type":"string","examples":["account","selected_boards"]},"boardCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"scopes":{"maxItems":32,"type":"array","items":{"type":"string","maxLength":80}},"scopeCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"lastUsedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"expiresAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"revokedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]}},"required":["id","name","clientId","mode","boardCount","scopes","scopeCount","lastUsedAt","createdAt","expiresAt","revokedAt"]}},"required":["connection"]},"OrganizationDomains":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"domains":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"domain":{"type":"string","minLength":1,"maxLength":253},"status":{"type":"string","examples":["pending","verified"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"verification":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string","maxLength":280},"content":{"type":"string","maxLength":180}},"required":["type","name","content"]},"setups":{"type":"object","properties":{"verify":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"receive":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"send":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]}}}},"required":["id","domain","status","verifiedAt","checkedAt","createdAt","verification","setups"]}},"nextCursor":{"type":["string","null"]}},"required":["orgId","domains","nextCursor"]},"OrganizationDomain":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"domain":{"type":"object","properties":{"id":{"type":"string","pattern":"^dom_[A-Za-z0-9_-]{1,40}$"},"domain":{"type":"string","minLength":1,"maxLength":253},"status":{"type":"string","examples":["pending","verified"]},"verifiedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"checkedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"},"verification":{"type":"object","properties":{"type":{"type":"string","const":"TXT"},"name":{"type":"string","maxLength":280},"content":{"type":"string","maxLength":180}},"required":["type","name","content"]},"setups":{"type":"object","properties":{"verify":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"receive":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]},"send":{"type":"object","properties":{"appliedAt":{"type":"string","maxLength":80},"by":{"type":"string","maxLength":256},"routed":{"type":"boolean"}},"required":["appliedAt","by"]}}}},"required":["id","domain","status","verifiedAt","checkedAt","createdAt","verification","setups"]}},"required":["orgId","domain"]},"Organizations":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"organizations":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"name":{"type":"string","maxLength":80},"role":{"type":"string","examples":["owner","admin","member"]},"personal":{"type":"boolean"}},"required":["id","name","role","personal"]}},"nextCursor":{"type":["string","null"]}},"required":["organizations","nextCursor"]},"Organization":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"organization":{"type":"object","properties":{"id":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"name":{"type":"string","maxLength":80},"role":{"type":"string","examples":["owner","admin","member"]},"personal":{"type":"boolean"}},"required":["id","name","role","personal"]}},"required":["organization"]},"OrganizationMembers":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"orgId":{"type":"string","pattern":"^org_[A-Za-z0-9_-]{1,60}$"},"members":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":256},"name":{"type":"string","maxLength":300},"email":{"type":"string","maxLength":320},"role":{"type":"string","examples":["owner","admin","member"]}},"required":["userId","name","email","role"]}},"nextCursor":{"type":["string","null"]}},"required":["orgId","members","nextCursor"]},"AdsAutoPause":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetName":{"type":"string","maxLength":80},"version":{"type":"integer","minimum":0,"maximum":9007199254740991},"autoPause":{"type":"string","examples":["test","all","off"]}},"required":["boardId","sheetId","sheetName","version","autoPause"]},"AdsVerification":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"ok":{"type":"boolean","const":true},"app":{"type":"object","properties":{"id":{"type":"string","pattern":"^[1-9][0-9]{0,31}$"},"name":{"type":"string","minLength":1,"maxLength":1000}},"required":["id","name"]},"page":{"type":"object","properties":{"id":{"type":"string","pattern":"^[1-9][0-9]{0,31}$"},"name":{"type":"string","minLength":1,"maxLength":1000}},"required":["id","name"]},"graphVersion":{"type":"string"},"checkedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["ok","app","page","graphVersion","checkedAt"]},"AdsPolicy":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetName":{"type":"string","maxLength":80},"version":{"type":"integer","minimum":0,"maximum":9007199254740991},"policy":{"anyOf":[{"anyOf":[{"type":"object","properties":{"enabled":{"type":"boolean"},"currency":{"type":"string","pattern":"^[A-Z]{3}$","description":"The ad accounts' billing currency; the caps are in it."},"timezone":{"type":"string","minLength":1,"maxLength":64,"description":"Calendar months use this IANA timezone."},"monthlyCapMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Lifetime budgets committed to a calendar month (policy timezone), each test shared over the months it runs."},"allowedAccounts":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}:[A-Za-z0-9_-]{1,64}$"},"description":"network:account, e.g. meta:act_123"},"maxDailyPerAdSetMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"},"totalDailyCapMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Integer micros (1.00 = \"1000000\")"}},"required":["enabled","currency","timezone","monthlyCapMicros","allowedAccounts","maxDailyPerAdSetMicros","totalDailyCapMicros"]},{"type":"object","properties":{"enabled":{"type":"boolean"},"currency":{"type":"string","pattern":"^[A-Z]{3}$","description":"The ad accounts' billing currency; the caps are in it."},"timezone":{"type":"string","minLength":1,"maxLength":64,"description":"The policy's own clock: tests per day and months count here (the tab's timezone may change; this does not)."},"perTestBudgetMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Most one test (ad set) may commit as its lifetime budget."},"maxTestsPerDay":{"type":"integer","minimum":0,"maximum":100},"maxConcurrentTests":{"type":"integer","minimum":0,"maximum":200},"monthlyCapMicros":{"type":"string","pattern":"^(0|[1-9][0-9]{0,17})$","description":"Lifetime budgets committed to a calendar month (policy timezone), each test shared over the months it runs."},"allowedAccounts":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^[a-z][a-z0-9_]{1,31}:[A-Za-z0-9_-]{1,64}$"},"description":"network:account, e.g. meta:act_123"},"maxTestDays":{"type":"integer","minimum":1,"maximum":30}},"required":["enabled","currency","timezone","perTestBudgetMicros","maxTestsPerDay","maxConcurrentTests","monthlyCapMicros","allowedAccounts","maxTestDays"]}]},{"type":"null"}]}},"required":["boardId","sheetId","sheetName","version","policy"]},"ProjectMember":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"organizationId":{"type":"string"},"member":{"anyOf":[{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":256},"name":{"type":"string","maxLength":300},"email":{"type":"string","maxLength":320},"role":{"type":"string","examples":["owner","admin","editor","viewer"]},"guest":{"type":"boolean"}},"required":["userId","name","email","role","guest"]},{"type":"null"}]}},"required":["boardId","organizationId","member"]},"ProjectSharing":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"role":{"type":"string","examples":["owner","admin","editor","viewer"]},"canEdit":{"type":"boolean"},"canShare":{"type":"boolean"},"linkAccess":{"type":"string","const":"restricted"},"storedLinkAccess":{"type":"string","examples":["restricted","anyone"]},"linkRole":{"type":"string","examples":["editor","viewer"]},"organizationId":{"type":"string"}},"required":["boardId","role","canEdit","canShare","linkAccess","storedLinkAccess","linkRole","organizationId"]},"ProjectMembers":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"people":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":256},"name":{"type":"string"},"email":{"type":"string"},"role":{"type":"string","examples":["owner","admin","editor","viewer"]},"guest":{"type":"boolean"}},"required":["userId","name","email","role","guest"]}},"nextCursor":{"type":["string","null"]}},"required":["boardId","people","nextCursor"]},"ProjectInbox":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"unread":{"type":"integer","minimum":0,"maximum":9007199254740991},"notifications":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"kind":{"type":"string","examples":["message","product_review_ready","product_review_failed","product_review_stopped","product_review_digest","support_ticket"]},"scope":{"type":"string","examples":["global","project"]},"title":{"type":"string","minLength":1,"maxLength":160},"body":{"type":"string","maxLength":2000},"boardId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"boardName":{"type":["string","null"]},"target":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"runId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"ticketId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"actor":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9a-f-]{36}$"},"name":{"type":"string","maxLength":200}}},"createdAt":{"type":"string"},"readAt":{"type":["string","null"]}},"required":["id","kind","title","body","boardId","boardName","target","actor","createdAt","readAt"]}},"nextCursor":{"type":["string","null"]}},"required":["boardId","unread","notifications","nextCursor"]},"ProjectInboxRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"marked":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["boardId","marked"]},"KanbanRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban"},"view":{"type":"string","const":"guards"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"columns":{"maxItems":2,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"}},"required":["id","name"]}},"cards":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"assignees":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"discussion":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","body","createdAt","author"]}},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"touchedBy":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72},"firstAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"lastAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"outside":{"type":"object","properties":{"kind":{"type":"string","examples":["email"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["kind","at"]}},"required":["userId","name","source","firstAt","lastAt"]}},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"positionVersion":{"type":"string"}},"required":["id"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","columns","cards","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"kanban"},"view":{"type":"string","examples":["summary","detail"]},"availableSections":{"type":"array","items":{"type":"string","examples":["instructions","detail","discussion"]}},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"description":{"type":"string"},"instructions":{"type":"string"},"policiesChangeAt":{"type":"string"},"instructionsVersion":{"type":"string"},"instructionsUnchanged":{"type":"boolean","const":true},"skills":{"description":"Agent Skills for this card: load one (SKILL.md) when a task matches","maxItems":100,"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}},"required":["name","description"]}},"columns":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","examples":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"},"version":{"type":"string"},"cardCount":{"type":"number"},"archivedCount":{"type":"number"}},"required":["id","name","color","version","cardCount","archivedCount"]}},"orderVersion":{"type":"string"},"cards":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"type":"string","maxLength":255},"worktree":{"type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"assignees":{"anyOf":[{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"agentId":{"type":"string"}},"required":["name"]}}]},"createdBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"string"}]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"blockedBy":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"usage":{"description":"Cards read by id: \"time · tokens · est. cost · lines +/−\" of metered agent work.","type":"string"},"discussionCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"version":{"type":"string"},"positionVersion":{"type":"string"}},"required":["id","columnId","rank","archived","title","labels","dueDate","discussionCount","version","positionVersion"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","availableSections","boardId","sheetId","revision","documentRevision","columns","orderVersion","cards","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"kanban_discussion"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"cardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","body","createdAt","author"]}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","boardId","sheetId","revision","documentRevision","cardId","messages","total","partial","nextCursor"]}]},"KanbanOperationBatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"agentId":{"description":"Required for agent edits unless an operation supplies agentId. Use QRAFT_AGENT_ID; human browser edits omit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"description":"Omit only when no operation carries a guard.","type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"patch_board"},"patches":{"minItems":1,"maxItems":2,"type":"array","items":{"oneOf":[{"type":"object","properties":{"field":{"type":"string","const":"description"},"expected":{"type":"string","maxLength":2000},"value":{"type":"string","maxLength":2000}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"instructions"},"expected":{"type":"string","maxLength":20000},"value":{"type":"string","maxLength":20000}},"required":["field","expected","value"],"additionalProperties":false}]}}},"required":["type","patches"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_column"},"column":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","enum":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"}},"required":["id","name"],"additionalProperties":false}},"required":["type","column"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_column"},"column":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","enum":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"}},"required":["id","name"],"additionalProperties":false},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","column","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_columns"},"ids":{"minItems":1,"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"expectedOrderVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","ids","expectedOrderVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_column"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","columnId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_card"},"ownerReviews":{"description":"Hosting leads only: require owner review for this new card.","type":"boolean"},"card":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text"],"additionalProperties":false}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"],"additionalProperties":false}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["id","columnId","title"],"additionalProperties":false},"beforeCardId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"position":{"description":"top or bottom of the column without reading it; overrides beforeCardId.","type":"string","enum":["top","bottom"]}},"required":["type","card"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_attachment"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"attachment":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"required":["type","cardId","attachment"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_attachment"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","enum":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"],"additionalProperties":false}]}}},"required":["version","baseMediaId","width","height","shapes"],"additionalProperties":false}},"required":["id","media"],"additionalProperties":false}},"required":["type","cardId","attachmentId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_cover"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"attachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"expectedAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","cardId","attachmentId","expectedAttachmentId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"assign_self"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"onlyIfUnassigned":{"description":"Prevent two workers taking the same task: fail if anyone is already assigned. Batch with move_card; start work only after a committed success.","type":"boolean"},"claim":{"description":"Refuse finished or held cards","type":"boolean"}},"required":["type","cardId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"assign_person"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"userId":{"type":"string","minLength":1,"maxLength":200}},"required":["type","cardId","userId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"unassign_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"expected":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","enum":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"additionalProperties":false}},"required":["type","cardId","identityId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_comment"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"commentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}},"required":["type","cardId","commentId","body"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patches":{"minItems":1,"maxItems":10,"type":"array","items":{"oneOf":[{"type":"object","properties":{"field":{"type":"string","const":"taskRouteId"},"expected":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"value":{"anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"title"},"expected":{"type":"string","minLength":1,"maxLength":3000},"value":{"type":"string","minLength":1,"maxLength":3000}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"taskSummary"},"expected":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"value":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"description"},"expected":{"type":"string","maxLength":20000},"value":{"type":"string","maxLength":20000}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"labels"},"expected":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"value":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"dueDate"},"expected":{"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"value":{"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"checklist"},"expected":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text"],"additionalProperties":false}},"value":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text"],"additionalProperties":false}}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"links"},"expected":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"],"additionalProperties":false}},"value":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"],"additionalProperties":false}}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"dependsOn"},"expected":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"value":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"branch"},"expected":{"type":"string","maxLength":255},"value":{"type":"string","maxLength":255}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"worktree"},"expected":{"type":"string","maxLength":1000},"value":{"type":"string","maxLength":1000}},"required":["field","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"archived"},"expected":{"type":"boolean"},"value":{"type":"boolean"}},"required":["field","value"],"additionalProperties":false}]}}},"required":["type","cardId","patches"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"label_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"add":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"remove":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["type","cardId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"move_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"beforeCardId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"position":{"description":"top or bottom of the column without reading it; overrides beforeCardId.","type":"string","enum":["top","bottom"]},"expectedPositionVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","cardId","columnId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_card"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","cardId","expectedVersion"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"},"routingSync":{"type":"object","properties":{"agentId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"records":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"delegationId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"cardIds":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"recipientLeadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"reviewBy":{"type":"string","enum":["lead","owner"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["delegationId","boardId","sheetId","cardIds","at"],"additionalProperties":false}},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false}},"required":["agentId","records","desktopProof"],"additionalProperties":false},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","operations","boardId"],"additionalProperties":false},"BreakdownRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"breakdown"},"view":{"type":"string","examples":["overview","moments","transcript","findings","questions"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"description":{"type":"string"},"sources":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","examples":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"anyOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"]},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid","thumbnailBase"]},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"]}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","examples":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","status","video","durationSeconds","transcript","error","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","documentId","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","label"]}},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","files","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","sheetId","momentCount","frameCount"]}]}},"counts":{"type":"object","properties":{"moments":{"type":"integer","minimum":0,"maximum":9007199254740991},"findings":{"type":"integer","minimum":0,"maximum":9007199254740991},"questions":{"type":"integer","minimum":0,"maximum":9007199254740991},"frames":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["moments","findings","questions","frames"]},"sections":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"}},"moments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time","label"]}}},"required":["id","sourceId","time","endTime","fileId","blockId","transcript","caption","note","tags","frames"]}},"transcript":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string"}},"required":["sourceId","text"]},"findings":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title","section","body","evidence"]}},"findingSummaries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"bodyPreview":{"type":"string"},"bodyChars":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","title","section","evidence","bodyPreview","bodyChars"]}},"questions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","examples":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text","status","answer","evidence"]}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","description","sources","counts","sections","tags","total","partial","nextCursor"]},"BreakdownCommand":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":200,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"configure"},"expected":{"type":"object","properties":{"description":{"type":"string"}},"additionalProperties":false},"patch":{"type":"object","properties":{"description":{"type":"string","maxLength":4000}},"additionalProperties":false}},"required":["type","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_source"},"source":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","enum":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"oneOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"],"additionalProperties":false}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","enum":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000}},"required":["id","createdAt","name","kind"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."}},"required":["id","createdAt","name","kind","documentId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media"],"additionalProperties":false}}},"required":["id","createdAt","name","kind"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."}},"required":["id","createdAt","name","kind","sheetId"],"additionalProperties":false}]}},"required":["type","source"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_source"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"type":"string","maxLength":4000},"status":{"type":"string","enum":["uploading","processing","ready","error"]},"video":{"anyOf":[{"oneOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"],"additionalProperties":false}]},{"type":"null"}]},"durationSeconds":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"type":"string","enum":["none","pending","ready","error"]},"error":{"type":"string","maxLength":1000}},"additionalProperties":false},"patch":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"type":"string","maxLength":4000},"status":{"type":"string","enum":["uploading","processing","ready","error"]},"video":{"anyOf":[{"oneOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"],"additionalProperties":false}]},{"type":"null"}]},"durationSeconds":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"type":"string","enum":["none","pending","ready","error"]},"error":{"type":"string","maxLength":1000}},"additionalProperties":false}},"required":["type","sourceId","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_source"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"oneOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","enum":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"oneOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid"],"additionalProperties":false},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"],"additionalProperties":false}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","enum":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000}},"required":["id","createdAt","name","kind"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."}},"required":["id","createdAt","name","kind","documentId"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media"],"additionalProperties":false}}},"required":["id","createdAt","name","kind"],"additionalProperties":false},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."}},"required":["id","createdAt","name","kind","sheetId"],"additionalProperties":false}]}},"required":["type","sourceId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_sources"},"ids":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"expected":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","ids","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_files"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"files":{"minItems":1,"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media"],"additionalProperties":false}}},"required":["type","sourceId","files"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_file"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"fileId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media"],"additionalProperties":false}},"required":["type","sourceId","fileId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_moments"},"moments":{"minItems":1,"maxItems":2000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time"],"additionalProperties":false}}},"required":["id","sourceId"],"additionalProperties":false}}},"required":["type","moments"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"patch_moment"},"momentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"time":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"type":"string","maxLength":4000},"caption":{"type":"string","maxLength":2000},"note":{"type":"string","maxLength":4000},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"additionalProperties":false},"patch":{"type":"object","properties":{"time":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"type":"string","maxLength":4000},"caption":{"type":"string","maxLength":2000},"note":{"type":"string","maxLength":4000},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"additionalProperties":false}},"required":["type","momentId","expected","patch"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_moment"},"momentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time"],"additionalProperties":false}}},"required":["id","sourceId"],"additionalProperties":false}},"required":["type","momentId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"attach_frame"},"momentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"frame":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time"],"additionalProperties":false}},"required":["type","momentId","frame"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_frame"},"momentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"frameId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","enum":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"],"additionalProperties":false},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time"],"additionalProperties":false}},"required":["type","momentId","frameId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_finding"},"finding":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title"],"additionalProperties":false},"expected":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title"],"additionalProperties":false},{"type":"null"}]}},"required":["type","finding","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_finding"},"findingId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title"],"additionalProperties":false}},"required":["type","findingId","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_findings"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"expected":{"maxItems":500,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","ids","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"put_question"},"question":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","enum":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text"],"additionalProperties":false},"expected":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","enum":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text"],"additionalProperties":false},{"type":"null"}]}},"required":["type","question","expected"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_question"},"questionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expected":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","enum":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text"],"additionalProperties":false}},"required":["type","questionId","expected"],"additionalProperties":false}],"description":"Atomic, minimal updates. Sources: add_source with kind play_session (browser upload, or external YouTube embed with video:{provider:\"youtube\",videoId:\"CGrkU15iUF8\"}, status:\"ready\", transcript:\"none\"; store no video bytes, add timed transcript excerpts with add_moments when available), document (documentId names a hosted document created empty on commit; write it with apply_document_operations) or files (one entry holding many uploaded assets; add_files/remove_file edit it; each file gets a moment automatically). Example: [{type:\"add_source\",source:{id:\"src_notes\",kind:\"document\",createdAt:\"2026-09-21T10:00:00.000Z\",name:\"Design notes\",documentId:\"doc_notes\"}},{type:\"put_finding\",expected:null,finding:{id:\"finding_loop\",title:\"Core loop\",section:\"Systems\",body:\"Harvest, craft, sell…\",evidence:[\"moment_12\"]}}]. IDs are caller assigned. patch_source/patch_moment/configure include the previous value of every patched field in expected; put_* send expected null to create or the current item to replace; remove_* send the exact current item (remove_source also removes its moments and, for a document source, the hosted document). add_moments inserts excerpts: time in seconds for play sessions, fileId for file sets, blockId for documents. attach_frame references an uploaded raster asset (or use capture_breakdown_frame to grab one from a session video)."}},"dryRun":{"type":"boolean"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations","boardId"],"additionalProperties":false},"BreakdownFrame":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"},"momentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"frame":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time","label"]}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed","momentId","frame"]},"DataRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"issuesEvaluated":{"type":"boolean"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"type":{"type":"string","const":"data"},"view":{"type":"string","examples":["full","catalog","schema_compact","audit"]},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"description":{"type":"string"},"tables":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"description":{"type":"string"},"recordCount":{"type":"number"},"primaryDisplayColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"tags":{"type":"array","items":{"type":"string"}},"link":{"type":"string"},"referencedBy":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableName":{"type":"string"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnName":{"type":"string"},"targetTableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"targetColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"recordCount":{"type":"number"}},"required":["tableId","tableName","columnId","columnName","targetTableId","targetColumnId","recordCount"]}},"version":{"type":"string"},"schemaVersion":{"type":"string"},"metaVersion":{"type":"string"},"columns":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","name","type","required","unique","referenceTableId","referenceColumnId"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","name","description","type","required","unique","immutable","autoNumber","defaultValue","options","referenceTableId","referenceColumnId","width"]}]}}},"required":["id","name","description","recordCount","primaryDisplayColumnId","link","referencedBy","columns"]}},"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","values"]}},"issues":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"message":{"type":"string"}},"required":["tableId","message"]}},"issueCount":{"type":"number"},"auditTableIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"audit":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"message":{"type":"string"},"count":{"type":"number"},"sampleRecordIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["tableId","message","count","sampleRecordIds"]}},"dependencies":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableName":{"type":"string"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnName":{"type":"string"},"targetTableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"targetColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"recordCount":{"type":"number"}},"required":["tableId","tableName","columnId","columnName","targetTableId","targetColumnId","recordCount"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["issuesEvaluated","type","boardId","sheetId","revision","documentRevision","description","tables","records","issues","issueCount","partial","nextCursor"]},"DataOperationBatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","minLength":8,"pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"conflictPolicy":{"default":"merge_non_overlapping","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"patch_metadata"},"edits":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"patches":{"minItems":1,"maxItems":5,"type":"array","items":{"oneOf":[{"type":"object","properties":{"field":{"type":"string","const":"name"},"expected":{"type":"string"},"value":{"type":"string","minLength":1,"maxLength":100}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"description"},"expected":{"type":"string"},"value":{"type":"string","maxLength":10000}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"width"},"expected":{"type":"number"},"value":{"type":"integer","minimum":80,"maximum":800}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"unit"},"expected":{"type":["string","null"]},"value":{"anyOf":[{"type":"string","maxLength":80},{"type":"null"}]}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"primaryDisplayColumnId"},"expected":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"value":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["field","expected","value"],"additionalProperties":false},{"type":"object","properties":{"field":{"type":"string","const":"tags"},"expected":{"maxItems":20,"type":"array","items":{"type":"string"}},"value":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["field","expected","value"],"additionalProperties":false}]}}},"required":["tableId","patches"],"additionalProperties":false}}},"required":["type","edits"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"migrate_reference"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"referenceColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"New key in the same target table, or null for internal record identity. Requires the exact current sheet revision; values and defaults are converted atomically."}},"required":["type","tableId","columnId","referenceColumnId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_table"},"table":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":20000},"primaryDisplayColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"nextId":{"default":1,"type":"integer","minimum":1,"maximum":9007199254740991},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"columns":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","enum":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","name","type"],"additionalProperties":false}},"records":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","values"],"additionalProperties":false}}},"required":["id","name","columns","records"],"additionalProperties":false}},"required":["type","table"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_table"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedMetaVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Use table.metaVersion from read_data, not table.version."},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"type":"string","maxLength":20000}},"required":["type","tableId","expectedMetaVersion","name","description"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_table"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Use table.version from read_data; referenced tables cannot be deleted until their dependencies are removed."}},"required":["type","tableId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_column"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedSchemaVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"column":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","enum":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","name","type"],"additionalProperties":false}},"required":["type","tableId","expectedSchemaVersion","column"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_column"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Use column.version from read_data; use patch_metadata for description/name/width/unit changes."},"column":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","enum":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","name","type"],"additionalProperties":false}},"required":["type","tableId","expectedVersion","column"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_column"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedTableVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["type","tableId","columnId","expectedTableVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_columns"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedSchemaVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"ids":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["type","tableId","expectedSchemaVersion","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_record"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedSchemaVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"record":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","values"],"additionalProperties":false}},"required":["type","tableId","expectedSchemaVersion","record"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_record"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Use record.version from read_data."}},"required":["type","tableId","recordId","expectedVersion"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_cells"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cells":{"minItems":1,"maxItems":1000,"type":"array","items":{"type":"object","properties":{"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"expectedColumnVersion":{"type":"string","pattern":"^[a-f0-9]{64}$"},"expectedValue":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"value":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"required":["recordId","columnId","expectedColumnVersion","expectedValue","value"],"additionalProperties":false}}},"required":["type","tableId","cells"],"additionalProperties":false}]}},"preconditionMode":{"description":"batch_start checks version hashes against the initial snapshot, allowing dependent schema operations in one atomic batch. Expected cell values still check the state at that operation.","type":"string","enum":["sequential","batch_start"]},"returnVersions":{"type":"string","enum":["changed","none"]},"dryRun":{"type":"boolean"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["sheetId","requestId","expectedRevision","operations","boardId"],"additionalProperties":false},"DocumentOperationBatch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","minLength":8,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedRevision":{"type":"string","pattern":"^g\\d+\\.r\\d+$"},"sheetId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"documentId":{"description":"The page of a Document tab to edit (omit for the tab's own page, whose id is the sheet id), or a document hosted by another tab such as a Breakdown source.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"conflictPolicy":{"default":"reject","type":"string","enum":["reject","merge_non_overlapping"]},"operations":{"minItems":1,"maxItems":100,"type":"array","items":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"append_blocks"},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","content"],"additionalProperties":false,"description":"Append to the current server-side tail. Append-only batches with merge_non_overlapping may omit expectedRevision."},{"type":"object","properties":{"type":{"type":"string","const":"insert_blocks"},"afterId":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},{"type":"null"}]},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","afterId","content"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"replace_block"},"blockId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Block version from read_board(includeVersions:true), or qraft doc read --versions --block ID. Copy blocks[].version, not revision/documentRevision."},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","blockId","expectedVersion","content"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_blocks"},"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedVersion":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Block version from read_board(includeVersions:true), or qraft doc read --versions --block ID. Copy blocks[].version, not revision/documentRevision."}},"required":["id","expectedVersion"],"additionalProperties":false}}},"required":["type","blocks"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"replace_document"},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","content"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_page"},"page":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["id","title"],"additionalProperties":false},"afterPageId":{"description":"null: first; omit: last.","anyOf":[{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},{"type":"null"}]},"content":{"anyOf":[{"type":"object","properties":{"blocks":{"minItems":1,"maxItems":500,"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["blocks"],"additionalProperties":false},{"type":"object","properties":{"markdown":{"type":"string","maxLength":200000}},"required":["markdown"],"additionalProperties":false}]}},"required":["type","page"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_page"},"pageId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedTitle":{"type":"string","minLength":1,"maxLength":120},"title":{"type":"string","minLength":1,"maxLength":120}},"required":["type","pageId","expectedTitle","title"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_page"},"pageId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"afterPageId":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},{"type":"null"}]}},"required":["type","pageId","afterPageId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_page"},"pageId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"expectedTitle":{"type":"string","minLength":1,"maxLength":120}},"required":["type","pageId","expectedTitle"],"additionalProperties":false,"description":"Delete its document (undoable); else close_page."},{"type":"object","properties":{"type":{"type":"string","const":"open_page"},"documentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"afterPageId":{"description":"null: first; omit: last.","anyOf":[{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},{"type":"null"}]}},"required":["type","documentId"],"additionalProperties":false,"description":"Open a list_documents document as a page."},{"type":"object","properties":{"type":{"type":"string","const":"close_page"},"pageId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}},"required":["type","pageId"],"additionalProperties":false,"description":"Close a page; its document is kept."}]}},"dryRun":{"type":"boolean"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"}},"required":["requestId","sheetId","operations","boardId"],"additionalProperties":false,"$defs":{"__schema0":{"type":"object","properties":{"type":{"type":"string","enum":["doc","paragraph","heading","text","bulletList","orderedList","listItem","taskList","taskItem","blockquote","codeBlock","hardBreak","horizontalRule","image","table","tableRow","tableCell","tableHeader"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}},"text":{"type":"string"},"marks":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["bold","italic","strike","underline","code","link","textStyle","highlight"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema2"}}},"required":["type"],"additionalProperties":false}},"content":{"type":"array","items":{"$ref":"#/$defs/__schema0"}}},"required":["type"],"additionalProperties":false},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema2"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema2"}}]}}},"SheetList":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"peopleNextCursor":{"type":["string","null"]},"archivedHidden":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"trash":{"type":"array","items":{"type":"object","properties":{"reason":{"type":"string"},"deletedBy":{"type":"string"},"parentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"trashId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"deletedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"index":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","trashId","name","type","deletedAt","expiresAt","index"]}},"trashRetentionDays":{"type":"number","const":30},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"timelineRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"behavior":{"type":"string","examples":["standard","archive"]},"archived":{"type":"boolean","const":true}},"required":["id","name","revision"]}},"people":{"type":"array","items":{"type":"object","properties":{"userId":{"type":"string"},"name":{"type":"string"},"role":{"type":"string","examples":["owner","editor","viewer"]}},"required":["userId","name","role"]}},"agents":{"type":"array","items":{"type":"object","properties":{"agentId":{"type":"string"},"name":{"type":"string"},"kind":{"type":"string","examples":["lead","project"]}},"required":["agentId","name","kind"]}}},"required":["boardId","documentRevision","timelineRevision","sheets"]},"TagList":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"tags":{"type":"array","items":{"type":"object","properties":{"tag":{"type":"string"},"count":{"type":"integer","minimum":0,"maximum":9007199254740991},"sheets":{"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string"},"count":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["sheetId","count"]}}},"required":["tag","count","sheets"]}},"items":{"description":"With tag: the tagged items in tab order, assets (sheetId $library) last, at most 500.","type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string"},"kind":{"type":"string","examples":["card","subject","moment","node","review","screen","section","asset","table","column","record"]},"id":{"type":"string"},"title":{"type":"string"}},"required":["sheetId","kind","id","title"]}},"partial":{"type":"boolean"}},"required":["tags"]},"SheetCommand":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"expectedRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"operation":{"oneOf":[{"type":"object","properties":{"type":{"type":"string","const":"move_document_to_journal"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"journalSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedJournalRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"entryId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","expectedSheetRevision","journalSheetId","expectedJournalRevision","entryId"],"additionalProperties":false,"description":"Atomically move all pages of a Document tab into an existing Journal entry without a document, then trash the tab."},{"type":"object","properties":{"type":{"type":"string","const":"move_journal_entries"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"journalSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedJournalRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"entries":{"anyOf":[{"minItems":1,"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":500}},{"type":"string","const":"all"}],"description":"Ids, exact titles, or \"all\""},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"dryRun":{"type":"boolean"}},"required":["type","sheetId","expectedSheetRevision","journalSheetId","expectedJournalRevision","entries"],"additionalProperties":false,"description":"Move entries whole (reports, files, values, authors, times) from journal sheetId to journalSheetId, verified before the source lets go."},{"type":"object","properties":{"type":{"type":"string","const":"convert_to_data"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"references":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"tableName":{"type":"string"},"columnName":{"type":"string"},"targetTableName":{"type":"string"},"targetColumnName":{"type":"string"}},"required":["tableName","columnName","targetTableName","targetColumnName"],"additionalProperties":false}}},"required":["type","sheetId","expectedSheetRevision","references"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_page_settings"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pageSettings":{"type":"object","properties":{"size":{"type":"string","enum":["a4","letter","legal","custom"]},"orientation":{"type":"string","enum":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"],"additionalProperties":false}},"required":["size","orientation","width","height","margins"],"additionalProperties":false},"expectedPageSettings":{"type":"object","properties":{"size":{"type":"string","enum":["a4","letter","legal","custom"]},"orientation":{"type":"string","enum":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"],"additionalProperties":false}},"required":["size","orientation","width","height","margins"],"additionalProperties":false}},"required":["type","sheetId","pageSettings","expectedPageSettings"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_git_repo"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"gitRepo":{"type":"object","properties":{"provider":{"default":"github","type":"string","enum":["github"]},"owner":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"repo":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"branch":{"default":"","type":"string","maxLength":200,"pattern":"^[^\\s~^:?*[\\\\]*$"},"path":{"default":"","type":"string","maxLength":500,"pattern":"^(?!\\/)(?!.*\\.\\.)[^\\s]*$"},"notes":{"default":"","type":"string","maxLength":4000}},"additionalProperties":false},"expectedGitRepo":{"type":"object","properties":{"provider":{"default":"github","type":"string","enum":["github"]},"owner":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"repo":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"branch":{"default":"","type":"string","maxLength":200,"pattern":"^[^\\s~^:?*[\\\\]*$"},"path":{"default":"","type":"string","maxLength":500,"pattern":"^(?!\\/)(?!.*\\.\\.)[^\\s]*$"},"notes":{"default":"","type":"string","maxLength":4000}},"additionalProperties":false}},"required":["type","sheetId","gitRepo","expectedGitRepo"],"additionalProperties":false,"description":"Point a Git repo tab at a GitHub repository. expectedGitRepo comes from read_board on that tab; a concurrent change rejects the command."},{"type":"object","properties":{"type":{"type":"string","const":"restore_sheet"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"trashId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","sheetId","trashId"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_sheet"},"sheetType":{"type":"string","enum":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"name":{"type":"string","minLength":1,"maxLength":48},"parentId":{"description":"Create the tab inside this Folder or Breakdown tab.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"encrypted":{"description":"Files only, owner only: an Encrypted drive. Fixed at creation.","type":"boolean","const":true}},"required":["type","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_sheet_parent"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"parentId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["type","sheetId","parentId"],"additionalProperties":false,"description":"Move a tab (and whatever is inside it) into a Folder, or a plain tab into a Breakdown (it becomes one of its sources); parentId null moves it back to the tab bar. Folders nest. Content, id and links are unchanged."},{"type":"object","properties":{"type":{"type":"string","const":"set_folder_behavior"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"behavior":{"type":"string","enum":["standard","archive"]}},"required":["type","sheetId","behavior"],"additionalProperties":false,"description":"archive: the Folder's tabs leave lists, pickers and tags until moved out."},{"type":"object","properties":{"type":{"type":"string","const":"rename_sheet"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","sheetId","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"duplicate_sheet"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["type","sheetId","name","expectedSheetRevision"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"delete_sheet"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"expectedSheetRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"reason":{"type":"string","minLength":1,"maxLength":300}},"required":["type","sheetId","expectedSheetRevision"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_sheets"},"ids":{"minItems":1,"maxItems":65536,"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["type","ids"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_document"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","name"],"additionalProperties":false}]},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"agentId":{"description":"QRAFT_AGENT_ID for the batch; operations inherit it.","type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"desktopProof":{"type":"object","properties":{"nonce":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"payload":{"type":"string","maxLength":100000}},"required":["nonce","payload"],"additionalProperties":false}},"required":["requestId","expectedRevision","operation","boardId"],"additionalProperties":false},"NotificationSend":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"notified":{"type":"integer","minimum":0,"maximum":9007199254740991},"notificationIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["notified","notificationIds"]},"BoardPreview":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"media":{"description":"With saveAsMedia: the stored PNG, as review and card attachments take it (attachments[].media).","type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"image/png"},"filename":{"type":"string"}},"required":["id","mimeType","filename"]},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"mimeType":{"type":"string","const":"image/png"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"viewport":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0}},"required":["x","y","width","height"]},"scale":{"type":"number","exclusiveMinimum":0},"reports":{"description":"Analytics captures return one image per report, in images[] order.","type":"array","items":{"type":"object","properties":{"reportId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["reportId","width","height"]}},"screens":{"description":"perScreen: each image's screen and size, in images[] order.","type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["screenId","width","height"]}},"image":{"description":"The PNG; absent for perScreen, which returns images.","type":"object","properties":{"mimeType":{"type":"string","const":"image/png"},"data":{"type":"string","maxLength":5592410}},"required":["mimeType","data"]},"images":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"mimeType":{"type":"string","const":"image/png"},"data":{"type":"string","maxLength":5592410},"screenId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["mimeType","data","screenId"]},{"type":"object","properties":{"mimeType":{"type":"string","const":"image/png"},"data":{"type":"string","maxLength":5592410},"reportId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["mimeType","data","reportId"]}]}}},"required":["boardId","revision","mimeType","width","height","viewport","scale"]},"BoardDiff":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","examples":["sheet","document"]},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"fromRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"toRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"changes":{"type":"array","items":{"type":"object","properties":{"path":{"type":"array","items":{"type":"string"}},"before":{"anyOf":[{"type":"object","properties":{"exists":{"type":"boolean","const":false}},"required":["exists"]},{"type":"object","properties":{"exists":{"type":"boolean","const":true},"value":{"$ref":"#/$defs/__schema0"}},"required":["exists","value"]}]},"after":{"anyOf":[{"type":"object","properties":{"exists":{"type":"boolean","const":false}},"required":["exists"]},{"type":"object","properties":{"exists":{"type":"boolean","const":true},"value":{"$ref":"#/$defs/__schema0"}},"required":["exists","value"]}]}},"required":["path","before","after"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["boardId","fromRevision","toRevision","changes","partial","nextCursor"],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]}}},"Capabilities":{"type":"object","description":"Live feature flags, versions, limits, scopes and operation registry."},"Operation":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"insert_prefab"},"prefab":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","enum":["account","document"]},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"members":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"dx":{"type":"number","minimum":-1000000,"maximum":1000000},"dy":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"],"additionalProperties":false}},"required":["id","dx","dy","width","height","text","shape","style"],"additionalProperties":false}},"edges":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"from":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["from","to"],"additionalProperties":false}}},"required":["id","scope","width","height","members","edges"],"additionalProperties":false},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"tempRef":{"type":"string","maxLength":48,"pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"}},"required":["type","prefab","x","y","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"humanize"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"align_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["left","center_x","right","top","center_y","bottom"]}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"distribute_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["x","y"]},"gap":{"type":"number","minimum":0,"maximum":1000000}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"snap_to_grid"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"grid":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","grid"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"normalize_sizes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_metadata"},"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string"},"key":{"type":"string","maxLength":128,"pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"value":{"$ref":"#/$defs/__schema0"},"remove":{"type":"boolean"}},"required":["type","target","key","value"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_theme"},"theme":{"type":"object","properties":{"name":{"description":"Label shown in File → Themes, for example the game title.","type":"string","minLength":1,"maxLength":48},"scheme":{"description":"Default: inferred from background luminance.","type":"string","enum":["light","dark"]},"base":{"description":"Preset backing anything not derived. Default classic (dark) or parchment (light).","type":"string","enum":["classic","midnight","ink","parchment","homebrew"]},"colors":{"type":"object","properties":{"background":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$","description":"Chrome background; everything else derives from it unless given."},"surface":{"description":"Rail, cabinet and raised panels.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"text":{"description":"Chrome text; adjusted to stay readable.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"muted":{"description":"Secondary text and hints.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"accent":{"description":"Highlights, kickers, hover fills. Default brass.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"danger":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ok":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"canvas":{"description":"Flowchart canvas and sheet workspace.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"connector":{"description":"Default connector line and arrowhead color. Omit to derive a readable color against the canvas; per-edge colors still override it.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"paper":{"description":"Fallback node paper and selection rings.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ink":{"description":"Fallback node ink and outlines.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"}},"required":["background"],"additionalProperties":false},"fonts":{"type":"object","properties":{"ui":{"description":"Chrome font stack, e.g. \"Cinzel, Georgia, serif\". Families must be installed on the viewer's device or generic; no web fonts are downloaded.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"display":{"description":"Headline and kicker font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"node":{"description":"Default node text font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"}},"additionalProperties":false},"background":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."},"surfaces":{"description":"Default [\"canvas\"]; a tab type name shows it on those tabs; \"workspace\" adds all surfaces.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","enum":["canvas","rail","document","asset_board","data","kanban","journal","pipeline","art_bible","analytics","support","experiments","crashes","digital_ads","localization","review_stream","research","breakdown","product_review","folder","video_library","video_ad","schedules","resources","workspace"]}},"fit":{"description":"Default cover.","type":"string","enum":["cover","contain","tile","fill","none"]},"position":{"description":"Default center.","type":"string","enum":["center","top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"]},"attachment":{"description":"Default local for documents, fixed for canvas.","type":"string","enum":["local","fixed","scroll"]},"tileScale":{"description":"Multiplier for tile dimensions.","type":"number","minimum":0.05,"maximum":10},"tileSize":{"description":"Explicit tile width in pixels for tile fit.","type":"integer","minimum":16,"maximum":2048},"opacity":{"description":"Default 0.35 so content stays readable.","type":"number","minimum":0.05,"maximum":1},"surfaceOpacity":{"type":"object","properties":{"canvas":{"type":"number","minimum":0.05,"maximum":1},"rail":{"type":"number","minimum":0.05,"maximum":1},"document":{"type":"number","minimum":0.05,"maximum":1},"asset_board":{"type":"number","minimum":0.05,"maximum":1},"data":{"type":"number","minimum":0.05,"maximum":1},"kanban":{"type":"number","minimum":0.05,"maximum":1}},"additionalProperties":false},"blur":{"description":"Pixels. Default 0.","type":"number","minimum":0,"maximum":40},"blendMode":{"description":"CSS blend mode.","type":"string","enum":["normal","multiply","screen","overlay","soft-light","luminosity"]}},"required":["assetId"],"additionalProperties":false},"favicon":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."}},"required":["assetId"],"additionalProperties":false},"tokens":{"type":"object","propertyNames":{"type":"string","enum":["ink","paper","paper-deep","brass","brass-hot","graphite","graphite-2","walnut","walnut-2","rule","cream","muted","bg","bg-2","fg","fg-muted","chrome","chrome-line","rail-edge","rail-hint","surface","surface-2","fill-control","control-line","hover","glow","grid-glow","accent-line","danger","danger-fill","ok","workspace","workspace-text","workspace-muted","panel","panel-2","panel-line","accent-ink","shadow","board-bg","theme-chip","connector-color"]},"additionalProperties":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"description":"Direct overrides applied after derivation, keyed by CSS variable name without dashes (\"brass\"). Prefer colors."}},"required":["colors"],"additionalProperties":false}},"required":["type","theme"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_flowchart"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_theme"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_board"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_connector_default"},"connectors":{"type":"string","enum":["smooth","elbow"]}},"required":["type","connectors"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_node"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_node"},"id":{"type":"string"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_node"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_edge"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["type","tempRef","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_edge"},"id":{"type":"string"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}]},"connectors":{"anyOf":[{"type":"string","enum":["smooth","elbow"]},{"type":"null"}]},"color":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},{"type":"null"}]},"width":{"anyOf":[{"type":"number","exclusiveMinimum":0,"maximum":32},{"type":"null"}]},"labelStyle":{"anyOf":[{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false},{"type":"null"}]}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_edge"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_nodes"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string"}}},"required":["type","ids"],"additionalProperties":false}],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]}}},"OperationBatchRequest":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"commandSchemaVersion":{"type":"number","const":1},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"expectedRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"conflictPolicy":{"type":"string","enum":["reject","merge_non_overlapping"]},"preconditions":{"minItems":1,"maxItems":500,"type":"array","items":{"anyOf":[{"type":"object","properties":{"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"path":{"minItems":1,"maxItems":8,"type":"array","items":{"type":"string","minLength":1,"maxLength":128}},"expected":{"anyOf":[{"type":"object","properties":{"exists":{"type":"boolean","const":false}},"required":["exists"],"additionalProperties":false},{"type":"object","properties":{"exists":{"type":"boolean","const":true},"value":{"$ref":"#/$defs/__schema0"}},"required":["exists","value"],"additionalProperties":false}]}},"required":["target","path","expected"],"additionalProperties":false},{"type":"object","properties":{"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["target","version"],"additionalProperties":false}]}},"operations":{"minItems":1,"maxItems":500,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"insert_prefab"},"prefab":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","enum":["account","document"]},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"members":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"dx":{"type":"number","minimum":-1000000,"maximum":1000000},"dy":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"],"additionalProperties":false}},"required":["id","dx","dy","width","height","text","shape","style"],"additionalProperties":false}},"edges":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"from":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["from","to"],"additionalProperties":false}}},"required":["id","scope","width","height","members","edges"],"additionalProperties":false},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"tempRef":{"type":"string","maxLength":48,"pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"}},"required":["type","prefab","x","y","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"humanize"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"align_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["left","center_x","right","top","center_y","bottom"]}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"distribute_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["x","y"]},"gap":{"type":"number","minimum":0,"maximum":1000000}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"snap_to_grid"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"grid":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","grid"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"normalize_sizes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_metadata"},"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string"},"key":{"type":"string","maxLength":128,"pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"value":{"$ref":"#/$defs/__schema1"},"remove":{"type":"boolean"}},"required":["type","target","key","value"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_theme"},"theme":{"type":"object","properties":{"name":{"description":"Label shown in File → Themes, for example the game title.","type":"string","minLength":1,"maxLength":48},"scheme":{"description":"Default: inferred from background luminance.","type":"string","enum":["light","dark"]},"base":{"description":"Preset backing anything not derived. Default classic (dark) or parchment (light).","type":"string","enum":["classic","midnight","ink","parchment","homebrew"]},"colors":{"type":"object","properties":{"background":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$","description":"Chrome background; everything else derives from it unless given."},"surface":{"description":"Rail, cabinet and raised panels.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"text":{"description":"Chrome text; adjusted to stay readable.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"muted":{"description":"Secondary text and hints.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"accent":{"description":"Highlights, kickers, hover fills. Default brass.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"danger":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ok":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"canvas":{"description":"Flowchart canvas and sheet workspace.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"connector":{"description":"Default connector line and arrowhead color. Omit to derive a readable color against the canvas; per-edge colors still override it.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"paper":{"description":"Fallback node paper and selection rings.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ink":{"description":"Fallback node ink and outlines.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"}},"required":["background"],"additionalProperties":false},"fonts":{"type":"object","properties":{"ui":{"description":"Chrome font stack, e.g. \"Cinzel, Georgia, serif\". Families must be installed on the viewer's device or generic; no web fonts are downloaded.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"display":{"description":"Headline and kicker font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"node":{"description":"Default node text font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"}},"additionalProperties":false},"background":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."},"surfaces":{"description":"Default [\"canvas\"]; a tab type name shows it on those tabs; \"workspace\" adds all surfaces.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","enum":["canvas","rail","document","asset_board","data","kanban","journal","pipeline","art_bible","analytics","support","experiments","crashes","digital_ads","localization","review_stream","research","breakdown","product_review","folder","video_library","video_ad","schedules","resources","workspace"]}},"fit":{"description":"Default cover.","type":"string","enum":["cover","contain","tile","fill","none"]},"position":{"description":"Default center.","type":"string","enum":["center","top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"]},"attachment":{"description":"Default local for documents, fixed for canvas.","type":"string","enum":["local","fixed","scroll"]},"tileScale":{"description":"Multiplier for tile dimensions.","type":"number","minimum":0.05,"maximum":10},"tileSize":{"description":"Explicit tile width in pixels for tile fit.","type":"integer","minimum":16,"maximum":2048},"opacity":{"description":"Default 0.35 so content stays readable.","type":"number","minimum":0.05,"maximum":1},"surfaceOpacity":{"type":"object","properties":{"canvas":{"type":"number","minimum":0.05,"maximum":1},"rail":{"type":"number","minimum":0.05,"maximum":1},"document":{"type":"number","minimum":0.05,"maximum":1},"asset_board":{"type":"number","minimum":0.05,"maximum":1},"data":{"type":"number","minimum":0.05,"maximum":1},"kanban":{"type":"number","minimum":0.05,"maximum":1}},"additionalProperties":false},"blur":{"description":"Pixels. Default 0.","type":"number","minimum":0,"maximum":40},"blendMode":{"description":"CSS blend mode.","type":"string","enum":["normal","multiply","screen","overlay","soft-light","luminosity"]}},"required":["assetId"],"additionalProperties":false},"favicon":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."}},"required":["assetId"],"additionalProperties":false},"tokens":{"type":"object","propertyNames":{"type":"string","enum":["ink","paper","paper-deep","brass","brass-hot","graphite","graphite-2","walnut","walnut-2","rule","cream","muted","bg","bg-2","fg","fg-muted","chrome","chrome-line","rail-edge","rail-hint","surface","surface-2","fill-control","control-line","hover","glow","grid-glow","accent-line","danger","danger-fill","ok","workspace","workspace-text","workspace-muted","panel","panel-2","panel-line","accent-ink","shadow","board-bg","theme-chip","connector-color"]},"additionalProperties":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"description":"Direct overrides applied after derivation, keyed by CSS variable name without dashes (\"brass\"). Prefer colors."}},"required":["colors"],"additionalProperties":false}},"required":["type","theme"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_flowchart"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_theme"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_board"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_connector_default"},"connectors":{"type":"string","enum":["smooth","elbow"]}},"required":["type","connectors"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_node"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_node"},"id":{"type":"string"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_node"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_edge"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["type","tempRef","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_edge"},"id":{"type":"string"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}]},"connectors":{"anyOf":[{"type":"string","enum":["smooth","elbow"]},{"type":"null"}]},"color":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},{"type":"null"}]},"width":{"anyOf":[{"type":"number","exclusiveMinimum":0,"maximum":32},{"type":"null"}]},"labelStyle":{"anyOf":[{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false},{"type":"null"}]}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_edge"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_nodes"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string"}}},"required":["type","ids"],"additionalProperties":false}]}},"dryRun":{"type":"boolean"}},"required":["requestId","expectedRevision","operations"],"additionalProperties":false,"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]}}},"OperationReceipt":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"reviewHolders":{"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["reviewId","round","reviewers"]}},"wireframeVersion":{"type":"string"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"kanbanVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"dataVersions":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":["string","null"]}},"blockVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"nodeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"edgeVersions":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]}},"changedBlockIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"createdSheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rebasedFrom":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"changeId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdIds":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedNodeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"changedEdgeIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"summary":{"type":"string"},"warnings":{"type":"array","items":{"type":"string"}},"dryRun":{"type":"boolean"},"noop":{"type":"boolean"},"replayed":{"type":"boolean"},"committed":{"type":"boolean"},"peerReviewDeliveries":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"reviewId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceAgentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"targetAgentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"action":{"type":"string","examples":["submitted","approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["reviewId","round","sourceAgentId","targetAgentId","action"]}},"outcome":{"type":"string","const":"committed"},"pages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"home":{"description":"Tab holding it, if not this one.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]}},"required":["id","title"]}}},"required":["requestId","changeId","revisionBefore","revisionAfter","createdIds","changedNodeIds","changedEdgeIds","summary","warnings","dryRun","noop","replayed","committed"]},"Document":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"kind":{"type":"string","const":"vgd-board"},"version":{"type":"number","const":1},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48},"savedAt":{"type":"string"},"camera":{"type":"object","properties":{"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"zoom":{"type":"number","exclusiveMinimum":0}},"required":["x","y","zoom"],"additionalProperties":false},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"],"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}},"required":["id","x","y","width","height","text","shape","style"],"additionalProperties":false}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}},"required":["id","from","to"],"additionalProperties":false}},"prefabs":{"type":"array","items":{"$ref":"#/$defs/__schema1"}},"connectors":{"type":"string","enum":["smooth","elbow"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}},"required":["kind","version","id","name","savedAt","camera","nodes","edges","prefabs","connectors"],"additionalProperties":false,"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]}}},"CompactBoardRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","enum":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","enum":["a4","letter","legal","custom"]},"orientation":{"type":"string","enum":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"],"additionalProperties":false}},"required":["size","orientation","width","height","margins"],"additionalProperties":false},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","enum":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"],"additionalProperties":false}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","enum":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"text":{"type":"string","maxLength":20000},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"linkedTo":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rows":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string"},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["text"],"additionalProperties":false}},"loopedFrom":{"type":"array","items":{"type":"object","properties":{"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"row":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["nodeId"],"additionalProperties":false}},"rawText":{"type":"string"}},"required":["id","shape","text"],"additionalProperties":false}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"rawLabel":{"type":"string"}},"required":["id","from","to"],"additionalProperties":false}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges"],"additionalProperties":false},"FullBoardRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","enum":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","enum":["a4","letter","legal","custom"]},"orientation":{"type":"string","enum":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"],"additionalProperties":false}},"required":["size","orientation","width","height","margins"],"additionalProperties":false},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","enum":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"],"additionalProperties":false}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","enum":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"],"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","x","y","width","height","text","shape","style"],"additionalProperties":false}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","from","to"],"additionalProperties":false}},"prefabs":{"type":"array","items":{"$ref":"#/$defs/__schema1"}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges","prefabs"],"additionalProperties":false,"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]}}},"BoardRead":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"inbox"},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"note":{"type":"string"}},"required":["type","boardId","sheetId","note"]},{"type":"object","properties":{"type":{"type":"string","const":"git_repo"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"documentFormatVersion":{"type":"number","const":3},"gitRepo":{"type":"object","properties":{"provider":{"default":"github","type":"string","examples":["github"]},"owner":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"repo":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"branch":{"default":"","type":"string","maxLength":200,"pattern":"^[^\\s~^:?*[\\\\]*$"},"path":{"default":"","type":"string","maxLength":500,"pattern":"^(?!\\/)(?!.*\\.\\.)[^\\s]*$"},"notes":{"default":"","type":"string","maxLength":4000}},"required":["provider","owner","repo","branch","path","notes"]},"configured":{"type":"boolean"},"url":{"type":["string","null"]}},"required":["type","id","name","sheetId","revision","documentRevision","sheets","documentFormatVersion","gitRepo","configured","url"]},{"type":"object","properties":{"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"type":{"type":"string","const":"review_stream"},"metadataOnly":{"type":"boolean"},"view":{"type":"string","examples":["list","status","detail","discussion","thread"]},"availableSections":{"type":"array","items":{"type":"string","examples":["detail","discussion"]}},"entries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"number"},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"decisionBy":{"type":"string"},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"itemCount":{"type":"number"}},"required":["id","title","author","createdAt","submittedAt","status","round","claims","messageCount","reviewers","itemCount"]}},"review":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"integer","minimum":0,"maximum":1000},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"decisionBy":{"type":"string"},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]}},"required":["id","title","author","createdAt","submittedAt","status","round","claims"]},"submission":{"type":"object","properties":{"clipStage":{"type":"string","examples":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"]}}},"required":["id","prompt","options"]}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"]},"refines":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"picks":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"labels":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","maxLength":200}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["round","picks","labels","variants"]},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"snapshots":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"card":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","columnId","rank","archived","dependsOn","title","description","labels","dueDate","checklist","links","branch","worktree"]}},"required":["type","sheetId","cardId","title","card"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy","id","number","savedAt","savedBy"]}},"required":["type","assetId","versionId","title","version"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"required":["type","sheetId","screenId","title","screen"]}]}},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}}},"required":["notes","items","links","attachments","number","createdAt","author","reviewers"]},"attachmentChanges":{"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"status":{"type":"string","examples":["new","updated","unchanged"]},"previous":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"file":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"required":["round","file"]}},"required":["id","status"]}},"messages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"body":{"type":"string","maxLength":8000},"links":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"action":{"type":"string","examples":["comment","approved","approved_with_changes","refined","rejected","cancelled","submitted","claimed","escalated","reassigned"]},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["id","round","body","links","attachments","author","createdAt","action"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["boardId","sheetId","revision","documentRevision","type","view","availableSections","entries","messages","total","nextCursor","partial"]},{"type":"object","properties":{"type":{"type":"string","const":"research"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"description":{"type":"string"},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"]},"parameters":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"default":"","type":"string","maxLength":10000},"group":{"default":"","type":"string","maxLength":100},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"default":"","type":"string","maxLength":80},"currency":{"default":"USD","type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"default":2,"type":"integer","minimum":0,"maximum":6},"ratingMax":{"default":5,"type":"number","minimum":1,"maximum":100},"comparisonColor":{"default":"none","description":"Numeric comparison coloring; high/low chooses the green end. Missing and equal values stay neutral.","type":"string","examples":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"default":200,"type":"number","minimum":100,"maximum":800},"hidden":{"default":[],"type":"array","items":{"type":"string","examples":["table","detail","compare"]}},"archived":{"default":false,"type":"boolean"}},"required":["id","name","type","description","group","options","unit","currency","decimals","ratingMax","comparisonColor","width","hidden","archived"]}},"subjects":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"]},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"tags":{"default":[],"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"default":false,"type":"boolean"},"content":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]}},"required":["id","type","title","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"]}]}},"contentOrder":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","values","tags","archived","content","contentOrder"]}},"total":{"type":"number"},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["type","boardId","sheetId","revision","documentRevision","description","layout","parameters","subjects","total","nextCursor","partial"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_board"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"view":{"type":"string"},"availableSections":{"type":"array","items":{"type":"string","examples":["asset","history","version","draft"]}},"models":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"format":{"type":"string","const":"glb"},"meshes":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"triangles":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"vertices":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"materials":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"textures":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"bones":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"morphTargets":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"animations":{"type":"array","items":{"type":"object","properties":{"index":{"type":"integer","minimum":-9007199254740991,"maximum":9007199254740991},"name":{"type":"string"},"duration":{"type":"number"}},"required":["index","name","duration"]}},"extensions":{"type":"array","items":{"type":"string"}}},"required":["format","meshes","triangles","vertices","materials","textures","bones","morphTargets","animations","extensions"]}},"assets":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":100000},"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"notes":{"type":"string","maxLength":100000},"links":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","sheetId"]}},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"archived":{"type":"boolean"},"selectedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"latestVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"latestNumber":{"type":"number"},"selectedNumber":{"type":["number","null"]},"hasDraft":{"type":"boolean"},"cover":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type"]},{"type":"null"}]},"partCount":{"type":"number"}},"required":["name","tags","id","archived","selectedVersionId","latestVersionId","latestNumber","selectedNumber","hasDraft","cover","partCount"]}},"placements":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"required":["id","assetId","x","y","width","height","groupId","pinnedVersionId","archived"]}},"groups":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"required":["id","name","x","y","width","height","archived"]}},"versions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"name":{"type":"string","maxLength":300},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"},"partCount":{"type":"number"}},"required":["id","number","name","sourceVersionId","coverPartId","savedAt","savedBy","partCount"]}},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","createdAt","createdBy","id","number","savedAt","savedBy"]},"draft":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"}},"required":["id","sourceVersionId","name","notes","coverPartId","createdAt","createdBy"]},"parts":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"comparison":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"status":{"type":"string","examples":["added","removed","changed","unchanged"]},"before":{"anyOf":[{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]},{"type":"null"}]},"after":{"anyOf":[{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]},{"type":"null"}]}},"required":["id","status","before","after"]}},"manifest":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetName":{"type":"string"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"number"},"name":{"type":"string"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"notes":{"type":"string"},"parts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"type":{"type":"string","examples":["text","image","audio","video","model"]},"sourceUrl":{"type":"string"},"prompt":{"type":"string"},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}},"filename":{"type":"string"},"text":{"type":"string"},"mediaId":{"type":"string"},"mimeType":{"type":"string"},"url":{"type":"string"},"posterUrl":{"type":"string"},"posterFilename":{"type":"string"}},"required":["id","name","type","filename"]}}},"required":["assetId","assetName","versionId","number","name","sourceVersionId","notes","parts"]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","boardId","sheetId","revision","documentRevision","view","availableSections","assets","placements","groups","versions","parts","comparison","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe"},"stateLayers":{"maxItems":256,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatchOutput"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentOutput"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatchOutput"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}}}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]},{"type":"null"}]}}},"required":["id","name","condition","screens","interactions"]}},"stateLayerCount":{"type":"integer","minimum":0,"maximum":256},"approvals":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"status":{"type":"string","examples":["approved","pending"]},"inherited":{"type":"boolean"},"ancestorId":{"type":"string"}},"required":["status","inherited"]}},"annotations":{"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string"},"annotationId":{"type":"string"},"componentId":{"type":"string"},"text":{"type":"string"},"anchor":{"anyOf":[{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"component"},"componentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","componentId"]},{"type":"object","properties":{"type":{"type":"string","const":"region"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000}},"required":["type","x","y","width","height"]}],"description":"Optional target. Component callout x/y follow target top-left as offsets; region callout x/y are screen-local."},{"type":"null"}]},"targetMissing":{"type":"boolean"},"bounds":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"},"width":{"type":"number"},"height":{"type":"number"}},"required":["x","y","width","height"]}},"required":["screenId","annotationId","componentId","text","anchor","targetMissing","bounds"]}},"purpose":{"type":"string","examples":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"wireframeVersion":{"type":"string"},"startScreenId":{"type":["string","null"]},"screens":{"type":"array","items":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"interactions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}},"audit":{"type":"array","items":{"type":"object","properties":{"code":{"type":"string"},"screenId":{"type":"string"},"componentId":{"type":"string"},"interactionId":{"type":"string"},"message":{"type":"string"}},"required":["code","screenId","message"]}},"auditTotal":{"type":"number"},"auditScope":{"type":"string","const":"structural"},"prototype":{"type":"object","properties":{"state":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"callers":{"description":"Scoped caller stack. Pass back unchanged to resume. Snapshot null means the selected variable was absent; it is removed on return.","maxItems":20,"type":"array","items":{"type":"object","properties":{"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"history":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"modals":{"maxItems":20,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"transition":{"type":"string","examples":["navigate","open_modal","set_state"]},"variables":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]},{"type":"null"}]}}},"required":["screenId","history","modals","transition","variables"]}}},"required":["screenId","history","modals","variables"]},"activeLayerIds":{"maxItems":256,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"steps":{"type":"array","items":{"type":"object","properties":{"interactionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"outcome":{"type":"string","examples":["applied","blocked","no_change"]},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"activeScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["interactionId","outcome","screenId","activeScreenId"]}},"availableInteractions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"trigger":{"type":"string"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"eventName":{"type":"string"},"delayMs":{"type":"number"}},"required":["id","trigger","sourceComponentId"]}}},"required":["state","steps","availableInteractions"]},"flow":{"anyOf":[{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}},{"type":"null"}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","purpose","boardId","sheetId","revision","documentRevision","wireframeVersion","startScreenId","screens","interactions","audit","auditTotal","flow","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"slide_deck"},"view":{"type":"string","examples":["overview","slides"]},"boardId":{"type":"string"},"sheetId":{"type":"string"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"stage":{"type":"object","properties":{"width":{"type":"number"},"height":{"type":"number"}},"required":["width","height"]},"slideCount":{"type":"number"},"slides":{"description":"overview: every slide in brief, in order.","type":"array","items":{"type":"object","properties":{"id":{"type":"string"},"index":{"type":"number"},"title":{"type":"string"},"layout":{"type":"string"},"elementCount":{"type":"number"},"transition":{"type":"string"},"hidden":{"type":"boolean"},"hasNotes":{"type":"boolean"}},"required":["id","index","title","layout","elementCount","transition","hidden","hasNotes"]}},"detail":{"description":"slides: whole slides (with index) and their elements, back to front.","type":"array","items":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","stage","slideCount","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"kanban"},"view":{"type":"string","examples":["summary","detail"]},"availableSections":{"type":"array","items":{"type":"string","examples":["instructions","detail","discussion"]}},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"description":{"type":"string"},"instructions":{"type":"string"},"policiesChangeAt":{"type":"string"},"instructionsVersion":{"type":"string"},"instructionsUnchanged":{"type":"boolean","const":true},"skills":{"description":"Agent Skills for this card: load one (SKILL.md) when a task matches","maxItems":100,"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"description":{"type":"string"}},"required":["name","description"]}},"columns":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","examples":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"},"version":{"type":"string"},"cardCount":{"type":"number"},"archivedCount":{"type":"number"}},"required":["id","name","color","version","cardCount","archivedCount"]}},"orderVersion":{"type":"string"},"cards":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"type":"string","maxLength":255},"worktree":{"type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"assignees":{"anyOf":[{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"agentId":{"type":"string"}},"required":["name"]}}]},"createdBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"string"}]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"blockedBy":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"usage":{"description":"Cards read by id: \"time · tokens · est. cost · lines +/−\" of metered agent work.","type":"string"},"discussionCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"version":{"type":"string"},"positionVersion":{"type":"string"}},"required":["id","columnId","rank","archived","title","labels","dueDate","discussionCount","version","positionVersion"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","availableSections","boardId","sheetId","revision","documentRevision","columns","orderVersion","cards","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"breakdown"},"view":{"type":"string","examples":["overview","moments","transcript","findings","questions"]},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"description":{"type":"string"},"sources":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","examples":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"anyOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"]},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid","thumbnailBase"]},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"]}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","examples":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","status","video","durationSeconds","transcript","error","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","documentId","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","label"]}},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","files","momentCount","frameCount"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."},"momentCount":{"type":"integer","minimum":0,"maximum":9007199254740991},"frameCount":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","createdAt","name","notes","kind","sheetId","momentCount","frameCount"]}]}},"counts":{"type":"object","properties":{"moments":{"type":"integer","minimum":0,"maximum":9007199254740991},"findings":{"type":"integer","minimum":0,"maximum":9007199254740991},"questions":{"type":"integer","minimum":0,"maximum":9007199254740991},"frames":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["moments","findings","questions","frames"]},"sections":{"type":"array","items":{"type":"string"}},"tags":{"type":"array","items":{"type":"string"}},"moments":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time","label"]}}},"required":["id","sourceId","time","endTime","fileId","blockId","transcript","caption","note","tags","frames"]}},"transcript":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string"}},"required":["sourceId","text"]},"findings":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title","section","body","evidence"]}},"findingSummaries":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"bodyPreview":{"type":"string"},"bodyChars":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","title","section","evidence","bodyPreview","bodyChars"]}},"questions":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","examples":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text","status","answer","evidence"]}},"total":{"type":"integer","minimum":0,"maximum":9007199254740991},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","view","boardId","sheetId","revision","documentRevision","description","sources","counts","sections","tags","total","partial","nextCursor"]},{"type":"object","properties":{"issuesEvaluated":{"type":"boolean"},"telemetry":{"type":"object","properties":{"serverDurationMs":{"type":"number"},"accessMs":{"type":"number"},"quotaMs":{"type":"number"},"roomMs":{"type":"number"},"renderMs":{"type":"number"},"roomCalls":{"type":"number"},"payloadBytes":{"type":"number"},"conflictReason":{"type":"string"}},"required":["serverDurationMs","accessMs","quotaMs","roomMs","renderMs","roomCalls","payloadBytes"]},"type":{"type":"string","const":"data"},"view":{"type":"string","examples":["full","catalog","schema_compact","audit"]},"boardId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"description":{"type":"string"},"tables":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"description":{"type":"string"},"recordCount":{"type":"number"},"primaryDisplayColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"tags":{"type":"array","items":{"type":"string"}},"link":{"type":"string"},"referencedBy":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableName":{"type":"string"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnName":{"type":"string"},"targetTableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"targetColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"recordCount":{"type":"number"}},"required":["tableId","tableName","columnId","columnName","targetTableId","targetColumnId","recordCount"]}},"version":{"type":"string"},"schemaVersion":{"type":"string"},"metaVersion":{"type":"string"},"columns":{"type":"array","items":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","name","type","required","unique","referenceTableId","referenceColumnId"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","name","description","type","required","unique","immutable","autoNumber","defaultValue","options","referenceTableId","referenceColumnId","width"]}]}}},"required":["id","name","description","recordCount","primaryDisplayColumnId","link","referencedBy","columns"]}},"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"records":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string"}},"required":["id","values"]}},"issues":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"message":{"type":"string"}},"required":["tableId","message"]}},"issueCount":{"type":"number"},"auditTableIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"audit":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"message":{"type":"string"},"count":{"type":"number"},"sampleRecordIds":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["tableId","message","count","sampleRecordIds"]}},"dependencies":{"type":"array","items":{"type":"object","properties":{"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableName":{"type":"string"},"columnId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"columnName":{"type":"string"},"targetTableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"targetColumnId":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"recordCount":{"type":"number"}},"required":["tableId","tableName","columnId","columnName","targetTableId","targetColumnId","recordCount"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["issuesEvaluated","type","boardId","sheetId","revision","documentRevision","description","tables","records","issues","issueCount","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","examples":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"text":{"type":"string","maxLength":20000},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"linkedTo":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rows":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string"},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["text"]}},"loopedFrom":{"type":"array","items":{"type":"object","properties":{"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"row":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["nodeId"]}},"rawText":{"type":"string"}},"required":["id","shape","text"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"rawLabel":{"type":"string"}},"required":["id","from","to"]}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges"]},{"type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","examples":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","examples":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","examples":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","x","y","width","height","text","shape","style"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","examples":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","from","to"]}},"prefabs":{"type":"array","items":{"$ref":"#/$defs/__schema1"}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges","prefabs"]},{"type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","examples":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","x","y","width","height","shape"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","examples":["smooth","elbow"]},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","from","to"]}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges"]},{"type":"object","properties":{"type":{"type":"string","const":"flowchart"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentFormatVersion":{"anyOf":[{"type":"number","const":1},{"type":"number","const":2},{"type":"number","const":3}]},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]},"connectors":{"type":"string","examples":["smooth","elbow"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"linkedTo":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"rows":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string"},"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}},"required":["text"]}},"loopedFrom":{"type":"array","items":{"type":"object","properties":{"nodeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"row":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["nodeId"]}},"rawText":{"type":"string"}},"required":["id","text","shape"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"},"rawLabel":{"type":"string"}},"required":["id","from","to"]}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}},"required":["id","name","revision","documentFormatVersion","partial","nextCursor","connectors","nodes","edges"]},{"type":"object","properties":{"type":{"type":"string","const":"document"},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"documentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pageId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pages":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"home":{"description":"Tab holding it, if not this one.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]},"order":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["id","title","order"]}},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"documentRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"sheets":{"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"encrypted":{"type":"boolean","const":true},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"parentId":{"description":"The Folder or Breakdown tab holding this one; nested tabs are not in the tab bar.","type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]}},"documentFormatVersion":{"type":"number","const":3},"blocks":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"version":{"type":"string"},"text":{"type":"string"},"content":{"$ref":"#/$defs/__schema2"}},"required":["id","version","text"]}},"partial":{"type":"boolean"},"nextCursor":{"type":["string","null"]}},"required":["type","pageSettings","id","name","sheetId","revision","documentRevision","sheets","documentFormatVersion","blocks","partial","nextCursor"]},{"type":"object","properties":{"type":{"type":"string","const":"analytics"},"view":{"type":"string","const":"content"},"boardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string"},"documentRevision":{"type":"string"},"settings":{"type":"object","properties":{"description":{"type":"string","maxLength":2000,"description":"What this tab tracks, one or two lines."},"environment":{"type":"string","examples":["all","production","playtest","development"],"description":"Which sources reports use by default (each source has one environment)."},"timezone":{"type":"string","maxLength":64,"description":"Day boundaries for date ranges. Events are stored in UTC."},"instructions":{"type":"string","maxLength":20000,"description":"How the product is instrumented: its events, properties and conventions. Agents read this first."}},"required":["description","environment","timezone","instructions"]},"reports":{"maxItems":24,"type":"array","items":{"anyOf":[{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"progression"},"countingUnit":{"description":"Counting/join unit: actor_id (default for existing reports), session_id, or install_id (stable across sign-in; reinstalls remain separate). Neither counts verified people. Cohorts exclude missing IDs; session-mode outcomes exclude missing session IDs.","type":"string","examples":["actor","session","install"]},"ordered":{"description":"Require each later step after the previous step; default false for existing progression reports.","type":"boolean"},"steps":{"minItems":2,"maxItems":8,"type":"array","items":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}},"label":{"type":"string","minLength":1,"maxLength":40}},"required":["event","where","label"]}},"windowDays":{"type":"integer","minimum":1,"maximum":90,"description":"Follow-up window: how long after the first step a later step still counts."},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","steps","windowDays","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"time_to_success"},"countingUnit":{"description":"Counting/join unit: actor_id (default for existing reports), session_id, or install_id (stable across sign-in; reinstalls remain separate). Neither counts verified people. Cohorts exclude missing IDs; session-mode outcomes exclude missing session IDs.","type":"string","examples":["actor","session","install"]},"start":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"success":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"windowDays":{"type":"integer","minimum":1,"maximum":90,"description":"Follow-up window: how long after the first step a later step still counts."},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","start","success","windowDays","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"outcomes"},"countingUnit":{"description":"Counting/join unit: actor_id (default for existing reports), session_id, or install_id (stable across sign-in; reinstalls remain separate). Neither counts verified people. Cohorts exclude missing IDs; session-mode outcomes exclude missing session IDs.","type":"string","examples":["actor","session","install"]},"start":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"finish":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"correlate":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"The property that ties an attempt's start to its finish (an attempt ID)."},"outcome":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"The finish property holding the outcome code."},"groupBy":{"default":null,"description":"A start property to break attempts down by (area, build…).","anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},{"type":"null"}]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","start","finish","correlate","outcome","groupBy","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"retention"},"start":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"activity":{"type":"object","properties":{"event":{"type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$","description":"An event name the product sends."},"where":{"default":{},"description":"Properties that must equal these values (all of them).","type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"additionalProperties":{"anyOf":[{"type":"string","maxLength":200},{"type":"number"},{"type":"boolean"}]}}},"required":["event","where"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","start","activity","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"revenue_curve"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","createdAt","createdBy","updatedAt","updatedBy","revision"]},{"type":"object","properties":{"contextFilters":{"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]}},"breakdown":{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]}},"required":["scope","field"]},"includeTestInstalls":{"description":"Include sideload, development and playtest installs. Default false; unmarked legacy events without install IDs retain their existing behavior. Explicit QA/nonproduction or non-Play markers are excluded even without install IDs.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"description":{"default":"","type":"string","maxLength":500},"template":{"type":"string","const":"sql"},"eventMode":{"description":"raw: only stored events in the requested date range; no install/session enrichment or install filtering. Context filters and breakdowns are unavailable. For server telemetry.","type":"string","examples":["enriched","raw"]},"sql":{"type":"string","minLength":1,"maxLength":8000,"description":"One PostgreSQL SELECT. Reads `events` (this tab only: event_id, name, occurred_at, received_at, actor_id, session_id, sequence, build_id, environment, source_id, properties jsonb, context jsonb, install_id, install_context jsonb, session_context jsonb), `params` (range_start, range_end timestamptz; timezone text) and `assignments` (experiment, bucket, actor_id, environment, joined_at, left_at). Up to 500 rows; 64 KiB per row, 4 MiB total, maximum 8 seconds."},"chart":{"default":"table","type":"string","examples":["table","bars","columns","line","number"]},"chartUnit":{"description":"Line chart y-axis unit. Percent values use 0–100, not fractions.","type":"string","examples":["","%"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"updatedBy":{"anyOf":[{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},{"type":"null"}]},"revision":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991,"description":"Counts up with every change to the definition."}},"required":["id","name","description","template","sql","chart","createdAt","createdBy","updatedAt","updatedBy","revision"]}]}},"segments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":40},"filters":{"minItems":1,"maxItems":8,"type":"array","items":{"anyOf":[{"type":"object","properties":{"scope":{"type":"string","examples":["session","install"]},"field":{"type":"string","examples":["language","locale","country","platform","app_version","os_version","lifecycle","device","renderer","installer","client_environment","campaign_id","campaign_name","adset_id","adset_name","ad_id","ad_name","source","medium","landing_page","referrer_host"]},"value":{"type":"string","maxLength":200},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","field","value"]},{"type":"object","properties":{"scope":{"type":"string","const":"property"},"key":{"type":"string","pattern":"^[A-Za-z0-9_.:-]{1,64}$","description":"A top-level key in event properties."},"value":{"type":"string","maxLength":200,"description":"Compared as text (10, true, caught)."},"event":{"description":"Only this event's properties; omit for any event (reads more data).","type":"string","pattern":"^[A-Za-z][A-Za-z0-9_.:-]{0,63}$"},"not":{"description":"true: \"is not\" (unknown values count as not equal).","type":"boolean"}},"required":["scope","key","value"]}]},"description":"All must hold (AND)."}},"required":["id","name","filters"]}},"dashboards":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":40},"reportIds":{"maxItems":24,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"description":"Report IDs in display order."}},"required":["id","name","reportIds"]}},"note":{"type":"string"}},"required":["type","view","boardId","sheetId","revision","documentRevision","settings","reports","note"]}],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]},"__schema2":{"type":"object","properties":{"type":{"type":"string","examples":["doc","paragraph","heading","text","bulletList","orderedList","listItem","taskList","taskItem","blockquote","codeBlock","hardBreak","horizontalRule","image","table","tableRow","tableCell","tableHeader"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema3"}},"text":{"type":"string"},"marks":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","examples":["bold","italic","strike","underline","code","link","textStyle","highlight"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema4"}}},"required":["type"]}},"content":{"type":"array","items":{"$ref":"#/$defs/__schema2"}}},"required":["type"]},"__schema3":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema3"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema3"}}]},"__schema4":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema4"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema4"}}]}}},"BoardList":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"boards":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"savedAt":{"type":"string"},"role":{"type":"string","examples":["owner","editor","viewer"]}},"required":["id","name","savedAt","role"]}},"nextCursor":{"type":["string","null"]},"projectionFreshness":{"type":"string","const":"eventual"}},"required":["boards","nextCursor","projectionFreshness"]},"BoardSearch":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"matches":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pageId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"pageTitle":{"type":"string"},"snippet":{"type":"string"},"version":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","snippet"]}},"nextCursor":{"type":["string","null"]},"partial":{"type":"boolean"}},"required":["revision","matches","nextCursor","partial"]},"CreateBoardRequest":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"name":{"type":"string","minLength":1,"maxLength":48},"operations":{"maxItems":500,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"insert_prefab"},"prefab":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","enum":["account","document"]},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"members":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"dx":{"type":"number","minimum":-1000000,"maximum":1000000},"dy":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"],"additionalProperties":false}},"required":["id","dx","dy","width","height","text","shape","style"],"additionalProperties":false}},"edges":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"from":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["from","to"],"additionalProperties":false}}},"required":["id","scope","width","height","members","edges"],"additionalProperties":false},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"tempRef":{"type":"string","maxLength":48,"pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"}},"required":["type","prefab","x","y","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"humanize"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"align_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["left","center_x","right","top","center_y","bottom"]}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"distribute_nodes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"axis":{"type":"string","enum":["x","y"]},"gap":{"type":"number","minimum":0,"maximum":1000000}},"required":["type","ids","axis"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"snap_to_grid"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"grid":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","grid"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"normalize_sizes"},"ids":{"minItems":1,"maxItems":500,"type":"array","items":{"type":"string"}},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000}},"required":["type","ids","width","height"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_metadata"},"target":{"type":"string","enum":["board","node","edge"]},"id":{"type":"string"},"key":{"type":"string","maxLength":128,"pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"value":{"$ref":"#/$defs/__schema0"},"remove":{"type":"boolean"}},"required":["type","target","key","value"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_theme"},"theme":{"type":"object","properties":{"name":{"description":"Label shown in File → Themes, for example the game title.","type":"string","minLength":1,"maxLength":48},"scheme":{"description":"Default: inferred from background luminance.","type":"string","enum":["light","dark"]},"base":{"description":"Preset backing anything not derived. Default classic (dark) or parchment (light).","type":"string","enum":["classic","midnight","ink","parchment","homebrew"]},"colors":{"type":"object","properties":{"background":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$","description":"Chrome background; everything else derives from it unless given."},"surface":{"description":"Rail, cabinet and raised panels.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"text":{"description":"Chrome text; adjusted to stay readable.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"muted":{"description":"Secondary text and hints.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"accent":{"description":"Highlights, kickers, hover fills. Default brass.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"danger":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ok":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"canvas":{"description":"Flowchart canvas and sheet workspace.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"connector":{"description":"Default connector line and arrowhead color. Omit to derive a readable color against the canvas; per-edge colors still override it.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"paper":{"description":"Fallback node paper and selection rings.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"ink":{"description":"Fallback node ink and outlines.","type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"}},"required":["background"],"additionalProperties":false},"fonts":{"type":"object","properties":{"ui":{"description":"Chrome font stack, e.g. \"Cinzel, Georgia, serif\". Families must be installed on the viewer's device or generic; no web fonts are downloaded.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"display":{"description":"Headline and kicker font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"},"node":{"description":"Default node text font stack.","type":"string","minLength":1,"maxLength":120,"pattern":"^[A-Za-z0-9 ,'\"\\-]+$"}},"additionalProperties":false},"background":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."},"surfaces":{"description":"Default [\"canvas\"]; a tab type name shows it on those tabs; \"workspace\" adds all surfaces.","minItems":1,"maxItems":25,"type":"array","items":{"type":"string","enum":["canvas","rail","document","asset_board","data","kanban","journal","pipeline","art_bible","analytics","support","experiments","crashes","digital_ads","localization","review_stream","research","breakdown","product_review","folder","video_library","video_ad","schedules","resources","workspace"]}},"fit":{"description":"Default cover.","type":"string","enum":["cover","contain","tile","fill","none"]},"position":{"description":"Default center.","type":"string","enum":["center","top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"]},"attachment":{"description":"Default local for documents, fixed for canvas.","type":"string","enum":["local","fixed","scroll"]},"tileScale":{"description":"Multiplier for tile dimensions.","type":"number","minimum":0.05,"maximum":10},"tileSize":{"description":"Explicit tile width in pixels for tile fit.","type":"integer","minimum":16,"maximum":2048},"opacity":{"description":"Default 0.35 so content stays readable.","type":"number","minimum":0.05,"maximum":1},"surfaceOpacity":{"type":"object","properties":{"canvas":{"type":"number","minimum":0.05,"maximum":1},"rail":{"type":"number","minimum":0.05,"maximum":1},"document":{"type":"number","minimum":0.05,"maximum":1},"asset_board":{"type":"number","minimum":0.05,"maximum":1},"data":{"type":"number","minimum":0.05,"maximum":1},"kanban":{"type":"number","minimum":0.05,"maximum":1}},"additionalProperties":false},"blur":{"description":"Pixels. Default 0.","type":"number","minimum":0,"maximum":40},"blendMode":{"description":"CSS blend mode.","type":"string","enum":["normal","multiply","screen","overlay","soft-light","luminosity"]}},"required":["assetId"],"additionalProperties":false},"favicon":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^[a-f0-9]{64}$","description":"Immutable id of a raster image uploaded to this board."}},"required":["assetId"],"additionalProperties":false},"tokens":{"type":"object","propertyNames":{"type":"string","enum":["ink","paper","paper-deep","brass","brass-hot","graphite","graphite-2","walnut","walnut-2","rule","cream","muted","bg","bg-2","fg","fg-muted","chrome","chrome-line","rail-edge","rail-hint","surface","surface-2","fill-control","control-line","hover","glow","grid-glow","accent-line","danger","danger-fill","ok","workspace","workspace-text","workspace-muted","panel","panel-2","panel-line","accent-ink","shadow","board-bg","theme-chip","connector-color"]},"additionalProperties":{"type":"string","maxLength":40,"pattern":"^(#[0-9a-fA-F]{3,8}|rgba?\\([^)]*\\)|hsla?\\([^)]*\\))$"},"description":"Direct overrides applied after derivation, keyed by CSS variable name without dashes (\"brass\"). Prefer colors."}},"required":["colors"],"additionalProperties":false}},"required":["type","theme"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_flowchart"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"clear_theme"}},"required":["type"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"rename_board"},"name":{"type":"string","minLength":1,"maxLength":48}},"required":["type","name"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"set_connector_default"},"connectors":{"type":"string","enum":["smooth","elbow"]}},"required":["type","connectors"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_node"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","tempRef"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_node"},"id":{"type":"string"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"textFormat":{"type":"string","enum":["plain","qraft-rich-v1"]},"shape":{"type":"string","enum":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","enum":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","enum":["left","center","right"]}},"additionalProperties":false},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40},"description":"The node's tags, replacing any it has. [] removes them. Tags are the filters people use across the board (read_tags), not version or status labels: reuse the board's spelling."},"notes":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}],"description":"Plain-text notes kept beside the node, not drawn on it (its Notes panel). \"\" or null removes them."},"link":{"anyOf":[{"type":"object","properties":{"nodeId":{"type":"string"},"overrides":{"maxItems":6,"type":"array","items":{"type":"string","enum":["text","shape","size","fill","border","font"]}}},"required":["nodeId"],"additionalProperties":false},{"type":"null"}],"description":"Make this node a linked copy (↩ loop-back) of another node, named by id or an earlier tempRef: text, shape, size, fill, border and font follow the original unless listed in overrides. null removes the link."},"rows":{"anyOf":[{"maxItems":24,"type":"array","items":{"type":"object","properties":{"text":{"type":"string","minLength":1,"maxLength":80},"nodeId":{"type":"string"}},"required":["text"],"additionalProperties":false}},{"type":"null"}],"description":"Bundle node rows, one per item instead of a fan of leaves; nodeId (id or tempRef) makes a row a ↩ loop-back. Replaces; [] or null removes. Height auto-fits."}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_node"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"add_edge"},"tempRef":{"type":"string","pattern":"^tmp:[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","enum":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false}},"required":["type","tempRef","from","to"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"update_edge"},"id":{"type":"string"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","enum":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"],"additionalProperties":false},"label":{"anyOf":[{"type":"string","maxLength":20000},{"type":"null"}]},"connectors":{"anyOf":[{"type":"string","enum":["smooth","elbow"]},{"type":"null"}]},"color":{"anyOf":[{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},{"type":"null"}]},"width":{"anyOf":[{"type":"number","exclusiveMinimum":0,"maximum":32},{"type":"null"}]},"labelStyle":{"anyOf":[{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","enum":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"],"additionalProperties":false},{"type":"null"}]}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"remove_edge"},"id":{"type":"string"}},"required":["type","id"],"additionalProperties":false},{"type":"object","properties":{"type":{"type":"string","const":"reorder_nodes"},"ids":{"maxItems":1000,"type":"array","items":{"type":"string"}}},"required":["type","ids"],"additionalProperties":false}]}}},"required":["requestId"],"additionalProperties":false,"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]}}},"CreateBoardResponse":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"board":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["id","name","revision"]},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"replayed":{"type":"boolean"}},"required":["board","requestId","replayed"]},"Prefabs":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"scope":{"type":"string","examples":["account","document"]},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"members":{"minItems":1,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"dx":{"type":"number","minimum":-1000000,"maximum":1000000},"dy":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","examples":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","examples":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"]}},"required":["id","dx","dy","width","height","text","shape","style"]}},"edges":{"type":"array","items":{"type":"object","properties":{"from":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"]},"to":{"type":"object","properties":{"memberId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["memberId","handle"]},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","examples":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"]}},"required":["from","to"]}}},"required":["id","scope","width","height","members","edges"]}},"nextCursor":{"type":["string","null"]}},"required":["items","nextCursor"]},"ChangeList":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"changes":{"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"changeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"actorId":{"type":"string"},"clientId":{"type":"string"},"grantId":{"type":"string"},"summary":{"type":"string"},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdAt":{"type":"string"},"changes":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"before":{"$ref":"#/$defs/__schema0"},"after":{"$ref":"#/$defs/__schema1"}},"required":["path","before","after"]}},"reverts":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revertedBy":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revertible":{"type":"boolean"}},"required":["changeId","requestId","actorId","clientId","grantId","summary","revisionBefore","revisionAfter","createdAt","changes","reverts","revertedBy","revertible"]}},"nextCursor":{"type":["string","null"]}},"required":["changes","nextCursor"],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]}}},"ChangeDetail":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"sheetId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"changeId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"actorId":{"type":"string"},"clientId":{"type":"string"},"grantId":{"type":"string"},"summary":{"type":"string"},"revisionBefore":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"revisionAfter":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"createdAt":{"type":"string"},"changes":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"before":{"$ref":"#/$defs/__schema0"},"after":{"$ref":"#/$defs/__schema1"}},"required":["path","before","after"],"additionalProperties":false}},"reverts":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revertedBy":{"anyOf":[{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"revertible":{"type":"boolean"}},"required":["changeId","requestId","actorId","clientId","grantId","summary","revisionBefore","revisionAfter","createdAt","changes","reverts","revertedBy","revertible"],"additionalProperties":false,"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]}}},"RevertRequest":{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"retryOfRequestId":{"description":"Conflict: failed requestId; use a NEW requestId. Lost response: resend identical input.","type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"requestId":{"type":"string","pattern":"^[A-Za-z0-9_-]{8,128}$"},"expectedRevision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"}},"required":["requestId","expectedRevision"],"additionalProperties":false},"BoardExport":{"$schema":"https://json-schema.org/draft/2020-12/schema","anyOf":[{"type":"object","properties":{"format":{"type":"string","const":"jsonl"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"data":{"$ref":"#/$defs/__schema0"},"nextCursor":{"type":["string","null"]}},"required":["format","revision","data","nextCursor"]},{"type":"object","properties":{"format":{"type":"string","const":"csv"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"csv":{"type":"string"}},"required":["format","revision","csv"]},{"type":"object","properties":{"format":{"type":"string","const":"markdown"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"markdown":{"type":"string"}},"required":["format","revision","markdown"]},{"type":"object","properties":{"format":{"type":"string","const":"pdf"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"mimeType":{"type":"string","const":"application/pdf"},"data":{"type":"string"}},"required":["format","revision","mimeType","data"]},{"type":"object","properties":{"format":{"type":"string","const":"json"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"document":{"anyOf":[{"type":"object","properties":{"kind":{"type":"string","const":"vgd-board"},"version":{"type":"number","const":1},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48},"savedAt":{"type":"string"},"camera":{"type":"object","properties":{"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"zoom":{"type":"number","exclusiveMinimum":0}},"required":["x","y","zoom"]},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string","maxLength":20000},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","examples":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","examples":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["id","x","y","width","height","text","shape","style"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string","maxLength":20000},"connectors":{"type":"string","examples":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["id","from","to"]}},"prefabs":{"type":"array","items":{"$ref":"#/$defs/__schema2"}},"connectors":{"type":"string","examples":["smooth","elbow"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["kind","version","id","name","savedAt","camera","nodes","edges","prefabs","connectors"]},{"type":"object","properties":{"kind":{"type":"string","const":"vgd-board"},"version":{"anyOf":[{"type":"number","const":2},{"type":"number","const":3}]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":48},"savedAt":{"type":"string"},"prefabs":{"type":"array","items":{"$ref":"#/$defs/__schema2"}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}},"assetLibrary":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"name":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":100000},"tags":{"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"notes":{"type":"string","maxLength":100000},"links":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","label","sheetId"]}},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"archived":{"type":"boolean"},"selectedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"versions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy","id","number","savedAt","savedBy"]}},"draft":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"}},"required":["id","sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy"]},{"type":"null"}]}},"required":["name","description","tags","notes","links","id","archived","selectedVersionId","versions","draft"]}},"sheets":{"minItems":1,"type":"array","items":{"type":"object","properties":{"own":{"type":"string","examples":["flowchart","slides"]},"documents":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"type":{"type":"string","const":"doc"},"content":{"minItems":1,"type":"array","items":{"$ref":"#/$defs/__schema3"}}},"required":["type","content"]}},"pages":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"title":{"type":"string","minLength":1,"maxLength":120},"parentId":{"type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"home":{"description":"Tab holding it, if not this one.","type":"string","maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"type":{"type":"string","examples":["text","flowchart","slides"]}},"required":["id","title"]}},"breakdown":{"type":"object","properties":{"version":{"type":"number","const":2},"description":{"type":"string","maxLength":4000},"sources":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"play_session"},"status":{"default":"processing","type":"string","examples":["uploading","processing","ready","error"]},"video":{"default":null,"anyOf":[{"anyOf":[{"type":"object","properties":{"provider":{"type":"string","const":"r2"},"sourceId":{"type":"string","pattern":"^[a-zA-Z0-9_-]{1,100}$"}},"required":["provider","sourceId"]},{"type":"object","properties":{"provider":{"type":"string","const":"cloudflare_stream"},"uid":{"type":"string","pattern":"^[a-f0-9]{32}$"},"thumbnailBase":{"default":null,"anyOf":[{"type":"string","maxLength":500,"format":"uri"},{"type":"null"}]}},"required":["provider","uid","thumbnailBase"]},{"type":"object","properties":{"provider":{"type":"string","const":"youtube"},"videoId":{"type":"string","pattern":"^[A-Za-z0-9_-]{11}$"}},"required":["provider","videoId"]}]},{"type":"null"}]},"durationSeconds":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"transcript":{"default":"none","type":"string","examples":["none","pending","ready","error"]},"error":{"default":"","type":"string","maxLength":1000}},"required":["id","createdAt","name","notes","kind","status","video","durationSeconds","transcript","error"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"document"},"documentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Hosted document id; edit it with apply_document_operations(sheetId, documentId) and read it with read_board(sheetId, documentId)."}},"required":["id","createdAt","name","notes","kind","documentId"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"files"},"files":{"default":[],"maxItems":200,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","minLength":1,"maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","label"]}}},"required":["id","createdAt","name","notes","kind","files"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"name":{"type":"string","minLength":1,"maxLength":200},"notes":{"default":"","type":"string","maxLength":4000},"kind":{"type":"string","const":"tab"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"The nested tab. Read and edit it with its own tools by this sheetId."}},"required":["id","createdAt","name","notes","kind","sheetId"]}]}},"sourceOrder":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"moments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"time":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"endTime":{"default":null,"anyOf":[{"type":"number","minimum":0},{"type":"null"}]},"fileId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"blockId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"transcript":{"default":"","type":"string","maxLength":4000},"caption":{"default":"","type":"string","maxLength":2000},"note":{"default":"","type":"string","maxLength":4000},"tags":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"frames":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/jpeg","image/png","image/webp"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"time":{"type":"number","minimum":0},"label":{"default":"","type":"string","maxLength":300}},"required":["id","media","time","label"]}}},"required":["id","sourceId","time","endTime","fileId","blockId","transcript","caption","note","tags","frames"]}},"momentOrder":{"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"findings":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"section":{"default":"General","type":"string","minLength":1,"maxLength":60},"body":{"default":"","type":"string","maxLength":20000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","title","section","body","evidence"]}},"findingOrder":{"maxItems":500,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"questions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":2000},"status":{"default":"open","type":"string","examples":["open","answered"]},"answer":{"default":"","type":"string","maxLength":8000},"evidence":{"default":[],"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","text","status","answer","evidence"]}},"questionOrder":{"maxItems":500,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["version","description","sources","sourceOrder","moments","momentOrder","findings","findingOrder","questions","questionOrder"]},"productReview":{"type":"object","properties":{"version":{"type":"number","const":1},"settings":{"type":"object","properties":{"setupPromptMode":{"type":"string","examples":["default","custom"]},"digestPromptMode":{"type":"string","examples":["default","custom"]},"setupPrompt":{"type":"string","maxLength":8000,"description":"What the agent does to start a run: build and run the product and report how to reach it."},"digestPrompt":{"type":"string","maxLength":8000,"description":"What the agent does with a run's notes. {kanban}, {column} and {tag} are filled in when a digest is asked for."},"digestMode":{"type":"string","examples":["direct","reviewed"]},"target":{"anyOf":[{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","columnId"]},{"type":"null"}],"description":"The Kanban tab and column digests create cards in; null until chosen."},"cardPlacement":{"default":"top","description":"Where in that column a digest puts its cards.","type":"string","examples":["top","bottom"]},"agentId":{"anyOf":[{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},{"type":"null"}],"description":"The agent last asked, offered first next time."},"lastDeliverySelection":{"description":"Managed by start_setup: remembered delivery selections per build.","type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"boolean"}}},"lastDeploymentSelection":{"description":"Managed by start_setup: whether each configured deployment was selected last time.","type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"boolean"}},"deployments":{"description":"Reusable setup choices. Missing or empty keeps the setup-prompt-only workflow.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"deliveries":{"description":"Present: build-only instructions with separately selectable delivery methods. Empty means build only. Absent: legacy combined build/deployment instructions.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"instructions":{"type":"string","minLength":1,"maxLength":2000},"kind":{"default":"custom","type":"string","examples":["custom","journal"]},"defaultSelection":{"default":"on","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","kind","defaultSelection"]}},"instructions":{"type":"string","minLength":1,"maxLength":2000},"selectedByDefault":{"default":true,"description":"Legacy default; used when defaultSelection is absent.","type":"boolean"},"defaultSelection":{"description":"Default for new runs: on, off, or repeat the last setup selection (on until first used).","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","selectedByDefault"]}},"journalSheetId":{"description":"Optional Journal tab on this board where setup records builds and deployment links.","anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]}},"required":["setupPrompt","digestPrompt","digestMode","target","cardPlacement","agentId"]},"runs":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"setupStartedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"setupTimings":{"type":"object","properties":{"time_to_playable":{"description":"Milliseconds from setup request to first ready, recorded by the server.","type":"integer","minimum":0,"maximum":9007199254740991},"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildReadyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"enginePinMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"exportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"uploadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"reportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"stageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildTotalMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"optimizeMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"packageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheLockMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheFingerprintMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheRestoreMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheSaveMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyApplyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyReimportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyVerifyMs":{"type":"integer","minimum":0,"maximum":9007199254740991}}},"setupTimeline":{"type":"object","properties":{"clock":{"type":"string","const":"monotonic"},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"milestones":{"minItems":1,"maxItems":64,"type":"array","items":{"type":"object","properties":{"phase":{"type":"string","examples":["first_read","engine_pin_start","engine_pin_end","build_ready_start","build_ready_end","build_start","build_end","inspection_start","inspection_end","upload_start","upload_end","delivery_start","delivery_end","report_start","report_end","report_error"]},"elapsedMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["phase","elapsedMs"]}},"truncated":{"type":"boolean","const":true}},"required":["clock","startedAt","milestones"]},"shutdown":{"type":"object","properties":{"requestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"queuedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"timings":{"type":"object","properties":{"processStopMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"fileCleanupMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"hostingCleanupMs":{"type":"integer","minimum":0,"maximum":9007199254740991}}},"detail":{"type":"string","maxLength":4000}}},"platformSetups":{"maxItems":48,"type":"array","items":{"type":"object","properties":{"setupTimings":{"type":"object","properties":{"time_to_playable":{"description":"Milliseconds from setup request to first ready, recorded by the server.","type":"integer","minimum":0,"maximum":9007199254740991},"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildReadyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"enginePinMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"exportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"uploadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"reportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"stageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"buildTotalMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"optimizeMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"packageMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheLockMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheFingerprintMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheRestoreMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"importCacheSaveMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyApplyMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyReimportMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"policyVerifyMs":{"type":"integer","minimum":0,"maximum":9007199254740991}}},"setupTimeline":{"type":"object","properties":{"clock":{"type":"string","const":"monotonic"},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"milestones":{"minItems":1,"maxItems":64,"type":"array","items":{"type":"object","properties":{"phase":{"type":"string","examples":["first_read","engine_pin_start","engine_pin_end","build_ready_start","build_ready_end","build_start","build_end","inspection_start","inspection_end","upload_start","upload_end","delivery_start","delivery_end","report_start","report_end","report_error"]},"elapsedMs":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["phase","elapsedMs"]}},"truncated":{"type":"boolean","const":true}},"required":["clock","startedAt","milestones"]},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"requestedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"agent":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"]},"mode":{"type":"string","examples":["queue","interrupt"]},"status":{"type":"string","examples":["requested","ready","failed","cancelled"]},"deployments":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"deliveries":{"description":"Present: build-only instructions with separately selectable delivery methods. Empty means build only. Absent: legacy combined build/deployment instructions.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"instructions":{"type":"string","minLength":1,"maxLength":2000},"kind":{"default":"custom","type":"string","examples":["custom","journal"]},"defaultSelection":{"default":"on","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","kind","defaultSelection"]}},"instructions":{"type":"string","minLength":1,"maxLength":2000},"selectedByDefault":{"default":true,"description":"Legacy default; used when defaultSelection is absent.","type":"boolean"},"defaultSelection":{"description":"Default for new runs: on, off, or repeat the last setup selection (on until first used).","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","selectedByDefault"]}},"journalSheetId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"deliveriesOnly":{"description":"Builds already in the run: only their listed deliveries are new; reuse the existing output.","maxItems":12,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"prompt":{"type":"string","maxLength":32000},"sourceCheckout":{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},"checkout":{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},"access":{"anyOf":[{"type":"object","properties":{"links":{"maxItems":24,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":80},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}],"description":"Where to open the product, when it has one."},"instructions":{"type":"string","maxLength":4000,"description":"How to reach and use it: login, seed data, what is ready and what is not. Markdown."},"reportedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["url","instructions","reportedAt","author"]},{"type":"null"}]},"error":{"type":"string","maxLength":4000},"whatsNew":{"type":"string","maxLength":4000}},"required":["id","requestedAt","requestedBy","agent","mode","status","deployments","journalSheetId","prompt","access","error"]}},"live":{"type":"object","properties":{"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}]},"build":{"anyOf":[{"type":"object","properties":{"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"builtAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"file":{"type":"string","maxLength":2000,"format":"uri"}},"required":["number","builtAt"]},{"type":"null"}]},"rebuild":{"anyOf":[{"type":"object","properties":{"status":{"type":"string","examples":["requested","building","ready","failed"]},"requestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"requestedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"error":{"type":"string","maxLength":2000}},"required":["status","requestedAt","requestedBy","error"]},{"type":"null"}]}},"required":["branch","build","rebuild"]},"hostingSetupId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"noteEndpoint":{"type":"object","properties":{"url":{"type":"string","maxLength":2048,"format":"uri"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["url","expiresAt"]},"hostedPreview":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","pattern":"^\\d{4}$"},"url":{"type":"string","format":"uri"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","expiresAt"]},"pendingHostedPreview":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","pattern":"^\\d{4}$"},"url":{"type":"string","format":"uri"},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","expiresAt"]},"hosting":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","examples":["publishing","ready","failed"]},"filesDone":{"type":"integer","minimum":0,"maximum":9007199254740991},"filesTotal":{"type":"integer","minimum":0,"maximum":9007199254740991},"bytesDone":{"type":"number","minimum":0},"bytesTotal":{"type":"number","minimum":0},"error":{"type":"string","maxLength":500}},"required":["id","status","filesDone","filesTotal","bytesDone","bytesTotal"]},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"title":{"type":"string","minLength":1,"maxLength":120},"tag":{"type":"string","minLength":1,"maxLength":40,"description":"The label every card from this run carries."},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"comparisonCandidates":{"description":"Newest earlier successful tests at up to two distinct known commits, snapshotted at setup. Use the first differing from the actual checkout.","maxItems":2,"type":"array","items":{"type":"object","properties":{"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","maxLength":120},"checkout":{"anyOf":[{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},{"type":"null"}]}},"required":["runId","title","checkout"]}},"comparisonBase":{"description":"Nearest earlier successful test at a different known commit; resolved when checkout is reported. Null until then or if none exists.","anyOf":[{"type":"object","properties":{"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","maxLength":120},"checkout":{"anyOf":[{"type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},{"type":"null"}]}},"required":["runId","title","checkout"]},{"type":"null"}]},"whatsNew":{"description":"Agent-written Markdown summary of changes since comparisonBase, or an honest explanation when comparison is unavailable.","type":"string","minLength":1,"maxLength":4000},"checkout":{"description":"Source snapshot for the current setup. Absent on legacy runs or when Git metadata is unavailable.","type":"object","properties":{"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$","description":"Full Git commit ID used to build the tested product."},"branch":{"anyOf":[{"type":"string","minLength":1,"maxLength":255},{"type":"null"}],"description":"Branch name, or null for detached HEAD."},"dirty":{"type":"boolean","description":"Whether tracked or untracked working-tree changes were included; the commit alone cannot reproduce a dirty build."},"capturedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$","description":"When the checkout was inspected, before building."},"repository":{"description":"Repository name or credential-free URL, when known.","type":"string","minLength":1,"maxLength":500}},"required":["commit","branch","dirty","capturedAt"]},"status":{"type":"string","examples":["new","setting_up","ready","failed","stopping","stopped"],"description":"new: not started. setting_up: an agent is on it. ready: access reported. failed: setup went wrong. stopping: asked to shut down. stopped: the build is shut down."},"setupPrompt":{"type":"string","maxLength":32000,"description":"The full setup prompt, including selected deployments, as it was when setup was last asked for."},"lastDeploymentSelection":{"description":"Managed by start_setup: whether each configured deployment was selected last time.","type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"boolean"}},"deployments":{"description":"Snapshot of the original setup deployments; late additions are in platformSetups. Later settings changes do not alter either snapshot.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"deliveries":{"description":"Present: build-only instructions with separately selectable delivery methods. Empty means build only. Absent: legacy combined build/deployment instructions.","maxItems":12,"type":"array","items":{"type":"object","properties":{"presetId":{"description":"Stable system preset identifier; names may be customized independently.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"useDefaultInstructions":{"description":"True resolves current system preset instructions for future setups; false preserves custom text. Runs snapshot resolved text.","type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":80},"instructions":{"type":"string","minLength":1,"maxLength":2000},"kind":{"default":"custom","type":"string","examples":["custom","journal"]},"defaultSelection":{"default":"on","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","kind","defaultSelection"]}},"instructions":{"type":"string","minLength":1,"maxLength":2000},"selectedByDefault":{"default":true,"description":"Legacy default; used when defaultSelection is absent.","type":"boolean"},"defaultSelection":{"description":"Default for new runs: on, off, or repeat the last setup selection (on until first used).","type":"string","examples":["on","off","remember"]}},"required":["id","name","instructions","selectedByDefault"]}},"journalSheetId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"agent":{"anyOf":[{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"]},{"type":"null"}]},"wake":{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"]},"access":{"anyOf":[{"type":"object","properties":{"links":{"maxItems":24,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","minLength":1,"maxLength":80},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"url":{"anyOf":[{"type":"string","format":"uri"},{"type":"null"}],"description":"Where to open the product, when it has one."},"instructions":{"type":"string","maxLength":4000,"description":"How to reach and use it: login, seed data, what is ready and what is not. Markdown."},"reportedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["url","instructions","reportedAt","author"]},{"type":"null"}]},"error":{"type":"string","maxLength":4000},"digests":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"timings":{"type":"object","properties":{"readMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"preflightMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"requestMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"workerStartMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"wakeBootMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"noteReadMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"draftMs":{"type":"integer","minimum":0,"maximum":9007199254740991},"cardWriteMs":{"type":"integer","minimum":0,"maximum":9007199254740991}}},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"requestedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"requestedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"agent":{"anyOf":[{"type":"object","properties":{"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"name":{"type":"string","minLength":1,"maxLength":80}},"required":["agentId","name"]},{"type":"null"}]},"mode":{"type":"string","examples":["direct","reviewed"]},"prompt":{"type":"string","maxLength":32000,"description":"The digest prompt as it was when this digest was asked for."},"target":{"anyOf":[{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","columnId"]},{"type":"null"}]},"noteIds":{"maxItems":2000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"description":"The notes this digest covers: those not yet digested when it was asked for."},"shutDownAfter":{"default":false,"description":"After the digest, shut the build down and report_access status stopped.","type":"boolean"},"status":{"type":"string","examples":["requested","proposed","done"],"description":"requested: waiting for the agent. proposed: cards proposed, a person picks. done: cards created."},"summary":{"type":"string","maxLength":4000},"cards":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","maxLength":300},"noteIds":{"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["cardId","title","noteIds"]}},"proposals":{"maxItems":500,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"description":{"type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"noteIds":{"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"status":{"type":"string","examples":["pending","accepted","dismissed"]},"cardId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"The card it became, once accepted."}},"required":["id","title","description","labels","noteIds","status","cardId"]}},"completedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]}},"required":["id","requestedAt","requestedBy","agent","mode","prompt","target","noteIds","shutDownAfter","status","summary","cards","proposals","completedAt"]}}},"required":["id","number","title","tag","createdAt","createdBy","status","setupPrompt","agent","access","error","digests"]}},"runOrder":{"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"notes":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"runId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"anyOf":[{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},{"type":"null"}]},"screenName":{"description":"Product screen or scene when the tester opened the note.","type":"string","minLength":1,"maxLength":200},"text":{"type":"string","maxLength":8000},"attachments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"digestId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"The digest that covered this note."},"autoFix":{"type":"boolean"},"ownerReview":{"description":"Tester requests owner review; false or absent leaves routing automatic.","type":"boolean"},"build":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"fix":{"type":"object","properties":{"status":{"type":"string","examples":["queued","fixing","fixed","deferred","failed"]},"detail":{"type":"string","maxLength":500},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"build":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"target":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","columnId"]},"cards":{"maxItems":12,"type":"array","items":{"type":"object","properties":{"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"status":{"type":"string","examples":["queued","fixing","fixed","review","deferred","failed"]},"detail":{"type":"string","maxLength":500},"commit":{"type":"string","pattern":"^(?:[a-fA-F0-9]{40}|[a-fA-F0-9]{64})$"},"build":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"verified":{"type":"object","properties":{"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["by","at"]}},"required":["cardId","title","status","detail","at"]}},"verified":{"type":"object","properties":{"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["by","at"]}},"required":["status","detail","at"]},"cardIds":{"maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"description":"Cards made from this note."}},"required":["id","runId","author","createdAt","updatedAt","text","attachments","digestId","cardIds"]}},"noteOrder":{"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"nextRunNumber":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["version","settings","runs","runOrder","notes","noteOrder"]},"hostedPages":{"type":"object","properties":{"version":{"type":"number","const":1},"pages":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":200},"assetId":{"anyOf":[{"type":"string","pattern":"^[a-f0-9]{64}$"},{"type":"null"}]},"publication":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string","format":"uri"},"publishedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","publishedAt"]},{"type":"null"}]},"pendingPublication":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"code":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"url":{"type":"string","format":"uri"},"publishedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","code","url","publishedAt"]},"hosting":{"type":"object","properties":{"id":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"status":{"type":"string","examples":["publishing","ready","failed"]},"filesDone":{"type":"integer","minimum":0,"maximum":9007199254740991},"filesTotal":{"type":"integer","minimum":0,"maximum":9007199254740991},"bytesDone":{"type":"number","minimum":0},"bytesTotal":{"type":"number","minimum":0},"error":{"type":"string","maxLength":500}},"required":["id","status","filesDone","filesTotal","bytesDone","bytesTotal"]},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedBy":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","title","assetId","publication","updatedAt","updatedBy"]}}},"required":["version","pages"]},"analytics":{"description":"An Analytics tab's settings and report definitions (checked in full on import); read_analytics describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"support":{"description":"A Support tab's settings (checked in full on import); tickets are not part of the document.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"experiments":{"description":"An Experiments tab's settings; experiments are not part of the document.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"crashes":{"description":"A Crashes tab's settings; issues are its stream's events.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"digitalAds":{"description":"A Digital Ads tab's settings; creatives, ads and metrics are not part of the document.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"localization":{"description":"A Localization tab's settings; entries and translations are not part of the document.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"storeAssets":{"type":"object","properties":{"version":{"type":"number","const":1},"destinations":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"template":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":200},"version":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"sourceUrl":{"anyOf":[{"type":"string","maxLength":2000,"format":"uri"},{"type":"null"}]},"checkedAt":{"type":"string","maxLength":30},"notes":{"type":"string","maxLength":3000},"localization":{"type":"object","properties":{"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"aliases":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"string","maxLength":30}},"verified":{"type":"boolean"},"sourceUrl":{"type":"string","format":"uri"}},"required":["supported","aliases","verified","sourceUrl"]},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled","allowFallback","containsText"]},"section":{"type":"string","examples":["copy","images","video","files"]},"kind":{"type":"string","examples":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}},"verified":{"type":"boolean"}},"required":["id","label","section","kind","required","help","scope","rules"]}}},"required":["id","name","version","sourceUrl","checkedAt","notes","slots"]},{"type":"null"}]},"slots":{"maxItems":600,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","minLength":1,"maxLength":200},"localization":{"type":"object","properties":{"enabled":{"type":"boolean"},"allowFallback":{"default":false,"type":"boolean"},"containsText":{"default":true,"type":"boolean"}},"required":["enabled","allowFallback","containsText"]},"section":{"type":"string","examples":["copy","images","video","files"]},"kind":{"type":"string","examples":["text","url","image","video","file"]},"required":{"default":false,"type":"boolean"},"help":{"default":"","type":"string","maxLength":3000},"scope":{"default":"","type":"string","maxLength":100},"localeRules":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"additionalProperties":{"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}}},"rules":{"default":{},"type":"object","properties":{"minCount":{"type":"integer","minimum":0,"maximum":50},"maxCount":{"type":"integer","exclusiveMinimum":0,"maximum":50},"countMode":{"type":"string","examples":["codePoints","utf16","graphemes","utf8"]},"maxChars":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxUtf8Bytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"mimeTypes":{"maxItems":20,"type":"array","items":{"type":"string","maxLength":100}},"sizes":{"maxItems":50,"type":"array","items":{"type":"object","properties":{"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991}},"required":["width","height"]}},"minWidth":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minHeight":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"maxBytes":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"minDuration":{"type":"number","minimum":0},"maxDuration":{"type":"number","exclusiveMinimum":0},"aspectRatio":{"type":"number","exclusiveMinimum":0},"options":{"description":"Text fields only: the value is chosen from this fixed list, one choice per line; minCount/maxCount bound the number of choices.","minItems":1,"maxItems":500,"type":"array","items":{"type":"string","minLength":1,"maxLength":100,"pattern":"^[^\\r\\n]+$"}}}},"verified":{"type":"boolean"}},"required":["id","label","section","kind","required","help","scope","rules"]}},"productSource":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productIdColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}],"description":"Store SKU column; null uses the Type Data record ID. IDs are joined exactly; empty SKUs are skipped."}},"required":["sheetId","tableId","productIdColumnId"]},"products":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"productId":{"type":"string","minLength":1,"maxLength":150,"pattern":"^[A-Za-z0-9][A-Za-z0-9_.-]*$"},"type":{"type":"string","examples":["one-time","consumable","non-consumable","subscription"]},"status":{"type":"string","examples":["draft","active"]},"storeSource":{"type":"object","properties":{"resource":{"type":"string","examples":["inappproducts","onetimeproducts"]},"packageName":{"type":"string","minLength":1,"maxLength":255},"purchaseOptionId":{"type":"string","maxLength":63},"baseRegion":{"type":"string","pattern":"^[A-Z]{2}$"}},"required":["resource","packageName"]},"basePrice":{"anyOf":[{"type":"object","properties":{"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceMicros":{"type":"string","pattern":"^[1-9][0-9]{0,17}$"}},"required":["currency","priceMicros"]},{"type":"null"}]},"prices":{"type":"object","propertyNames":{"type":"string","pattern":"^[A-Z]{2}$"},"additionalProperties":{"type":"object","properties":{"currency":{"type":"string","pattern":"^[A-Z]{3}$"},"priceMicros":{"type":"string","pattern":"^[1-9][0-9]{0,17}$"}},"required":["currency","priceMicros"]}}},"required":["id","productId"]}},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]}},"localization":{"type":"object","properties":{"storeSheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"languages":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"supported":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}}},"required":["sheetId","base","languages"]},"localizationArchive":{"type":"object","properties":{"base":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"languages":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"}},"fields":{"maxItems":20000,"type":"array","items":{"type":"object","properties":{"slotId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"lang":{"type":"string","pattern":"^[a-z]{2,3}(?:-[A-Z][a-z]{3})?(?:-(?:[A-Z]{2}|\\d{3}))?$"},"live":{"anyOf":[{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]},{"type":"null"}]},"draft":{"anyOf":[{"anyOf":[{"type":"string","maxLength":100000},{"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}]},{"type":"null"}]}},"required":["slotId","lang","live","draft"]}}},"required":["base","languages","fields"]},"generations":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"pending":{"type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"outputs":{"default":[],"maxItems":8,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","minLength":1,"maxLength":200},"width":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"height":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"bytes":{"type":"integer","minimum":0,"maximum":9007199254740991},"duration":{"type":"number","minimum":0}},"required":["id","mimeType","filename"]},"source":{"type":"object","properties":{"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"partId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"streamUid":{"type":"string","maxLength":100},"recipe":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"jobId":{"type":"string","maxLength":200}}}},"required":["id","media"]}}},"required":["pending","outputs"]}},"history":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"field":{"type":"string","maxLength":100},"before":{},"after":{},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","field","before","after","at","by"]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"updatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","name","template","slots","values","generations","history","createdAt","updatedAt"]}},"order":{"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["version","destinations","order"]},"journal":{"description":"A Journal tab's entries and settings (checked in full on import); read_journal describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"pipeline":{"description":"A Pipeline tab (checked in full on import); read_pipeline describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"artBible":{"description":"An Art Bible tab; read_art_bible describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"slideDeck":{"description":"A Slide Deck tab's deck (checked in full on import); read_slide_deck describes it.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{}},"gitRepo":{"type":"object","properties":{"provider":{"default":"github","type":"string","examples":["github"]},"owner":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"repo":{"default":"","anyOf":[{"type":"string","minLength":1,"maxLength":100,"pattern":"^[A-Za-z0-9_.-]+$"},{"type":"string","const":""}]},"branch":{"default":"","type":"string","maxLength":200,"pattern":"^[^\\s~^:?*[\\\\]*$"},"path":{"default":"","type":"string","maxLength":500,"pattern":"^(?!\\/)(?!.*\\.\\.)[^\\s]*$"},"notes":{"default":"","type":"string","maxLength":4000}},"required":["provider","owner","repo","branch","path","notes"]},"reviewStream":{"type":"object","properties":{"version":{"type":"number","const":1},"entries":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string","minLength":1,"maxLength":300},"peerReview":{"type":"object","properties":{"humanReviewer":{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]}},"required":["humanReviewer"],"description":"Peer review: one other registered agent, rounds 1–3; round 3 rejection opens human round 4."},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"submittedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"authorActiveAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"status":{"type":"string","examples":["open","approved","rejected","cancelled"]},"resolution":{"type":"object","properties":{"action":{"type":"string","examples":["approved","approved_with_changes","refined","rejected","cancelled"]},"messageId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8},"byAgent":{"type":"boolean","const":true},"byLead":{"type":"boolean","const":true},"underMandate":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ruleId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"clauses":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"integer","minimum":1,"maximum":60}},"requestId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"draftDigest":{"type":"string","pattern":"^[a-f0-9]{64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","requestId","draftDigest","grantedBy"]},"underReviewAuthority":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"project":{"type":"string","maxLength":200},"expiresAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"promptId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]}},"required":["id","leadId","project","expiresAt","promptId","grantedBy"]},"underPolicy":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"grantedBy":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"level":{"type":"string","maxLength":60},"project":{"type":"string","maxLength":200}},"required":["id","grantedBy","level","project"]},"handedOver":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"ownerPrompt":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"ownerMessage":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"}},"required":["id","leadId"]},"by":{"type":"object","properties":{"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","maxLength":200}},"required":["userId","name"]},"cards":{"maxItems":30,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","by"]}},"required":["action","messageId"]},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"rounds":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"clipStage":{"type":"string","examples":["concept","stills","final"]},"notes":{"type":"string","maxLength":20000},"items":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","cardId"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","assetId","versionId"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["type","sheetId","screenId"],"description":"Wireframe screen frozen at submit; compare beside attachments."}]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"default":[],"maxItems":120,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"choices":{"maxItems":40,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"prompt":{"type":"string","minLength":1,"maxLength":500},"options":{"minItems":2,"maxItems":30,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"label":{"type":"string","maxLength":200},"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"itemIndex":{"type":"integer","minimum":0,"maximum":29}},"required":["id"]}}},"required":["id","prompt","options"]}},"music":{"type":"object","properties":{"attachmentId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"level":{"type":"number","minimum":0,"maximum":1}},"required":["attachmentId","level"]},"refines":{"type":"object","properties":{"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"picks":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"labels":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","maxLength":200}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["round","picks","labels","variants"]},"routed":{"type":"object","properties":{"leadId":{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},"mandateId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"by":{"type":"string","examples":["route","take"],"description":"route: routed lead; take: lead takeover from owner"}},"required":["leadId","by"]},"snapshots":{"maxItems":30,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"kanban_card"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"cardId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"card":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","columnId","rank","archived","dependsOn","title","description","labels","dueDate","checklist","links","branch","worktree"]}},"required":["type","sheetId","cardId","title","card"]},{"type":"object","properties":{"type":{"type":"string","const":"asset_version"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"versionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"version":{"type":"object","properties":{"sourceVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"name":{"type":"string","maxLength":300},"notes":{"type":"string","maxLength":100000},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"pending":{"description":"A generation job that will fill this draft. The asset is placeable while it runs; the browser that started it imports the result and saves the iteration.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]},"modelName":{"type":"string","maxLength":120},"media":{"type":"string","examples":["image","video"]},"startedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"error":{"type":"string","maxLength":1000}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","modelName","media","startedAt"]},"coverPartId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"parts":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"text"},"text":{"type":"string","maxLength":100000}},"required":["id","name","type","text"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"image"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Present when this part is a marked-up copy: the marks are burned into the media, and this is the re-editable source plus the unannotated baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"audio"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"video"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]}},"required":["id","name","type","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"sourceUrl":{"type":"string","maxLength":2000,"pattern":"^https?:\\/\\/"},"prompt":{"type":"string","maxLength":100000},"generation":{"description":"Qraft generation provenance for regeneration: network/model/mode/prompt/settings/reference IDs.","type":"object","properties":{"providerId":{"type":"string","pattern":"^[a-z][a-z0-9-]{0,31}$"},"modelId":{"type":"string","minLength":1,"maxLength":120},"mode":{"type":"string","maxLength":40,"pattern":"^[a-z0-9]+2[a-z0-9]+$"},"prompt":{"type":"string","maxLength":4000},"settings":{"type":"object","propertyNames":{"type":"string","maxLength":60},"additionalProperties":{"anyOf":[{"type":"string","maxLength":2000},{"type":"number"},{"type":"boolean"}]}},"references":{"maxItems":16,"type":"array","items":{"type":"object","properties":{"mediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"slot":{"type":"string","maxLength":60},"label":{"type":"string","maxLength":120}},"required":["mediaId","slot"]}},"jobId":{"type":"string","maxLength":200},"outputIndex":{"type":"integer","minimum":0,"maximum":9007199254740991},"generatedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["providerId","modelId","mode","prompt","settings","references","jobId","outputIndex","generatedAt"]},"type":{"type":"string","const":"model"},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","const":"model/gltf-binary"},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"poster":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif"]},"filename":{"type":"string","maxLength":255}},"required":["id","mimeType","filename"]},"view":{"type":"object","properties":{"orbit":{"description":"Camera orbit in degrees; optional radius in meters. Omit radius to fit the model.","type":"object","properties":{"theta":{"type":"number","minimum":-3600,"maximum":3600},"phi":{"type":"number","minimum":0,"maximum":180},"radius":{"type":"number","exclusiveMinimum":0,"maximum":100000}},"required":["theta","phi"]},"target":{"description":"Camera target in model-space meters; omit to center.","type":"array","prefixItems":[{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000},{"type":"number","minimum":-100000,"maximum":100000}],"items":false,"minItems":3,"maxItems":3},"animationName":{"type":"string","maxLength":300},"time":{"description":"Animation time in seconds. Rendering is paused at this time.","type":"number","minimum":0,"maximum":86400}}}},"required":["id","name","type","media"]}]}},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"createdBy":{"type":"string"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"savedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"savedBy":{"type":"string"}},"required":["sourceVersionId","name","notes","coverPartId","parts","createdAt","createdBy","id","number","savedAt","savedBy"]}},"required":["type","assetId","versionId","title","version"]},{"type":"object","properties":{"type":{"type":"string","const":"wireframe_screen"},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"title":{"type":"string"},"screen":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"required":["type","sheetId","screenId","title","screen"]}]}},"number":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"reviewers":{"minItems":1,"maxItems":20,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"person"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200}},"required":["type","userId","name"]},{"type":"object","properties":{"type":{"type":"string","const":"agent"},"agentId":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"clientId":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"name":{"type":"string","maxLength":200},"avatar":{"type":"string","maxLength":72}},"required":["type"]},{"type":"object","properties":{"type":{"type":"string","const":"role"},"role":{"type":"string","minLength":1,"maxLength":80},"agentIds":{"description":"Agents that may claim it; author/owner sets","maxItems":10,"type":"array","items":{"type":"string","pattern":"^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$"}}},"required":["type","role"]}]}}},"required":["notes","items","links","attachments","number","createdAt","author","reviewers"]}},"claims":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"messageCount":{"type":"integer","minimum":0,"maximum":1000},"messages":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"body":{"type":"string","maxLength":8000},"links":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"label":{"type":"string","maxLength":200},"url":{"type":"string","format":"uri"}},"required":["label","url"]}},"attachments":{"maxItems":20,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"action":{"type":"string","examples":["comment","approved","approved_with_changes","refined","rejected","cancelled","submitted","claimed","escalated","reassigned"]},"selections":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"string","minLength":1,"maxLength":64}},"variants":{"type":"integer","minimum":0,"maximum":8}},"required":["id","round","body","links","attachments","author","createdAt","action"]}},"snooze":{"type":"object","properties":{"until":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"round":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"by":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["until","round","by","at"]},"wokeAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","title","author","createdAt","submittedAt","status","round","rounds","claims","messages"]}}},"required":["version","entries"]},"research":{"type":"object","properties":{"version":{"type":"number","const":1},"description":{"type":"string","maxLength":10000},"parameters":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"type":{"type":"string","examples":["text","long_text","integer","number","currency","percentage","boolean","date","select","multi_select","image","video","file","url","rating","reference"]},"description":{"default":"","type":"string","maxLength":10000},"group":{"default":"","type":"string","maxLength":100},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"unit":{"default":"","type":"string","maxLength":80},"currency":{"default":"USD","type":"string","pattern":"^[A-Z]{3}$"},"decimals":{"default":2,"type":"integer","minimum":0,"maximum":6},"ratingMax":{"default":5,"type":"number","minimum":1,"maximum":100},"comparisonColor":{"default":"none","description":"Numeric comparison coloring; high/low chooses the green end. Missing and equal values stay neutral.","type":"string","examples":["none","extremes_high","extremes_low","gradient_high","gradient_low"]},"width":{"default":200,"type":"number","minimum":100,"maximum":800},"hidden":{"default":[],"type":"array","items":{"type":"string","examples":["table","detail","compare"]}},"archived":{"default":false,"type":"boolean"}},"required":["id","name","type","description","group","options","unit","currency","decimals","ratingMax","comparisonColor","width","hidden","archived"]}},"parameterOrder":{"minItems":1,"maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"subjects":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"maxItems":200,"type":"array","items":{"type":"string","maxLength":200}},{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]},{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"subjectId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId","subjectId"]},{"type":"object","properties":{"text":{"type":"string","maxLength":20000},"url":{"type":"string","maxLength":2000,"format":"uri"}},"required":["text","url"],"description":"A labeled hyperlink for text, long_text, or url parameters. Example: {text:\"Developer website\",url:\"https://example.com\"}."},{"type":"null"}]}},"tags":{"default":[],"maxItems":30,"type":"array","items":{"type":"string","minLength":1,"maxLength":60}},"archived":{"default":false,"type":"boolean"},"content":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"note"},"title":{"type":"string","maxLength":300},"markdown":{"type":"string","maxLength":50000}},"required":["id","type","title","markdown"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"source"},"title":{"type":"string","maxLength":300},"url":{"type":"string","maxLength":2000,"format":"uri"},"description":{"type":"string","maxLength":10000}},"required":["id","type","title","url","description"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"media"},"title":{"type":"string","maxLength":300},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","maxLength":100},"filename":{"type":"string","maxLength":255},"posterId":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["id","mimeType","filename"]}},"required":["id","type","title","media"]},{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"type":{"type":"string","const":"link"},"title":{"type":"string","maxLength":300},"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"targetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetVersionId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["id","type","title","sheetId"]}]}},"contentOrder":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["id","values","tags","archived","content","contentOrder"]}},"subjectOrder":{"maxItems":10000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"layout":{"type":"object","properties":{"titleFieldId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"coverFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"secondaryFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"badgeFieldId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"metadataFieldIds":{"maxItems":8,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}},"required":["titleFieldId","coverFieldId","secondaryFieldId","badgeFieldId","metadataFieldIds"]}},"required":["version","description","parameters","parameterOrder","subjects","subjectOrder","layout"]},"assetBoard":{"type":"object","properties":{"placements":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"assetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":4000},"height":{"type":"number","minimum":120,"maximum":4000},"groupId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"pinnedVersionId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"archived":{"default":false,"type":"boolean"}},"required":["id","assetId","x","y","width","height","groupId","pinnedVersionId","archived"]}},"groups":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":300},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":160,"maximum":100000},"height":{"type":"number","minimum":120,"maximum":100000},"archived":{"default":false,"type":"boolean"}},"required":["id","name","x","y","width","height","archived"]}}},"required":["placements","groups"]},"type":{"type":"string","examples":["flowchart","document","data","kanban","wireframe","asset_board","research","review_stream","git_repo","breakdown","product_review","journal","store_assets","pipeline","art_bible","hosted_pages","analytics","support","inbox","experiments","crashes","digital_ads","localization","slide_deck","folder","video_library","video_ad","schedules","files","resources"]},"content":{"type":"object","properties":{"type":{"type":"string","const":"doc"},"content":{"minItems":1,"type":"array","items":{"$ref":"#/$defs/__schema3"}}},"required":["type","content"]},"data":{"type":"object","properties":{"version":{"type":"number","const":1},"description":{"default":"","type":"string","maxLength":20000},"tables":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":20000},"primaryDisplayColumnId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"nextId":{"default":1,"type":"integer","minimum":1,"maximum":9007199254740991},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"columns":{"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"description":{"default":"","type":"string","maxLength":10000},"type":{"type":"string","examples":["text","integer","decimal","boolean","select","reference"]},"required":{"default":false,"type":"boolean"},"unique":{"default":false,"type":"boolean"},"immutable":{"default":false,"type":"boolean"},"autoNumber":{"default":false,"type":"boolean"},"defaultValue":{"default":null,"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]},"options":{"default":[],"maxItems":200,"type":"array","items":{"type":"string","minLength":1,"maxLength":200}},"referenceTableId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"referenceColumnId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"unit":{"type":"string","maxLength":80},"width":{"default":180,"type":"integer","minimum":80,"maximum":800},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","name","description","type","required","unique","immutable","autoNumber","defaultValue","options","referenceTableId","referenceColumnId","width"]}},"records":{"maxItems":10000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"values":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":20000},{"type":"number"},{"type":"boolean"},{"type":"null"}]}},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}}},"required":["id","values"]}}},"required":["id","name","description","nextId","columns","records"]}}},"required":["version","description","tables"]},"kanban":{"type":"object","properties":{"version":{"type":"number","const":1},"description":{"type":"string","maxLength":2000},"instructions":{"type":"string","maxLength":20000},"columns":{"minItems":1,"maxItems":50,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"color":{"default":"sand","type":"string","examples":["sand","blue","green","purple","red"]},"paused":{"description":"Paused: skips Pipeline kanban_clear; unfinished.","type":"boolean"},"done":{"description":"Finished. If omitted: Done, Complete(d), Closed or Shipped.","type":"boolean"}},"required":["id","name","color"]}},"cards":{"maxItems":5000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"columnId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"rank":{"type":"number"},"archived":{"default":false,"type":"boolean"},"taskSummary":{"type":"string","maxLength":60,"pattern":"^[^\\r\\n]*$","description":"1–3 word agent task; set with title; empty clears."},"taskRouteId":{"description":"Model route; lead sets before handoff.","anyOf":[{"type":"string","format":"uuid","pattern":"^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"},{"type":"null"}]},"taskLevelId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"dependsOn":{"default":[],"description":"Cards on this tab to finish first; informational.","maxItems":50,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"title":{"type":"string","minLength":1,"maxLength":3000},"description":{"default":"","type":"string","maxLength":20000},"labels":{"default":[],"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"dueDate":{"default":null,"anyOf":[{"type":"string","format":"date","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"},{"type":"null"}]},"checklist":{"default":[],"maxItems":100,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"text":{"type":"string","minLength":1,"maxLength":1000},"checked":{"default":false,"type":"boolean"}},"required":["id","text","checked"]}},"links":{"default":[],"maxItems":30,"type":"array","items":{"type":"object","properties":{"sheetId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"tableId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"recordId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"required":["sheetId"]}},"branch":{"default":"","type":"string","maxLength":255},"worktree":{"default":"","type":"string","maxLength":1000},"attachments":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$","description":"Any-prefix ID. Video: read_video {assetId:media.id}."},"media":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-f0-9]{64}$"},"mimeType":{"type":"string","examples":["image/png","image/jpeg","image/webp","image/gif","audio/mpeg","audio/wav","audio/ogg","video/mp4","video/quicktime","video/webm","model/gltf-binary","application/pdf","application/zip","application/vnd.android.package-archive","text/plain","text/html"]},"filename":{"type":"string","minLength":1,"maxLength":255}},"required":["id","mimeType","filename"]},"annotation":{"description":"Burned-in marks; editable source + baseMediaId.","type":"object","properties":{"version":{"type":"number","const":1},"baseMediaId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"width":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"height":{"type":"integer","exclusiveMinimum":0,"maximum":8000},"shapes":{"maxItems":200,"type":"array","items":{"anyOf":[{"type":"object","properties":{"type":{"type":"string","const":"stroke"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"points":{"minItems":1,"maxItems":400,"type":"array","items":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}}},"required":["type","id","color","strokeWidth","points"]},{"type":"object","properties":{"type":{"type":"string","const":"arrow"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"from":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2},"to":{"type":"array","prefixItems":[{"type":"number","minimum":-8000,"maximum":16000},{"type":"number","minimum":-8000,"maximum":16000}],"items":false,"minItems":2,"maxItems":2}},"required":["type","id","color","strokeWidth","from","to"]},{"type":"object","properties":{"type":{"type":"string","const":"rect"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"ellipse"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"strokeWidth":{"type":"number","minimum":1,"maximum":64},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"width":{"type":"number","minimum":0,"maximum":16000},"height":{"type":"number","minimum":0,"maximum":16000}},"required":["type","id","color","strokeWidth","x","y","width","height"]},{"type":"object","properties":{"type":{"type":"string","const":"stamp"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"label":{"type":"string","pattern":"^[0-9A-Z]$"}},"required":["type","id","color","size","x","y","label"]},{"type":"object","properties":{"type":{"type":"string","const":"text"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"color":{"type":"string","examples":["#e5484d","#f76b15","#ffc53d","#30a46c","#0091ff","#8e4ec6","#ffffff","#1c2024"]},"size":{"type":"number","minimum":8,"maximum":200},"x":{"type":"number","minimum":-8000,"maximum":16000},"y":{"type":"number","minimum":-8000,"maximum":16000},"text":{"type":"string","minLength":1,"maxLength":200}},"required":["type","id","color","size","x","y","text"]}]}}},"required":["version","baseMediaId","width","height","shapes"]}},"required":["id","media"]}},"coverAttachmentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"assignees":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"discussion":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"body":{"type":"string","minLength":1,"maxLength":8000},"createdAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"author":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]}},"required":["id","body","createdAt","author"]}},"createdBy":{"description":"Creator; absent on older cards.","type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72}},"required":["userId","name","source"]},"createdAt":{"description":"Created; absent on older cards.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"touchedBy":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-f0-9]{64}$"},"additionalProperties":{"type":"object","properties":{"identityId":{"type":"string","pattern":"^[a-f0-9]{64}$"},"userId":{"type":"string","minLength":1,"maxLength":200},"name":{"type":"string","minLength":1,"maxLength":200},"source":{"type":"string","examples":["browser","agent"]},"clientId":{"type":"string","maxLength":200},"clientName":{"type":"string","maxLength":200},"agentName":{"type":"string","minLength":1,"maxLength":80},"agentId":{"type":"string","maxLength":36},"avatar":{"type":"string","maxLength":72},"firstAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"lastAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"},"outside":{"type":"object","properties":{"kind":{"type":"string","examples":["email"]},"at":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["kind","at"]}},"required":["userId","name","source","firstAt","lastAt"]}},"completedAt":{"description":"Qraft sets/clears when entering/leaving Done.","type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"}},"required":["id","columnId","rank","archived","dependsOn","title","description","labels","dueDate","checklist","links","branch","worktree"]}}},"required":["version","columns","cards"]},"wireframe":{"type":"object","properties":{"stateLayers":{"maxItems":256,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"screens":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"type":"object","properties":{"patch":{"$ref":"#/components/schemas/WireframeScreenPatchOutput"},"additions":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentOutput"}},"overrides":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"$ref":"#/components/schemas/WireframeComponentPatchOutput"}},"order":{"maxItems":1000,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}}}}},"interactions":{"default":{},"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]},{"type":"null"}]}}},"required":["id","name","condition","screens","interactions"]}},"purpose":{"type":"string","examples":["prototype","layout","gameplay"]},"initialState":{"type":"object","propertyNames":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"additionalProperties":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"version":{"type":"number","const":1},"startScreenId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"screens":{"maxItems":200,"type":"array","items":{"type":"object","properties":{"hierarchyParentId":{"description":"Logical hierarchy grouping only; never inherits canvas properties or elements. Overrides the displayed inheritance parent.","type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"hierarchyPosition":{"description":"Independent hierarchy canvas position; omitted falls back to normal x/y. Never inherited.","type":"object","properties":{"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["x","y"]},"kind":{"type":"string","examples":["screen","template","component"]},"inheritance":{"type":"object","properties":{"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"screen":{"type":"object","properties":{"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"type":"string","maxLength":20000},"role":{"type":"string","maxLength":100}}}},"required":["sourceId"]},"instances":{"maxItems":1000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000}},"required":["id","sourceId","x","y"]}},"elementOverrides":{"type":"object","propertyNames":{"type":"string","minLength":1,"maxLength":14000},"additionalProperties":{"$ref":"#/components/schemas/WireframeElementOverrideOutput"}},"hiddenElements":{"maxItems":10000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"hiddenInteractions":{"maxItems":5000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"elementOrder":{"maxItems":1000,"type":"array","items":{"type":"string","minLength":1,"maxLength":14000}},"approval":{"type":"object","properties":{"scope":{"type":"string","examples":["self","descendants"]},"fingerprint":{"type":"string","pattern":"^[a-f0-9]{64}$"}},"required":["scope","fingerprint"]},"entryPoint":{"type":"boolean"},"terminal":{"type":"boolean"},"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"name":{"type":"string","minLength":1,"maxLength":100},"x":{"type":"number","minimum":-100000,"maximum":100000},"y":{"type":"number","minimum":-100000,"maximum":100000},"width":{"type":"number","minimum":1,"maximum":10000},"height":{"type":"number","minimum":1,"maximum":10000},"preset":{"default":"iphone","type":"string","examples":["iphone","android","tablet","desktop","custom"]},"background":{"default":"#faf9f6","type":"string","pattern":"^(#(?:[0-9a-fA-F]{3}|[0-9a-fA-F]{4}|[0-9a-fA-F]{6}|[0-9a-fA-F]{8})|transparent)$"},"notes":{"default":"","type":"string","maxLength":20000},"role":{"default":"","type":"string","maxLength":100},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"components":{"default":[],"maxItems":1000,"type":"array","items":{"$ref":"#/components/schemas/WireframeComponentOutput"}}},"required":["id","name","x","y","width","height","preset","background","notes","role","components"]}},"interactions":{"maxItems":5000,"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceScreenId":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"sourceComponentId":{"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"trigger":{"type":"string","examples":["click","hover","submit","back","event","after_delay"]},"action":{"type":"string","examples":["navigate","open_modal","close_modal","back","set_state","return_to_caller"]},"callerVariables":{"description":"Capture only these visual/context variables BEFORE state changes on navigate, open_modal or set_state. [] captures navigation only. Return restores selected values (including absence); all other variables, such as balances and purchases, remain current.","maxItems":100,"type":"array","items":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"}},"targetScreenId":{"default":null,"anyOf":[{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},{"type":"null"}]},"label":{"default":"","type":"string","maxLength":200},"eventName":{"type":"string","minLength":1,"maxLength":100},"delayMs":{"type":"integer","minimum":10,"maximum":3600000},"condition":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"anyOf":[{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]},{"type":"object","properties":{"all":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["all"]},{"type":"object","properties":{"any":{"minItems":1,"maxItems":16,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operator":{"type":"string","examples":["eq","ne","gt","gte","lt","lte"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operator","value"]}}},"required":["any"]}]}}},"required":["any"]}]}}},"required":["any"]}],"description":"Literal comparison {variable,operator,value} or nonempty {all:[conditions]} / {any:[conditions]}. Maximum 3 nested groups, 16 children per group and 64 total nodes. Missing variables never match. No scripts or expressions."},"stateChanges":{"minItems":1,"maxItems":20,"type":"array","items":{"type":"object","properties":{"variable":{"type":"string","pattern":"^(?!__proto__$|constructor$|prototype$)[A-Za-z0-9_-]{1,64}$"},"operation":{"type":"string","examples":["set","increment","toggle"]},"value":{"anyOf":[{"type":"string","maxLength":1000},{"type":"number"},{"type":"boolean"}]}},"required":["variable","operation"]}}},"required":["id","sourceScreenId","sourceComponentId","trigger","action","targetScreenId","label"]}}},"required":["version","startScreenId","screens","interactions"]},"pageSettings":{"type":"object","properties":{"size":{"type":"string","examples":["a4","letter","legal","custom"]},"orientation":{"type":"string","examples":["portrait","landscape"]},"width":{"type":"number","minimum":50,"maximum":1000},"height":{"type":"number","minimum":50,"maximum":1000},"margins":{"type":"object","properties":{"top":{"type":"number","minimum":0,"maximum":200},"right":{"type":"number","minimum":0,"maximum":200},"bottom":{"type":"number","minimum":0,"maximum":200},"left":{"type":"number","minimum":0,"maximum":200}},"required":["top","right","bottom","left"]}},"required":["size","orientation","width","height","margins"]},"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"parentId":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"behavior":{"type":"string","examples":["standard","archive"]},"encrypted":{"type":"boolean","const":true},"name":{"type":"string","minLength":1,"maxLength":48},"nodes":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"width":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"height":{"type":"number","exclusiveMinimum":0,"maximum":1000000},"text":{"type":"string"},"shape":{"type":"string","examples":["rect","diamond","ellipse","trapezoid","text"]},"style":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"border":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"borderWidth":{"type":"number","minimum":0,"maximum":32},"borderStyle":{"type":"string","examples":["solid","dashed","dotted"]},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"radius":{"type":"number","minimum":0,"maximum":1000},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"},"align":{"type":"string","examples":["left","center","right"]}},"required":["fill","border","borderWidth","borderStyle","text","radius","fontFamily","fontSize","fontWeight","italic","align"]},"tags":{"maxItems":20,"type":"array","items":{"type":"string","minLength":1,"maxLength":40}},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["id","x","y","width","height","text","shape","style"]}},"edges":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"},"from":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"to":{"type":"object","properties":{"nodeId":{"type":"string"},"handle":{"type":"string","examples":["n","ne","e","se","s","sw","w","nw"]}},"required":["nodeId","handle"]},"label":{"type":"string"},"connectors":{"type":"string","examples":["smooth","elbow"]},"color":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"width":{"type":"number","exclusiveMinimum":0,"maximum":32},"labelStyle":{"type":"object","properties":{"fill":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"text":{"type":"string","maxLength":128,"pattern":"^(#[a-fA-F0-9]{3,8}|[a-zA-Z]+|rgba?\\([0-9.,%\\s]+\\)|hsla?\\([0-9.,%\\s]+\\))$"},"fontFamily":{"type":"string","examples":["manuscript","display","grotesque","typewriter"]},"fontSize":{"type":"number","minimum":8,"maximum":200},"fontWeight":{"anyOf":[{"type":"number","const":400},{"type":"number","const":700}]},"italic":{"type":"boolean"}},"required":["fill","text","fontFamily","fontSize","fontWeight","italic"]},"extensions":{"type":"object","propertyNames":{"type":"string","pattern":"^[a-zA-Z][a-zA-Z0-9_.-]*$"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}},"required":["id","from","to"]}},"connectors":{"type":"string","examples":["smooth","elbow"]},"camera":{"type":"object","properties":{"x":{"type":"number","minimum":-1000000,"maximum":1000000},"y":{"type":"number","minimum":-1000000,"maximum":1000000},"zoom":{"type":"number","exclusiveMinimum":0}},"required":["x","y","zoom"]}},"required":["id","name","nodes","edges","connectors"]}}},"required":["kind","version","id","name","savedAt","prefabs","sheets"]}]},"nextCursor":{"description":"More records follow: call again with cursor.","type":["string","null"]},"changesToken":{"type":"string"},"delta":{"type":"object","properties":{"tables":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}}},"required":["tables"]},"pagedSheets":{"description":"Tabs exported without records; export each by sheetId.","type":"array","items":{"type":"string","pattern":"^[A-Za-z0-9_-]{1,64}$"}}},"required":["format","revision","document"]},{"type":"object","properties":{"format":{"type":"string","const":"mermaid"},"revision":{"type":"string","pattern":"^g[0-9]+\\.r[0-9]+$"},"mermaid":{"type":"string"}},"required":["format","revision","mermaid"]}],"$defs":{"__schema0":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema0"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema0"}}]},"__schema1":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema1"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema1"}}]},"__schema2":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema2"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema2"}}]},"__schema3":{"type":"object","properties":{"type":{"type":"string","examples":["doc","paragraph","heading","text","bulletList","orderedList","listItem","taskList","taskItem","blockquote","codeBlock","hardBreak","horizontalRule","image","table","tableRow","tableCell","tableHeader"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema4"}},"text":{"type":"string"},"marks":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","examples":["bold","italic","strike","underline","code","link","textStyle","highlight"]},"attrs":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema5"}}},"required":["type"]}},"content":{"type":"array","items":{"$ref":"#/$defs/__schema3"}}},"required":["type"]},"__schema4":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema4"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema4"}}]},"__schema5":{"anyOf":[{"type":"string"},{"type":"number"},{"type":"boolean"},{"type":"null"},{"type":"array","items":{"$ref":"#/$defs/__schema5"}},{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"$ref":"#/$defs/__schema5"}}]}}},"ErrorBody":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["invalid_input","unsupported_version","unsupported_operation","no_access","not_found","scope_insufficient","revision_conflict","revision_unavailable","revert_conflict","idempotency_conflict","missing_revision","rate_limited","payload_too_large","semantic_invalid","temporarily_unavailable"]},"message":{"type":"string"},"fields":{"type":"array","items":{"type":"object","properties":{"path":{"type":"string"},"message":{"type":"string"},"operationIndex":{"type":"integer"}}}},"retryAfterSeconds":{"type":"integer"},"traceId":{"type":"string"},"stage":{"type":"string"},"retryable":{"type":"boolean"},"outcome":{"type":"string","enum":["unknown"]},"requestId":{"type":"string"}}}},"securitySchemes":{"assetUpload":{"type":"http","scheme":"bearer","description":"Five-minute board/hash/size-scoped capability returned by create_asset_upload, not a general OAuth token."},"oauth2":{"type":"oauth2","flows":{"authorizationCode":{"authorizationUrl":"https://www.qraftpad.com/api/auth/oauth2/authorize","tokenUrl":"https://www.qraftpad.com/api/auth/oauth2/token","scopes":{"boards:read":"boards:read","boards:write":"boards:write","boards:history":"boards:history"}}}}}},"x-qraft-mcp":{"protocolVersion":"2026-07-28","tools":[{"name":"read_lead_theme","schema":"LeadTheme","endpointId":"readLeadTheme","httpPath":"/api/v1/boards/{id}/lead-theme","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_call_speech","schema":"CallSpeech","endpointId":"readCallSpeech","httpPath":"/api/v1/boards/{id}/call-speech","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_project_folder_placement","schema":"ProjectFolderPlacement","endpointId":"readProjectFolderPlacement","httpPath":"/api/v1/boards/{id}/folder","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"set_project_folder_placement","schema":"ProjectFolderPlacement","endpointId":"setProjectFolderPlacement","httpPath":"/api/v1/boards/{id}/folder","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"cancel_media_render","schema":"MediaRenderStatus","endpointId":"cancelMediaRender","httpPath":"/api/v1/boards/{id}/media-editor/renders/{jobId}/cancel","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"rename_media_source","schema":"MediaSourceMetadata","endpointId":"renameMediaSource","httpPath":"/api/v1/boards/{id}/media-editor/sources/{sourceId}/rename","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_media_sources","schema":"MediaSourcesWindow","endpointId":"listMediaSources","httpPath":"/api/v1/boards/{id}/media-editor/sources","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"import_media_render","schema":"ImportedMediaRender","endpointId":"importMediaRender","httpPath":"/api/v1/boards/{id}/media-editor/renders/{jobId}/import","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_organization_project_trash","schema":"OrganizationProjectTrash","endpointId":"listOrganizationProjectTrash","httpPath":"/api/v1/organizations/{orgId}/project-trash","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"add_organization_domain","schema":"AddedOrganizationDomain","endpointId":"addOrganizationDomain","httpPath":"/api/v1/organizations/{orgId}/domains/add","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false},"annotationsAreAuthorization":false},{"name":"verify_organization_domain","schema":"VerifiedOrganizationDomain","endpointId":"verifyOrganizationDomain","httpPath":"/api/v1/organizations/{orgId}/domains/{domainId}/verify","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false},"annotationsAreAuthorization":false},{"name":"clear_inbox_view","schema":"InboxViewAcknowledged","endpointId":"clearInboxView","httpPath":"/api/v1/inbox/view/read","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"mark_global_inbox_read","schema":"GlobalInboxAcknowledged","endpointId":"markGlobalInboxRead","httpPath":"/api/v1/inbox/global/read","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_global_inbox","schema":"GlobalInboxPage","endpointId":"readGlobalInbox","httpPath":"/api/v1/inbox/global","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_documents","schema":"DocumentList","endpointId":"listDocuments","httpPath":"/api/v1/boards/{id}/documents/list","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_video","schema":"VideoRead","endpointId":"readVideo","httpPath":"/api/v1/boards/{id}/videos/read","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_media_source_download","schema":"MediaSourceDownload","endpointId":"getMediaSourceDownload","httpPath":"/api/v1/boards/{id}/media-editor/sources/{sourceId}/download-info","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_media_render_download","schema":"MediaRenderDownload","endpointId":"getMediaRenderDownload","httpPath":"/api/v1/boards/{id}/media-editor/renders/{jobId}/download-info","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_media_renders","schema":"MediaRendersWindow","endpointId":"listMediaRenders","httpPath":"/api/v1/boards/{id}/media-editor/renders","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_media_source","schema":"MediaSourceMetadata","endpointId":"readMediaSource","httpPath":"/api/v1/boards/{id}/media-editor/sources/{sourceId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_media_render","schema":"MediaRenderStatus","endpointId":"readMediaRender","httpPath":"/api/v1/boards/{id}/media-editor/renders/{jobId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"create_project_folder","schema":"CreatedProjectFolder","endpointId":"createProjectFolder","httpPath":"/api/v1/folders","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"remove_project_folder","schema":"RemovedProjectFolder","endpointId":"removeProjectFolder","httpPath":"/api/v1/folders/{folderId}/remove","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"rename_project_folder","schema":"RenamedProjectFolder","endpointId":"renameProjectFolder","httpPath":"/api/v1/folders/{folderId}/rename","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_project_folders","schema":"ProjectFolders","endpointId":"listProjectFolders","httpPath":"/api/v1/folders","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_project_folder","schema":"ProjectFolder","endpointId":"readProjectFolder","httpPath":"/api/v1/folders/{folderId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_connections","schema":"Connections","endpointId":"listConnections","httpPath":"/api/v1/connections","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_connection","schema":"Connection","endpointId":"readConnection","httpPath":"/api/v1/connections/{connectionId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_organization_domains","schema":"OrganizationDomains","endpointId":"listOrganizationDomains","httpPath":"/api/v1/organizations/{orgId}/domains","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_organization_domain","schema":"OrganizationDomain","endpointId":"readOrganizationDomain","httpPath":"/api/v1/organizations/{orgId}/domains/{domainId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_organizations","schema":"Organizations","endpointId":"listOrganizations","httpPath":"/api/v1/organizations","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_organization","schema":"Organization","endpointId":"readOrganization","httpPath":"/api/v1/organizations/{orgId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_organization_members","schema":"OrganizationMembers","endpointId":"listOrganizationMembers","httpPath":"/api/v1/organizations/{orgId}/members","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_ads_auto_pause","schema":"AdsAutoPause","endpointId":"readAdsAutoPause","httpPath":"/api/v1/boards/{id}/digital-ads/{sheetId}/auto-pause","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"verify_ads","schema":"AdsVerification","endpointId":"verifyAds","httpPath":"/api/v1/boards/{id}/ads/verify","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_ads_policy","schema":"AdsPolicy","endpointId":"readAdsPolicy","httpPath":"/api/v1/boards/{id}/digital-ads/{sheetId}/policy","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_project_member","schema":"ProjectMember","endpointId":"getProjectMember","httpPath":"/api/v1/boards/{id}/members/{userId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_project_agents","schema":"ProjectAgents","endpointId":"listProjectAgents","httpPath":"/api/v1/boards/{id}/agents","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_project_agent","schema":"ProjectAgent","endpointId":"readProjectAgent","httpPath":"/api/v1/boards/{id}/agents/{projectAgentId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"set_project_favicon","schema":"ProjectFaviconChange","endpointId":"setProjectFavicon","httpPath":"/api/v1/boards/{id}/project-favicon","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"set_project_tags","schema":"ProjectTagsChange","endpointId":"setProjectTags","httpPath":"/api/v1/boards/{id}/project-tags","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_project_tags","schema":"ProjectTags","endpointId":"readProjectTags","httpPath":"/api/v1/boards/{id}/project-tags","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_project_sharing","schema":"ProjectSharing","endpointId":"readProjectSharing","httpPath":"/api/v1/boards/{id}/sharing","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_project_members","schema":"ProjectMembers","endpointId":"listProjectMembers","httpPath":"/api/v1/boards/{id}/members","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_inbox","schema":"ProjectInbox","endpointId":"readInbox","httpPath":"/api/v1/boards/{id}/inbox","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"mark_inbox_read","schema":"ProjectInboxRead","endpointId":"markInboxRead","httpPath":"/api/v1/boards/{id}/inbox/read","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"manage_files","schema":"FilesNamespace","endpointId":"manageFiles","httpPath":"/api/v1/boards/{id}/files/namespace","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_file_trash","schema":"FilesTrash","endpointId":"listFileTrash","httpPath":"/api/v1/boards/{id}/files/trash","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_file_versions","schema":"FilesVersions","endpointId":"listFileVersions","httpPath":"/api/v1/boards/{id}/files/versions","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"activate_files","schema":"FileActivation","endpointId":"activateFiles","httpPath":"/api/v1/boards/{id}/files/activate","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"file_sharing","schema":"FileSharing","endpointId":"fileSharing","httpPath":"/api/v1/boards/{id}/files/drives/{driveId}/nodes/{nodeId}/sharing","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"file_upload","schema":"FilesUpload","endpointId":"fileUpload","httpPath":"/api/v1/boards/{id}/files/drives/{driveId}/uploads","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_files","schema":"FilesPage","endpointId":"listFiles","httpPath":"/api/v1/boards/{id}/files/drives/{driveId}/nodes","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_file","schema":"FilesNode","endpointId":"getFile","httpPath":"/api/v1/boards/{id}/files/drives/{driveId}/nodes/{nodeId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_file_download","schema":"FilesDownload","endpointId":"getFileDownload","httpPath":"/api/v1/boards/{id}/files/drives/{driveId}/nodes/{nodeId}/download","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_policies","schema":"Policies","endpointId":"readPolicies","httpPath":"/api/v1/boards/{id}/policies","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_task_routing","schema":"TaskRouting","endpointId":"readTaskRouting","httpPath":"/api/v1/boards/{id}/task-routing","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_skills","schema":"Skills","endpointId":"readSkills","httpPath":"/api/v1/boards/{id}/skills","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"write_skill","schema":"SkillWrite","endpointId":"writeSkill","httpPath":"/api/v1/boards/{id}/skills","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false},"annotationsAreAuthorization":false},{"name":"manage_app_key_requests","schema":"AppKeyRequests","endpointId":"manageAppKeyRequests","httpPath":"/api/v1/boards/{id}/key-requests","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false},"annotationsAreAuthorization":false},{"name":"get_tool_schema","schema":"ToolSchemaReference","endpointId":"getToolSchema","httpPath":"/api/v1/tool-schema","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"export_asset_version","schema":"AssetVersionExport","endpointId":"exportAssetVersion","httpPath":"/api/v1/boards/{id}/asset-board/export","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"upload_asset_from_url","schema":"AssetInfo","endpointId":"uploadAssetFromUrl","httpPath":"/api/v1/boards/{id}/asset-imports","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"create_asset_upload","schema":"AssetUpload","endpointId":"createAssetUpload","httpPath":"/api/v1/boards/{id}/asset-uploads","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"create_asset_uploads","schema":"AssetUploadBatch","endpointId":"createAssetUploads","httpPath":"/api/v1/boards/{id}/asset-uploads/batch","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"set_asset_poster","schema":"AssetPoster","endpointId":"setAssetPoster","httpPath":"/api/v1/boards/{id}/asset-posters","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_video_assets","schema":"VideoAssets","endpointId":"listVideoAssets","httpPath":"/api/v1/boards/{id}/video-assets","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_asset_downloads","schema":"AssetDownloads","endpointId":"getAssetDownloads","httpPath":"/api/v1/boards/{id}/asset-downloads","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_asset_upload","schema":"AssetUploadStatus","endpointId":"getAssetUpload","httpPath":"/api/v1/boards/{id}/asset-uploads","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"upload_asset","schema":"AssetInfo","endpointId":"uploadAssetBase64","httpPath":"/api/v1/boards/{id}/asset-board/media","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_research","schema":"ResearchRead","endpointId":"readResearch","httpPath":"/api/v1/boards/{id}/research","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_research_operations","schema":"ResearchCommand","endpointId":"applyResearchOperations","httpPath":"/api/v1/boards/{id}/research/operations","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_asset_board","schema":"AssetBoardRead","endpointId":"readAssetBoard","httpPath":"/api/v1/boards/{id}/asset-board","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_asset_board_operations","schema":"AssetBoardCommand","endpointId":"applyAssetBoardOperations","httpPath":"/api/v1/boards/{id}/asset-board/operations","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_wireframe","schema":"WireframeRead","endpointId":"readWireframe","httpPath":"/api/v1/boards/{id}/wireframe","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_wireframe_operations","schema":"WireframeOperationBatch","endpointId":"applyWireframeOperations","httpPath":"/api/v1/boards/{id}/wireframe/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_slide_deck","schema":"SlideDeckRead","endpointId":"readSlideDeck","httpPath":"/api/v1/boards/{id}/slide-deck","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_slide_deck_operations","schema":"SlideDeckOperationBatch","endpointId":"applySlideDeckOperations","httpPath":"/api/v1/boards/{id}/slide-deck/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_review_stream","schema":"ReviewRead","endpointId":"readReviewStream","httpPath":"/api/v1/boards/{id}/reviews","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_review_operations","schema":"ReviewOperationBatch","endpointId":"applyReviewOperations","httpPath":"/api/v1/boards/{id}/reviews/operations","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_breakdown","schema":"BreakdownRead","endpointId":"readBreakdown","httpPath":"/api/v1/boards/{id}/breakdown","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_breakdown_operations","schema":"BreakdownCommand","endpointId":"applyBreakdownOperations","httpPath":"/api/v1/boards/{id}/breakdown/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"capture_breakdown_frame","schema":"BreakdownFrame","endpointId":"captureBreakdownFrame","httpPath":"/api/v1/boards/{id}/breakdown/frames","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_product_review","schema":"ProductReviewRead","endpointId":"readProductReview","httpPath":"/api/v1/boards/{id}/product-review","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_product_review_operations","schema":"ProductReviewCommand","endpointId":"applyProductReviewOperations","httpPath":"/api/v1/boards/{id}/product-review/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_mailbox","schema":"MailboxRead","endpointId":"readMailbox","httpPath":"/api/v1/boards/{id}/mailbox","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_mailbox_operations","schema":"MailboxCommand","endpointId":"applyMailboxOperations","httpPath":"/api/v1/boards/{id}/mailbox/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false},"annotationsAreAuthorization":false},{"name":"read_support","schema":"SupportRead","endpointId":"readSupport","httpPath":"/api/v1/boards/{id}/support","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_support_operations","schema":"SupportCommand","endpointId":"applySupportOperations","httpPath":"/api/v1/boards/{id}/support/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_localization","schema":"LocalizationRead","endpointId":"readLocalization","httpPath":"/api/v1/boards/{id}/localization","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_localization_operations","schema":"LocalizationCommand","endpointId":"applyLocalizationOperations","httpPath":"/api/v1/boards/{id}/localization/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_experiments","schema":"ExperimentsRead","endpointId":"readExperiments","httpPath":"/api/v1/boards/{id}/experiments","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_digital_ads","schema":"DigitalAdsRead","endpointId":"readDigitalAds","httpPath":"/api/v1/boards/{id}/digital-ads","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_digital_ads_operations","schema":"DigitalAdsCommand","endpointId":"applyDigitalAdsOperations","httpPath":"/api/v1/boards/{id}/digital-ads/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_experiments_operations","schema":"ExperimentsCommand","endpointId":"applyExperimentsOperations","httpPath":"/api/v1/boards/{id}/experiments/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_crashes","schema":"CrashesRead","endpointId":"readCrashes","httpPath":"/api/v1/boards/{id}/crashes","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_crashes_operations","schema":"CrashesCommand","endpointId":"applyCrashesOperations","httpPath":"/api/v1/boards/{id}/crashes/operations","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_analytics","schema":"AnalyticsRead","endpointId":"readAnalytics","httpPath":"/api/v1/boards/{id}/analytics","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_analytics_operations","schema":"AnalyticsCommand","endpointId":"applyAnalyticsOperations","httpPath":"/api/v1/boards/{id}/analytics/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_hosted_pages","schema":"HostedPagesRead","endpointId":"readHostedPages","httpPath":"/api/v1/boards/{id}/hosted-pages","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_hosted_pages_operations","schema":"HostedPagesCommand","endpointId":"applyHostedPagesOperations","httpPath":"/api/v1/boards/{id}/hosted-pages/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_store_assets","schema":"StoreAssetsRead","endpointId":"readStoreAssets","httpPath":"/api/v1/boards/{id}/store-assets","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_store_assets_operations","schema":"StoreAssetsCommand","endpointId":"applyStoreAssetsOperations","httpPath":"/api/v1/boards/{id}/store-assets/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_journal","schema":"JournalRead","endpointId":"readJournal","httpPath":"/api/v1/boards/{id}/journal","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_journal_operations","schema":"JournalCommand","endpointId":"applyJournalOperations","httpPath":"/api/v1/boards/{id}/journal/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_pipeline","schema":"PipelineRead","endpointId":"readPipeline","httpPath":"/api/v1/boards/{id}/pipeline","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_pipeline_operations","schema":"PipelineCommand","endpointId":"applyPipelineOperations","httpPath":"/api/v1/boards/{id}/pipeline/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_art_bible","schema":"ArtBibleRead","endpointId":"readArtBible","httpPath":"/api/v1/boards/{id}/art-bible","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_art_bible_operations","schema":"ArtBibleCommand","endpointId":"applyArtBibleOperations","httpPath":"/api/v1/boards/{id}/art-bible/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_kanban","schema":"KanbanRead","endpointId":"readKanban","httpPath":"/api/v1/boards/{id}/kanban","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_kanban_operations","schema":"KanbanOperationBatch","endpointId":"applyKanbanOperations","httpPath":"/api/v1/boards/{id}/kanban/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_data","schema":"DataRead","endpointId":"readData","httpPath":"/api/v1/boards/{id}/data","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_data_operations","schema":"DataOperationBatch","endpointId":"applyDataOperations","httpPath":"/api/v1/boards/{id}/data/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_document_operations","schema":"DocumentOperationBatch","endpointId":"applyDocumentOperations","httpPath":"/api/v1/boards/{id}/document/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_sheets","schema":"SheetList","endpointId":"listSheets","httpPath":"/api/v1/boards/{id}/sheets","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_prefabs","schema":"Prefabs","endpointId":"readPrefabs","httpPath":"/api/v1/prefabs","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"read_tags","schema":"TagList","endpointId":"readTags","httpPath":"/api/v1/boards/{id}/tags","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"manage_sheets","schema":"SheetCommand","endpointId":"manageSheets","httpPath":"/api/v1/boards/{id}/sheets","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"send_notification","schema":"NotificationSend","endpointId":"sendNotification","httpPath":"/api/v1/boards/{id}/notifications","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false},"annotationsAreAuthorization":false},{"name":"render_board","schema":"BoardPreview","endpointId":"renderBoard","httpPath":"/api/v1/boards/{id}/preview","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"diff_board","schema":"BoardDiff","endpointId":"diffBoard","httpPath":"/api/v1/boards/{id}/diff","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_boards","schema":"BoardList","endpointId":"listBoards","httpPath":"/api/v1/boards","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"create_board","schema":"CreateBoardRequest","endpointId":"createBoard","httpPath":"/api/v1/boards","annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false},"annotationsAreAuthorization":false},{"name":"read_board","schema":"BoardRead","endpointId":"readBoard","httpPath":"/api/v1/boards/{id}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"search_board","schema":"BoardSearch","endpointId":"searchBoard","httpPath":"/api/v1/boards/{id}/search","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"apply_operations","schema":"OperationBatchRequest","endpointId":"applyOperations","httpPath":"/api/v1/boards/{id}/operations","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"list_changes","schema":"ChangeList","endpointId":"listChanges","httpPath":"/api/v1/boards/{id}/changes","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_change","schema":"ChangeDetail","endpointId":"getChange","httpPath":"/api/v1/boards/{id}/changes/{changeId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"revert_change","schema":"RevertRequest","endpointId":"revertChange","httpPath":"/api/v1/boards/{id}/changes/{changeId}/revert","annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"get_operation_receipt","schema":"OperationReceipt","endpointId":"getReceipt","httpPath":"/api/v1/boards/{id}/receipts/{requestId}","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false},{"name":"export_board","schema":"BoardExport","endpointId":"exportBoard","httpPath":"/api/v1/boards/{id}/export","annotations":{"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true},"annotationsAreAuthorization":false}]},"x-qraft-capabilities":{"apiVersion":"v1","mcpProtocolVersion":"2026-07-28","commandSchemaVersion":1,"documentFormatVersion":3,"features":{"httpApi":true,"mcp":true,"agentWrites":true,"agentDeletes":true,"agentItemDeletes":true,"historyUi":true,"structuredData":true,"assetBoard":true,"researchAnalysis":true,"reviewStream":true,"kanban":true,"wireframe":true,"slideDeck":true,"breakdown":true},"operationTypes":["insert_prefab","rename_board","set_connector_default","add_node","update_node","remove_node","add_edge","update_edge","remove_edge","reorder_nodes","humanize","align_nodes","distribute_nodes","snap_to_grid","normalize_sizes","set_metadata","set_theme","clear_theme","clear_flowchart"],"scopes":["boards:read","boards:write","boards:history"],"exportFormats":["json","mermaid","markdown","pdf","csv"],"limits":{"sheetCatalogBytes":65536,"nodesPerDocument":10000,"edgesPerDocument":20000,"retainedRevisions":128,"revisionRetentionDays":7,"revisionJournalBytes":67108864,"revisionSnapshotBytes":33554432,"previewMaxDimension":2048,"previewImageBytes":4194304,"rendersPerGrantPerMinute":6,"operationsPerBatch":500,"requestBodyBytes":4194304,"nodeTextChars":20000,"nodesPerMutatedBoard":1000,"edgesPerMutatedBoard":2000,"resultsPerPage":100,"compactReadBytes":262144,"receiptRetentionDays":30,"receiptPayloadBytes":134217728,"historyRetentionDays":30,"historyPayloadBytes":67108864,"leadReadsPerUserPerMinute":240,"leadReadsPerClientPerMinute":180,"leadReadsPerGrantPerMinute":120,"leadReadsPerAgentPerMinute":120,"readsPerUserPerMinute":120,"mutationsPerUserPerMinute":30,"boardCreatesPerUserPerHour":10,"readsPerClientPerMinute":90,"mutationsPerClientPerMinute":25,"readsPerGrantPerMinute":60,"mutationsPerGrantPerMinute":20,"ticketedUploadsPerGrantPerMinute":120,"wireframe":{"operationsPerBatch":500,"documentBytes":8388608,"screens":200,"componentsPerScreen":1000,"components":10000,"interactions":5000,"prototypeVariables":100,"stateValueCharacters":1000,"stateChangesPerInteraction":20,"stateLayers":256,"conditionDepth":3,"conditionChildren":16,"conditionNodes":64,"resultsPerPage":100,"responseBytes":262144,"prototypeSteps":50,"prototypeHistory":100,"prototypeCallers":20,"prototypeCallerBytes":65536,"prototypeModals":20,"renderScreens":40},"slideDeck":{"operationsPerBatch":500,"documentBytes":8388608,"slides":500,"elementsPerSlide":300,"elements":20000,"textCharacters":20000,"notesCharacters":20000,"resultsPerPage":100,"responseBytes":262144},"assetUploads":{"preferredOrder":["source_url","binary","base64"],"rasterBytes":8388608,"textBytes":1048576,"mediaBytes":16777216,"base64DecodedBytes":2097152,"uploadAuthorizationSeconds":300,"batchUploadAuthorizationSeconds":1800,"batchUploadFiles":100,"downloadSeconds":30,"redirects":3,"urlReceiptSeconds":86400,"urlReceiptsPerBoard":1000}},"endpointsEnabled":["readLeadTheme","readCallSpeech","readProjectFolderPlacement","setProjectFolderPlacement","cancelMediaRender","renameMediaSource","listMediaSources","importMediaRender","listOrganizationProjectTrash","addOrganizationDomain","verifyOrganizationDomain","clearInboxView","markGlobalInboxRead","readGlobalInbox","listDocuments","readVideo","getMediaSourceDownload","getMediaRenderDownload","listMediaRenders","readMediaSource","readMediaRender","createProjectFolder","removeProjectFolder","renameProjectFolder","listProjectFolders","readProjectFolder","listConnections","readConnection","listOrganizationDomains","readOrganizationDomain","listOrganizations","readOrganization","listOrganizationMembers","readAdsAutoPause","verifyAds","readAdsPolicy","getProjectMember","listProjectAgents","readProjectAgent","setProjectFavicon","setProjectTags","readProjectTags","readProjectSharing","listProjectMembers","readInbox","markInboxRead","readPolicies","readTaskRouting","readSkills","writeSkill","manageAppKeyRequests","getToolSchema","listTools","callTool","setAssetPoster","listVideoAssets","getAssetDownloads","readResearch","applyResearchOperations","exportAssetVersion","uploadAssetFromUrl","createAssetUpload","createAssetUploads","getAssetUpload","putAssetUpload","uploadAssetBase64","readAssetBoard","applyAssetBoardOperations","uploadAsset","readAsset","readAssets","readWireframe","applyWireframeOperations","readSlideDeck","applySlideDeckOperations","readReviewStream","applyReviewOperations","readBreakdown","applyBreakdownOperations","captureBreakdownFrame","readProductReview","applyProductReviewOperations","readMailbox","applyMailboxOperations","readSupport","applySupportOperations","readLocalization","applyLocalizationOperations","readExperiments","readDigitalAds","applyDigitalAdsOperations","applyExperimentsOperations","readCrashes","applyCrashesOperations","readAnalytics","applyAnalyticsOperations","readHostedPages","applyHostedPagesOperations","readStoreAssets","applyStoreAssetsOperations","readJournal","readPipeline","applyJournalOperations","applyPipelineOperations","readArtBible","applyArtBibleOperations","readKanban","applyKanbanOperations","readData","applyDataOperations","applyDocumentOperations","listSheets","readPrefabs","readTags","manageSheets","sendNotification","renderBoard","diffBoard","getCapabilities","listBoards","createBoard","readBoard","searchBoard","applyOperations","listChanges","getChange","revertChange","getReceipt","exportBoard"],"toolsEnabled":["read_lead_theme","read_call_speech","read_project_folder_placement","set_project_folder_placement","cancel_media_render","rename_media_source","list_media_sources","import_media_render","list_organization_project_trash","add_organization_domain","verify_organization_domain","clear_inbox_view","mark_global_inbox_read","read_global_inbox","list_documents","read_video","get_media_source_download","get_media_render_download","list_media_renders","read_media_source","read_media_render","create_project_folder","remove_project_folder","rename_project_folder","list_project_folders","read_project_folder","list_connections","read_connection","list_organization_domains","read_organization_domain","list_organizations","read_organization","list_organization_members","read_ads_auto_pause","verify_ads","read_ads_policy","get_project_member","list_project_agents","read_project_agent","set_project_favicon","set_project_tags","read_project_tags","read_project_sharing","list_project_members","read_inbox","mark_inbox_read","read_policies","read_task_routing","read_skills","write_skill","manage_app_key_requests","get_tool_schema","export_asset_version","upload_asset_from_url","create_asset_upload","create_asset_uploads","set_asset_poster","list_video_assets","get_asset_downloads","get_asset_upload","upload_asset","read_research","apply_research_operations","read_asset_board","apply_asset_board_operations","read_wireframe","apply_wireframe_operations","read_slide_deck","apply_slide_deck_operations","read_review_stream","apply_review_operations","read_breakdown","apply_breakdown_operations","capture_breakdown_frame","read_product_review","apply_product_review_operations","read_mailbox","apply_mailbox_operations","read_support","apply_support_operations","read_localization","apply_localization_operations","read_experiments","read_digital_ads","apply_digital_ads_operations","apply_experiments_operations","read_crashes","apply_crashes_operations","read_analytics","apply_analytics_operations","read_hosted_pages","apply_hosted_pages_operations","read_store_assets","apply_store_assets_operations","read_journal","apply_journal_operations","read_pipeline","apply_pipeline_operations","read_art_bible","apply_art_bible_operations","read_kanban","apply_kanban_operations","read_data","apply_data_operations","apply_document_operations","list_sheets","read_prefabs","read_tags","manage_sheets","send_notification","render_board","diff_board","list_boards","create_board","read_board","search_board","apply_operations","list_changes","get_change","revert_change","get_operation_receipt","export_board"]},"x-qraft-http-status":{"invalid_input":400,"unsupported_version":400,"unsupported_operation":400,"no_access":404,"not_found":404,"scope_insufficient":403,"revision_conflict":409,"revision_unavailable":410,"revert_conflict":409,"idempotency_conflict":409,"missing_revision":428,"rate_limited":429,"payload_too_large":413,"semantic_invalid":422,"temporarily_unavailable":503}}