add-watermark-to-pdf
Purpose
This skill adds a text watermark to one or multiple PDFs by:
- accepting one or multiple PDF files from the user,
- accepting a watermark text string,
- uploading them to the Solutions API,
- polling the job status until it is finished,
- returning download URL(s) for the resulting file(s). If multiple PDFs are processed, the output may include multiple PDFs and/or a ZIP for download.
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 watermark job:
POST /api/61multipart/form-dataparameters:files— required — multiple PDF files (multiple_files)text— required — string (watermark text)
Get result by ID:
GET /api/<ID>
When done, the response contains:
output.files[]with{ name, path }wherepathis a downloadable URL (PDFs and/or ZIP).
Inputs
Required
- One or more PDF files (binary)
- Watermark text (
text, string) - API key (string)
Optional
- None
Output
Return a structured result:
job_id(number)status(string)outputs(array) containing{ name, path }for each output file- Convenience fields:
download_url(string) if exactly one output existsdownload_urls(array of strings) for all outputs
input_files(array of strings)watermark_text(string) — returned only if safe; do not return if user considers it sensitive
Example output:
{
"job_id": 6101,
"status": "done",
"outputs": [
{ "name": "watermarked.pdf", "path": "https://.../watermarked.pdf" }
],
"download_url": "https://.../watermarked.pdf",
"download_urls": ["https://.../watermarked.pdf"],
"input_files": ["input.pdf"]
}