Blackbaud + Google Onboarding

Modified on Thu, 30 Oct at 2:54 PM

Step 1: Set up your Google environment (5 minutes)

  • Create a new User in Google, who will be the "calendar owner" and creator of the events that get created. Name the User "SchoolCal Admin" or something related, and set the email as ("schoolcal@yourdomain"). We'll need to log in to SchoolCal with this User later in onboarding.

  • Create a "Custom Admin Role" in Google Admin Console. Name it something like, "Calendar Administrator". This role needs the following permissions:

    • USERS -> "READ" access to

    • CALENDAR -> "ALL SETTINGS"

    • The role should have 11 privileges assigned

  • Assign your new SchoolCal user to the new custom role

    • Press the "assign members" button 

    • Assign your SchoolCal user (created in the previous step) to this role

  • Create a Domain Wide Delegated service account to access the required scopes

    • Login to Google Admin Console and navigate to Manage Domain Wide Delegation (Security > API Controls > Manage Domain Wide Delegation)

    • Click “Add new

    • Input the Client ID from your SchoolCal account

    • Enter the required OAuth scopes below the Client ID. These are found on the SchoolCal Google Connection screen.

Step 2: Set up your Blackbaud environment (5 min)

  • Install the SchoolCal application from the Blackbaud Marketplace

  • Create a new Blackbaud user with a Blackbaud Connect ID - connecting it with one of the Google accounts created in step 1.

    • Name: SchoolCal

    • Email: schoolcal@{yourdomain}

    • Permissions:

      • Academic Group Manager

      • Activity Group Manager

      • Advisory Group Manager

      • Athletic Group Manager

      • Content Manager

      • SKY API Data Sync

      • SKY API Reporting

      • SKY API Basic

      • Teacher (mark "effective immediately" with a start date of yesterday)

Step 3: Connect Blackbaud to SchoolCal (10 min)

  • Open an incognito browser window for these steps

  • Login to Blackbaud with your new SchoolCal user (schoolcal@yourdomain). Keep this browser tab open.

  • In a new browser tab, login to SchoolCal with the Blackbaud User you created (schoolcal@{yourdomain})

  • Click “Connections” from the left-hand menu

  • Find “Blackbaud” > click “Manage Connection” > click “Authorize”

  • On the Blackbaud screen, click "Authorize"

  • On the SchoolCal screen, click “Data” from the left-hand menu

  • Click “Load SIS Data” 

Step 4: Connect Google to SchoolCal (5 min)

  • Click “Connections” from the left-hand menu

  • Find “Google” and click “Manage Connection

  • Click “Edit

  • Enter the email address for your SchoolCal Google user

  • Click “Update Connection

Step 5: Run a Test Sync (10 min)

  • Navigate to “Flows” in the left-hand menu

  • Click “Add New Flow

  • Select Flow Type: “Class Schedules to User Calendars

  • Input Flow Name, e.g. “Schedules Test Sync”

  • Find your new Flow under all Flows, and click View Details

  • Click Filters and apply desired filters for this Flow

  • Click Template and customize how the events are displayed

    • Select an event type from the “Available Fields” panel on the right

    • This will display all metadata available to add to the template

    • To input metadata, wrap metadata names in brackets {{ }}, and use periods to indicate nested or “child” schema

    • Example: to include a Class Schedule’s course name, you’d write: {{Section.Course.Name}}

  • Enable the Pilot Mode toggle at the top of the Flow page

  • Click the Pilot Users link below the toggle, and input the users you want to run a test sync with

  • Click Sync Flow Now to initiate a sync

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article