> ## Documentation Index
> Fetch the complete documentation index at: https://withforerunner.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Customizing records

> Configure fields, conditional logic, versioning, and workflows to match your needs

Forerunner's record system is highly customizable. If the Record Builder is enabled for your account, manager-level users can create and modify record types directly—adding fields, configuring conditional logic, setting permissions, and more.

<Note>
  The Record Builder must be enabled for your account, and only manager-level users can access it. Contact your Customer Success Manager to turn on the Record Builder or to request customizations if you don't have access.
</Note>

## Getting started with the Record Builder

The Record Builder lets you customize record types to match your workflows. You can:

* **Create new record types** - Build forms for new workflows from scratch
* **Add and remove fields** - Customize what information you collect
* **Edit field properties** - Update labels, help text, and options
* **Reorder fields** - Arrange fields in the order that makes sense for your team
* **Configure conditional logic** - Show, hide, or require fields based on responses
* **Set permissions** - Control who can create and view each record type
* **Configure notifications** - Set up email alerts when records are created

<Tip>
  Don't have the Record Builder enabled? Your Customer Success Manager can still help you with record customizations. Contact them to discuss your needs.
</Tip>

## Creating a new record type

<Steps>
  <Step title="Open the Record Builder">
    Go to your account settings to access the Record Builder. You need manager-level permissions to access it.
  </Step>

  <Step title="Set up basic information">
    Configure the record type's foundational details:

    * **Record type** — Give the record type a clear, descriptive name (e.g., "Annual Floodplain Inspection")
    * **Record category** — Assign it to the appropriate category (Inspections, Permitting, SI/SD, etc.)
    * **Who can fill out this record** — Choose which user types can create records of this type
    * **Object type associated** — Select whether this record attaches to properties, custom objects, or both
  </Step>

  <Step title="Add fields to the form">
    Build your form by adding fields. For each field:

    1. Select a field type from the available options (text, number, date, select, etc.)
    2. Enter a label that clearly describes what information to enter
    3. Configure field-specific options like dropdown choices, min/max values, or default values
    4. Add help text to guide users filling out the form
    5. Mark the field as required if it must be completed before saving
  </Step>

  <Step title="Organize field order">
    Use the up and down arrows to reorder fields. Group related fields together using the **Group** field type to create collapsible sections. Put the most important fields near the top of the form.
  </Step>

  <Step title="Set permissions">
    Configure who can create and view this record type:

    * Choose which user types can create records (team members, guests, public users)
    * Set default visibility (public or hidden)
    * Restrict creation to specific public user groups if needed
  </Step>

  <Step title="Add form guidance (optional)">
    Add contextual information to help users:

    * **Form description** — Instructions shown at the top of the form before any fields
    * **Success message** — Confirmation shown after saving
  </Step>

  <Step title="Configure notifications (optional)">
    Set up email alerts to notify team members when records of this type are created. Specify recipient email addresses, subject line format, and any conditions for when notifications should send.
  </Step>

  <Step title="Save the record type">
    Review your configuration and save. The new record type is immediately available for users with the appropriate permissions to create records.
  </Step>
</Steps>

## Editing an existing record type

<Steps>
  <Step title="Open the Record Builder">
    Navigate to the Record Builder and select the record type you want to modify.
  </Step>

  <Step title="Make your changes">
    Update any aspect of the record type:

    * Add, remove, or reorder fields
    * Edit field labels, help text, or options
    * Update conditional logic rules
    * Adjust permissions or notifications
  </Step>

  <Step title="Choose how to handle existing records">
    When you save changes to a record type's form structure, Forerunner creates a new version. You can choose to:

    * **Keep existing records on their original version** — Past records maintain their original form structure
    * **Update existing records to the new version** — Past records adopt the updated form (new fields appear empty, removed fields are hidden)
  </Step>

  <Step title="Save and review">
    Save your changes. New records will use the updated version immediately. If you chose to update existing records, verify that they display correctly with the new form structure.
  </Step>
</Steps>

## Record type versioning

When you update a record type's form structure, Forerunner creates a new version automatically. This versioning system ensures data integrity while allowing your forms to evolve over time.

### How versioning works

1. **Form structure updated** - Fields are added, removed, or modified
2. **New version created** - Forerunner creates a new version of the record type
3. **Choose what happens to existing records** - You can keep existing records on their original version or update them to the new version
4. **New records use updated version** - Any records created after the update use the new form

### Benefits of versioning

| Benefit                  | Description                                                |
| ------------------------ | ---------------------------------------------------------- |
| **Historical integrity** | Past records maintain their original structure and data    |
| **No data loss**         | Field removals don't affect existing records               |
| **Audit compliance**     | Historical records remain valid for reporting and audits   |
| **Seamless exports**     | System handles different versions automatically in exports |
| **Safe iteration**       | Make changes without worrying about breaking existing data |

