Capabilities
create_share_plan
Propose one expiring share for the exact file version. Owner approval is always required.
How this capability is exposed
- Stable ID
ursy.cloud:create_share_plan- 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:create_share_plan",
"name": "create_share_plan",
"description": "Propose one expiring share for the exact file version. Owner approval is always required.",
"method": "POST",
"path": "/v1/files/{file_id}/share-plans",
"inputSchema": {
"type": "object",
"additionalProperties": false,
"properties": {
"file_id": {
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
"if_match": {
"type": "string",
"pattern": "^\"[0-9a-f]{64}\"$"
},
"mode": {
"type": "string",
"enum": [
"specific_person",
"link_view",
"link_comment",
"link_edit",
"public_view"
]
},
"recipient_sub": {
"type": "string",
"maxLength": 128,
"x-ursy-maxBytes": 128
},
"expires_in": {
"type": "integer",
"minimum": 300,
"maximum": 2592000
},
"idempotency_key": {
"type": "string",
"minLength": 8,
"maxLength": 128,
"pattern": "^[A-Za-z0-9._:-]+$"
}
},
"required": [
"file_id",
"if_match",
"mode",
"expires_in",
"idempotency_key"
]
},
"outputSchema": {
"type": "object",
"additionalProperties": true,
"properties": {
"plan": {
"type": "object",
"additionalProperties": false,
"properties": {
"id": {
"type": "string"
},
"file_id": {
"type": "string",
"pattern": "^file_[1-9][0-9]{0,14}$"
},
"mode": {
"type": "string"
},
"base_etag": {
"type": "string"
},
"expires_at": {
"type": "string"
},
"share_expires_at": {
"type": "string"
},
"requires_confirmation": {
"const": true
},
"approval_url": {
"type": "string"
},
"applied_share_id": {
"oneOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"required": [
"id",
"file_id",
"mode",
"base_etag",
"expires_at",
"share_expires_at",
"requires_confirmation",
"approval_url",
"applied_share_id"
]
}
},
"required": [
"plan"
]
},
"auth_required": true,
"scope": "cloud.share.plan",
"read_only": false,
"service_id": "ursy-cloud",
"parent_id": "",
"summary": "Propose one expiring share for the exact file version. Owner approval is always required.",
"source_url": "https://api.ursy.cloud/v1/registry-capabilities",
"source_type": "capability_manifest",
"verified_at": "2026-10-15 07:03:21",
"revision": "32b00902a1b39b25fd09bed55dd07ab3a185331b33cf27a5b01607f7f5643d70",
"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
}