Capabilities
add_comment
Comment without altering a file; a comment-only grant needs no edit scope.
How this capability is exposed
- Stable ID
ursy.cloud:add_comment- Owning service
- URSY.cloud
- Runtime
- See the source declaration
Capability declarations describe what the service exposes. They are not a guarantee of availability or permission to execute an operation.
Accepted contract
{
"id": "ursy.cloud:add_comment",
"name": "add_comment",
"description": "Comment without altering a file; a comment-only grant needs no edit scope.",
"method": "POST",
"path": "/v1/files/{file_id}/comments",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"file_id": {
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
"text": {
"type": "string",
"maxLength": 5000,
"x-ursy-maxBytes": 5000
},
"anchor": {
"type": "object",
"additionalProperties": false,
"properties": {
"block_id": {
"type": "string",
"maxLength": 64,
"x-ursy-maxBytes": 64
},
"slide_id": {
"type": "string",
"maxLength": 64,
"x-ursy-maxBytes": 64
},
"range": {
"type": "string",
"maxLength": 30,
"x-ursy-maxBytes": 30
}
}
},
"idempotency_key": {
"type": "string",
"minLength": 8,
"maxLength": 128,
"pattern": "^[A-Za-z0-9._:-]+$"
}
},
"required": [
"file_id",
"text",
"idempotency_key"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": true,
"properties": {
"comment": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": "string",
"pattern": "^cmt_[1-9][0-9]*$"
},
"file_id": {
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
"text": {
"type": "string",
"maxLength": 5000,
"x-ursy-maxBytes": 5000
},
"anchor": {
"type": "object",
"additionalProperties": false,
"properties": {
"block_id": {
"type": "string",
"maxLength": 64,
"x-ursy-maxBytes": 64
},
"slide_id": {
"type": "string",
"maxLength": 64,
"x-ursy-maxBytes": 64
},
"range": {
"type": "string",
"maxLength": 30,
"x-ursy-maxBytes": 30
}
}
},
"actor": {
"type": "object",
"additionalProperties": true
},
"status": {
"type": "string",
"enum": [
"open",
"resolved"
]
},
"etag": {
"type": "string",
"pattern": "^\"[a-f0-9]{64}\"$"
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"resolved_at": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"file_id",
"text",
"anchor",
"actor",
"status",
"etag",
"created_at",
"updated_at",
"resolved_at"
]
},
"content_is_untrusted": {
"const": true
},
"request_id": {
"type": "string"
},
"replayed": {
"type": "boolean"
}
},
"required": [
"comment",
"content_is_untrusted"
]
},
"auth_required": true,
"scope": "cloud.comments.write",
"read_only": false,
"service_id": "ursy-cloud",
"parent_id": "",
"summary": "Comment without altering a file; a comment-only grant needs no edit scope.",
"source_url": "https://api.ursy.cloud/v1/registry-capabilities",
"source_type": "capability_manifest",
"verified_at": "2026-10-15 07:03:21",
"revision": "56458c4db878c68bc8184fc53ca3c451658580d929b34fe63932bb3c48c22ef4",
"type": "capabilities",
"source": {
"url": "https://api.ursy.cloud/v1/registry-capabilities",
"type": "capability_manifest"
},
"last_verified_at": "2026-10-15 07:03:21",
"stale": false
}