Configuration
The Edit API accepts a config object that controls how a PDF is filled. You can drive a run two ways: with natural-language instructions, or with an explicit schema that pins each field’s type, value, and position using extend_edit:* keywords. Beyond those, schemaGenerationInstructions biases automatic field detection, the schema supports root-level conditional logic to make fields required based on other values, and advancedOptions controls flattening, table parsing, and field detection.
For default values and the full schema, see the Create Edit Run API reference.
Prefer a UI? Extend Studio lets you configure an editor visually and export the config JSON.
Instructions
instructions
Type: string
Natural-language guidance for the edit. Use it to describe the values to fill and any special handling. With instructions only, Extend detects the form’s fields and fills the ones you describe.
schemaGenerationInstructions
Type: string
Additional instructions used when Extend generates a schema from the document (when you don’t supply one). Useful to bias field detection or naming without writing a full schema yourself.
Schema
schema
Type: object
A JSON Schema defining the fields to edit. Each property uses extend_edit:* keywords to specify the PDF field type, position, value, and styling. If you don’t have a schema yet, Generate Edit Schema detects the fields and returns one with positions annotated.
Schema types
The PDF field type allowed for a property depends on its JSON type:
Field properties
Each field in the schema can include:
Field positions are in PDF pixel coordinates. You rarely write extend_edit:bbox by hand — Generate Edit Schema detects a form’s fields and returns a schema with positions already annotated.
Example schema
The simplest schema gives each field a type, an extend_edit:field_type, and an extend_edit:value; Extend places it on the detected form field:
Signature image fills
For signature fields, provide an image instead of a text value:
Combed fields
For fields that require character-by-character input (SSN, phone numbers, policy numbers), use combing: true with a maxLength:
Conditional form editing
Edit schemas support root-level JSON Schema conditionals, so you can make fields required or optional based on other values. Supported keywords include dependentRequired, if / then / else, allOf, oneOf, anyOf, and not. Conditional clauses do not accept extend_edit:* keys.
This is useful for forms where follow-up fields only apply to a subset of users. A common workflow is to generate a base schema from the PDF, then add conditional requirements on top.
Advanced options
advancedOptions.flattenPdf
Type: boolean (default: true)
Flatten PDF forms after editing, making the form fields non-editable. Use when generating final documents.
advancedOptions.tableParsingEnabled
Type: boolean (default: false)
Parse table regions as arrays of objects. Enable for forms with large table regions you want filled.
advancedOptions.radioEnumsEnabled
Type: boolean (default: false)
Model radio fields as enums, ensuring only one radio widget in a group is filled.
advancedOptions.nativeFieldsOnly
Type: boolean (default: false)
Only import native AcroForm fields from the PDF and skip object detection.
For the exact request and response schemas, see the Create Edit Run API reference.