<Tip>
  When viewing older records that haven't been updated, you'll see the form as it existed when that record was created. This preserves the context of the original data entry.
</Tip>

### Version considerations

When planning form updates, you can choose whether to update existing records to the new version:

* **Adding fields** - New fields appear on future records; if you update existing records, new fields will be empty
* **Removing fields** - Removed fields remain visible on existing records unless you update them to the new version
* **Renaming fields** - Creates a new field; existing data stays with the old field name
* **Changing field types** - May require creating a new field to maintain data integrity

<Tip>
  When making changes, you'll have the option to apply the new version to existing records or leave them on their original version.
</Tip>

## Available field types

Records support 15+ field types to collect different kinds of information:

| Field Type                | Use For                                         | Key Options                                      |
| ------------------------- | ----------------------------------------------- | ------------------------------------------------ |
| **Text**                  | Short responses (names, IDs, addresses)         | Optional max character count, format patterns    |
| **Text Area**             | Long descriptions, notes, observations          | Optional max character count, row height         |
| **Number**                | Numeric values (costs, measurements, counts)    | Min/max, decimal places, negatives               |
| **Number with Units**     | Measurements with units (feet, meters, dollars) | Available units, conversions                     |
| **Date**                  | Specific dates (inspection date, deadline)      | Format, min/max ranges, default to today         |
| **Boolean**               | Yes/No choices (owner-occupied, in SFHA)        | Default state, display style                     |
| **Select**                | Single choice from list (permit type, status)   | Available options, search capability             |
| **Multi-Select**          | Multiple choices (affected systems, violations) | Max selections, display style                    |
| **Damage Degree**         | Standardized damage levels (for PDAs)           | None, Affected, Minor, Major, Destroyed, Unknown |
| **Tags**                  | Categorization with visual styling              | Predefined or free-form, colors                  |
| **Property Attachment**   | Link to property in Forerunner                  | Required or optional, auto-populate              |
| **Property Market Value** | Property value calculations                     | Source, depreciation method, percentages         |
| **User**                  | Select staff member (inspector, reviewer)       | Restrict by role, default to current user        |
| **Document Uploader**     | File attachments (photos, PDFs, docs)           | Allowed types, file size, required/optional      |
| **Group**                 | Visual section container                        | Collapsible, organizational only                 |
| **Unique ID**             | Auto-generated reference numbers                | Prefix, padding, increment rules                 |

<Warning>
  File upload limits: PDFs up to 30 MB, images up to 30 MB each, videos up to 600 MB. Maximum 10 files per upload session.
</Warning>

### Specialized field types

Some field types enable advanced functionality when used with specific modules:

**Damage Degree** - Updates property warnings automatically when used in PDA records. See [Preliminary Damage Assessments](/records/preliminary-damage-assessments).

**Property Market Value** - Enables SI/SD calculations with depreciation options. See [SI/SD Tracking](/records/si-sd-tracking).

**Document Uploader** - Can trigger special processing for certain file types (e.g., EC PDFs are automatically extracted). See [Permits and EC Submission](/records/permits-ec-submission).

## Conditional logic

Record types support rules that show, hide, require, or unrequire fields based on other responses. This makes forms cleaner and reduces errors by only showing relevant fields.

### Effect types

| Effect        | Description          | Use Case                                          |
| ------------- | -------------------- | ------------------------------------------------- |
| **SHOW**      | Reveal hidden field  | Show flood zone fields when property is in SFHA   |
| **HIDE**      | Conceal field        | Hide commercial fields for residential properties |
| **REQUIRE**   | Make field mandatory | Require photos for major damage                   |
| **UNREQUIRE** | Make field optional  | Make certain fields optional based on status      |

### Example rules

```
If "Property type" is "Commercial"
  Then SHOW "Business name" and "Business license number"

If "Damage degree" is "Major" or "Destroyed"
  Then REQUIRE "Photo documentation" and "Cost estimate"

If "In Special Flood Hazard Area" is "No"
  Then HIDE "Base Flood Elevation" and "Flood zone"
```

<Tip>
  Conditional logic makes forms cleaner by only showing relevant fields. This reduces errors and speeds up data entry.
</Tip>

### Best practices for conditional logic

* **Don't over-complicate** - Too many conditions confuse users
* **Use strategically** - Hide irrelevant fields, require documentation for critical decisions
* **Test thoroughly** - Verify logic works as expected before deploying
* **Document rules** - Keep a record of what conditions exist and why

## Default values

Fields can auto-populate from various sources to save time and ensure consistency:

**Property information** - Address, parcel ID, coordinates, flood zone, property type, assessor data

