{
  "schemaVersion": "1.0",
  "item": {
    "slug": "laiye-doc-processing",
    "name": "laiye-doc-processing",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Jeane-li/laiye-doc-processing",
    "canonicalUrl": "https://clawhub.ai/Jeane-li/laiye-doc-processing",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/laiye-doc-processing",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=laiye-doc-processing",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "package.json",
      "README.md",
      "SKILL.md",
      "_meta.json"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "slug": "laiye-doc-processing",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-12T05:38:56.308Z",
      "expiresAt": "2026-05-19T05:38:56.308Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=laiye-doc-processing",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=laiye-doc-processing",
        "contentDisposition": "attachment; filename=\"laiye-doc-processing-1.10.3.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "laiye-doc-processing"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/laiye-doc-processing"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/laiye-doc-processing",
    "agentPageUrl": "https://openagent3.xyz/skills/laiye-doc-processing/agent",
    "manifestUrl": "https://openagent3.xyz/skills/laiye-doc-processing/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/laiye-doc-processing/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Laiye Agentic Document Processing (ADP)",
        "body": "Agentic Document Processing API — convert 10+ file formats (.jpeg, .jpg, .png, .bmp, .tiff, .pdf, .doc, .docx, .xls, .xlsx) to structured JSON/Excel with per-field confidence scores using VLM and LLM.\n\nBase URL: https://adp-global.laiye.com/?utm_source=clawhub"
      },
      {
        "title": "Quick Start",
        "body": "curl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"$ADP_APP_KEY\",\n    \"app_secret\": \"$ADP_APP_SECRET\",\n    \"file_url\": \"https://example.com/invoice.pdf\"\n  }'\n\nResponse:\n\n{\n  \"status\": \"success\",\n  \"extraction_result\": [\n    {\n      \"field_key\": \"invoice_number\",\n      \"field_value\": \"INV-2024-001\",\n      \"field_type\": \"text\",\n      \"confidence\": 0.95,\n      \"source_pages\": [1]\n    },\n    {\n      \"field_key\": \"total_amount\",\n      \"field_value\": \"1000.00\",\n      \"field_type\": \"number\",\n      \"confidence\": 0.98,\n      \"source_pages\": [1]\n    }\n  ]\n}"
      },
      {
        "title": "1. Get Your API Credentials",
        "body": "# Contact ADP service provider to obtain:\n# - app_key: Application access key\n# - app_secret: Application secret key\n# - X-Access-Key: Tenant-level access key\n\nSave your credentials:\n\nexport ADP_ACCESS_KEY=\"your_access_key_here\"\nexport ADP_APP_KEY=\"your_app_key_here\"\nexport ADP_APP_SECRET=\"your_app_secret_here\""
      },
      {
        "title": "2. Configuration (Optional)",
        "body": "Recommended: Use environment variables (most secure):\n\n{\n  skills: {\n    entries: {\n      \"adp-doc-extraction\": {\n        enabled: true,\n        // API credentials loaded from environment variables\n      },\n    },\n  },\n}\n\nSecurity Note:\n\nSet file permissions: chmod 600 ~/.openclaw/openclaw.json\nNever commit this file to version control\nPrefer environment variables or secret stores\nRotate credentials regularly"
      },
      {
        "title": "Extract from File URL",
        "body": "curl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"'\"$ADP_APP_KEY\"'\",\n    \"app_secret\": \"'\"$ADP_APP_SECRET\"'\",\n    \"file_url\": \"https://example.com/document.pdf\"\n  }'"
      },
      {
        "title": "Extract from Base64",
        "body": "# Convert file to base64\nfile_base64=$(base64 -i document.pdf | tr -d '\\n')\n\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d \"{\n    \\\"app_key\\\": \\\"$ADP_APP_KEY\\\",\n    \\\"app_secret\\\": \\\"$ADP_APP_SECRET\\\",\n    \\\"file_base64\\\": \\\"$file_base64\\\",\n    \\\"file_name\\\": \\\"document.pdf\\\"\n  }\""
      },
      {
        "title": "Extract with VLM Results",
        "body": "curl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"'\"$ADP_APP_KEY\"'\",\n    \"app_secret\": \"'\"$ADP_APP_SECRET\"'\",\n    \"file_url\": \"https://example.com/document.pdf\",\n    \"with_rec_result\": true\n  }'\n\nAccess VLM results: response[\"doc_recognize_result\"]"
      },
      {
        "title": "Async Extraction (Large Documents)",
        "body": "Create extraction task:\n\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract/create/task\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"'\"$ADP_APP_KEY\"'\",\n    \"app_secret\": \"'\"$ADP_APP_SECRET\"'\",\n    \"file_url\": \"https://example.com/large-document.pdf\"\n  }'\n\n# Returns: {\"task_id\": \"task_id_value\", \"metadata\": {...}}\n\nPoll for results:\n\ncurl -X GET \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract/query/task/{task_id}\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\""
      },
      {
        "title": "Custom Scale Parameter",
        "body": "Enhance VLM quality with higher resolution:\n\n# model_params: { \"scale\": 2.0 }"
      },
      {
        "title": "Specify Config Version",
        "body": "Use a specific extraction configuration:\n\n# model_params: { \"version_id\": \"config_version_id\" }"
      },
      {
        "title": "Document Recognition Only",
        "body": "Get VLM results without extraction:\n\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/recognize\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"'\"$ADP_APP_KEY\"'\",\n    \"app_secret\": \"'\"$ADP_APP_SECRET\"'\",\n    \"file_url\": \"https://example.com/document.pdf\"\n  }'"
      },
      {
        "title": "Use ADP For:",
        "body": "Invoice processing\nOrder processing\nReceipt processing\nFinancial document processing\nLogistics document processing\nMulti-table document data extraction"
      },
      {
        "title": "Don't Use For:",
        "body": "Video transcription\naudio transcription"
      },
      {
        "title": "Best Practices",
        "body": "Document SizeEndpointNotesSmall files/doc/extract (sync)Immediate responseLarge files/doc/extract/create/task (async)Poll for results\n\nFile Input:\n\nfile_url: Prefer for large files (already hosted)\nfile_base64: Use for direct upload (max 20MB)\n\nConfidence Scores:\n\nRange: 0-1 per field\nReview fields with confidence <0.8 manually\n\nResponse Structure:\n\nextraction_result: Array of extracted fields\ndoc_recognize_result: VLM results (when with_rec_result=true)\nmetadata: Processing info (pages, time, model)"
      },
      {
        "title": "Success Response",
        "body": "{\n  \"status\": \"success\",\n  \"message\": \"string\",\n  \"extraction_result\": [\n    {\n      \"field_key\": \"string\",\n      \"field_value\": \"string\",\n      \"field_type\": \"text|number|date|table\",\n      \"confidence\": 0.95,\n      \"source_pages\": [1],\n      \"table_data\": [...]  // for field_type=\"table\"\n    }\n  ],\n  \"doc_recognize_result\": [...],  // when with_rec_result=true\n  \"extract_config_version\": \"string\",\n  \"metadata\": {\n    \"total_pages\": 5,\n    \"processing_time\": 8.2,\n    \"model_used\": \"gpt-4o\"\n  }\n}"
      },
      {
        "title": "Error Response",
        "body": "{\n  \"detail\": \"Error message description\"\n}"
      },
      {
        "title": "Invoice/Receipt Extraction",
        "body": "Extracts: invoice_number, invoice_date, vendor/customer_name, currency, vat_rate, total_amount_including_tax, total_amount_excluding_tax, line_items, etc."
      },
      {
        "title": "Purchase Order Extraction",
        "body": "Extracts: order_number, order_date, buyer_name/seller_name, address, total_amount, line_items, etc."
      },
      {
        "title": "Data Handling",
        "body": "Important: Documents uploaded to ADP are transmitted to https://adp-global.laiye.com/?utm_source=clawhub and processed on external servers.\n\nBefore uploading sensitive documents:\n\nReview ADP privacy policy and data retention policies\nVerify encryption in transit (HTTPS) and at rest\nConfirm data deletion/retention timelines\nTest with non-sensitive sample documents first\n\nBest practices:\n\nDo not upload highly sensitive PII until you've confirmed security posture\nUse credentials with limited permissions if available\nRotate credentials regularly (every 90 days recommended)\nMonitor API usage logs for unauthorized access\nNever log or commit credentials to repositories"
      },
      {
        "title": "File Size Limits",
        "body": "Max file size: 50MB\nSupported formats: .jpeg, .jpg, .png, .bmp, .tiff, .pdf, .doc, .docx, .xls, .xlsx\nConcurrency limit: Free users support 1 concurrent request, paid users support 2 concurrent requests\nTimeout: 10 minutes for sync requests"
      },
      {
        "title": "Operational Safeguards",
        "body": "Always use environment variables or secure secret stores for credentials\nNever include real credentials in code examples or documentation\nUse placeholder values like \"your_access_key_here\" in examples\nSet appropriate file permissions on configuration files (600)\nEnable credential rotation and monitor usage"
      },
      {
        "title": "Billing",
        "body": "Processing StageCostDocument Parsing0.5 credits/pagePurchase Order Extraction1.5 credits/pageInvoice/Receipt Extraction1.5 credits/pageCustom Extraction1 credit/page\n\nNew users: 100 free credits per month, no application restrictions."
      },
      {
        "title": "Troubleshooting",
        "body": "Error CodeDescriptionCommon Causes & Solutions400 Bad RequestInvalid request parameters• Missing app_key or app_secret<br>• Must provide exactly one input: file_url or file_base64<br>• Application has no published extraction config401 UnauthorizedAuthentication failed• Invalid X-Access-Key<br>• Incorrect timestamp format (use Unix timestamp)<br>• Invalid signature format (must be UUID)404 Not FoundResource not found• Application does not exist<br>• No published extraction config found for the application500 Internal Server ErrorServer-side processing error• Document conversion failed<br>• VLM recognition timeout<br>• LLM extraction failureSync TimeoutRequest processing timed out• Large files should use async endpoint<br>• Poll /query/task/{task_id} for results"
      },
      {
        "title": "Pre-Publish Security Checklist",
        "body": "Before publishing or updating this skill, verify:\n\npackage.json declares requiredEnv and primaryEnv for credentials\n package.json lists API endpoints in endpoints array\n All code examples use placeholder values not real credentials\n No credentials or secrets are embedded in SKILL.md or package.json\n Security & Privacy section documents data handling and risks\n Configuration examples include security warnings for plaintext storage\n File permission guidance is included for config files"
      },
      {
        "title": "References",
        "body": "ADP Product Manual: ADP Product Manual (SaaS)\nADP API Documentation: Open API User Guide"
      }
    ],
    "body": "Laiye Agentic Document Processing (ADP)\n\nAgentic Document Processing API — convert 10+ file formats (.jpeg, .jpg, .png, .bmp, .tiff, .pdf, .doc, .docx, .xls, .xlsx) to structured JSON/Excel with per-field confidence scores using VLM and LLM.\n\nBase URL: https://adp-global.laiye.com/?utm_source=clawhub\n\nQuick Start\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"$ADP_APP_KEY\",\n    \"app_secret\": \"$ADP_APP_SECRET\",\n    \"file_url\": \"https://example.com/invoice.pdf\"\n  }'\n\n\nResponse:\n\n{\n  \"status\": \"success\",\n  \"extraction_result\": [\n    {\n      \"field_key\": \"invoice_number\",\n      \"field_value\": \"INV-2024-001\",\n      \"field_type\": \"text\",\n      \"confidence\": 0.95,\n      \"source_pages\": [1]\n    },\n    {\n      \"field_key\": \"total_amount\",\n      \"field_value\": \"1000.00\",\n      \"field_type\": \"number\",\n      \"confidence\": 0.98,\n      \"source_pages\": [1]\n    }\n  ]\n}\n\nSetup\n1. Get Your API Credentials\n# Contact ADP service provider to obtain:\n# - app_key: Application access key\n# - app_secret: Application secret key\n# - X-Access-Key: Tenant-level access key\n\n\nSave your credentials:\n\nexport ADP_ACCESS_KEY=\"your_access_key_here\"\nexport ADP_APP_KEY=\"your_app_key_here\"\nexport ADP_APP_SECRET=\"your_app_secret_here\"\n\n2. Configuration (Optional)\n\nRecommended: Use environment variables (most secure):\n\n{\n  skills: {\n    entries: {\n      \"adp-doc-extraction\": {\n        enabled: true,\n        // API credentials loaded from environment variables\n      },\n    },\n  },\n}\n\n\nSecurity Note:\n\nSet file permissions: chmod 600 ~/.openclaw/openclaw.json\nNever commit this file to version control\nPrefer environment variables or secret stores\nRotate credentials regularly\nCommon Tasks\nExtract from File URL\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"'\"$ADP_APP_KEY\"'\",\n    \"app_secret\": \"'\"$ADP_APP_SECRET\"'\",\n    \"file_url\": \"https://example.com/document.pdf\"\n  }'\n\nExtract from Base64\n# Convert file to base64\nfile_base64=$(base64 -i document.pdf | tr -d '\\n')\n\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d \"{\n    \\\"app_key\\\": \\\"$ADP_APP_KEY\\\",\n    \\\"app_secret\\\": \\\"$ADP_APP_SECRET\\\",\n    \\\"file_base64\\\": \\\"$file_base64\\\",\n    \\\"file_name\\\": \\\"document.pdf\\\"\n  }\"\n\nExtract with VLM Results\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"'\"$ADP_APP_KEY\"'\",\n    \"app_secret\": \"'\"$ADP_APP_SECRET\"'\",\n    \"file_url\": \"https://example.com/document.pdf\",\n    \"with_rec_result\": true\n  }'\n\n\nAccess VLM results: response[\"doc_recognize_result\"]\n\nAsync Extraction (Large Documents)\n\nCreate extraction task:\n\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract/create/task\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"'\"$ADP_APP_KEY\"'\",\n    \"app_secret\": \"'\"$ADP_APP_SECRET\"'\",\n    \"file_url\": \"https://example.com/large-document.pdf\"\n  }'\n\n# Returns: {\"task_id\": \"task_id_value\", \"metadata\": {...}}\n\n\nPoll for results:\n\ncurl -X GET \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/extract/query/task/{task_id}\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\"\n\nAdvanced Features\nCustom Scale Parameter\n\nEnhance VLM quality with higher resolution:\n\n# model_params: { \"scale\": 2.0 }\n\nSpecify Config Version\n\nUse a specific extraction configuration:\n\n# model_params: { \"version_id\": \"config_version_id\" }\n\nDocument Recognition Only\n\nGet VLM results without extraction:\n\ncurl -X POST \"https://adp-global.laiye.com/open/agentic_doc_processor/laiye/v1/app/doc/recognize\" \\\n  -H \"Content-Type: application/json\" \\\n  -H \"X-Access-Key: $ADP_ACCESS_KEY\" \\\n  -H \"X-Timestamp: $(date +%s)\" \\\n  -H \"X-Signature: $(uuidgen)\" \\\n  -d '{\n    \"app_key\": \"'\"$ADP_APP_KEY\"'\",\n    \"app_secret\": \"'\"$ADP_APP_SECRET\"'\",\n    \"file_url\": \"https://example.com/document.pdf\"\n  }'\n\nWhen to Use\nUse ADP For:\nInvoice processing\nOrder processing\nReceipt processing\nFinancial document processing\nLogistics document processing\nMulti-table document data extraction\nDon't Use For:\nVideo transcription\naudio transcription\nBest Practices\nDocument Size\tEndpoint\tNotes\nSmall files\t/doc/extract (sync)\tImmediate response\nLarge files\t/doc/extract/create/task (async)\tPoll for results\n\nFile Input:\n\nfile_url: Prefer for large files (already hosted)\nfile_base64: Use for direct upload (max 20MB)\n\nConfidence Scores:\n\nRange: 0-1 per field\nReview fields with confidence <0.8 manually\n\nResponse Structure:\n\nextraction_result: Array of extracted fields\ndoc_recognize_result: VLM results (when with_rec_result=true)\nmetadata: Processing info (pages, time, model)\nResponse Schema\nSuccess Response\n{\n  \"status\": \"success\",\n  \"message\": \"string\",\n  \"extraction_result\": [\n    {\n      \"field_key\": \"string\",\n      \"field_value\": \"string\",\n      \"field_type\": \"text|number|date|table\",\n      \"confidence\": 0.95,\n      \"source_pages\": [1],\n      \"table_data\": [...]  // for field_type=\"table\"\n    }\n  ],\n  \"doc_recognize_result\": [...],  // when with_rec_result=true\n  \"extract_config_version\": \"string\",\n  \"metadata\": {\n    \"total_pages\": 5,\n    \"processing_time\": 8.2,\n    \"model_used\": \"gpt-4o\"\n  }\n}\n\nError Response\n{\n  \"detail\": \"Error message description\"\n}\n\nCommon Use Cases\nInvoice/Receipt Extraction\n\nExtracts: invoice_number, invoice_date, vendor/customer_name, currency, vat_rate, total_amount_including_tax, total_amount_excluding_tax, line_items, etc.\n\nPurchase Order Extraction\n\nExtracts: order_number, order_date, buyer_name/seller_name, address, total_amount, line_items, etc.\n\nSecurity & Privacy\nData Handling\n\nImportant: Documents uploaded to ADP are transmitted to https://adp-global.laiye.com/?utm_source=clawhub and processed on external servers.\n\nBefore uploading sensitive documents:\n\nReview ADP privacy policy and data retention policies\nVerify encryption in transit (HTTPS) and at rest\nConfirm data deletion/retention timelines\nTest with non-sensitive sample documents first\n\nBest practices:\n\nDo not upload highly sensitive PII until you've confirmed security posture\nUse credentials with limited permissions if available\nRotate credentials regularly (every 90 days recommended)\nMonitor API usage logs for unauthorized access\nNever log or commit credentials to repositories\nFile Size Limits\nMax file size: 50MB\nSupported formats: .jpeg, .jpg, .png, .bmp, .tiff, .pdf, .doc, .docx, .xls, .xlsx\nConcurrency limit: Free users support 1 concurrent request, paid users support 2 concurrent requests\nTimeout: 10 minutes for sync requests\nOperational Safeguards\nAlways use environment variables or secure secret stores for credentials\nNever include real credentials in code examples or documentation\nUse placeholder values like \"your_access_key_here\" in examples\nSet appropriate file permissions on configuration files (600)\nEnable credential rotation and monitor usage\nBilling\nProcessing Stage\tCost\nDocument Parsing\t0.5 credits/page\nPurchase Order Extraction\t1.5 credits/page\nInvoice/Receipt Extraction\t1.5 credits/page\nCustom Extraction\t1 credit/page\n\nNew users: 100 free credits per month, no application restrictions.\n\nTroubleshooting\nError Code\tDescription\tCommon Causes & Solutions\n400 Bad Request\tInvalid request parameters\t• Missing app_key or app_secret<br>• Must provide exactly one input: file_url or file_base64<br>• Application has no published extraction config\n401 Unauthorized\tAuthentication failed\t• Invalid X-Access-Key<br>• Incorrect timestamp format (use Unix timestamp)<br>• Invalid signature format (must be UUID)\n404 Not Found\tResource not found\t• Application does not exist<br>• No published extraction config found for the application\n500 Internal Server Error\tServer-side processing error\t• Document conversion failed<br>• VLM recognition timeout<br>• LLM extraction failure\nSync Timeout\tRequest processing timed out\t• Large files should use async endpoint<br>• Poll /query/task/{task_id} for results\nPre-Publish Security Checklist\n\nBefore publishing or updating this skill, verify:\n\n package.json declares requiredEnv and primaryEnv for credentials\n package.json lists API endpoints in endpoints array\n All code examples use placeholder values not real credentials\n No credentials or secrets are embedded in SKILL.md or package.json\n Security & Privacy section documents data handling and risks\n Configuration examples include security warnings for plaintext storage\n File permission guidance is included for config files\nReferences\nADP Product Manual: ADP Product Manual (SaaS)\nADP API Documentation: Open API User Guide"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Jeane-li/laiye-doc-processing",
    "publisherUrl": "https://clawhub.ai/Jeane-li/laiye-doc-processing",
    "owner": "Jeane-li",
    "version": "1.3.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/laiye-doc-processing",
    "downloadUrl": "https://openagent3.xyz/downloads/laiye-doc-processing",
    "agentUrl": "https://openagent3.xyz/skills/laiye-doc-processing/agent",
    "manifestUrl": "https://openagent3.xyz/skills/laiye-doc-processing/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/laiye-doc-processing/agent.md"
  }
}