Capabilities
read_document
Read the authorized native document and current ETag.
How this capability is exposed
- Stable ID
ursy.cloud:read_document- 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:read_document",
"name": "read_document",
"description": "Read the authorized native document and current ETag.",
"method": "GET",
"path": "/v1/documents/{file_id}",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"file_id": {
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
}
},
"required": [
"file_id"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": true,
"properties": {
"file": {
"type": "object",
"additionalProperties": false,
"properties": {
"schema": {
"type": "string",
"enum": [
"ursy.cloud/file/v1"
]
},
"id": {
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
"workspace_id": {
"type": "string",
"pattern": "^ws_[1-9][0-9]*$"
},
"parent_id": {
"oneOf": [
{
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
{
"type": "null"
}
]
},
"name": {
"type": "string",
"maxLength": 190,
"x-ursy-maxBytes": 190
},
"type": {
"type": "string",
"enum": [
"folder",
"document",
"spreadsheet",
"presentation",
"note",
"publication",
"pdf",
"uploaded_file"
]
},
"current_version_id": {
"oneOf": [
{
"type": "string",
"pattern": "^ver_[1-9][0-9]*$"
},
{
"type": "null"
}
]
},
"etag": {
"type": "string",
"pattern": "^\"[a-f0-9]{64}\"$"
},
"state": {
"type": "string",
"enum": [
"active",
"trashed"
]
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
},
"human_url": {
"type": "string"
}
},
"required": [
"schema",
"id",
"workspace_id",
"parent_id",
"name",
"type",
"current_version_id",
"etag",
"state",
"created_at",
"updated_at",
"human_url"
]
},
"content": {
"type": "object",
"additionalProperties": false,
"properties": {
"kind": {
"type": "string",
"enum": [
"docs"
]
},
"blocks": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": "string",
"pattern": "^[A-Za-z0-9_-]{1,64}$"
},
"type": {
"type": "string",
"enum": [
"paragraph",
"heading1",
"heading2",
"bullet",
"number",
"quote",
"divider",
"table"
]
},
"segments": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"text": {
"type": "string",
"maxLength": 10000,
"x-ursy-maxBytes": 10000
},
"bold": {
"type": "boolean"
},
"italic": {
"type": "boolean"
},
"underline": {
"type": "boolean"
},
"link": {
"type": "string",
"maxLength": 2048,
"pattern": "^(https?://|mailto:)"
}
},
"required": [
"text"
]
},
"minItems": 0,
"maxItems": 100
},
"rows": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"text": {
"type": "string",
"maxLength": 10000,
"x-ursy-maxBytes": 10000
},
"bold": {
"type": "boolean"
},
"italic": {
"type": "boolean"
},
"underline": {
"type": "boolean"
},
"link": {
"type": "string",
"maxLength": 2048,
"pattern": "^(https?://|mailto:)"
}
},
"required": [
"text"
]
},
"minItems": 0,
"maxItems": 100
},
"minItems": 1,
"maxItems": 26
},
"minItems": 1,
"maxItems": 100
}
},
"required": [
"type",
"segments"
],
"description": "IDs are stable and unique. A divider has no segments. Table rows require an empty segments array; each cell is a segment list. Combined text is limited to 750000 bytes."
},
"minItems": 1,
"maxItems": 200
},
"settings": {
"type": "object",
"additionalProperties": false,
"properties": {
"page": {
"type": "string",
"enum": [
"A4",
"Letter"
]
},
"reading": {
"type": "string",
"enum": [
"paged",
"continuous"
]
}
},
"required": [
"page",
"reading"
]
},
"annotations": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {
"block": {
"type": "integer",
"minimum": 0,
"maximum": 199
},
"text": {
"type": "string",
"maxLength": 500,
"x-ursy-maxBytes": 500
}
},
"required": [
"block",
"text"
]
},
"minItems": 0,
"maxItems": 100
}
},
"required": [
"kind",
"blocks"
]
},
"content_is_untrusted": {
"type": "boolean"
},
"request_id": {
"type": "string"
},
"replayed": {
"type": "boolean"
}
},
"required": [
"file",
"content",
"content_is_untrusted"
]
},
"auth_required": true,
"scope": "cloud.documents.read",
"read_only": true,
"service_id": "ursy-cloud",
"parent_id": "",
"summary": "Read the authorized native document and current ETag.",
"source_url": "https://api.ursy.cloud/v1/registry-capabilities",
"source_type": "capability_manifest",
"verified_at": "2026-10-14 03:02:26",
"revision": "a10aacedf4cebfb2fc8b327934aaa31034f7dfe26940d5e410167dd7c2b0e0ab",
"type": "capabilities",
"source": {
"url": "https://api.ursy.cloud/v1/registry-capabilities",
"type": "capability_manifest"
},
"last_verified_at": "2026-10-14 03:02:26",
"stale": false
}