Skip to main content
GET
/
templates
/
{id}
/
fields
Get template fields
curl --request GET \
  --url https://api.firma.dev/functions/v1/signing-request-api/templates/{id}/fields \
  --header 'Authorization: <api-key>'
[
  {
    "id": "field123-e89b-12d3-a456-426614174000",
    "field_name": "Signature",
    "field_type": "signature",
    "required": true,
    "position_x": 100,
    "position_y": 200,
    "page_number": 1
  },
  {
    "id": "field456-e89b-12d3-a456-426614174000",
    "field_name": "Date",
    "field_type": "date",
    "required": true,
    "position_x": 100,
    "position_y": 250,
    "page_number": 1
  }
]

Authorizations

Authorization
string
header
required

API key for authentication. Use your API key directly without any prefix (e.g., 'your-api-key'). Bearer prefix is optional but not required.

Path Parameters

id
string<uuid>
required

Template ID

Response

Template fields retrieved successfully

id
string<uuid>

Unique identifier for the field

field_name
string

Name of the field

field_type
enum<string>

Type of the field

Available options:
text,
signature,
date,
checkbox,
dropdown,
radio_buttons,
number,
text_area,
file,
initial
required
boolean

Whether the field is required

position_x
number

X coordinate of field position

position_y
number

Y coordinate of field position

width
number

Width of the field

height
number

Height of the field

page_number
integer

Page number where the field is located

Required range: x >= 1
variable_name
string | null

Variable name for field (used in templates)

dropdown_options
string[] | null

Options for dropdown fields

date_default
string<date> | null

Default date value

date_signing_default
boolean

Use signing date as default

multi_group_id
string<uuid> | null

Group ID for multi-instance fields (e.g., radio button groups)

format_rules
object

Formatting rules - currently used for date fields to specify display format

Example:
{ "dateFormat": "MMMM dd, yyyy" }
validation_rules
object

Validation rules for field values. Reserved for future use - currently not enforced for any field types.

recipient_id
string<uuid>

ID of assigned recipient

read_only
boolean
default:false

Whether this field is read-only (pre-filled before signing). When true, the signer cannot edit the field value.

read_only_value
string | null

Static value for read-only fields. Takes precedence over prefilled_data if both are specified. Only applicable when read_only is true.

prefilled_data
enum<string> | null

User attribute to auto-populate when read_only is true. Value is pulled from the assigned recipient's data. Can also reference custom_fields keys defined on the recipient (not limited to enum values). Only applicable when read_only is true and read_only_value is not set.

Available options:
first_name,
last_name,
full_name,
email,
phone_number,
company,
title,
street_address,
city,
state_province,
postal_code,
country