# Dropbox::Sign::SubFormFieldsPerDocumentBase The fields that should appear on the document, expressed as an array of objects. (We're currently fixing a bug where this property only accepts a two-dimensional array. You can read about it here: <a href="/docs/openapi/form-fields-per-document" target="_blank">Using Form Fields per Document</a>.) **NOTE**: Fields like **text**, **dropdown**, **checkbox**, **radio**, and **hyperlink** have additional required and optional parameters. Check out the list of [additional parameters](/api/reference/constants/#form-fields-per-document) for these field types. * Text Field use `SubFormFieldsPerDocumentText` * Dropdown Field use `SubFormFieldsPerDocumentDropdown` * Hyperlink Field use `SubFormFieldsPerDocumentHyperlink` * Checkbox Field use `SubFormFieldsPerDocumentCheckbox` * Radio Field use `SubFormFieldsPerDocumentRadio` * Signature Field use `SubFormFieldsPerDocumentSignature` * Date Signed Field use `SubFormFieldsPerDocumentDateSigned` * Initials Field use `SubFormFieldsPerDocumentInitials` * Text Merge Field use `SubFormFieldsPerDocumentTextMerge` * Checkbox Merge Field use `SubFormFieldsPerDocumentCheckboxMerge` ## Properties | Name | Type | Description | Notes | | ---- | ---- | ----------- | ----- | | `document_index`*_required_ | ```Integer``` | Represents the integer index of the `file` or `file_url` document the field should be attached to. | | | `api_id`*_required_ | ```String``` | An identifier for the field that is unique across all documents in the request. | | | `height`*_required_ | ```Integer``` | Size of the field in pixels. | | | `required`*_required_ | ```Boolean``` | Whether this field is required. | | | `signer`*_required_ | ```String``` | Signer index identified by the offset in the signers parameter (0-based indexing), indicating which signer should fill out the field.

**NOTE**: If type is `text-merge` or `checkbox-merge`, you must set this to sender in order to use pre-filled data. | | | `type`*_required_ | ```String``` | | | | `width`*_required_ | ```Integer``` | Size of the field in pixels. | | | `x`*_required_ | ```Integer``` | Location coordinates of the field in pixels. | | | `y`*_required_ | ```Integer``` | Location coordinates of the field in pixels. | | | `name` | ```String``` | Display name for the field. | | | `page` | ```Integer``` | Page in the document where the field should be placed (requires documents be PDF files).

- When the page number parameter is supplied, the API will use the new coordinate system. - Check out the differences between both [coordinate systems](https://faq.hellosign.com/hc/en-us/articles/217115577) and how to use them. | |