---
schema_version: "1"
id: d0d98e1b6abb71f27d793b634c561e250b9b65001d5bcdc0142a17953a678eb3
title: Service Appointment Fields for Field Service
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/service/264-0-0/fs_appointment_fields.md
canonical_url: https://help.salesforce.com/s/articleView?id=service.fs_appointment_fields.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: dd9efca7512cac623667f0fd20e73dbd169b74b874c9df22edc696bccc054fe6
description: Service appointments have the following fields. Some fields may not be visible or editable depending on your page layout and field-level security settings.
products:
  - Field Service
release: "264"
---
# Service Appointment Fields for Field Service

Service appointments have the following fields. Some fields may not be visible or editable depending on your page layout and field-level security settings.

### Required Editions

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small edition"><colgroup><col></colgroup><tbody><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">Available in: both Salesforce Classic (not available in all orgs) and Lightning Experience</td></tr><tr class=""><td class="slds-cell-wrap" style="vertical-align:top;">The Agentforce Field Service and Operations core features, managed package, and mobile app are available in <strong>Enterprise</strong>, <strong>Unlimited</strong>, and <strong>Developer</strong> Editions.</td></tr></tbody></table>

<table class="slds-table slds-table_bordered slds-max-medium-table_stacked slds-m-bottom_small ">
      <colgroup>
        <col style="width:50%">
        <col style="width:50%">
      </colgroup>
      <thead class="slds-text-title_caps ">
        <tr class="">
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d21373e70">Field Name</th>
          <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d21373e73">Description</th>
        </tr>
      </thead>
      <tbody>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Account</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">(Read only) The account associated with the appointment. If the
            parent record is a work order or work order line item, this field’s
            value is inherited from the parent. Otherwise, it remains blank.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Actual Duration (Minutes)</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The number of minutes that it took the resource to complete the
            appointment after arriving at the address. When values are first added
            to the Actual Start and Actual End fields, the Actual Duration is
            automatically populated to list the difference between the Actual Start
            and Actual End. If the Actual Start and Actual End fields are
            subsequently updated, the Actual Duration field doesn’t reupdate, but
            you can manually update it.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Actual End</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The actual date and time the appointment ended.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Actual Start</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The actual date and time the appointment started.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Address</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The address where the appointment is taking place. The address is
            inherited from the parent record if the parent record is a work order or
            work order line item.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Appointment Number</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">An auto-assigned number that identifies the appointment.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Arrival Window End</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The end of the window of time in which the mobile worker is scheduled
            to arrive at the site. <span id="fs_appointment_fields__arrival_window"><a name="fs_appointment_fields__arrival_window"><!-- --></a>This window is typically
              larger than the Scheduled Start and End window to allow time for
              delays and scheduling changes. You may choose to share the Arrival
              Window Start and End with the customer, but keep the Scheduled Start
              and End internal-only.</span></td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Arrival Window Start</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The beginning of the window of time in which the mobile worker is
            scheduled to arrive at the site. <span>This window is typically
              larger than the Scheduled Start and End window to allow time for
              delays and scheduling changes. You may choose to share the Arrival
              Window Start and End with the customer, but keep the Scheduled Start
              and End internal-only.</span></td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Bundle</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">Indicates if this service appointment is a bundle service
            appointment. The default value is false.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Bundle Member</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">Indicates if this service appointment is a bundle member service
            appointment. The default value is false.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Bundle Policy</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">Reference to the bundle policy associated with this service
            appointment.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Contact</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The contact associated with the appointment. If the parent record is
            a work order or work order line item, this field’s value is inherited
            from the parent.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Description</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The description of the appointment.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Due Date</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The date by which the appointment must be completed. Earliest Start
            Permitted and Due Date typically reflect terms in the customer’s
            service-level agreement.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Duration</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The estimated length of the appointment. If the parent record is work
            order or work order line item, the appointment inherits its parent’s
            duration, but it can be manually updated. The duration is in minutes or
            hours based on the value selected in the Duration Type field.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">DurationInMinutes</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The estimated time required to complete the service appointment, in minutes. This
            field is for internal use.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Duration Type</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The unit of the duration: Minutes or Hours.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Earliest Start Permitted</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The date after which the appointment must be completed. Earliest
            Start Permitted and Due Date typically reflect terms in the customer’s
            service-level agreement.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Latitude</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">
            <p>Used with&nbsp;Longitude&nbsp;to specify the precise geolocation of the address
              where the service appointments is completed. Acceptable values are
              numbers between –90 and 90 with up to 15 decimal places. This field is
              available via the API only.</p>
            <p style="margin-bottom:0;">To integrate data from an external data
              source for latitude, map your data to the<samp class="parmname">
                ServiceAppointment.Latitude</samp> and not the
              <samp class="parmname">ServiceAppointment.FSL__InternalSLRGeolocation__Latitude__s</samp>
              field.
            </p>
          </td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Longitude</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">
            <p>Used with&nbsp;Latitude&nbsp;to specify the precise geolocation of the address
              where the service appointment is completed. Acceptable values are
              numbers between –180 and 180 with up to 15 decimal places. This field is
              available in the API only.</p>
            <p style="margin-bottom:0;">To integrate data from an external data
              source for longitude, map your data to the
              <samp class="parmname">ServiceAppointment.Longitude</samp> and not the
              <samp class="parmname">ServiceAppointment.FSL__InternalSLRGeolocation__Longitude__s</samp>
              field.
            </p>
          </td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Manually Bundled</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">Applicable when you’re using the Appointment Bundler. This field is a
            read-only field. Indicates if this bundle was created manually. The
            default value is false.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Offsite Appointment</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">
            <p>Applicable only when you’re using Enhanced Scheduling and Optimization. Indicates
              whether this appointment can be done remotely. If selected, no travel time is added to
              the schedule assigned resource record when the job is scheduled. For example, work
              such as remote technical assistance, filling out reports, or renewal of health and
              safety certification can be done from anywhere. See <a href="https://help.salesforce.com/s/articleView?id=service.pfs_offsite_service_appointments.htm&amp;release=264.0.0&amp;type=5" title="Optimize your mobile workers’ schedules for increased productivity by marking service appointments as offsite when jobs can be done remotely, even if an address is specified. For example, remote technical assistance, filling out reports, or renewing health and safety certifications can be done from anywhere. No travel time is added to the schedule if a service appointment is marked as offsite or has no address, or if a resource absence has no address. Enhanced Scheduling and Optimization must be enabled.">Schedule Appointments Without Travel</a>. </p>
            <p>If the Service Resource Availability work rule is configured to have a fixed
              gap (minimum break time between service appointments), this setting is ignored on
              the service appointment record, such that travel time to the appointment is still
              calculated and displayed on the Gantt.</p>
            <p style="margin-bottom:0;">Enhanced Scheduling and Optimization
              must be enabled. As of Summer ’23 new Salesforce orgs have Enhanced Scheduling and
              Optimization enabled by default for all service territories. Orgs existing prior to
              Summer ’23 must add the Offsite Appointment field to the page layout.</p>
          </td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Parent Record</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The parent record associated with the appointment. The parent record
            can’t be updated after the service appointment is created.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Parent Record Status Category</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">(Read only) The Status Category of the parent record. If the parent
            record is a work order or work order line item, this field is populated;
            otherwise, it remains blank.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Parent Record Type</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">(Read only) The type of parent record: Account, Asset, Lead,
            Opportunity, Work Order, or Work Order Line Item.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Related Bundle</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">Applicable when you’re using the Appointment Bundler. The bundle that
            this service appointment is a member of.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Scheduled End</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The time at which the appointment is scheduled to end. <span id="fs_appointment_fields__man_packages"><a name="fs_appointment_fields__man_packages"><!-- --></a>If you’re using the Field Service managed package
              with the scheduling optimizer, this field is populated when the
              appointment is assigned to a resource. </span>Scheduled End –
            Scheduled Start = Estimated Duration.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Scheduled Start</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The time at which the appointment is scheduled to start. <span>If you’re using the Field Service managed package
              with the scheduling optimizer, this field is populated when the
              appointment is assigned to a resource. </span></td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Schedule Mode</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">(Read only) Shows Auto or Manual after performing automated or manual
            scheduling. When using Enhanced Scheduling and Optimization, the
            Schedule Mode field shows how the appointment was scheduled: Drag and
            Drop, Schedule, Global Optimization, In-Day Optimization, or Resource
            Optimization. </td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Service Note</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">Add notes such as an appointment summary or recommendations for
            future work. Depending on your settings, these notes might appear on a
            customer-facing service report.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Service Territory</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The service territory associated with the appointment. If the parent
            record is a work order or work order line item, the appointment inherits
            its parent’s service territory.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Status</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">
            <p>The status of the appointment. The picklist includes the following
              values, which can be customized:</p>
            <ul>
              <li>None—Default value.</li>
              <li>Scheduled—The service appointment is scheduled.</li>
              <li>Dispatched—The service resource is in route.</li>
              <li>In Progress—The service resource started the work.</li>
              <li>Cannot Complete—The service resource couldn’t complete
                the appointment for any reason.</li>
              <li>Completed—The service resource completed the work.</li>
              <li>Canceled—The service appointment has been canceled.</li>
            </ul>
          </td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Status Category</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">
            <p>The category that each Status value falls into. The Status Category
              field’s values are identical to the standard Status values.</p>
            <p><span id="fs_appointment_fields__stat_cat_2"><a name="fs_appointment_fields__stat_cat_2"><!-- --></a>If you create custom Status values, you must
                indicate which category it belongs to. For example, if you
                create a Customer Absent value, you may decide that it belongs
                in the Cannot Complete category.</span></p>
            <p style="margin-bottom:0;">To learn which
              processes reference Status Category, see <a href="https://help.salesforce.com/s/articleView?id=service.fs_status_categories.htm&amp;release=264.0.0&amp;type=5" title="Service appointments, work orders, and work order line items have two status-related fields—Status and Status Category—which come with the same standard values. Status categories, which are referenced in many field service processes, allow you to use custom status values while maintaining a consistent work classification for tracking, reporting, and business process management.">How are Status Categories Used?</a></p>
          </td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Subject</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">A short phrase describing the appointment.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Transaction</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">The last transaction ID of the scheduling and optimization request that updated
            this object. The transaction ID is automatically generated and populated by the
            Enhanced Scheduling and Optimization engine.</td>

        </tr>
        <tr class="">
          <td data-label="Field Name" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e70 ">Work Type</td>

          <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d21373e73 ">
            <p>(Read only) The work type associated with the service appointment.
              The work type is inherited from the appointment’s parent record if the
              parent is a work order or work order line item.</p>
            <p style="margin-bottom:0;">If Lightning Scheduler
              is also in use, this field is editable. However, users see an error
              if they update it to list a different work type than the parent
              record’s work type.</p>
          </td>

        </tr>
      </tbody>
    </table>

#### See Also

- [Manage Field Service Appointments](https://help.salesforce.com/s/articleView?id=service.pfs_schedule_policy.htm&release=264.0.0&type=5 "Create, schedule, reschedule, and unschedule service appointments. Fix overlaps, group nearby appointments, and fill schedule gaps.")