**User information** - Name, email, phone, department, role of logged-in user

**Computed values** - Current date/time, calculations based on other fields, previous record data

**Static defaults** - Common selections, standard text, baseline values

Configure defaults in the Record Builder to match your workflow needs.

## Permissions

Control who can create and view each record type:

### User types

**Team** - Staff members in your organization who can create and update records

**Guests** - Members of the public who access your public website without an account

**Public users** - Members of the public who create accounts on your public website. Public users can be organized into user groups for more granular permissions.

### Creation permissions

Configure which user types can create records of each type:

* Allow team members to create records
* Enable public submissions from guests or public users
* Restrict certain record types to specific public user groups

### Visibility permissions

**Team visibility** - Control which team members can view records

**Public visibility** - Configure default visibility (public or hidden) with the option to override on individual records

Learn more about [Public Sharing](/records/public-sharing).

## Form guidance

Add contextual information to guide users through the form:

**Form description** - Instructions displayed at the top of the form before any fields. Use for prerequisites, important notices, or context about when to use this record type.

**Success message** - Custom confirmation shown after saving. Use for expected timeline, reference numbers, or what happens next.

**Field help text** - Guidance for specific fields. Use for explanations, examples, or format requirements.

<Tip>
  Well-crafted guidance reduces confusion and support requests by setting clear expectations for users.
</Tip>

## Notifications

Trigger email alerts when records are created:

**Configuration options:**

* Email addresses (individual or group)
* Subject line format
* Conditions for sending (based on field values)
* Whether to include record details

**Example:** Email `permits@city.gov` with subject "New Building Permit Application - \[Address]" only when "In SFHA" is "Yes"

Configure notification rules in the Record Builder to match your workflow needs.

## Specialized modules

Record types can include modules that add specific functionality:

| Module            | Capability                                                 | Learn More                                                                |
| ----------------- | ---------------------------------------------------------- | ------------------------------------------------------------------------- |
| **PDA**           | Automatic property warning updates based on damage degree  | [Preliminary Damage Assessments](/records/preliminary-damage-assessments) |
| **SDE**           | Substantial Damage Estimate calculations with depreciation | [SI/SD Tracking](/records/si-sd-tracking)                                 |
| **SI/SD**         | Cumulative improvement/damage tracking with thresholds     | [SI/SD Tracking](/records/si-sd-tracking)                                 |
| **EC Submission** | Elevation Certificate upload, processing, and review       | [Permits and EC Submission](/records/permits-ec-submission)               |
| **Mailings**      | Mailing and notification management                        | -                                                                         |

<Note>
  Your Customer Success Manager can help configure specialized modules like Preliminary Damage Assessments, Substantial Damage Estimates, and Elevation Certificate processing to match your community's requirements.
</Note>

## Object attachment options

Configure what records can attach to:

**Properties only** - Most common. Use for building inspections, permits, property assessments.

**Custom objects only** - For custom map features. Use for infrastructure inspections, asset maintenance.

**Both** - Records can attach to either type. Use for general inspections, complaints, work orders.

## Best practices

### Form design

**Keep it simple** - Only include fields you'll use regularly

**Consider the user** - Put important fields first, use clear labels, add helpful defaults

**Plan for public sharing** - Some fields may need to be hidden from public view

### Field naming

**Use descriptive labels** - "Building square footage" not "Size"

**Be consistent** - Use same terminology across record types

**Avoid jargon** - Especially for public-facing forms

### Permissions

**Grant appropriate access** - Match permissions to roles and responsibilities

**Protect sensitive data** - Restrict access to confidential record types

**Review regularly** - Adjust as roles change

## Getting help from your CSM

Your Customer Success Manager is available to help with record customization:

* **Enable the Record Builder** - Contact your CSM to turn on self-service customization for your account
* **Specialized modules** - Your CSM can help configure PDA, SDE, SI/SD, and EC processing modules to match your community's requirements
* **Complex customizations** - For advanced configurations or bulk changes, your CSM can assist
* **Migration support** - If you need to update existing records or migrate data between field types

<Note>
  Don't have the Record Builder enabled? Your CSM can still make customizations on your behalf. Contact them to discuss your needs.
</Note>

## Related topics

* [Records Overview](/records/overview) - Understanding records in Forerunner
* [Creating Records](/records/creating-records) - Step-by-step creation guide
* [Preliminary Damage Assessments](/records/preliminary-damage-assessments) - IA and PA PDA workflows
* [Substantial Damage Estimates](/records/substantial-damage-estimates) - Damage cost calculations
* [SI/SD Tracking](/records/si-sd-tracking) - SI/SD determinations and compliance
* [Permits and EC Submission](/records/permits-ec-submission) - EC processing module
