blinkpdf-io · Schema
AcroForm.Definition
Complete declarative final AcroForm state.
PDFDocumentProcessingAPISaaSAutomation
Properties
| Name | Type | Description |
|---|---|---|
| resources | object | |
| fields | array | Ordered complete field definitions. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/blinkpdf-io/json-schema/blinkpdf-io-acro-form-definition-schema.json",
"title": "AcroForm.Definition",
"description": "Complete declarative final AcroForm state.",
"x-generated": "2026-10-30",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/blinkpdf-io-openapi.json#/components/schemas/AcroForm.Definition",
"additionalProperties": false,
"type": "object",
"required": [
"resources",
"fields"
],
"properties": {
"resources": {
"$ref": "#/$defs/AcroForm.Definition.resources"
},
"fields": {
"maxItems": 8191,
"description": "Ordered complete field definitions.",
"type": "array",
"items": {
"anyOf": [
{
"additionalProperties": false,
"description": "Complete final state for a text field.",
"type": "object",
"required": [
"name",
"readOnly",
"required",
"noExport",
"widgets",
"alignment",
"text",
"kind",
"value",
"multiline",
"password",
"fileSelect",
"spellCheck",
"scroll",
"comb",
"richText"
],
"properties": {
"name": {
"minLength": 1,
"maxLength": 1024,
"pattern": "^[^.]+(?:\\.[^.]+){0,63}$",
"description": "Fully qualified field name with at most 64 non-empty segments.",
"type": "string"
},
"alternateName": {
"maxLength": 32767,
"description": "Optional alternate field label emitted as TU.",
"type": "string"
},
"mappingName": {
"maxLength": 32767,
"description": "Optional export mapping name emitted as TM.",
"type": "string"
},
"readOnly": {
"description": "Whether the field is read-only.",
"type": "boolean"
},
"required": {
"description": "Whether the field is required.",
"type": "boolean"
},
"noExport": {
"description": "Whether exports omit this field.",
"type": "boolean"
},
"widgets": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets"
},
"alignment": {
"description": "Horizontal variable-text alignment.",
"type": "string",
"enum": [
"left",
"center",
"right"
]
},
"text": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.text"
},
"kind": {
"description": "Text field discriminator.",
"const": "text",
"type": "string"
},
"value": {
"maxLength": 32767,
"description": "Current text value; empty means blank.",
"type": "string"
},
"defaultValue": {
"maxLength": 32767,
"description": "Optional default text value.",
"type": "string"
},
"maxLength": {
"minimum": 1,
"description": "Positive character limit. With comb and no combSlots it is the cell count, and every cell must be at least 3 pt wide along the narrowest widget (its longer side, at most one page side), else 422 fieldValueInvalid at this field's maxLength.",
"type": "integer"
},
"multiline": {
"description": "Whether line breaks are supported.",
"type": "boolean"
},
"password": {
"description": "Whether appearances mask the value.",
"type": "boolean"
},
"fileSelect": {
"description": "Whether the value selects a file.",
"type": "boolean"
},
"spellCheck": {
"description": "Whether spell-check is enabled.",
"type": "boolean"
},
"scroll": {
"description": "Whether horizontal scrolling is enabled.",
"type": "boolean"
},
"comb": {
"description": "Whether characters paint in cells (equal unless combSlots is set).",
"type": "boolean"
},
"combSlots": {
"minItems": 1,
"maxItems": 8191,
"description": "Optional widget-width partition; omitted is ISO equal comb. Every slot must be at least 3 pt wide along the narrowest widget (its longer side, at most one page side), else 422 fieldValueInvalid at this field's combSlots.",
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"widthFraction",
"maxChars"
],
"properties": {
"widthFraction": {
"exclusiveMinimum": 0,
"description": "Slot width as a fraction of the widget; all slots must sum to 1.",
"type": "number"
},
"maxChars": {
"minimum": 1,
"description": "Positive character capacity of this slot.",
"type": "integer"
}
}
}
},
"lineHeight": {
"exclusiveMinimum": 0,
"description": "Authored multiline baseline pitch in PDF points. Omitted uses font-metric leading. Illegal when multiline is false.",
"type": "number"
},
"firstLineInset": {
"exclusiveMinimum": 0,
"description": "Extra left inset for the first painted multiline line in PDF points. Continuation lines use the full inner width. Illegal when multiline is false, on comb, or when not narrower than the widget inner width.",
"type": "number"
},
"richText": {
"description": "Whether rich text is enabled.",
"type": "boolean"
}
}
},
{
"additionalProperties": false,
"description": "Complete final state for a checkbox.",
"type": "object",
"required": [
"name",
"readOnly",
"required",
"noExport",
"widgets",
"kind",
"value",
"exportValue"
],
"properties": {
"name": {
"minLength": 1,
"maxLength": 1024,
"pattern": "^[^.]+(?:\\.[^.]+){0,63}$",
"description": "Fully qualified field name with at most 64 non-empty segments.",
"type": "string"
},
"alternateName": {
"maxLength": 32767,
"description": "Optional alternate field label emitted as TU.",
"type": "string"
},
"mappingName": {
"maxLength": 32767,
"description": "Optional export mapping name emitted as TM.",
"type": "string"
},
"readOnly": {
"description": "Whether the field is read-only.",
"type": "boolean"
},
"required": {
"description": "Whether the field is required.",
"type": "boolean"
},
"noExport": {
"description": "Whether exports omit this field.",
"type": "boolean"
},
"widgets": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets"
},
"kind": {
"description": "Checkbox discriminator.",
"const": "checkbox",
"type": "string"
},
"value": {
"description": "Current checked state.",
"type": "boolean"
},
"defaultValue": {
"description": "Optional default checked state.",
"type": "boolean"
},
"exportValue": {
"minLength": 1,
"maxLength": 32767,
"description": "Non-empty on-state export name.",
"type": "string"
}
}
},
{
"additionalProperties": false,
"description": "Complete final state for a radio group.",
"type": "object",
"required": [
"name",
"readOnly",
"required",
"noExport",
"widgets",
"kind",
"value",
"noToggleToOff",
"radiosInUnison",
"options"
],
"properties": {
"name": {
"minLength": 1,
"maxLength": 1024,
"pattern": "^[^.]+(?:\\.[^.]+){0,63}$",
"description": "Fully qualified field name with at most 64 non-empty segments.",
"type": "string"
},
"alternateName": {
"maxLength": 32767,
"description": "Optional alternate field label emitted as TU.",
"type": "string"
},
"mappingName": {
"maxLength": 32767,
"description": "Optional export mapping name emitted as TM.",
"type": "string"
},
"readOnly": {
"description": "Whether the field is read-only.",
"type": "boolean"
},
"required": {
"description": "Whether the field is required.",
"type": "boolean"
},
"noExport": {
"description": "Whether exports omit this field.",
"type": "boolean"
},
"widgets": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets"
},
"kind": {
"description": "Radio-group discriminator.",
"const": "radio",
"type": "string"
},
"value": {
"description": "Selected export value, or null for no selection.",
"minLength": 1,
"maxLength": 32767,
"type": [
"string",
"null"
]
},
"defaultValue": {
"description": "Selected export value, or null for no selection.",
"minLength": 1,
"maxLength": 32767,
"type": [
"string",
"null"
]
},
"noToggleToOff": {
"description": "Whether a selected option cannot be toggled off.",
"type": "boolean"
},
"radiosInUnison": {
"description": "Whether equal export values select together.",
"type": "boolean"
},
"options": {
"minItems": 1,
"maxItems": 8191,
"description": "Radio options mapped to widget indices.",
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"exportValue",
"widgetIndex"
],
"properties": {
"exportValue": {
"minLength": 1,
"maxLength": 32767,
"description": "Non-empty option export value.",
"type": "string"
},
"widgetIndex": {
"minimum": 0,
"description": "Zero-based widget associated with this option.",
"type": "integer"
}
}
}
}
}
},
{
"additionalProperties": false,
"description": "Complete final state for a list or combo choice.",
"type": "object",
"required": [
"name",
"readOnly",
"required",
"noExport",
"widgets",
"alignment",
"text",
"kind",
"choiceType",
"editable",
"multiple",
"value",
"options",
"sort",
"spellCheck",
"commitOnSelectionChange"
],
"properties": {
"name": {
"minLength": 1,
"maxLength": 1024,
"pattern": "^[^.]+(?:\\.[^.]+){0,63}$",
"description": "Fully qualified field name with at most 64 non-empty segments.",
"type": "string"
},
"alternateName": {
"maxLength": 32767,
"description": "Optional alternate field label emitted as TU.",
"type": "string"
},
"mappingName": {
"maxLength": 32767,
"description": "Optional export mapping name emitted as TM.",
"type": "string"
},
"readOnly": {
"description": "Whether the field is read-only.",
"type": "boolean"
},
"required": {
"description": "Whether the field is required.",
"type": "boolean"
},
"noExport": {
"description": "Whether exports omit this field.",
"type": "boolean"
},
"widgets": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets"
},
"alignment": {
"description": "Horizontal variable-text alignment.",
"type": "string",
"enum": [
"left",
"center",
"right"
]
},
"text": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.text"
},
"kind": {
"description": "Choice-field discriminator.",
"const": "choice",
"type": "string"
},
"choiceType": {
"description": "List box or combo box presentation.",
"type": "string",
"enum": [
"list",
"combo"
]
},
"editable": {
"description": "Whether a combo accepts custom text.",
"type": "boolean"
},
"multiple": {
"description": "Whether multiple options may be selected.",
"type": "boolean"
},
"value": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.choice.value"
},
"defaultValue": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.choice.value"
},
"options": {
"maxItems": 8191,
"description": "Choice options in authored display order.",
"type": "array",
"items": {
"additionalProperties": false,
"type": "object",
"required": [
"exportValue"
],
"properties": {
"exportValue": {
"maxLength": 32767,
"description": "Option export value.",
"type": "string"
},
"displayValue": {
"maxLength": 32767,
"description": "Optional displayed option label.",
"type": "string"
}
}
}
},
"sort": {
"description": "Whether viewers sort the option list.",
"type": "boolean"
},
"spellCheck": {
"description": "Whether editable text is spell-checked.",
"type": "boolean"
},
"commitOnSelectionChange": {
"description": "Whether selection changes commit immediately.",
"type": "boolean"
},
"topIndex": {
"minimum": 0,
"description": "Optional first visible list index.",
"type": "integer"
}
}
},
{
"additionalProperties": false,
"description": "Complete final state for a pushbutton.",
"type": "object",
"required": [
"name",
"readOnly",
"required",
"noExport",
"widgets",
"kind"
],
"properties": {
"name": {
"minLength": 1,
"maxLength": 1024,
"pattern": "^[^.]+(?:\\.[^.]+){0,63}$",
"description": "Fully qualified field name with at most 64 non-empty segments.",
"type": "string"
},
"alternateName": {
"maxLength": 32767,
"description": "Optional alternate field label emitted as TU.",
"type": "string"
},
"mappingName": {
"maxLength": 32767,
"description": "Optional export mapping name emitted as TM.",
"type": "string"
},
"readOnly": {
"description": "Whether the field is read-only.",
"type": "boolean"
},
"required": {
"description": "Whether the field is required.",
"type": "boolean"
},
"noExport": {
"description": "Whether exports omit this field.",
"type": "boolean"
},
"widgets": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets"
},
"kind": {
"description": "Presentation-only pushbutton discriminator.",
"const": "pushbutton",
"type": "string"
}
}
}
]
}
}
},
"$defs": {
"AcroForm.Definition.fields.item.choice.value": {
"description": "One selection, no selection, or multiple selections.",
"anyOf": [
{
"maxLength": 32767,
"type": "string"
},
{
"type": "null"
},
{
"maxItems": 8191,
"type": "array",
"items": {
"maxLength": 32767,
"type": "string"
}
}
]
},
"AcroForm.Definition.fields.item.text.text": {
"additionalProperties": false,
"description": "Canonical font cascade, size, and text color.",
"type": "object",
"required": [
"fontCascadeId",
"fontSize",
"color"
],
"properties": {
"fontCascadeId": {
"minLength": 1,
"maxLength": 32767,
"description": "Logical font cascade id declared under resources.",
"type": "string"
},
"fontSize": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets.item.captionText.fontSize"
},
"color": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets.item.backgroundColor"
}
}
},
"AcroForm.Definition.fields.item.text.widgets": {
"minItems": 1,
"maxItems": 8191,
"description": "One or more visual widgets owned by this field.",
"type": "array",
"items": {
"additionalProperties": false,
"description": "One field-owned widget and its complete presentation.",
"type": "object",
"required": [
"pageIndex",
"bounds",
"annotationFlags",
"rotation"
],
"properties": {
"pageIndex": {
"minimum": 0,
"description": "Zero-based page containing the widget.",
"type": "integer"
},
"bounds": {
"additionalProperties": false,
"description": "Canonical top-left widget bounds in PDF points.",
"type": "object",
"required": [
"x",
"y",
"width",
"height"
],
"properties": {
"x": {
"description": "Left edge in top-left PDF points.",
"type": "number"
},
"y": {
"description": "Top edge in top-left PDF points.",
"type": "number"
},
"width": {
"exclusiveMinimum": 0,
"description": "Positive width in PDF points.",
"type": "number"
},
"height": {
"exclusiveMinimum": 0,
"description": "Positive height in PDF points.",
"type": "number"
}
}
},
"annotationFlags": {
"additionalProperties": false,
"description": "Complete widget annotation flag set.",
"type": "object",
"required": [
"invisible",
"hidden",
"print",
"noZoom",
"noRotate",
"noView",
"readOnly",
"locked",
"toggleNoView",
"lockedContents"
],
"properties": {
"invisible": {
"description": "PDF Invisible annotation flag.",
"type": "boolean"
},
"hidden": {
"description": "PDF Hidden annotation flag.",
"type": "boolean"
},
"print": {
"description": "PDF Print annotation flag.",
"type": "boolean"
},
"noZoom": {
"description": "PDF NoZoom annotation flag.",
"type": "boolean"
},
"noRotate": {
"description": "PDF NoRotate annotation flag.",
"type": "boolean"
},
"noView": {
"description": "PDF NoView annotation flag.",
"type": "boolean"
},
"readOnly": {
"description": "PDF annotation ReadOnly flag.",
"type": "boolean"
},
"locked": {
"description": "PDF Locked annotation flag.",
"type": "boolean"
},
"toggleNoView": {
"description": "PDF ToggleNoView annotation flag.",
"type": "boolean"
},
"lockedContents": {
"description": "PDF LockedContents annotation flag.",
"type": "boolean"
}
}
},
"rotation": {
"description": "Clockwise widget appearance rotation in degrees.",
"type": "number",
"enum": [
0,
90,
180,
270
]
},
"backgroundColor": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets.item.backgroundColor"
},
"border": {
"additionalProperties": false,
"description": "Widget border style, width, color, and dash pattern.",
"type": "object",
"required": [
"style",
"width"
],
"properties": {
"style": {
"description": "PDF widget border style.",
"type": "string",
"enum": [
"solid",
"dashed",
"beveled",
"inset",
"underline"
]
},
"width": {
"minimum": 0,
"description": "Border width in PDF points.",
"type": "number"
},
"color": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets.item.backgroundColor"
},
"dashPattern": {
"maxItems": 8191,
"description": "Non-negative dash lengths for a dashed border.",
"type": "array",
"items": {
"minimum": 0,
"type": "number"
}
}
}
},
"captions": {
"additionalProperties": false,
"description": "Optional pushbutton captions by interaction state.",
"type": "object",
"properties": {
"normal": {
"maxLength": 32767,
"description": "Normal-state caption.",
"type": "string"
},
"rollover": {
"maxLength": 32767,
"description": "Rollover caption.",
"type": "string"
},
"down": {
"maxLength": 32767,
"description": "Pressed-state caption.",
"type": "string"
}
}
},
"imageResourceId": {
"minLength": 1,
"maxLength": 32767,
"description": "Logical image resource id painted by a pushbutton.",
"type": "string"
},
"captionText": {
"additionalProperties": false,
"description": "Font cascade, size, and color of the pushbutton caption. Required when `captions.normal` is non-empty and refused without one; every widget of the field carries the same value.",
"type": "object",
"required": [
"fontCascadeId",
"fontSize",
"color"
],
"properties": {
"fontCascadeId": {
"minLength": 1,
"maxLength": 32767,
"description": "Logical font cascade id declared under resources.",
"type": "string"
},
"fontSize": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets.item.captionText.fontSize"
},
"color": {
"$ref": "#/$defs/AcroForm.Definition.fields.item.text.widgets.item.backgroundColor"
}
}
},
"cellChrome": {
"description": "Cell chrome of a checkbox or radio widget, refused on any other. drawn paints a box when onMark is check or cross, or a ring when onMark is disc. artwork paints only the mark so printed cells remain. Omitted equals drawn.",
"type": "string",
"enum": [
"drawn",
"artwork"
]
},
"onMark": {
"description": "On-state mark of a checkbox or radio widget, refused on any other. check is a check polyline. cross is an X. disc is a filled disc. Omitted equals check on checkbox widgets and disc on radio widgets.",
"type": "string",
"enum": [
"check",
"cross",
"disc"
]
}
}
}
},
"AcroForm.Definition.fields.item.text.widgets.item.backgroundColor": {
"description": "Device gray, RGB, or CMYK color.",
"anyOf": [
{
"additionalProperties": false,
"type": "object",
"required": [
"space",
"components"
],
"properties": {
"space": {
"description": "Device gray color space.",
"const": "gray",
"type": "string"
},
"components": {
"description": "Gray component from zero through one.",
"type": "array",
"items": {
"minimum": 0,
"maximum": 1,
"type": "number"
},
"minItems": 1,
"maxItems": 1
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"space",
"components"
],
"properties": {
"space": {
"description": "Device RGB color space.",
"const": "rgb",
"type": "string"
},
"components": {
"description": "Red, green, and blue components from zero through one.",
"type": "array",
"items": {
"minimum": 0,
"maximum": 1,
"type": "number"
},
"minItems": 3,
"maxItems": 3
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"space",
"components"
],
"properties": {
"space": {
"description": "Device CMYK color space.",
"const": "cmyk",
"type": "string"
},
"components": {
"description": "Cyan, magenta, yellow, and black components from zero through one.",
"type": "array",
"items": {
"minimum": 0,
"maximum": 1,
"type": "number"
},
"minItems": 4,
"maxItems": 4
}
}
}
]
},
"AcroForm.Definition.fields.item.text.widgets.item.captionText.fontSize": {
"description": "Fixed or automatically fitted text size.",
"anyOf": [
{
"additionalProperties": false,
"type": "object",
"required": [
"mode",
"value"
],
"properties": {
"mode": {
"description": "Use an explicit point size.",
"const": "fixed",
"type": "string"
},
"value": {
"exclusiveMinimum": 0,
"description": "Positive font size in PDF points.",
"type": "number"
}
}
},
{
"additionalProperties": false,
"type": "object",
"required": [
"mode"
],
"properties": {
"mode": {
"description": "Fit text to the widget bounds during compilation.",
"const": "auto",
"type": "string"
}
}
}
]
},
"AcroForm.Definition.resources": {
"additionalProperties": false,
"description": "All external resources addressable by the form.",
"type": "object",
"required": [
"fontCascades",
"images"
],
"properties": {
"fontCascades": {
"maxItems": 8,
"description": "Declared logical f
# --- truncated at 32 KB (34 KB total) ---
# Full source: https://artifacts.apis.io/blinkpdf-io/json-schema/blinkpdf-io-acro-form-definition-schema.json
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/blinkpdf-io-acro-form-definition"
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.