{"success":true,"schema_version":"1.0.0","request_id":"req_1b112ef9ce394b428ff22da6270eb211","timestamp":"2026-11-01T17:40:24.196Z","result":{"id":"F48","name":"redact_pdf","title":"真正内容脱敏","status":"available","phase":"P1","group":"security","description":"Remove content at caller-approved regions and verify residual extraction in the new copy. Do not use black rectangles, cropping or annotations as a substitute for content removal. Inputs: 1–1 immutable authorized files and the typed parameters below. Returns an asynchronous job, not the final PDF. Poll get_pdf_job, then read artifacts and the receipt. The operation creates stored outputs and may incur charges; specify a cost ceiling. 坐标方案先预览确认；处理文本/图像/隐藏层/增量历史；不能证明所有语义机密都已消除。","rest":{"method":"POST","path":"/api/v1/pdf/redact"},"required_scopes":["jobs:create","files:read","pdf:secure"],"engine":"container","rest_input_schema":{"type":"object","properties":{"file_ids":{"type":"array","description":"Ordered authorized immutable inputs","items":{"type":"string","description":"Authorized immutable file ID.","pattern":"^fil_[A-Za-z0-9_-]+$"},"minItems":1,"maxItems":1},"parameters":{"type":"object","properties":{"regions":{"type":"array","description":"Approved redaction regions","items":{"type":"object","properties":{"page_number":{"type":"integer","description":"One-based page","minimum":1},"x":{"type":"number","minimum":0},"y":{"type":"number","minimum":0},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0}},"required":["page_number","x","y","width","height"],"additionalProperties":false},"minItems":1,"maxItems":1000},"remove_metadata":{"type":"boolean","description":"Also remove supported metadata","default":true},"verification_terms":{"type":"array","description":"Terms to check for residual extraction; encrypted and short-lived","items":{"type":"string","description":"Term"},"minItems":0,"maxItems":100}},"required":["regions"],"additionalProperties":false},"execution":{"$ref":"#/components/schemas/Execution"},"client_task_id":{"type":"string","description":"Caller correlation, not an authorization token","maxLength":128}},"required":["file_ids","parameters","execution"],"additionalProperties":false},"input_schema":{"type":"object","properties":{"file_ids":{"type":"array","description":"Ordered authorized immutable inputs","items":{"type":"string","description":"Authorized immutable file ID.","pattern":"^fil_[A-Za-z0-9_-]+$"},"minItems":1,"maxItems":1},"parameters":{"type":"object","properties":{"regions":{"type":"array","description":"Approved redaction regions","items":{"type":"object","properties":{"page_number":{"type":"integer","description":"One-based page","minimum":1},"x":{"type":"number","minimum":0},"y":{"type":"number","minimum":0},"width":{"type":"number","exclusiveMinimum":0},"height":{"type":"number","exclusiveMinimum":0}},"required":["page_number","x","y","width","height"],"additionalProperties":false},"minItems":1,"maxItems":1000},"remove_metadata":{"type":"boolean","description":"Also remove supported metadata","default":true},"verification_terms":{"type":"array","description":"Terms to check for residual extraction; encrypted and short-lived","items":{"type":"string","description":"Term"},"minItems":0,"maxItems":100}},"required":["regions"],"additionalProperties":false},"execution":{"$ref":"#/components/schemas/Execution"},"client_task_id":{"type":"string","description":"Caller correlation, not an authorization token","maxLength":128},"idempotency_key":{"type":"string","description":"Required project/operation scoped deduplication key shared with REST Idempotency-Key","minLength":8,"maxLength":128}},"required":["file_ids","parameters","execution","idempotency_key"],"additionalProperties":false},"output_schema":{"type":"object","properties":{"success":{"const":true},"schema_version":{"const":"1.0.0"},"request_id":{"type":"string","description":"Request ID"},"timestamp":{"type":"string","description":"Server response time","format":"date-time"},"result":{"$ref":"#/components/schemas/Job"},"sources":{"type":"array","description":"Input provenance","items":{"$ref":"#/components/schemas/Source"},"minItems":0,"maxItems":100},"cache":{"type":"object","properties":{"hit":{"type":"boolean"},"age_seconds":{"type":"integer","description":"Cache age","minimum":0}},"required":["hit","age_seconds"],"additionalProperties":false},"next_actions":{"type":"array","description":"Non-executing suggestions","items":{"type":"object","properties":{"tool":{"type":"string","description":"Tool name"},"arguments":{"type":"object"},"reason":{"type":"string","description":"Reason"},"required_scopes":{"type":"array","description":"Scopes still enforced","items":{"type":"string","description":"Scope"},"minItems":0,"maxItems":20},"requires_confirmation":{"type":"boolean"}},"required":["tool","arguments","reason","required_scopes","requires_confirmation"],"additionalProperties":false},"minItems":0,"maxItems":10}},"required":["success","schema_version","request_id","timestamp","result","sources","next_actions"],"additionalProperties":false},"result_artifact_types":["redacted.pdf","redaction-verification.json"],"limits_and_semantics":"坐标方案先预览确认；处理文本/图像/隐藏层/增量历史；不能证明所有语义机密都已消除。","acceptance":"测试PDF含被遮挡text/scan/附件/历史；输出提取和对象扫描均无目标，原件独立保留。","mcp_annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false,"openWorldHint":false},"idempotency":"REST Idempotency-Key / MCP idempotency_key required; shared project/operation deduplication for at least 24h.","doc_url":"/api/v1/capabilities/redact_pdf","accepted_input_media_types":["application/pdf"],"accepted_file_states":["ready"],"availability_reason":"Cloudflare Container adapter enabled"},"sources":[],"cache":{"hit":false,"age_seconds":0},"next_actions":[]}