Overview

Form schema (form_schema ) is an optional edit endpoint configuration that templatizes the editable fields in your document. A form schema contains the bounding boxes for each editable widget, along with a type (text or checkbox) and description to help Reducto map instructions correctly. Studio offers an easy drag-and-drop interface for creating and editing your form schema.

Benefits of adding a form schema:

  • Better edit accuracy (field locations and instruction matching)
  • Faster edit endpoint latency
  • More consistent results even with different instructions
  • Ability to add form widgets to documents missing some
Form schemas are best for bulk form filling use cases. If you are filling the same form out programmatically, form schemas help the results stay consistent and accurate.

How to create a form schema using Studio

Use Studio to automatically detect editable widgets, add widgets, edit descriptions, and adjust their locations. Studio will generate the edit endpoint call so you can copy and paste the API call directly into your code.
1

Create a new edit pipeline

First, hit “Add pipeline+” and select the “Edit” pipeline option. Choose a name, and press “Create”.

New pipeline creation modal.

2

Upload a file and add edit instructions

Before a form schema can be created, the edit pipeline must be run. Upload a file, add editing instructions, and run the pipeline.

Upload a file to Studio. Add editing instructions, then run the full pipeline.

3

Copy over the form schema to configurations

View your run results in the “Results” tab. There you will see the form schema. Hit “Copy to Config” in order to make it editable.

Extraction run results. Copy the form schema to the configurations view.

4

View and adjust the form schema

Navigate back to the “Configuration” tab. View the form schema below edit instructions.

Form schema is now under edit instructions.

The file viewer is now an interactive drop-and-drop interface for adjusting your widgets in the form schema.
You can move and change the size of each widget.
Each form schema field has settings that allow you to update the title, duplicate, or delete the widget. The field description is what the LLM uses to determine what data should fill the widget.

Each form schema field has settings to edit, duplicate, or delete.

5

Create a new widget

Let’s add a new widget. Hit the “Add Text Field” option under ”+ Add” in the form schema options. This activates “Creation Mode”, allowing you to create a widget by clicking and dragging on the file viewer. Hit “escape” to exit creation mode.

Add a new form schema field that is a text widget.

Widgets without a description will show yellow. Update the new widget’s name in the form schema.

Widgets highlighted in yellow have missing attributes.

6

Copy the edit endpoint API call

After finalizing your form schema, the edit endpoint API call is accessible by clicking the ”</> Code” button. The code is available to copy and paste in Python, Typescript, and REST.

Each pipeline has code snippets available to copy and paste.

Success! You have created a custom form schema for your document.