Huddlekit · Schema
ListCommentsResponse
Visual AnnotationWebsite FeedbackDeveloper ToolsAI Integration
Properties
| Name | Type | Description |
|---|---|---|
| comments | array | Comments on the parent, newest first. The shape of each item depends on `surface`. |
| surface | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/huddlekit/main/json-schema/huddlekit-list-comments-response-schema.json",
"title": "ListCommentsResponse",
"x-generated": "2026-09-28",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/_original/huddlekit-api-openapi.json#/components/schemas/ListCommentsResponse",
"type": "object",
"required": [
"comments",
"surface"
],
"properties": {
"comments": {
"type": "array",
"description": "Comments on the parent, newest first. The shape of each item depends on `surface`.",
"items": {
"oneOf": [
{
"$ref": "#/$defs/WebsiteComment"
},
{
"$ref": "#/$defs/WebappComment"
},
{
"$ref": "#/$defs/DocumentComment"
}
]
}
},
"surface": {
"$ref": "#/$defs/Surface"
}
},
"$defs": {
"DocumentComment": {
"type": "object",
"description": "A comment on a document (`surface: document`). Document comments have no path, URL or screenshot.",
"additionalProperties": false,
"required": [
"id",
"comment_number",
"text",
"status",
"priority",
"resolved",
"is_private",
"page_number",
"video_timestamp",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "Comment id."
},
"comment_number": {
"type": [
"integer",
"null"
],
"description": "Sequential number of the comment within its parent (shown as #42 in Huddlekit)."
},
"text": {
"type": "string",
"description": "The comment text as written."
},
"status": {
"type": [
"string",
"null"
],
"enum": [
"open",
"in-review",
"in-progress",
"resolved",
null
],
"description": "Workflow status: `open`, `in-review`, `in-progress` or `resolved`."
},
"priority": {
"type": [
"string",
"null"
],
"enum": [
"Low",
"Medium",
"Critical",
null
],
"description": "Priority set in Huddlekit, or null when none is set."
},
"resolved": {
"type": [
"boolean",
"null"
],
"description": "Whether the comment is resolved."
},
"is_private": {
"type": "boolean",
"description": "Whether the comment is hidden from guests."
},
"page_number": {
"type": [
"integer",
"null"
],
"description": "Page of the document the comment is on (1-based)."
},
"video_timestamp": {
"type": [
"number",
"null"
],
"description": "Position in seconds, for comments on a video; otherwise null."
},
"created_at": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "When the comment was created."
},
"updated_at": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "When the comment was last updated."
}
}
},
"Surface": {
"type": "string",
"enum": [
"website",
"webapp",
"document"
],
"description": "What a comment is attached to. `website`: a website project (the parent is a project). `webapp`: a web app that runs the Huddlekit SDK widget (the parent is a web app). `document`: an uploaded PDF, image or video (the parent is a document)."
},
"WebappComment": {
"type": "object",
"description": "A comment on a web app (`surface: webapp`).",
"additionalProperties": false,
"required": [
"id",
"comment_number",
"text",
"status",
"priority",
"resolved",
"is_private",
"url",
"path",
"page_title",
"screenshot",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "Comment id."
},
"comment_number": {
"type": [
"integer",
"null"
],
"description": "Sequential number of the comment within its parent (shown as #42 in Huddlekit)."
},
"text": {
"type": "string",
"description": "The comment text as written."
},
"status": {
"type": [
"string",
"null"
],
"enum": [
"open",
"in-review",
"in-progress",
"resolved",
null
],
"description": "Workflow status: `open`, `in-review`, `in-progress` or `resolved`."
},
"priority": {
"type": [
"string",
"null"
],
"enum": [
"Low",
"Medium",
"Critical",
null
],
"description": "Priority set in Huddlekit, or null when none is set."
},
"resolved": {
"type": [
"boolean",
"null"
],
"description": "Whether the comment is resolved."
},
"is_private": {
"type": "boolean",
"description": "Whether the comment is hidden from guests."
},
"url": {
"type": [
"string",
"null"
],
"description": "Full URL of the page the comment is on."
},
"path": {
"type": "string",
"description": "Page path."
},
"page_title": {
"type": [
"string",
"null"
],
"description": "Title of the page the comment is on."
},
"screenshot": {
"type": [
"string",
"null"
],
"description": "Screenshot of the page, or null if none has been captured."
},
"created_at": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "When the comment was created."
},
"updated_at": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "When the comment was last updated."
}
}
},
"WebsiteComment": {
"type": "object",
"description": "A comment on a website project (`surface: website`).",
"additionalProperties": false,
"required": [
"id",
"comment_number",
"text",
"status",
"priority",
"resolved",
"is_private",
"path",
"screenshot",
"created_at",
"updated_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "Comment id."
},
"comment_number": {
"type": [
"integer",
"null"
],
"description": "Sequential number of the comment within its parent (shown as #42 in Huddlekit)."
},
"text": {
"type": "string",
"description": "The comment text as written."
},
"status": {
"type": [
"string",
"null"
],
"enum": [
"open",
"in-review",
"in-progress",
"resolved",
null
],
"description": "Workflow status: `open`, `in-review`, `in-progress` or `resolved`."
},
"priority": {
"type": [
"string",
"null"
],
"enum": [
"Low",
"Medium",
"Critical",
null
],
"description": "Priority set in Huddlekit, or null when none is set."
},
"resolved": {
"type": [
"boolean",
"null"
],
"description": "Whether the comment is resolved."
},
"is_private": {
"type": "boolean",
"description": "Whether the comment is hidden from guests."
},
"path": {
"type": [
"string",
"null"
],
"description": "Page path on the website, relative to the project's URL."
},
"screenshot": {
"type": [
"string",
"null"
],
"description": "Screenshot of the page, or null if none has been captured."
},
"created_at": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "When the comment was created."
},
"updated_at": {
"type": [
"string",
"null"
],
"format": "date-time",
"description": "When the comment was last updated."
}
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/huddlekit-list-comments-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.