2.6k
GitHub Stars
4
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill openclaw/skills --skill change-pdf-permissions- _meta.json314 B
- README.md1.7 KB
- requirements.txt16 B
- SKILL.md3.5 KB
Overview
This skill changes a PDF's permission flags (print, edit, copy, forms, annotations, etc.) by uploading the PDF to the Solutions API, polling the job until completion, and returning a download URL for the updated file. It accepts a PDF, required permission flags, and an API key and returns job metadata and the final download URL.
How this skill works
The skill uploads the provided PDF and permission flags as multipart/form-data to the Solutions API POST /api/75 endpoint using the user's API key as a Bearer token. It reads the returned job ID, polls GET /api/<ID> until the job status indicates completion or failure, and then extracts output.files[] to return the downloadable path and file name along with the job status and the permissions used.
When to use it
- Add or remove printing, editing, copying, form filling, or annotation rights on a PDF before distribution.
- Enforce document handling policies for archived or public documents.
- Prepare PDFs for sharing with external partners while restricting modification.
- Enable accessibility extraction while preventing general content extraction.
- Batch-process PDFs via automation that requires a downloadable modified file.
Best practices
- Never log or echo the API key; supply it only in the Authorization: Bearer <API_KEY> header.
- Use conservative default permissions when users don't specify flags (defaults recommended below).
- Validate that the input is a PDF and reject other file types before uploading.
- Implement exponential backoff when polling to avoid excessive requests.
- Check job status for failure and return clear error messages with any API error payload.
Example use cases
- A publisher locks editing and copying but allows high-quality printing for distribution copies.
- An archive service disables content extraction but allows accessibility extraction for screen readers.
- An HR team enables form filling while preventing assembly or modification of confidential PDFs.
- A compliance workflow enforces standardized permission settings on outgoing reports.
FAQ
An API key from the Solutions service is required. Send it as Authorization: Bearer <API_KEY> on every request and never expose it in logs or UI.
What will I receive when the job completes?
When done the API returns output.files[]; the skill returns job_id, status, download_url, file_name, and the permissions used to produce the file.