GoMeddo Experience Cloud for unauthenticated Guest Users

This article describes the configuration steps and most strict Sharing Settings required for GoMeddo to function correctly in a Experience Cloud site which is used by unauthenticated Guest users. 

Keep in mind that GoMeddo is a native Salesforce application built with custom objects. This means you will need to follow Salesforce best practices around object sharing and permissions. This article tries to touch upon the most common requirements, but these may differ from what your use case needs.

With the Winter ’21 release, Salesforce is disabling the View All, Modify All, edit, and delete object permissions for guest users in existing orgs. This means that when using GoMeddo functionality, they will only be able to create reservations, not reschedule or cancel them, which would be an edit.

1. Create Experience Cloud site for Guest user

Create an Experience Cloud site and make sure it’s accessible to Guest users

 

2. Create and assign Permission set & License

  1. Assign the GoMeddo Experience Cloud Guest User permission set to the Guest User corresponding to your Experience Cloud site. You can acces this as follows:

    1. Go to your site’s Builder

    2. Click on Settings

    3. In General click on the Guest User Profile

       

    4. Click on Assigned Users

    5. Click on the user name under Full Name

    6. Scroll to Permission Set Assignments and assign the GoMeddo Experience Cloud Guest User permission set.

    7. Scroll to Managed Packages and assign a GoMeddo licence. You can skip this step on Sandbox orgs

       

Using Screen Flows?

Follow this article to give Guest Users access to specific Screen Flows.

3. Change record owner

  • Change Record Owner from GoMeddo (or APP) to another user for all objects which need to be accessed by the Guest user for (this list will be longer if you use more GoMeddo functionality)

    • Calendar

    • Conflict

    • Dimension

    • Reservation

    • Reservation Color

    • Reservation Status

    • Reservation Type

    • Resource Type

    • Resource

    • View

4. Enabling sharing rules

Enable sharing rules:

  • Go to Setup

  • Go to Sharing Settings

  • Define a Guest user access, based on criteria sharing rule for at least the following objects (this list will be longer if you use more GoMeddo functionality)

    • Availability

    • Calendar

    • Conflict

    • Dimension

    • Reservation

    • Reservation Color

    • Reservation Status

    • Reservation Type

    • Resource

    • Resource Grouping

    • Resource Type

    • View

These settings allow you to show you a very basic calendar to a Guest user and make a reservation. If you want to show more, you might need to add more sharing rules based on the specific you want to show.

(optional) Enable the Allow guest users to bypass sharing for specific operations setting on the GoMeddo Settings page. This setting allows guest users to bypass sharing in very specific situations to enable functionality that would otherwise be impossible to have guest users perform. (Note CRUD and FLS is still checked where applicable)
These situations are:

  1. Creating a recurring reservation. It will bypass sharing in with a small extra update that just links the reservation to the recurring reservation. Only updating the recurring reservation id field.

  2. Adding junctions/services to a new reservation. Sharing is bypassed on the insert operation of the serviceReservations and other junctions so they can be linked to the new reservations correctly.

  3. Updating the Outlook/Google sync data on the reservation after syncing it to Outlook/Google this update ensures that the sync stays up to date and does not generate duplicates.

5. Expose the calendar

If needed, follow this article to expose the calendar on your site.

6. Screen Flows

If needed, follow this article to give Experience Cloud users access to specific Screen Flows.

7. Done

Done! Unauthenticated users should now have access to your Experience Cloud site with GoMeddo functionality. Keep in mind that GoMeddo is a native Salesforce application built with custom objects. This means you will need to follow Salesforce best practices around object sharing and permissions. This article tries to touch upon the most common requirements, but these may differ from what your use case needs.

Related articles