application · active
Bytes
Media and asset management surface for uploads, organization, review, and sharing.
Documentation map
- Topolo Bytes — Public overview of the media-management and sharing surface built around Cloudflare edge storage and media tooling.
Authority and runtime
- System ID
topolo-bytes- App IDs
- app_topolo_bytes
- Owners
- media-platform
- Repositories
- apps/TopoloBytes
- Hosts
- https://bytes.topolo.app, https://bytes-api.topolo.app, https://bytes.stg.topolo.us, https://bytes-api.stg.topolo.us
- Dependencies
- topolo-auth, applications-packages
Security and data ownership
- Risk tier
- high
- Tenant isolation
- organization_scoped
- Privacy classification
- restricted
- Storage
- external_provider, kv, r2
- Export and deletion
- planned
- Enterprise ready
- no
Source-derived capability inventory
Source revisions: apps/TopoloBytes@a91022036b05b981e179e035971d2c85a4d04f7e
Declared actions: 30 · API routes: 42 · UI routes: 0
{
"id": "topolo-bytes",
"name": "Bytes",
"slug": "topolo-bytes",
"kind": "application",
"visibility": "public",
"repo_paths": [
"apps/TopoloBytes"
],
"source_revisions": [
{
"source_path": "apps/TopoloBytes",
"repository": "apps/TopoloBytes",
"revision": "a91022036b05b981e179e035971d2c85a4d04f7e",
"ref": "origin/staging"
}
],
"source_counts": {
"source_files": 222,
"test_files": 88,
"test_cases": 0,
"migration_files": 0,
"database_tables": 0,
"manifests": 1,
"deploy_targets": 2,
"actions": 30,
"mobile_contracts": 1,
"notifications": 6,
"package_manifests": 4,
"deployment_configs": 0
},
"manifests": [
{
"source_path": "apps/TopoloBytes/topolo.app.json",
"service_slug": "topolo-bytes",
"name": "topolo-bytes",
"app_id": "app_topolo_bytes",
"compatibility_date": "2026-04-10",
"primary_target": null,
"environments": [
"production",
"staging"
],
"targets": [
{
"name": "web",
"kind": "worker",
"directory": "apps/web",
"main": "src/worker.ts",
"worker_name": "topolo-bytes",
"subdomain": "bytes",
"healthcheck_path": null,
"variable_names": [
"AUTH_API_URL",
"INSIGHTS_SITE_KEY"
],
"secret_names": [],
"bindings": [
{
"kind": "services",
"binding": "API",
"target": null
}
]
},
{
"name": "api",
"kind": "worker",
"directory": "apps/api",
"main": "src/index.ts",
"worker_name": "topolo-bytes-api",
"subdomain": null,
"healthcheck_path": "/health",
"variable_names": [
"AUTH_BASE_URL",
"BYTES_QUOTA_BYTES",
"BYTES_QUOTA_WARNING_PERCENT",
"ENVIRONMENT",
"NEXUS_GATEWAY_URL",
"R2_BUCKET_NAME",
"TOPOLO_NOTIFY_URL"
],
"secret_names": [],
"bindings": [
{
"kind": "r2",
"binding": "BYTES_BUCKET",
"target": null
},
{
"kind": "kv",
"binding": "SHARE_LINKS",
"target": null
},
{
"kind": "vectorize",
"binding": "VEC",
"target": null
},
{
"kind": "vectorize",
"binding": "VEC",
"target": null
}
]
}
],
"notifications": [
"bytes.processing.failed",
"bytes.quota.warning",
"bytes.share.created",
"bytes.share.expiring",
"bytes.upload.completed",
"bytes.upload.failed"
],
"notification_contract": {
"source_path": "topolo.notification-contracts.json",
"role": "producer",
"schema_version": 1,
"owner_app_id": "app_topolo_bytes",
"events": [
{
"type": "bytes.processing.failed",
"version": 1,
"description": "A durable Bytes media-processing attempt failed and was persisted for retry and review.",
"status": "published",
"payloadSchema": {
"type": "object",
"required": [
"title",
"body",
"object_id",
"file_key",
"stage",
"reason",
"occurred_at"
],
"properties": {
"title": {
"type": "string",
"minLength": 1
},
"body": {
"type": "string",
"minLength": 1
},
"object_id": {
"type": "string",
"minLength": 1
},
"file_key": {
"type": "string",
"minLength": 1
},
"stage": {
"type": "string",
"minLength": 1
},
"reason": {
"type": "string",
"minLength": 1
},
"occurred_at": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"examples": [
{
"title": "File processing failed",
"body": "launch-video.mp4 could not complete video processing.",
"object_id": "failure_123",
"file_key": "launch-video.mp4",
"stage": "video_processing",
"reason": "Stream processing rejected the file",
"occurred_at": "2026-07-20T00:00:00.000Z"
}
],
"dataClassification": "internal",
"recipients": {
"modes": [
"organization_member"
],
"externalAddress": "forbidden"
},
"idempotency": {
"required": true,
"pattern": "^bytes:processing-failed:"
},
"sensitiveFields": []
},
{
"type": "bytes.quota.warning",
"version": 1,
"description": "A Bytes workspace crossed its configured storage quota warning threshold.",
"status": "published",
"payloadSchema": {
"type": "object",
"required": [
"title",
"body",
"object_id",
"used_bytes",
"quota_bytes",
"warning_percent",
"occurred_at"
],
"properties": {
"title": {
"type": "string",
"minLength": 1
},
"body": {
"type": "string",
"minLength": 1
},
"object_id": {
"type": "string",
"minLength": 1
},
"used_bytes": {
"type": "integer",
"minimum": 0
},
"quota_bytes": {
"type": "integer",
"minimum": 1
},
"warning_percent": {
"type": "number",
"minimum": 1,
"maximum": 100
},
"occurred_at": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"examples": [
{
"title": "Bytes storage quota warning",
"body": "Storage usage has reached 80% of the workspace quota.",
"object_id": "workspace_123",
"used_bytes": 85899345920,
"quota_bytes": 107374182400,
"warning_percent": 80,
"occurred_at": "2026-07-20T00:00:00.000Z"
}
],
"dataClassification": "internal",
"recipients": {
"modes": [
"organization_member"
],
"externalAddress": "forbidden"
},
"idempotency": {
"required": true,
"pattern": "^bytes:quota-warning:"
},
"sensitiveFields": []
},
{
"type": "bytes.share.created",
"version": 1,
"description": "A file share link was created.",
"status": "published",
"payloadSchema": {
"type": "object",
"required": [
"title",
"body",
"object_id",
"occurred_at"
],
"properties": {
"title": {
"type": "string",
"minLength": 1
},
"body": {
"type": "string",
"minLength": 1
},
"surface": {
"enum": [
"notification",
"action"
]
},
"action_kind": {
"enum": [
"open",
"review",
"approve",
"resolve",
"complete"
]
},
"action_status": {
"type": "string"
},
"priority": {
"enum": [
"low",
"normal",
"high",
"urgent"
]
},
"cta_url": {
"type": "string",
"format": "uri"
},
"cta_label": {
"type": "string"
},
"category": {
"type": "string"
},
"severity": {
"enum": [
"info",
"success",
"warning",
"critical"
]
},
"object_type": {
"type": "string"
},
"object_id": {
"type": "string",
"minLength": 1
},
"occurred_at": {
"type": "string",
"format": "date-time"
},
"actor_id": {
"type": "string"
},
"actor_display_name": {
"type": "string"
},
"recipient_email": {
"type": "string",
"format": "email"
},
"thread_key": {
"type": "string"
},
"expires_at": {
"type": "string",
"format": "date-time"
},
"action_context": {
"type": "object"
}
},
"additionalProperties": true
},
"examples": [
{
"title": "A file share link was created.",
"body": "Open the owning app to review this event.",
"object_id": "object_123",
"occurred_at": "2026-07-17T00:00:00.000Z"
}
],
"dataClassification": "internal",
"recipients": {
"modes": [
"organization_member"
],
"externalAddress": "forbidden"
},
"idempotency": {
"required": true,
"pattern": "^bytes:share-created:"
},
"sensitiveFields": []
},
{
"type": "bytes.share.expiring",
"version": 1,
"description": "A persisted Bytes share entered its final 24-hour availability window.",
"status": "published",
"payloadSchema": {
"type": "object",
"required": [
"title",
"body",
"object_id",
"expires_at",
"occurred_at"
],
"properties": {
"title": {
"type": "string",
"minLength": 1
},
"body": {
"type": "string",
"minLength": 1
},
"object_id": {
"type": "string",
"minLength": 1
},
"expires_at": {
"type": "string",
"format": "date-time"
},
"occurred_at": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"examples": [
{
"title": "Bytes share expiring soon",
"body": "Your Bytes share expires at 2026-07-21T00:00:00.000Z.",
"object_id": "share_123",
"expires_at": "2026-07-21T00:00:00.000Z",
"occurred_at": "2026-07-20T00:00:00.000Z"
}
],
"dataClassification": "internal",
"recipients": {
"modes": [
"organization_member"
],
"externalAddress": "forbidden"
},
"idempotency": {
"required": true,
"pattern": "^bytes:share-expiring:"
},
"sensitiveFields": []
},
{
"type": "bytes.upload.completed",
"version": 1,
"description": "A direct or multipart upload was durably committed to the workspace bucket.",
"status": "published",
"payloadSchema": {
"type": "object",
"required": [
"title",
"body",
"object_id",
"file_key",
"etag",
"size_bytes",
"occurred_at"
],
"properties": {
"title": {
"type": "string",
"minLength": 1
},
"body": {
"type": "string",
"minLength": 1
},
"object_id": {
"type": "string",
"minLength": 1
},
"file_key": {
"type": "string",
"minLength": 1
},
"etag": {
"type": "string",
"minLength": 1
},
"size_bytes": {
"type": [
"integer",
"null"
],
"minimum": 0
},
"occurred_at": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"examples": [
{
"title": "Upload completed",
"body": "launch-video.mp4 is ready in Bytes.",
"object_id": "organizations/org_123/workspaces/workspace_123/launch-video.mp4",
"file_key": "launch-video.mp4",
"etag": "etag_123",
"size_bytes": 4096,
"occurred_at": "2026-07-20T00:00:00.000Z"
}
],
"dataClassification": "internal",
"recipients": {
"modes": [
"organization_member"
],
"externalAddress": "forbidden"
},
"idempotency": {
"required": true,
"pattern": "^bytes:upload-completed:"
},
"sensitiveFields": []
},
{
"type": "bytes.upload.failed",
"version": 1,
"description": "A failed direct or multipart upload attempt was durably recorded for retry and review.",
"status": "published",
"payloadSchema": {
"type": "object",
"required": [
"title",
"body",
"object_id",
"file_key",
"reason",
"occurred_at"
],
"properties": {
"title": {
"type": "string",
"minLength": 1
},
"body": {
"type": "string",
"minLength": 1
},
"object_id": {
"type": "string",
"minLength": 1
},
"file_key": {
"type": "string",
"minLength": 1
},
"reason": {
"type": "string",
"minLength": 1
},
"occurred_at": {
"type": "string",
"format": "date-time"
}
},
"additionalProperties": false
},
"examples": [
{
"title": "Upload failed",
"body": "launch-video.mp4 could not be uploaded.",
"object_id": "failure_123",
"file_key": "launch-video.mp4",
"reason": "R2 rejected the upload",
"occurred_at": "2026-07-20T00:00:00.000Z"
}
],
"dataClassification": "internal",
"recipients": {
"modes": [
"organization_member"
],
"externalAddress": "forbidden"
},
"idempotency": {
"required": true,
"pattern": "^bytes:upload-failed:"
},
"sensitiveFields": []
}
]
},
"actions": [
{
"name": "widget.get",
"title": "Get widget summary",
"description": "Get the TopoloOne widget summary for this service.",
"method": "GET",
"path": "/api/widget",
"permission": "files:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
},
"outputSchema": {
"type": "object",
"additionalProperties": true
},
"target": "api",
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/widget",
"body": null
},
"effects": "Reads state through GET /api/widget without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/widget",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.list",
"title": "List files",
"description": "List files and folders.",
"method": "GET",
"path": "/api/list",
"permission": "files:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"prefix": {
"type": "string"
},
"cursor": {
"type": "string"
},
"fileType": {
"type": "string"
},
"sizeMin": {
"type": "string"
},
"sizeMax": {
"type": "string"
},
"dateFrom": {
"type": "string"
},
"dateTo": {
"type": "string"
},
"durationMin": {
"type": "string"
},
"durationMax": {
"type": "string"
},
"search": {
"type": "string"
},
"sortBy": {
"type": "string"
},
"sortOrder": {
"type": "string"
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by List files.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {
"prefix": "example",
"cursor": "example",
"fileType": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/list",
"body": null
},
"effects": "Reads state through GET /api/list without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/list",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.search",
"title": "Search files",
"description": "Search files by metadata or content.",
"method": "GET",
"path": "/api/search",
"permission": "files:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"prefix": {
"type": "string"
},
"cursor": {
"type": "string"
},
"fileType": {
"type": "string"
},
"sizeMin": {
"type": "string"
},
"sizeMax": {
"type": "string"
},
"dateFrom": {
"type": "string"
},
"dateTo": {
"type": "string"
},
"durationMin": {
"type": "string"
},
"durationMax": {
"type": "string"
},
"search": {
"type": "string"
},
"sortBy": {
"type": "string"
},
"sortOrder": {
"type": "string"
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 9007199254740991
}
},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Search files.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {
"prefix": "example",
"cursor": "example",
"fileType": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/search",
"body": null
},
"effects": "Reads state through GET /api/search without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/search",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.upload_url.create",
"title": "Create upload URL",
"description": "Create a signed upload URL for a file.",
"method": "POST",
"path": "/api/upload-url",
"permission": "files:write",
"readOnly": false,
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"type": {
"type": "string",
"minLength": 1
},
"size": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 104857600
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"key",
"type",
"size"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Create upload URL.",
"additionalProperties": true
},
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"agentContract": {
"upload": {
"profile": "url-session",
"fileNameField": "key",
"contentTypeField": "type",
"sizeField": "size",
"maxBytes": 104857600,
"acceptedContentTypes": [
"*/*"
],
"uploadUrlPath": "url",
"uploadMethod": "PUT"
}
},
"documentation": {
"example_input": {
"key": "example",
"type": "example",
"size": 1
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/upload-url",
"body": {
"key": "example",
"type": "example",
"size": 1
}
},
"effects": "May change state through POST /api/upload-url. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/upload-url",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.rename",
"title": "Rename file",
"description": "Rename a file.",
"method": "POST",
"path": "/api/rename",
"permission": "files:write",
"readOnly": false,
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"oldKey": {
"type": "string",
"minLength": 1
},
"newKey": {
"type": "string",
"minLength": 1
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"oldKey",
"newKey"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Rename file.",
"additionalProperties": true
},
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"oldKey": "example",
"newKey": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/rename",
"body": {
"oldKey": "example",
"newKey": "example"
}
},
"effects": "May change state through POST /api/rename. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/rename",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "shares.list",
"title": "List shares",
"description": "List file sharing links.",
"method": "GET",
"path": "/api/shares",
"permission": "sharing:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"cursor": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 200
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by List shares.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {
"cursor": "example",
"limit": 1,
"scope": "org"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/shares",
"body": null
},
"effects": "Reads state through GET /api/shares without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/shares",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "shares.create",
"title": "Create share",
"description": "Create a sharing link.",
"method": "POST",
"path": "/api/shares/create",
"permission": "sharing:write",
"readOnly": false,
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"fileKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"permissions": {
"type": "string",
"enum": [
"view",
"download"
]
},
"shareType": {
"type": "string",
"enum": [
"single",
"multiple",
"zip"
]
},
"password": {
"type": "string"
},
"expirationDays": {
"type": "number"
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"fileKeys",
"permissions",
"shareType"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Create share.",
"additionalProperties": true
},
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"fileKeys": [
"example"
],
"permissions": "view",
"shareType": "single"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/shares/create",
"body": {
"fileKeys": [
"example"
],
"permissions": "view",
"shareType": "single"
}
},
"effects": "May change state through POST /api/shares/create. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/shares/create",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "bulk.organize",
"title": "Bulk organize files",
"description": "Run bulk file organization.",
"method": "POST",
"path": "/api/bulk/organize",
"permission": "pipelines:invoke",
"readOnly": false,
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"fileKeys": {
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"rules": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"by-date",
"by-type",
"by-size",
"custom"
]
},
"pattern": {
"type": "string"
},
"conditions": {
"type": "object",
"propertyNames": {
"type": "string"
},
"additionalProperties": {}
}
},
"required": [
"type"
],
"additionalProperties": false
},
"dryRun": {
"type": "boolean"
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"rules"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Bulk organize files.",
"additionalProperties": true
},
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"rules": {
"type": "by-date"
}
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/bulk/organize",
"body": {
"rules": {
"type": "by-date"
}
}
},
"effects": "May change state through POST /api/bulk/organize. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/bulk/organize",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "shares.refresh_session",
"title": "Shares Refresh Session",
"description": "Call POST /api/shares/refresh-session.",
"method": "POST",
"path": "/api/shares/refresh-session",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"shareId": {
"type": "string",
"minLength": 1
},
"fileKey": {
"type": "string",
"minLength": 1
}
},
"required": [
"shareId",
"fileKey"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Shares Refresh Session.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "public",
"documentation": {
"example_input": {
"shareId": "example",
"fileKey": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/shares/refresh-session",
"body": {
"shareId": "example",
"fileKey": "example"
}
},
"effects": "May change state through POST /api/shares/refresh-session. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/shares/refresh-session",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "shares.delete",
"title": "Shares Delete",
"description": "Call DELETE /api/shares/{shareId}.",
"method": "DELETE",
"path": "/api/shares/{shareId}",
"permission": "sharing:write",
"requiresConfirmation": true,
"destructive": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"shareId": {
"type": "string",
"minLength": 1
}
},
"required": [
"shareId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Shares Delete.",
"additionalProperties": true
},
"readOnly": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"shareId": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/shares/example",
"body": null
},
"effects": "May change state through DELETE /api/shares/{shareId}. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/shares/*",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "desktop.releases.latest",
"title": "Desktop Releases Latest",
"description": "Call GET /api/desktop/releases/latest.",
"method": "GET",
"path": "/api/desktop/releases/latest",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Desktop Releases Latest.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "public",
"documentation": {
"example_input": {},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/desktop/releases/latest",
"body": null
},
"effects": "Reads state through GET /api/desktop/releases/latest without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/desktop/releases/latest",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "desktop.download",
"title": "Desktop Download",
"description": "Call GET /api/desktop/download.",
"method": "GET",
"path": "/api/desktop/download",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
}
},
"required": [
"key"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Desktop Download.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "public",
"documentation": {
"example_input": {
"key": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/desktop/download",
"body": null
},
"effects": "Reads state through GET /api/desktop/download without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/desktop/download",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "uploads.multipart.create",
"title": "Uploads Multipart Create",
"description": "Call POST /api/multipart/create.",
"method": "POST",
"path": "/api/multipart/create",
"permission": "files:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"contentType": {
"type": "string"
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"key"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Uploads Multipart Create.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"key": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/multipart/create",
"body": {
"key": "example"
}
},
"effects": "May change state through POST /api/multipart/create. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/multipart/create",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "uploads.multipart.sign",
"title": "Uploads Multipart Sign",
"description": "Call POST /api/multipart/sign.",
"method": "POST",
"path": "/api/multipart/sign",
"permission": "files:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"uploadId": {
"type": "string",
"minLength": 1
},
"partNumbers": {
"minItems": 1,
"type": "array",
"items": {
"type": "integer",
"minimum": 1,
"maximum": 10000
}
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"key",
"uploadId",
"partNumbers"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Uploads Multipart Sign.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"key": "example",
"uploadId": "example",
"partNumbers": [
1
]
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/multipart/sign",
"body": {
"key": "example",
"uploadId": "example",
"partNumbers": [
1
]
}
},
"effects": "May change state through POST /api/multipart/sign. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/multipart/sign",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "uploads.multipart.complete",
"title": "Uploads Multipart Complete",
"description": "Call POST /api/multipart/complete.",
"method": "POST",
"path": "/api/multipart/complete",
"permission": "files:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"uploadId": {
"type": "string",
"minLength": 1
},
"parts": {
"minItems": 1,
"type": "array",
"items": {
"type": "object",
"properties": {
"partNumber": {
"type": "integer",
"minimum": 1,
"maximum": 10000
},
"etag": {
"type": "string",
"minLength": 1
}
},
"required": [
"partNumber",
"etag"
],
"additionalProperties": false
}
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"key",
"uploadId",
"parts"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Uploads Multipart Complete.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"key": "example",
"uploadId": "example",
"parts": [
{
"partNumber": 1,
"etag": "example"
}
]
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/multipart/complete",
"body": {
"key": "example",
"uploadId": "example",
"parts": [
{
"partNumber": 1,
"etag": "example"
}
]
}
},
"effects": "May change state through POST /api/multipart/complete. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/multipart/complete",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "uploads.multipart.abort",
"title": "Uploads Multipart Abort",
"description": "Call POST /api/multipart/abort.",
"method": "POST",
"path": "/api/multipart/abort",
"permission": "files:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"uploadId": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"key",
"uploadId"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Uploads Multipart Abort.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"key": "example",
"uploadId": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/multipart/abort",
"body": {
"key": "example",
"uploadId": "example"
}
},
"effects": "May change state through POST /api/multipart/abort. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/multipart/abort",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.delete_route",
"title": "Files Delete Route",
"description": "Call DELETE /api/delete.",
"method": "DELETE",
"path": "/api/delete",
"permission": "files:delete",
"requiresConfirmation": true,
"destructive": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"files": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"files"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Files Delete Route.",
"additionalProperties": true
},
"readOnly": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"files": [
"example"
]
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/delete",
"body": null
},
"effects": "May change state through DELETE /api/delete. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/delete",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.bulk_rename",
"title": "Files Bulk Rename",
"description": "Call POST /api/bulk/rename.",
"method": "POST",
"path": "/api/bulk/rename",
"permission": "files:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"fileKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"pattern": {
"type": "string",
"minLength": 1
},
"options": {
"type": "object",
"properties": {
"startIndex": {
"type": "integer",
"minimum": -9007199254740991,
"maximum": 9007199254740991
},
"findText": {
"type": "string"
},
"replaceText": {
"type": "string"
},
"addTimestamp": {
"type": "boolean"
},
"preserveExtension": {
"type": "boolean"
}
},
"additionalProperties": false
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"fileKeys",
"pattern"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Files Bulk Rename.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"fileKeys": [
"example"
],
"pattern": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/bulk/rename",
"body": {
"fileKeys": [
"example"
],
"pattern": "example"
}
},
"effects": "May change state through POST /api/bulk/rename. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/bulk/rename",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "folders.create_alt",
"title": "Folders Create Alt",
"description": "Call POST /api/folders/create.",
"method": "POST",
"path": "/api/folders/create",
"permission": "folders:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"folderPath": {
"type": "string",
"minLength": 1
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"folderPath"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Folders Create Alt.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"folderPath": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/folders/create",
"body": {
"folderPath": "example"
}
},
"effects": "May change state through POST /api/folders/create. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/folders/create",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "folder.rename_alt",
"title": "Folder Rename Alt",
"description": "Call PUT /api/folder/rename.",
"method": "PUT",
"path": "/api/folder/rename",
"permission": "folders:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"oldPath": {
"type": "string",
"minLength": 1
},
"newPath": {
"type": "string",
"minLength": 1
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"oldPath",
"newPath"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Folder Rename Alt.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"oldPath": "example",
"newPath": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "PUT",
"path": "/api/folder/rename",
"body": {
"oldPath": "example",
"newPath": "example"
}
},
"effects": "May change state through PUT /api/folder/rename. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "PUT /api/folder/rename",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "folder.delete_alt",
"title": "Folder Delete Alt",
"description": "Call DELETE /api/folder/delete.",
"method": "DELETE",
"path": "/api/folder/delete",
"permission": "files:delete",
"requiresConfirmation": true,
"destructive": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"query": {
"type": "object",
"properties": {
"folderPath": {
"type": "string",
"minLength": 1
},
"force": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "string",
"enum": [
"true",
"false"
]
}
]
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"folderPath"
],
"additionalProperties": false
}
},
"required": [
"query"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Folder Delete Alt.",
"additionalProperties": true
},
"readOnly": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"query": {
"folderPath": "example"
}
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/folder/delete",
"body": null
},
"effects": "May change state through DELETE /api/folder/delete. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/folder/delete",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "folder.info.get",
"title": "Folder Info Get",
"description": "Call GET /api/folder/info.",
"method": "GET",
"path": "/api/folder/info",
"permission": "folders:read",
"readOnly": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"folderPath": {
"type": "string"
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Folder Info Get.",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"authorizationMode": "static",
"documentation": {
"example_input": {
"folderPath": "example",
"bucket": "example",
"scope": "org"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/folder/info",
"body": null
},
"effects": "Reads state through GET /api/folder/info without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/folder/info",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.move",
"title": "Files Move",
"description": "Call POST /api/files/move.",
"method": "POST",
"path": "/api/files/move",
"permission": "files:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"fileKeys": {
"minItems": 1,
"type": "array",
"items": {
"type": "string",
"minLength": 1
}
},
"targetFolder": {
"type": "string"
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"fileKeys",
"targetFolder"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Files Move.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"fileKeys": [
"example"
],
"targetFolder": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/files/move",
"body": {
"fileKeys": [
"example"
],
"targetFolder": "example"
}
},
"effects": "May change state through POST /api/files/move. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/files/move",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.update",
"title": "Files Update",
"description": "Call PUT /api/file/update.",
"method": "PUT",
"path": "/api/file/update",
"permission": "files:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"content": {
"type": "string"
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"key",
"content"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Files Update.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"key": "example",
"content": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "PUT",
"path": "/api/file/update",
"body": {
"key": "example",
"content": "example"
}
},
"effects": "May change state through PUT /api/file/update. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "PUT /api/file/update",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "files.content.update",
"title": "Files Content Update",
"description": "Call PUT /api/file-content.",
"method": "PUT",
"path": "/api/file-content",
"permission": "files:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"content": {
"type": "string"
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"key",
"content"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Files Content Update.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"key": "example",
"content": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "PUT",
"path": "/api/file-content",
"body": {
"key": "example",
"content": "example"
}
},
"effects": "May change state through PUT /api/file-content. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "PUT /api/file-content",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "download.signed_url.create",
"title": "Download Signed Url Create",
"description": "Call POST /api/download/signed-url.",
"method": "POST",
"path": "/api/download/signed-url",
"permission": "files:read",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
},
"expirationMinutes": {
"type": "number"
},
"downloadFilename": {
"type": "string"
}
},
"required": [
"key"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Download Signed Url Create.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"key": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/download/signed-url",
"body": {
"key": "example"
}
},
"effects": "May change state through POST /api/download/signed-url. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/download/signed-url",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "video.mark_range_incompatible",
"title": "Video Mark Range Incompatible",
"description": "Call POST /api/video/mark-range-incompatible.",
"method": "POST",
"path": "/api/video/mark-range-incompatible",
"permission": "media:write",
"requiresConfirmation": true,
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"key": {
"type": "string",
"minLength": 1
},
"bucket": {
"type": "string",
"minLength": 1
},
"scope": {
"type": "string",
"enum": [
"org",
"private",
"all"
]
}
},
"required": [
"key"
],
"additionalProperties": false
},
"target": "api",
"outputSchema": {
"type": "object",
"description": "Response returned by Video Mark Range Incompatible.",
"additionalProperties": true
},
"readOnly": false,
"destructive": false,
"agentAccess": "confirm",
"authorizationMode": "static",
"documentation": {
"example_input": {
"key": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "POST",
"path": "/api/video/mark-range-incompatible",
"body": {
"key": "example"
}
},
"effects": "May change state through POST /api/video/mark-range-incompatible. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "POST /api/video/mark-range-incompatible",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "workspaces.delete",
"title": "Delete workspace",
"description": "Delete a non-default empty Bytes storage workspace.",
"readOnly": false,
"outputSchema": {
"type": "object",
"additionalProperties": true
},
"destructive": true,
"requiresConfirmation": true,
"agentAccess": "confirm",
"method": "DELETE",
"path": "/api/workspaces/{workspaceId}",
"permission": "workspace:delete",
"authorizationMode": "static",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"minLength": 1
}
},
"required": [
"workspaceId"
],
"additionalProperties": false
},
"target": "api",
"documentation": {
"example_input": {
"workspaceId": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/workspaces/example",
"body": null
},
"effects": "May change state through DELETE /api/workspaces/{workspaceId}. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/workspaces/*",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "workspaces.data.export",
"title": "Export workspace data",
"description": "Export a portable inventory of files and redacted share-link metadata for a Bytes workspace.",
"readOnly": true,
"outputSchema": {
"type": "object",
"additionalProperties": true
},
"destructive": false,
"requiresConfirmation": false,
"agentAccess": "auto",
"method": "GET",
"path": "/api/workspaces/{workspaceId}/export",
"permission": "storage:read",
"authorizationMode": "static",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"minLength": 1
}
},
"required": [
"workspaceId"
],
"additionalProperties": false
},
"target": "api",
"documentation": {
"example_input": {
"workspaceId": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --json"
],
"http_example": {
"method": "GET",
"path": "/api/workspaces/example/export",
"body": null
},
"effects": "Reads state through GET /api/workspaces/{workspaceId}/export without a declared mutation.",
"verification": [
"Check the structured action result and pagination or resource identifiers before using it downstream."
],
"recovery": [
"Correct identity, resource context, permission, or input validation failures, then retry the read."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "GET /api/workspaces/*/export",
"evidence": "Matched to a served route extracted from canonical staging source."
}
},
{
"name": "workspaces.data.erase",
"title": "Erase workspace data",
"description": "Permanently erase files, semantic vectors, and share links owned by a Bytes workspace.",
"readOnly": false,
"outputSchema": {
"type": "object",
"additionalProperties": true
},
"destructive": true,
"requiresConfirmation": true,
"agentAccess": "confirm",
"method": "DELETE",
"path": "/api/workspaces/{workspaceId}/data",
"permission": "workspace:delete",
"authorizationMode": "static",
"inputSchema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"properties": {
"workspaceId": {
"type": "string",
"minLength": 1
}
},
"required": [
"workspaceId"
],
"additionalProperties": false
},
"target": "api",
"documentation": {
"example_input": {
"workspaceId": "example"
},
"cli_example": [
"topolo actions --service topolo-bytes --json",
"topolo actions get <action-id> --json",
"topolo actions validate <action-id> --data @payload.json --json",
"topolo actions plan <action-id> --data @payload.json --json",
"topolo actions call <action-id> --data @payload.json --confirm --json"
],
"http_example": {
"method": "DELETE",
"path": "/api/workspaces/example/data",
"body": null
},
"effects": "May change state through DELETE /api/workspaces/{workspaceId}/data. Inspect the plan and honor the published confirmation policy.",
"verification": [
"Check the structured action result.",
"Read the affected resource back through the corresponding get or list action."
],
"recovery": [
"Do not retry an ambiguous mutation until a read confirms whether it applied.",
"Use a published inverse, update, archive, or delete action only after inspecting its contract."
],
"docs_url": null,
"resource": null,
"next_action_ids": [],
"rollback_action_id": null
},
"implementation": {
"status": "implemented",
"route_key": "DELETE /api/workspaces/*/data",
"evidence": "Matched to a served route extracted from canonical staging source."
}
}
],
"action_coverage": {
"status": "ok",
"served_routes": 41,
"matched_actions": 30,
"declared_unserved_actions": [],
"coverage_excluded_actions": [],
"uncatalogued_routes": [],
"ignored_routes": 11,
"configured_exclusions": 10,
"configuration_findings": [],
"notes": []
},
"runtime_contract_audit": {
"status": "verified",
"actions": 30,
"contracts": 30,
"contract_module": "topolo.action-contracts.mjs",
"validator_sources": [
"apps/api/src/index.ts"
],
"authorization_sources": [
"apps/api/src/index.ts"
],
"findings": []
}
}
],
"mobile_contracts": [
{
"source_path": "apps/TopoloBytes/topolo.mobile-experience.json",
"contract": {
"version": "1.0.0",
"status": "published",
"mode": "native_capability",
"appId": "app_topolo_bytes",
"localizationNamespace": "bytes",
"permissions": [
"files:read",
"sharing:read"
],
"offlinePolicy": "read_through_cache",
"fallbackPath": "/files",
"auth": {
"audience": "topolo-bytes",
"scopes": [
"files:read",
"sharing:read"
]
},
"routes": [
{
"path": "/files",
"apiPath": "/api/list",
"title": "Files",
"titleKey": "bytes.mobile.routes.files.title",
"template": "record.list",
"dataSource": "bytes.files.list"
},
{
"path": "/shares",
"apiPath": "/api/shares",
"title": "Shares",
"titleKey": "bytes.mobile.routes.shares.title",
"template": "record.list",
"dataSource": "bytes.shares.list"
}
]
}
}
],
"package_manifests": [],
"deployment_configs": [],
"source_signals": {
"api_routes": [
{
"method": "OPTIONS",
"path": "*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/health",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "ALL",
"path": "/share/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/shares",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/shares/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/shares/refresh-session",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "ALL",
"path": "/api/signed-download",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "ALL",
"path": "/api/signed-download/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/desktop/releases/latest",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/desktop/download",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/desktop/update/:target/:arch/:current",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/widget",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "DELETE",
"path": "/api/workspaces/:workspaceId",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/workspaces/:workspaceId/export",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "DELETE",
"path": "/api/workspaces/:workspaceId/data",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "PUT",
"path": "/api/upload/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/upload-url",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/multipart/create",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/multipart/sign",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/multipart/complete",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/multipart/abort",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/list",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/search",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "ALL",
"path": "/api/thumbnail/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "DELETE",
"path": "/api/delete",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/rename",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/bulk/rename",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/bulk/organize",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/folders/create",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "PUT",
"path": "/api/folder/rename",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "DELETE",
"path": "/api/folder/delete",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "GET",
"path": "/api/folder/info",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/files/move",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "PUT",
"path": "/api/file/update",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "PUT",
"path": "/api/file-content",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/shares/create",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "DELETE",
"path": "/api/shares/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "ALL",
"path": "/share-download/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "ALL",
"path": "/public-download/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "ALL",
"path": "/download/*",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/download/signed-url",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
},
{
"method": "POST",
"path": "/api/video/mark-range-incompatible",
"source_path": "apps/TopoloBytes/apps/api/src/index.ts"
}
],
"ui_routes": [],
"test_cases": [],
"database_tables": []
},
"documentation": {
"declared_paths": [
"internal/apps/bytes",
"applications/bytes"
],
"present_paths": [
"internal/apps/bytes",
"applications/bytes"
],
"missing_paths": [],
"human_reference": "/systems/topolo-bytes",
"machine_reference": "/machine/systems/topolo-bytes.json",
"action_examples": 30,
"action_schemas": 30
},
"source_findings": []
}