{"version":"0.20.0","name":"kanvas_sharing","description":"Addresses and sharing for a session: address.get returns the viewer URL (grants no access; never share just to get a URL), address.customize sets a readable alias, link.create makes a share link, public.set enables/disables anonymous read-only viewing (owner only, private by default). Required: operation. Required fields by operation: address.get(sessionId); address.customize(sessionId,alias); link.create(sessionId,displayId); public.set(sessionId,expectedRevision,enabled,confirm).","inputSchema":{"type":"object","properties":{"operation":{"type":"string","enum":["address.get","address.customize","link.create","public.set"],"description":"Required operation; supply only the fields in its matching branch."},"sessionId":{"type":"string"},"displayId":{"type":"string","minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"},"alias":{"anyOf":[{"type":"string","minLength":5,"maxLength":32,"pattern":"^[a-z][a-z0-9]+$"},{"type":"null"}]},"showOnDisplay":{"type":"boolean"},"requestId":{"type":"string","minLength":1,"maxLength":128},"expectedRevision":{"type":"integer","minimum":0,"maximum":9007199254740991},"label":{"type":"string","minLength":1,"maxLength":80},"allowInteraction":{"type":"boolean"},"expiresInHours":{"type":"integer","minimum":1,"maximum":168},"enabled":{"type":"boolean"},"confirm":{"type":"boolean","const":true}},"required":["operation"],"oneOf":[{"properties":{"operation":{"const":"address.get"},"sessionId":{"$ref":"#/$defs/c0"},"displayId":{}},"required":["operation","sessionId"],"additionalProperties":false,"description":"Get a short session/display locator."},{"properties":{"operation":{"const":"address.customize"},"sessionId":{"$ref":"#/$defs/c0"},"displayId":{},"alias":{}},"required":["operation","sessionId","alias"],"additionalProperties":false,"description":"Explicitly customize or release an owner-controlled locator; an active installation entitlement is required for a custom address."},{"properties":{"operation":{"const":"link.create"},"sessionId":{"$ref":"#/$defs/c0"},"displayId":{},"showOnDisplay":{"default":false},"requestId":{},"expectedRevision":{},"label":{},"allowInteraction":{"default":false},"expiresInHours":{"default":24}},"required":["operation","sessionId","displayId"],"additionalProperties":false,"if":{"properties":{"showOnDisplay":{"const":true}},"required":["showOnDisplay"]},"then":{"required":["requestId","expectedRevision"]},"description":"Create an invitation only for an actual owner request."},{"properties":{"operation":{"const":"public.set"},"sessionId":{"minLength":1,"maxLength":128},"expectedRevision":{},"enabled":{},"confirm":{}},"required":["operation","sessionId","expectedRevision","enabled","confirm"],"additionalProperties":false,"description":"Owner-only explicit anonymous read access; off by default."}],"examples":[{"operation":"address.get","sessionId":"s","displayId":"d"},{"operation":"address.customize","sessionId":"s","displayId":"d","alias":"myproject"},{"operation":"link.create","sessionId":"s","displayId":"d"},{"operation":"public.set","sessionId":"s","enabled":true,"confirm":true,"expectedRevision":0}],"$defs":{"c0":{"minLength":1,"maxLength":128,"pattern":"^[A-Za-z0-9_-]+$"}}},"annotations":{"readOnlyHint":false,"destructiveHint":true,"idempotentHint":false,"openWorldHint":true}}