Loading
Upcoming Mandatory Changes to Public Key Infrastructure (PKI)Read More
Salesforce Enforces New Security Requirements in Summer 2026Read More
Agentforce Field Service and Operations
Table of Contents
Select Filters

          No results
          No results
          Here are some search tips

          Check the spelling of your keywords.
          Use more general search terms.
          Select fewer filters to broaden your search.

          Search all of Salesforce Help
          Set Up Appointment Assistant Self-Service Scheduling For Existing Appointments

          Set Up Appointment Assistant Self-Service Scheduling For Existing Appointments

          Let your customers confirm, reschedule, or cancel their upcoming appointments.

          Required Editions

          Available in: both Salesforce Classic (not available in all orgs) and Lightning Experience
          The Field Service core features, managed package, and mobile app are available in Enterprise, Unlimited, and Developer Editions.
          The Field Service Appointment Assistant managed package and permission set license are required.
          User Permissions Needed
          To configure layouts: Customize Application
          To configure statuses: Customize Application
          To configure the Appointment Assistant settings: Field Service Appointment Assistant
          To add components to sites: Create and Set Up Experience Sites AND View Setup and Configuration
          To create messaging components: Configure Messaging
          To open, edit, or create a flow in Flow Builder: Manage Flow
          To create a sharing rule: Customize Application

          (Optional) Add Notes to the Service Appointment Layout

          To let your mobile workers see notes from customers, add the Service Notes field to the layout for mobile workers.

          1. From Setup, go to the Object Manager tab.
          2. In the Quick Find box, enter Service Appointment, and then select Service Appointment.
          3. In Page Layouts, edit the layout used for the Field Service mobile workers.
          4. Add the Service Note field to the layout.
          5. Save the layout.

          (Optional) Add a Service Appointment Status for Confirmed Appointments

          Add a Confirmed status to the Service Appointment Status options. If you enter this status in the Appointment Assistant Self-Service Scheduling settings, when the customers confirm their appointments, the service appointment’s status changes accordingly.

          1. Add the new status.
            1. From Setup, go to the Object Manager tab.
            2. In the Quick Find box, enter Service Appointment, and then select Service Appointment.
            3. Click Fields & Relationships.
            4. In the Quick Find box, enter Status, and then select Status.
            5. In Status Picklist Values, click New.
            6. Enter the details of the Confirmed status.
            7. Save the new status.
          2. If your Salesforce org uses status transitions:
            1. From Field Service Admin, go to the Field Service Settings tab.
            2. From Service Appointment Workflow, go to Status Transitions.
            3. Add the flows for the Confirmed status.

          Step 1: Configure Appointment Assistant Settings for Self-Service Scheduling

          Make sure that the Appointment Assistant settings are configured.

          1. Check if Appointment Assistant is configured in your org.
            1. From Setup, in the Quick Find box, enter Field Service, and then select Field Service Settings.
            2. If the Appointment Assistant section is filled in, you’re all set.
          2. If it isn’t configured, see Configure Field Service Settings for Real-Time Location.

          Step 2: Add Self-Service Scheduling to Your Experience Builder Site

          To enable Appointment Assistant Self-Service Scheduling, add it to your Experience Builder site.

          1. From Setup, in the Quick Find box, enter Digital Experiences, and then select All Sites.
          2. In the row for your site, click Builder.
          3. From Experience Builder, click Components Components button.
          4. From Custom Components, locate the Self-Service Scheduling component.
          5. Drag the component onto the site.
            Self-Service Scheduling Lightning web component.
          6. To open the settings panel, click anywhere in the Appointment Assistant Self-Service Scheduling component.
          7. In Operating Hours, select the record that defines the appointment slots. For example, in this Operating Hours record, the company has 3-hour slots on Mondays and Wednesdays, and 2-hour slots on Tuesdays, Thursdays, and Sundays.
            Operating Hours
          8. In Statuses That Allow Rescheduling, enter statuses that aren’t pinned.
          9. Fill in the remaining settings. Your selections are reflected in the preview of the component.
            Note
            Note The service appointment’s territory time determines the time zone. If the service appointment’s territory time is empty, the end user’s time zone is used.
          10. Publish the site.

          Step 3: Enable Customers to Cancel Appointments

          To enable customers to cancel their appointments in the Appointment Assistant Self-Service Scheduling screen, you must disable the option for mentioning an assigned user when the service appointment is dispatched.

          1. In Field Service Admin, open the Field Service Settings tab.
          2. Under Dispatch, select Scheduled Jobs.
          3. Disable the Mention assigned user when the Service Appointment is dispatched option.
            Scheduled jobs
          4. Save your changes.

          Step 4: Create a Messaging Component for Existing Appointments

          Create a messaging component for messages that let customers open the Appointment Assistant Self-Service Scheduling page.

          1. From Setup, in the Quick Find box, enter Messaging, and then select Messaging Components.
          2. Click New Component.
          3. Click Notification, and then click Next.
          4. Enter the plain text version of your automated message. Include the URL placeholder that lets customers navigate to the Experience Builder site that you configured. For example: {!ServiceAppointment.ApptBookingInfoUrl}
          5. Click Next.
          6. Enter a name and description for your component. For example, Appointment Booking.
          7. Click Done. The Messaging Component Builder opens.
          8. In the left sidebar, click Parameters.
          9. In the Custom Parameters section, click New.
          10. Configure the URL parameter.
            • Name—A label for the parameter. For example, Change Appointment Booking.
            • API Name—ApptBookingInfoUrl
            • Type—Text
            • Object Type—Service Appointment
          11. Click Save.
          12. (Optional) In the left sidebar, click Text to further customize the plain text version of your automated message.
          13. Save your changes.

          Step 5: Create Flows to Send Messages

          Streamline your messaging process by setting up flows that use the messaging components that you created.

          1. From Setup, in the Quick Find box, enter Process Automation, and then select Flows.
          2. Click New Flow.
          3. Select Record-Triggered Flow, and then click Create.
          4. Set up the service appointment conditions that send the URL. For example, to send the URL when a service appointment moves to the Scheduled status, in the Configure Start window:
            1. In Object, enter Service Appointment.
            2. In Trigger the Flow When, select A record is updated.
            3. In Condition Requirements, select All Conditions Are Met (AND).
            4. Set the Condition Requirements.
              • In Field, enter Status.
              • In Operator, select Equals.
              • In Value, enter Scheduled.
            5. In When to Run the Flow for Updated Records, select Only when a record is updated to meet the condition requirements.
            6. To run the flow after the record is saved, select to optimize the flow for Actions and Related Records.
            7. Click Done.
          5. Add new resources that connect between the community URL, Service Appointment ID, and URL expiration time.
            1. From the Toolbox, click New Resource, and then create a variable for the URL input.
              • In Resource Type, select Variable.
              • Enter an API name.
              • In Data Type, select Text.
              • In Default Value, enter the link to the Experience Builder site, followed by these characters: /?guestToken=#{!$Record.Id}#[Time in Hours]
                Note
                Note The [Time in Hours] indicates how long the URL is valid for from the time it’s generated.
                Note
                Note To make sure that the link to the Experience Builder site is accurate, copy it from the Experience Builder settings.
                Published Status link to Experience Builder site
              • In Availability Outside the Flow, select Available for input.
                New Resource screen for input
              • Click Done.
            2. Click New Resource again, and then create a variable for the URL output.
              • In Resource Type, select Variable.
              • Enter an API name.
              • In Data Type, select Text.
              • In Availability Outside the Flow, select Available for input and Available for output.
                New Resource screen for output
              • Click Done.
          6. Add the Apex action.
            1. To add an element to the flow, click Add element.
            2. Under Interaction, select Action.
            3. In the Action field, enter FSAA.AARebookingGetURLcontroller.
            4. Enter a name for the Label. The API Name is automatically populated accordingly.
            5. In Set Input Values:
              • Include the valueFromFlow option.
              • Select the URL input variable that you created in step 5.
            6. Under Advanced:
              • Select Manually assign variables.
              • In the output field, select the URL output variable that you created in step 5.
                Apex action details window
            7. Click Done.
          7. Add the Update Records component.
            1. To add an element to the flow, click Add element.
            2. Under Data, select Update Records.
            3. Enter a name for the Label. The API Name is automatically populated accordingly.
            4. Under Set Field Values for the Service Appointment Record:
              • In Field, select ApptBookingInfoUrl.
              • In Value, select the URL output variable that you created in step 5.
            5. Click Done.
          8. Add the Send Conversation Messages action.
            1. Add a collection variable for the Messaging User object. This collection variable is populated with a list of messaging user record IDs based on your criteria. For example, you can configure your flow to send an automated message to a subset of messaging users based on channel and consent status.
            2. Add an action to the canvas. The New Action window opens.
            3. Select the Send Conversation Messages action and complete the fields.
              • In Messaging Users, select the collection variable that you created.
              • In Messaging Component, select your new messaging component. Make sure that the component status is Active on the Messaging Components page in Setup.
              • Select Any Time for when to send the message.
              • Select Yes, apply Messaging End User settings for end user’s consent preferences.
              • In Session Longevity, select Yes, End Session Immediately if the end user doesn’t need to respond in this messaging session.
              You can use values from earlier in a flow to set inputs for the message. If the action fields don’t contain valid inputs, the flow fails.
              Send Conversation Messages flow action
            4. Click Done.
          9. Save and activate the flow.
          • To help troubleshoot flows, turn on flow debug logs.
          • For an optimal customer experience, use complete addresses.
          • The limit for active flows per flow type is 2,000.

          Step 6: Enable Complex Work for Existing Appointments

          If you’re using Enhanced Scheduling and Optimization, you can let users reschedule appointments with scheduling dependencies with Appointment Assistant Self-Service Scheduling. Appointment Assistant Self-Service Scheduling supports complex work only if you’re using Enhanced Scheduling and Optimization.

          Note
          Note When using complex work, it’s possible that the Maximum days to get candidates or to book an appointment option in Field Service Settings can minimize the number of days that the user gets slots for. See Known Issue.

          Give guest users access to the required service appointments. To minimize what guest users can access, only share service appointments used for Appointment Assistant.

          1. From Setup, in the Quick Find box, enter Security, and then select Sharing Settings.
          2. For manage sharing settings, select Service Appointments.
          3. Under Sharing Rules, click New.
          4. For Rule Type, select Guest user access, based on criteria.
          5. Enter the sharing criteria. For example, enter this criteria.
            1. For Field, select Status.
            2. For Operator, select not equal to.
            3. For Value, enter Completed.
          6. Select to include records owned by high-volume users.
          7. Share the rule with <Your Site Name> Site Guest User.
          8. Save the rule.
           
          Loading
          Salesforce Help | Article