Properties
| Name | Type | Description |
|---|---|---|
| source | string | PDF source. Must be a valid URL or a base64 encoded PDF document. |
| image | string | Image source for watermark. |
| text | string | Text to use as watermark. |
| font_size | integer | Font size for text watermark (5-300). |
| font_family | string | Font family for text watermark. |
| font_color | string | Font color in hexadecimal (e.g. #000000 or 000000). |
| font_opacity | integer | Font opacity percentage (0-100). |
| font_bold | boolean | Bold font for text watermark. |
| font_italic | boolean | Italic font for text watermark. |
| offset_x | string | Horizontal offset: 'left', 'right', 'center', or value ending with px/in/cm/mm/pt. |
| offset_y | string | Vertical offset: 'top', 'bottom', 'middle', or value ending with px/in/cm/mm/pt. |
| rotate | integer | Rotation angle for watermark (-359 to 359). |
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"$id": "https://raw.githubusercontent.com/api-evangelist/pdfshift/refs/heads/main/json-schema/watermarkform.json",
"title": "WatermarkForm",
"type": "object",
"properties": {
"source": {
"type": "string",
"description": "PDF source. Must be a valid URL or a base64 encoded PDF document."
},
"image": {
"type": "string",
"description": "Image source for watermark."
},
"text": {
"type": "string",
"description": "Text to use as watermark."
},
"font_size": {
"type": "integer",
"minimum": 5,
"maximum": 300,
"default": 16,
"description": "Font size for text watermark (5-300)."
},
"font_family": {
"type": "string",
"enum": [
"Helvetica",
"Times",
"Courier"
],
"default": "Helvetica",
"description": "Font family for text watermark."
},
"font_color": {
"type": "string",
"pattern": "^#?[0-9a-fA-F]{3}([0-9a-fA-F]{3})?$",
"default": "000000",
"description": "Font color in hexadecimal (e.g. #000000 or 000000)."
},
"font_opacity": {
"type": "integer",
"minimum": 0,
"maximum": 100,
"default": 100,
"description": "Font opacity percentage (0-100)."
},
"font_bold": {
"type": "boolean",
"default": false,
"description": "Bold font for text watermark."
},
"font_italic": {
"type": "boolean",
"default": false,
"description": "Italic font for text watermark."
},
"offset_x": {
"type": "string",
"default": "center",
"description": "Horizontal offset: 'left', 'right', 'center', or value ending with px/in/cm/mm/pt."
},
"offset_y": {
"type": "string",
"default": "middle",
"description": "Vertical offset: 'top', 'bottom', 'middle', or value ending with px/in/cm/mm/pt."
},
"rotate": {
"type": "integer",
"minimum": -359,
"maximum": 359,
"default": -45,
"description": "Rotation angle for watermark (-359 to 359)."
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/watermarkform"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.