API reference

Review comments

Review comments on files, at a moment of a video (at_ms) or on a region of the frame. Members comment by role (commenter and up); reviewers comment on review links (shares with can_comment).

5 endpoints · Overview

GET/v1/spaces/{sid}/nodes/{nid}/comments

A file's comment threads, in timecode order, each with its replies
Bearer token

Parameters · path

  • sidstringrequired
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • nidstringrequired

Parameters · query

  • resolvedstring
    Include resolved threads
    1

Responses

  • 200
    Threads
    object
    › Show fields
    • itemsComment[]
      › 17 fields
      • idstringrequired
      • space_idstringrequired
      • node_idstringrequired
      • version_idstring | nullrequired
        The version on screen when it was written
        required
      • parent_idstring | nullrequired
        Set on replies
        required
      • authorUserrequired
        › 4 fields
        • idstringrequired
        • emailstringrequired
          Agents have an address at agents.invalid: it finds them for invites, no mail goes there
        • display_namestringrequired
        • kindstringrequired
          humanagent
      • guest_namestring
        The name a reviewer gave on a review link (author is then the link's guest user)
      • bodystringrequired
        ≤ 5000 chars
      • at_msinteger | nullrequired
        Where in the video or audio
        required
      • until_msinteger | nullrequired
        required
      • regionRegion | anyrequired
      • resolvedbooleanrequired
      • resolved_atTimestamp | any
      • resolved_bystring | null
        required
      • created_atTimestamprequired
      • edited_atTimestamp | anyrequired
      • repliesComment[]
  • 4xx/5xx
    Error
    Error
Example request
curl "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/nodes/nod_01JD7Q3A5C7E9G1J3K5M7P9R2S/comments" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"
Example response · 200
{
  "items": [
    {
      "id": "id",
      "space_id": "spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C",
      "node_id": "nod_01JD7Q3A5C7E9G1J3K5M7P9R2S",
      "version_id": "ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T",
      "parent_id": "nod_01JD7Q3A5C7E9G1J3K5M7P9R2S",
      "author": {},
      "guest_name": "guest_name",
      "body": "Music too loud here",
      "at_ms": 83500,
      "until_ms": 83500,
      "region": {},
      "resolved": false,
      "resolved_at": "2026-11-14T09:30:00Z",
      "resolved_by": "resolved_by",
      "created_at": "2026-11-14T09:30:00Z",
      "edited_at": "2026-11-14T09:30:00Z",
      "replies": []
    }
  ]
}

POST/v1/spaces/{sid}/nodes/{nid}/comments

Comment (commenter and up; tokens need comments:write). The person who saved the version, and the author of a comment replied to, are notified.
Bearer token

Parameters · path

  • sidstringrequired
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • nidstringrequired

Request bodyCommentRequest application/json

  • bodystringrequired
    ≤ 5000 chars
  • at_msinteger
    ≥ 0
  • until_msinteger
    Needs at_ms; not before it
  • regionRegion
    › 4 fields
    • xnumberrequired
    • ynumberrequired
    • wnumberrequired
    • hnumberrequired
  • parent_idstring
    Reply to this comment (a reply to a reply joins the same thread)
  • version_idstring
    The version being looked at (default: the current one)

Responses

Example request
curl -X POST "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/nodes/nod_01JD7Q3A5C7E9G1J3K5M7P9R2S/comments" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"body":"Music too loud here"}'
Example response · 201
{
  "id": "id",
  "space_id": "spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C",
  "node_id": "nod_01JD7Q3A5C7E9G1J3K5M7P9R2S",
  "version_id": "ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T",
  "parent_id": "nod_01JD7Q3A5C7E9G1J3K5M7P9R2S",
  "author": {
    "id": "id",
    "email": "[email protected]",
    "display_name": "display_name",
    "kind": "human"
  },
  "guest_name": "guest_name",
  "body": "Music too loud here",
  "at_ms": 83500,
  "until_ms": 83500,
  "region": {
    "x": 0.5,
    "y": 0.5,
    "w": 0.5,
    "h": 0.5
  },
  "resolved": false,
  "resolved_at": "2026-11-14T09:30:00Z",
  "resolved_by": "resolved_by",
  "created_at": "2026-11-14T09:30:00Z",
  "edited_at": "2026-11-14T09:30:00Z",
  "replies": [
    {}
  ]
}

GET/v1/spaces/{sid}/comments/{cid}

Bearer token

Parameters · path

  • sidstringrequired
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • cidstringrequired

Responses

Example request
curl "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/comments/cid" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"
Example response · 200
{
  "id": "id",
  "space_id": "spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C",
  "node_id": "nod_01JD7Q3A5C7E9G1J3K5M7P9R2S",
  "version_id": "ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T",
  "parent_id": "nod_01JD7Q3A5C7E9G1J3K5M7P9R2S",
  "author": {
    "id": "id",
    "email": "[email protected]",
    "display_name": "display_name",
    "kind": "human"
  },
  "guest_name": "guest_name",
  "body": "Music too loud here",
  "at_ms": 83500,
  "until_ms": 83500,
  "region": {
    "x": 0.5,
    "y": 0.5,
    "w": 0.5,
    "h": 0.5
  },
  "resolved": false,
  "resolved_at": "2026-11-14T09:30:00Z",
  "resolved_by": "resolved_by",
  "created_at": "2026-11-14T09:30:00Z",
  "edited_at": "2026-11-14T09:30:00Z",
  "replies": [
    {}
  ]
}

PATCH/v1/spaces/{sid}/comments/{cid}

Edit the text (its author), or resolve or reopen a thread (its author, or an editor)
Bearer token

Parameters · path

  • sidstringrequired
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • cidstringrequired

Request body application/json

  • bodystring
  • resolvedboolean

Responses

Example request
curl -X PATCH "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/comments/cid" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"body":"Music too loud here","resolved":false}'
Example response · 200
{
  "id": "id",
  "space_id": "spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C",
  "node_id": "nod_01JD7Q3A5C7E9G1J3K5M7P9R2S",
  "version_id": "ver_01JD7Q4B6D8F0H2J4L6N8Q0S3T",
  "parent_id": "nod_01JD7Q3A5C7E9G1J3K5M7P9R2S",
  "author": {
    "id": "id",
    "email": "[email protected]",
    "display_name": "display_name",
    "kind": "human"
  },
  "guest_name": "guest_name",
  "body": "Music too loud here",
  "at_ms": 83500,
  "until_ms": 83500,
  "region": {
    "x": 0.5,
    "y": 0.5,
    "w": 0.5,
    "h": 0.5
  },
  "resolved": false,
  "resolved_at": "2026-11-14T09:30:00Z",
  "resolved_by": "resolved_by",
  "created_at": "2026-11-14T09:30:00Z",
  "edited_at": "2026-11-14T09:30:00Z",
  "replies": [
    {}
  ]
}

DELETE/v1/spaces/{sid}/comments/{cid}

Delete (its author, or a manager); a thread's replies go with it
Bearer token

Parameters · path

  • sidstringrequired
    ^spc_[0-9A-HJKMNP-TV-Z]{26}$
  • cidstringrequired

Responses

  • 204
    Deleted
  • 4xx/5xx
    Error
    Error
Example request
curl -X DELETE "https://side.example.com/v1/spaces/spc_01JD7Q2M8X4V6N0R3T5W9Y1B2C/comments/cid" \
  -H "Authorization: Bearer $SIDESPACE_TOKEN"