---
schema_version: "1"
id: 4d33f77720dfb3fb69aed38c96cc605d1fa12fd7b5dc3874290ff18972e104c0
title: Sync Services and Resource Absences with Events Using Calendar Sync
collection: admin
version: current
locale: en-us
portal_url: https://docs.salesforce.com/admin/current/en-us/service/264-0-0/fs_calendar_sync.md
canonical_url: https://help.salesforce.com/s/articleView?id=service.fs_calendar_sync.htm&release=264.0.0&type=5
source_site: help.salesforce.com
content_type: documentation
content_hash: e1c7c8bc64c477bb41e74d879df897cd815f60d3bf59b37f560c7e99dcb325e7
description: You can keep your services and resource absences in sync with calendar events using Calendar Sync. Syncing services and resource absences to or from calendar events lets you maintain an accurate view of your services and resource availability when you create events and request meetings from your Salesforce calendar. Events can then be synced between external calendars and Salesforce.
products:
  - Field Service
release: "264"
---
# Sync Services and Resource Absences with Events Using Calendar Sync

You can keep your services and resource absences in sync with calendar events using Calendar Sync. Syncing services and resource absences to or from calendar events lets you maintain an accurate view of your services and resource availability when you create events and request meetings from your Salesforce calendar. Events can then be synced between external calendars and Salesforce.

### 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 permission">
      <colgroup>
        <col style="width:50%">
        <col style="width:50%">
      </colgroup>
      <thead class="slds-text-title_caps ">
        <tr class="">
          <th scope="colgroup" class="slds-cell-wrap" colspan="2" style="text-align:center;vertical-align:top;" id="d125158e70">User Permissions Needed</th>
        </tr>
      </thead>
      <tbody>
        <tr class="">
          <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e70 ">To sync services and resource absences to Salesforce calendar events:</td>

          <td class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e70 ">Create and Edit on service appointments and Edit on Resource Absence</td>

        </tr>
        <tr class="">
          <td data-label="User Permissions Needed" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e70 ">To sync services and resource absences from Salesforce calendar events: </td>

          <td class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e70 ">Create and Edit on service appointments and Edit on Resource Absence</td>

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

![Package icon](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-service-support_field_service-264-0-0-production-enus/3f7dceb9-dd70-454a-b49e-bbb4526a158d/support_field_service/images/fs_package.png) _This is a Field Service managed package feature._

![Note](https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-service-support_field_service-264-0-0-production-enus/3f7dceb9-dd70-454a-b49e-bbb4526a158d/images/icon_note.png)

Note Calendar Sync permissions aren’t included in the managed package default permission sets. To enable Calendar Sync, you must have Edit permissions on the Event object and Edit permissions on ‌Event fields: Id, StartDateTime, EndDateTime, Subject, IsReminderSet, ReminderDateTime, Location, OwnerId, Description, WhatId, IsAllDayEvent.

1. From the App Launcher, find and open the **Field Service Admin** app, and then click the **Field Service Settings** tab.
2. Select **Sharing** | **Calendar Sync**, and under **Service Appointments** and **Resource Absence** configure the following settings.

