{ "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "ThreadReadState": { "description": "The first unread position in a durable local thread. A null position means read. The opaque revision guards edits against activity or marks the caller has not seen.", "properties": { "firstUnread": { "anyOf": [ { "$ref": "#/definitions/ThreadUnreadPosition" }, { "type": "null" } ] }, "revision": { "type": "string" } }, "required": [ "revision" ], "type": "object" }, "ThreadUnreadPosition": { "oneOf": [ { "description": "Explicitly marked unread, including when the thread has no turns.", "properties": { "type": { "enum": [ "threadStart" ], "title": "ThreadStartThreadUnreadPositionType", "type": "string" } }, "required": [ "type" ], "title": "ThreadStartThreadUnreadPosition", "type": "object" }, { "description": "The earliest completed result needing attention.", "properties": { "turnId": { "type": "string" }, "type": { "enum": [ "turn" ], "title": "TurnThreadUnreadPositionType", "type": "string" } }, "required": [ "turnId", "type" ], "title": "TurnThreadUnreadPosition", "type": "object" } ] } }, "properties": { "readState": { "$ref": "#/definitions/ThreadReadState" }, "threadId": { "type": "string" } }, "required": [ "readState", "threadId" ], "title": "ThreadReadStateChangedNotification", "type": "object" }