enhancedocs
For agentsOpen Enhance ↗
Reference / comment.start

Enhance documentation

comment.start

Start a comment thread anchored to a canvas location.

↓ Markdown

comment.start

mutation write

Use when the requested change exactly matches comment.start; read the current state first when a version or identifier may have changed.

Before calling

  • Authenticate as the accountable Enhance person.
  • Use only resource identifiers returned by an earlier capability result or supplied by the person.
  • Reuse clientToken only when retrying this exact mutation input.

Input

Show complete JSON Schema
{"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object","properties":{"context":{"type":"object","properties":{"canvasRef":{"type":"string","minLength":1},"expectedVersion":{"type":"integer","exclusiveMinimum":0,"maximum":9007199254740991},"coordinateSpace":{"type":"string","enum":["canvas-world","node-normalized","screen-normalized"]}},"required":["canvasRef","expectedVersion","coordinateSpace"],"additionalProperties":false},"canvasId":{"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)$"},"clientThreadId":{"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)$"},"anchor":{"oneOf":[{"type":"object","properties":{"on":{"type":"string","const":"canvas"},"point":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"pageId":{"type":"string","minLength":1,"maxLength":256}},"required":["on","point"]},{"type":"object","properties":{"on":{"type":"string","const":"node"},"nodeId":{"type":"string","minLength":1},"point":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"element":{"type":"null"}},"required":["on","nodeId","point","element"]},{"type":"object","properties":{"on":{"type":"string","const":"screen"},"nodeId":{"type":"string","minLength":1},"screenId":{"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)$"},"point":{"type":"object","properties":{"x":{"type":"number"},"y":{"type":"number"}},"required":["x","y"]},"element":{"anyOf":[{"type":"object","properties":{"selector":{"type":"string","minLength":1},"tagName":{"type":"string","minLength":1},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"anyOf":[{"type":"object","properties":{"file":{"type":"string","minLength":1},"line":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["file","line"]},{"type":"null"}]}},"required":["selector","tagName","label","source"]},{"type":"null"}]},"target":{"oneOf":[{"type":"object","properties":{"version":{"type":"number","const":1},"kind":{"type":"string","const":"element"},"locator":{"type":"object","properties":{"selector":{"type":"string","minLength":1},"tagName":{"type":"string","minLength":1},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"anyOf":[{"type":"object","properties":{"file":{"type":"string","minLength":1},"line":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["file","line"]},{"type":"null"}]},"role":{"type":"string","minLength":1}},"required":["selector","tagName","label","source"]},"attachment":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]},"fallbackBounds":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1},"width":{"type":"number","minimum":0,"maximum":1},"height":{"type":"number","minimum":0,"maximum":1}},"required":["x","y","width","height"]}},"required":["version","kind","locator","attachment","fallbackBounds"]},{"type":"object","properties":{"version":{"type":"number","const":1},"kind":{"type":"string","const":"text"},"root":{"type":"object","properties":{"selector":{"type":"string","minLength":1},"tagName":{"type":"string","minLength":1},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"anyOf":[{"type":"object","properties":{"file":{"type":"string","minLength":1},"line":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["file","line"]},{"type":"null"}]},"role":{"type":"string","minLength":1}},"required":["selector","tagName","label","source"]},"quote":{"type":"object","properties":{"exact":{"type":"string","minLength":1},"prefix":{"type":"string"},"suffix":{"type":"string"}},"required":["exact","prefix","suffix"]},"range":{"type":"object","properties":{"start":{"type":"object","properties":{"path":{"type":"array","items":{"type":"integer","minimum":0,"maximum":9007199254740991}},"offset":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["path","offset"]},"end":{"type":"object","properties":{"path":{"type":"array","items":{"type":"integer","minimum":0,"maximum":9007199254740991}},"offset":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["path","offset"]}},"required":["start","end"]},"attachment":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]},"fallbackBounds":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1},"width":{"type":"number","minimum":0,"maximum":1},"height":{"type":"number","minimum":0,"maximum":1}},"required":["x","y","width","height"]}},"required":["version","kind","root","quote","range","attachment","fallbackBounds"]},{"type":"object","properties":{"version":{"type":"number","const":1},"kind":{"type":"string","const":"elements"},"members":{"minItems":2,"type":"array","items":{"type":"object","properties":{"selector":{"type":"string","minLength":1},"tagName":{"type":"string","minLength":1},"label":{"anyOf":[{"type":"string"},{"type":"null"}]},"source":{"anyOf":[{"type":"object","properties":{"file":{"type":"string","minLength":1},"line":{"anyOf":[{"type":"integer","minimum":0,"maximum":9007199254740991},{"type":"null"}]}},"required":["file","line"]},{"type":"null"}]},"role":{"type":"string","minLength":1}},"required":["selector","tagName","label","source"]}},"truncated":{"type":"boolean"},"attachment":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]},"fallbackBounds":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1},"width":{"type":"number","minimum":0,"maximum":1},"height":{"type":"number","minimum":0,"maximum":1}},"required":["x","y","width","height"]}},"required":["version","kind","members","truncated","attachment","fallbackBounds"]},{"type":"object","properties":{"version":{"type":"number","const":1},"kind":{"type":"string","const":"area"},"bounds":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1},"width":{"type":"number","minimum":0,"maximum":1},"height":{"type":"number","minimum":0,"maximum":1}},"required":["x","y","width","height"]},"attachment":{"type":"object","properties":{"x":{"type":"number","minimum":0,"maximum":1},"y":{"type":"number","minimum":0,"maximum":1}},"required":["x","y"]}},"required":["version","kind","bounds","attachment"]}]}},"required":["on","nodeId","screenId","point","element"]}]},"body":{"type":"string","minLength":1},"mentionedPersonIds":{"default":[],"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)$"}}},"required":["canvasId","clientThreadId","anchor","body"]}

Example

Show example input
{
 "canvasId": "00000000-0000-4000-8000-000000000010",
 "clientThreadId": "00000000-0000-4000-8000-000000000010",
 "anchor": {
  "on": "canvas",
  "point": {
   "x": 0,
   "y": 0
  }
 },
 "body": "x"
}

Result

Returns a typed comment.start result from the Enhance API without transport-specific prose.

Recovery

  • BAD_REQUEST: correct the named fields and call again.
  • UNAUTHORIZED: restore Enhance authentication, then retry once.
  • FORBIDDEN or NOT_FOUND: check the supplied resource and selection; do not substitute unrelated content. Ask for corrected access or scope if needed.
  • CONFLICT: read the current resource, merge the intended change, and retry with its version.
  • INTERNAL: run Enhance diagnostics, report the failure, and stop repeating the call.

Continue with

  • Read the affected comment resource to confirm the result.

Compatibility: 53e10bd15c5cf696457531833eb39413f92661c94e6ccbe688d6ad71f5460c14.