make-pdf-safe
// 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.
$ git log --oneline --stat
stars:1,933
forks:367
updated:March 4, 2026
SKILL.mdreadonly
SKILL.md Frontmatter
namemake-pdf-safe
descriptionFlatten 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.
licenseMIT
compatibility[object Object]
metadata[object Object]
allowed-toolshttp,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:
- accepts a PDF file from the user,
- uploads it to the Solutions API,
- polls the job status until it is finished,
- 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:
- https://login.cross-service-solutions.com/register
- Or the user can provide an API key directly.
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/41multipart/form-dataparameters:file— required — PDF file
Get result by ID:
GET /api/<ID>
When done, the response contains:
output.files[]with{ name, path }wherepathis 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"
}