← Back to Skills Marketplace
crossservicesolutions

Convert to PDF

cross-platform ⚠ suspicious
1446
Downloads
0
Stars
1
Active Installs
1
Versions
Install in OpenClaw
/install convert-to-pdf
Description
Convert one or multiple documents to PDF by uploading them to Cross-Service-Solutions, polling until completion, then returning download URL(s) for the converted PDF(s) (or a ZIP if multiple).
README (SKILL.md)

\r \r

convert-to-pdf\r

\r

Purpose\r

This skill converts one or multiple documents to PDF by:\r

  1. accepting one or multiple input files from the user,\r
  2. uploading them to the Solutions API convert endpoint,\r
  3. polling the job status until it is finished,\r
  4. returning download URL(s) for the resulting file(s).\r If multiple files are converted, the output may contain multiple PDFs and/or a ZIP for download.\r \r

Credentials\r

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

API endpoints\r

Base URL:\r

  • https://api.xss-cross-service-solutions.com/solutions/solutions\r \r Create convert job:\r
  • POST /api/31\r
  • multipart/form-data parameters:\r
    • files (Dokument) — required — multiple files (multiple_files)\r
      • You can convert multiple files and different types into multiple PDFs.\r
      • Multiple files can be downloadable as a zip-file.\r \r Get result by ID:\r
  • GET /api/\x3CID>\r \r When done, the response contains:\r
  • output.files[] with { name, path } where path is a downloadable URL (PDFs and/or ZIP).\r \r

Inputs\r

Required\r

  • One or more input files (binary)\r
  • An API key (string)\r \r

Optional\r

  • None\r \r

Output\r

Return a structured result:\r

  • job_id (number)\r
  • status (string)\r
  • outputs (array) containing { name, path } for each output file\r
  • Convenience fields:\r
    • download_url (string) if exactly one output exists\r
    • download_urls (array of strings) for all outputs\r
  • input_files (array of strings)\r \r Example output:\r
{\r
  "job_id": 789,\r
  "status": "done",\r
  "outputs": [\r
    { "name": "file1.pdf", "path": "https://.../file1.pdf" },\r
    { "name": "file2.pdf", "path": "https://.../file2.pdf" },\r
    { "name": "converted.zip", "path": "https://.../converted.zip" }\r
  ],\r
  "download_urls": [\r
    "https://.../file1.pdf",\r
    "https://.../file2.pdf",\r
    "https://.../converted.zip"\r
  ],\r
  "input_files": ["file1.docx", "file2.pptx"]\r
}\r
Usage Guidance
Before installing: (1) Understand that this skill uploads your files to a third-party service (https://api.xss-cross-service-solutions.com); do not send sensitive documents unless you trust the provider and have reviewed their privacy/TOS. (2) The skill requires an API key but the registry metadata fails to declare it — expect to provide SOLUTIONS_API_KEY or pass --api-key. (3) Verify the service hostname and owner; the package has no homepage and an unfamiliar owner ID, so confirm the provider is legitimate (the 'xss' substring in the domain is unusual and worth verifying). (4) Test with non-sensitive files first and consider creating a throwaway API key scoped only for this purpose. (5) If you will run the included Python script, inspect it (it's small and readable) and run it in a sandbox or isolated environment; note it sends files and a Bearer token to the configured base URL. (6) If you need the skill to be auditable, ask the publisher to update registry metadata to declare the required env var and to provide a homepage or official docs/terms. If you cannot verify the provider or are uncomfortable uploading files, do not install/use the skill.
Capability Analysis
Type: OpenClaw Skill Name: convert-to-pdf Version: 1.0.0 The skill's purpose is to convert documents to PDF via the 'Cross-Service-Solutions' API. The `SKILL.md` and `README.md` clearly describe this functionality and do not contain any prompt injection attempts to mislead the agent. The Python script `scripts/convert-to-pdf.py` implements the described file upload and polling logic, using the specified API endpoints at `api.xss-cross-service-solutions.com`. It handles API keys securely by using them in Authorization headers and does not attempt to exfiltrate unrelated sensitive data or perform malicious execution. The `allowed-tools` (http, files) are necessary for its stated purpose, and the `requests` dependency is standard.
Capability Assessment
Purpose & Capability
Name/description match the code: the script uploads files to a 'Solutions' API, polls for completion, and returns download URLs. However, the registry metadata declares no required environment variables or primary credential while the SKILL.md and script clearly require an API key (SOLUTIONS_API_KEY or --api-key). That omission is an incoherence: a convert-to-pdf skill legitimately needs the service API key but the metadata doesn't advertise it.
Instruction Scope
SKILL.md and the script stay within the stated purpose: they request files from the user, upload them to the external API, poll job status, and return output URLs. The instructions explicitly require an API key and explicitly state not to echo it. The skill will transmit user files to a third party (the Solutions API), which is expected behavior for this functionality but is an important privacy consideration.
Install Mechanism
There is no install spec (instruction-only skill), so nothing arbitrary is downloaded or installed by an installer. A Python script is included in the bundle (requests dependency), which is normal for a CLI-style helper. Risk is limited to executing included code; no remote install of unknown binaries is present.
Credentials
The SKILL.md and script require an API key (SOLUTIONS_API_KEY or --api-key) and accept a base URL override, but the registry metadata lists no required env vars or primary credential. Asking for an API key is proportionate to the described purpose, but the metadata omission is misleading and increases risk (users may not realize they must provide a secret). The skill will transmit user files and the API key (as a Bearer token) to the configured host; ensure the key is not reused across unrelated services.
Persistence & Privilege
The skill does not request 'always: true' and does not modify other skills or global agent settings. It runs on invocation and does not demand persistent elevated privileges.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install convert-to-pdf
  3. After installation, invoke the skill by name or use /convert-to-pdf
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
- Initial release of the convert-to-pdf skill. - Convert one or multiple documents to PDF using Cross-Service-Solutions API. - Supports polling for job completion and returning download URLs for PDFs or ZIP files. - Requires user-provided API key for authentication.
Metadata
Slug convert-to-pdf
Version 1.0.0
License
All-time Installs 1
Active Installs 1
Total Versions 1
Frequently Asked Questions

What is Convert to PDF?

Convert one or multiple documents to PDF by uploading them to Cross-Service-Solutions, polling until completion, then returning download URL(s) for the converted PDF(s) (or a ZIP if multiple). It is an AI Agent Skill for Claude Code / OpenClaw, with 1446 downloads so far.

How do I install Convert to PDF?

Run "/install convert-to-pdf" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Convert to PDF free?

Yes, Convert to PDF is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Convert to PDF support?

Convert to PDF is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Convert to PDF?

It is built and maintained by CrossServiceSolutions (@crossservicesolutions); the current version is v1.0.0.

💬 Comments