<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="d125158e156">Setting</th>
            <th scope="col" class="slds-cell-wrap" style="vertical-align:top;" id="d125158e159">Description</th>
          </tr>
        </thead>
        <tbody>
          <tr class="">
            <td data-label="Setting" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e156 ">Synchronize Services from Salesforce calendar events</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e159 ">
              <p>If enabled, whenever an Event record is created, and the Event Record Type field is
                the same as the Calendar Event Type setting, a Work Order and Service Appointment is created.</p>
              <ul>
                <li>If the event's Subject matches the name of an existing Work Type, the service
                  appointment's parent Work Order is created using that Work Type.</li>
                <li>The event's Start Time is mapped and synced to the service appointment’s Scheduled
                  Start Time.</li>
                <li>The event's End Time is mapped and synced to the service appointment’s Scheduled End
                  Time.</li>
                <li>The event's Assigned To field is mapped and synced to the service appointment’s
                  Assigned Resource.</li>
                <li>The event's Location is mapped to the service appointment’s Service Territory.</li>
                <li>The event's Related To field is mapped to the matching service appointment record.</li>
              </ul>
            </td>

          </tr>
          <tr class="">
            <td data-label="Setting" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e156 ">Synchronize Services to Salesforce calendar events</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e159 ">
              <p>If enabled, whenever a service appointment's Status is set to Dispatched, an Event
                record is created for the assigned service resource.</p>
              <ul>
                <li>The service appointment's Work Type is mapped and synced to the event's Subject.</li>
                <li>The service appointment's Scheduled Start Time is mapped and synced to the event's
                  Start Time.</li>
                <li>The service appointment's Scheduled End Time is mapped and synced to the event's End
                  Time.</li>
                <li>The service appointment's Assigned Resource is mapped and synced to the event's
                  Assigned To field.</li>
                <li>The service appointment's Service Territory is mapped and synced to the event's
                  Location.</li>
              </ul>
              <p>If there are multiple assigned resources, an Event record is only created for the
                first assigned resource.</p>
              <p> If the service appointment is reassigned, the event's
                assigned owner isn’t updated.</p>
              <p>If the event's assigned owner is updated the service
                appointment's Assigned Resource is also updated.</p>
              <p>If the service appointment is
                rescheduled, the Event Start and End time are updated, but only if the service appointment
                has a parent record of type Work Order or Work Order Line Item.</p>
              <div class="slds-box slds-box_x-small slds-theme_shade slds-m-top_medium slds-m-bottom_medium">
                <div class="slds-media slds-media_responsive">
                  <div class="slds-media__figure"><span class="slds-icon_container slds-icon_container_circle slds-icon-note-note"><img style="margin-bottom:0;" src="https://sf-zdocs-cdn-prod.zoominsoftware.com/tdta-service-support_field_service-264-0-0-production-enus/3f7dceb9-dd70-454a-b49e-bbb4526a158d/images/icon_note.png" alt="Note"></span></div>
                  <div class="slds-media__body" style="padding-top:.5rem;padding-bottom:.5rem;"><span class="slds-text-title_caps">Note</span> For Field Service, if the service appointment’s Scheduled Start to Schedule End is greater
                    than 14 days, events aren’t created in the Salesforce calendar due to a 14-day limit.
                  </div>
                </div>
              </div>
            </td>

          </tr>
          <tr class="">
            <td data-label="Setting" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e156 ">Calendar Event type</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e159 ">The value on the event Type field on the Event object that controls whether a Service
              Appointment and Work Order are created.</td>

          </tr>
          <tr class="">
            <td data-label="Setting" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e156 ">Enforce validations when syncing Service Appointments and Salesforce calendar
              events</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e159 ">
              <p>Controls whether to ignore the update if the matching record can’t be updated, or to
                continue without updating the matching record.</p>
              <p style="margin-bottom:0;">For example, if this setting isn’t enabled
                and you update the service appointment Scheduled Start Time, and there’s a validation rule
                on the Event object that prevents updates to the event's Start Time, the scheduled
                appointment is updated, but the event isn’t. The event still has the service appointment's
                original Start Time. If this setting is enabled, both records aren’t updated.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Setting" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e156 ">Synchronize Absences from Salesforce calendar</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e159 ">
              <p>If enabled, whenever an Event record is created and the event Type field is the same
                as the calendar event Type setting, a Resource Absence record is created for the assigned user.</p>
              <ul>
                <li>The event’s Subject is mapped and synced to the resource absence’s Type. Make sure to
                  fill in the event's Subject field. If left empty, the resource absence’s Type field is set
                  to the default value.</li>
                <li>The event’s Start and End fields are mapped and synced to the corresponding resource
                  absence fields. </li>
                <li>The event's Assigned To field is mapped and synced to the resource absence’s Resource
                  field. The user in the Assigned To field must have a service resource linked to it. The
                  resource absence’s Resource field is the service resource that is linked to the user in
                  the event's Assigned To field.</li>
              </ul>
            </td>

          </tr>
          <tr class="">
            <td data-label="Setting" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e156 ">Synchronize Absences to Salesforce calendar</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e159 ">
              <p>If enabled, whenever a Resource Absence record with Record Type Non-Availability is
                created for a service resource, an Event record is created for the User linked to the
                service resource record.</p>
              <p style="margin-bottom:0;">When you create an event with Event Type = Absence, the Resource
                Absence record is created and the Type field is set to the Subject of the event. An
                Inactive value is created for the Type field if it doesn't exist.</p>
            </td>

          </tr>
          <tr class="">
            <td data-label="Setting" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e156 ">Calendar Event type</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e159 ">The value on the Event Type field on the Event object that controls whether a Resource
              Absence record is created.</td>

          </tr>
          <tr class="">
            <td data-label="Setting" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e156 ">Enforce validations when syncing resource absences and Salesforce calendar
              events</td>

            <td data-label="Description" class="slds-cell-wrap" style="vertical-align:top;" headers="d125158e159 ">Controls whether to ignore an update if the matching record can’t be updated, or to
              continue without updating the matching record.</td>

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

## Considerations

- Child events aren’t supported.
- Recurring events create a single Service Appointment record and a single Resource Absence record.
- When you create an event with multiple invitees, only one resource absence is created for the person who created the event.
- Crews aren’t supported since the Service Resource, as a Crew, doesn't have a User to assign appointments to.
- When creating, updating, or deleting events in bulk, if one of the event records results in a failure, Calendar Sync doesn’t sync any of the events in that request.
- You can’t create an event of type Resource Absence or Service Appointment when the Name field is populated with a Lead, or the Related To field is populated with any value. The Related To field is preserved for the Resource Absence or Service Appointment that is created and linked after the new event is inserted. You can’t relate an event to a Lead record if the event is already linked to another object through the Related To field.
- Since Site Guest Users can’t be assigned with Edit Events permission, Calendar Sync with Site Guest User isn’t supported. This means that events aren’t created, changed, or deleted after a Guest user has changed a Service Appointment or Resource Absence.