360 Secure SkillHub
360 安全技能中心

Make PDF safe

将 PDF 上传到 Solutions API 创建扁平化作业,轮询作业状态,完成后返回安全 PDF 的下载链接和结构化结果;需要用户提供 API key,处理依赖外部网络与脚本执行。

crossservicesolutions
crossservicesolutions
热度 90.74
最近更新 2026-05-11 15:54:52
分类:安全依赖:第三方 API / 读写文件 / 代码执行应用场景:文件转换 / 数据处理 / API 集成 / 自动化脚本 ...

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add make-pdf-safe
Metadata
name
make-pdf-safe
description
Flatten a PDF into a non-interactive “safe” version by uploading it to the Solutions API, polling until completion, then returning a download URL for the flattened PDF.
license
MIT
compatibility
{"agentskills":">=0.1.0"}
metadata
{"category":"document-security","tags":["pdf","flatten","sanitize","security","cross-service-solutions"],"provider":"Cross-Service-Solutions (Solutions API)"}
allowed-tools
["http","files"]

make-pdf-safe

Purpose

This skill creates a “safe” PDF by converting the document into a single flattened layer without active functionality. The goal is to reduce risk from interactive PDF features.

In practical terms, the output PDF is intended to:

  • remove or neutralize interactive elements (e.g., scripts/actions),
  • prevent editing of underlying objects/content structure,
  • behave like a flattened document layer (similar to a “print” representation).

This skill:

  1. accepts a PDF file from the user,
  2. uploads it to the Solutions API,
  3. polls the job status until it is finished,
  4. returns the download URL for the “safe” flattened PDF.

Credentials

The API requires an API key used as a Bearer token:

  • Authorization: Bearer <API_KEY>

How the user gets an API key:

Rule: never echo or log the API key.

API endpoints

Base URL:

  • https://api.xss-cross-service-solutions.com/solutions/solutions

Create make-safe job:

  • POST /api/41
  • multipart/form-data parameters:
    • file — required — PDF file

Get result by ID:

  • GET /api/<ID>

When done, the response contains:

  • output.files[] with { name, path } where path is a downloadable URL.

Inputs

Required

  • PDF file (binary)
  • API key (string)

Optional

  • None

Output

Return a structured result:

  • job_id (number)
  • status (string)
  • download_url (string, when done)
  • file_name (string, when available)

Example output:

{
  "job_id": 4101,
  "status": "done",
  "download_url": "https://.../safe.pdf",
  "file_name": "safe.pdf"
}