demo · Productivity & Work · JSON · API for agents
Load a PDF document into the editor by URL. The URL must point to a publicly accessible PDF file, or be a data URL.
{
"name": "load_document",
"kind": "action",
"impl": "imperative",
"description": "Load a PDF document into the editor by URL. The URL must point to a publicly accessible PDF file, or be a data URL.",
"inputSchema": {
"type": "object",
"properties": {
"data_url": {
"type": "string",
"description": "URL of the PDF document to load, or a data URL"
},
"name": {
"type": "string",
"description": "Display name for the document"
},
"page": {
"type": "number",
"description": "Initial page to navigate to (1-indexed)"
}
},
"required": [
"data_url"
]
}
}Automatically detect likely form fields in the current document and add them to the editor.
{
"name": "detect_fields",
"kind": "action",
"impl": "imperative",
"description": "Automatically detect likely form fields in the current document and add them to the editor.",
"inputSchema": {
"type": "object",
"properties": {
"debug_mode": {
"type": "boolean",
"description": "Whether to return debug data about the detection and resolution pipeline"
}
}
}
}Delete form fields from the document. Can target specific fields by ID, all fields on a page, or all fields in the document.
{
"name": "delete_fields",
"kind": "write",
"impl": "imperative",
"description": "Delete form fields from the document. Can target specific fields by ID, all fields on a page, or all fields in the document.",
"inputSchema": {
"type": "object",
"properties": {
"field_ids": {
"type": "array",
"items": {
"type": "string"
},
"description": "Specific field IDs to remove. Get IDs from get_fields. Omit to remove all fields."
},
"page": {
"type": "number",
"description": "Page number to remove fields from (1-indexed). Omit to remove from all pages."
}
}
}
}Focus a specific form field by its ID, scrolling it into view and selecting it for editing. Call get_fields first to discover valid field IDs, because fields can be added, removed, or changed by user actions.
{
"name": "focus_field",
"kind": "action",
"impl": "imperative",
"description": "Focus a specific form field by its ID, scrolling it into view and selecting it for editing. Call get_fields first to discover valid field IDs, because fields can be added, removed, or changed by user actions.",
"inputSchema": {
"type": "object",
"properties": {
"field_id": {
"type": "string",
"description": "The ID of the field to focus"
}
},
"required": [
"field_id"
]
}
}Get all form fields currently on the document, including IDs, types, positions, and values. Use this before any ID-based operation (focus_field, set_field_value, delete_fields by field_ids), and refresh when users may have edited the form.
{
"name": "get_fields",
"kind": "read",
"impl": "imperative",
"description": "Get all form fields currently on the document, including IDs, types, positions, and values. Use this before any ID-based operation (focus_field, set_field_value, delete_fields by field_ids), and refresh when users may have edited the form.",
"inputSchema": {
"type": "object",
"properties": {}
}
}Activate a specific editing tool in the editor toolbar. Pass null to deselect the current tool.
{
"name": "select_tool",
"kind": "action",
"impl": "imperative",
"description": "Activate a specific editing tool in the editor toolbar. Pass null to deselect the current tool.",
"inputSchema": {
"type": "object",
"properties": {
"tool": {
"type": [
"string",
"null"
],
"enum": [
"TEXT",
"BOXED_TEXT",
"CHECKBOX",
"PICTURE",
"SIGNATURE",
null
],
"description": "The tool to activate, or null to deselect"
}
},
"required": [
"tool"
]
}
}Navigate to a specific page in the PDF document.
{
"name": "go_to",
"kind": "action",
"impl": "imperative",
"description": "Navigate to a specific page in the PDF document.",
"inputSchema": {
"type": "object",
"properties": {
"page": {
"type": "number",
"description": "Page number to navigate to (1-indexed)"
}
},
"required": [
"page"
]
}
}Set a field value by field ID. Supports string values and null to clear the current value. Always call get_fields first to resolve field IDs, and refresh IDs before writing if user edits may have changed the form.
{
"name": "set_field_value",
"kind": "write",
"impl": "imperative",
"description": "Set a field value by field ID. Supports string values and null to clear the current value. Always call get_fields first to resolve field IDs, and refresh IDs before writing if user edits may have changed the form.",
"inputSchema": {
"type": "object",
"properties": {
"field_id": {
"type": "string",
"description": "The ID of the field to update (retrieve via get_fields)"
},
"value": {
"type": [
"string",
"null"
],
"description": "The field value to set, or null to clear"
}
},
"required": [
"field_id",
"value"
]
}
}Extract text content from the PDF document. Supports automatic text extraction or OCR for scanned documents.
{
"name": "get_document_content",
"kind": "read",
"impl": "imperative",
"description": "Extract text content from the PDF document. Supports automatic text extraction or OCR for scanned documents.",
"inputSchema": {
"type": "object",
"properties": {
"extraction_mode": {
"type": "string",
"enum": [
"auto",
"ocr"
],
"description": "Extraction mode: \"auto\" tries embedded text first, \"ocr\" forces optical character recognition"
}
}
}
}Finalize and submit the document with all form fields filled in.
{
"name": "submit",
"kind": "action",
"impl": "imperative",
"description": "Finalize and submit the document with all form fields filled in.",
"inputSchema": {
"type": "object",
"properties": {
"download_copy": {
"type": "boolean",
"description": "Whether to also download a copy of the submitted document to the user computer"
}
},
"required": [
"download_copy"
]
}
}