Google Drive Integration

Overview - Google Drive Integration

Are you sure you want to remove this component?

Setting up the Google Drive Integration

Are you sure you want to remove this component?

Please follow the setup instructions below to configure the Google Drive API for Schoolbox to use. Please contact the Schoolbox Support Team (support@schoolbox.com.au) to assist, if you encounter issues.

1. Sign into Google Services with the Google account that you wish to link Schoolbox to for integration (one setup per school).

NOTE: Users can see the email address of the Google account during Authorisation request process.

2. Navigate to: https://console.developers.google.com.

3. Click the hamburger (3 line) menu in top left corner and select 'IAM & Admin'. 

image.php?hash=685a762fc75ae3ab67d52ad0949a9d9d0a615be3

4. Click 'Create Project'. 

image.php?hash=407b7d2d78858e2ad6ef2ed15f8706a160e1c7d7

5.  Give your project a name and Project ID.

NOTE: You cannot change the Project ID later. 

6.  Click the hamburger menu in top left corner and select 'API Manager' and then 'Credentials'.

image.php?hash=b76f90cd29bdebec23a5346fa1aab3b5d33e6ee3

7. Select 'OAuth consent screen'.

image.php?hash=cf10798ceeb8be03806faf73ebb7b4b32bae8880

8. Fill in the details on the OAuth consent screen:

image.php?hash=0e3601ae86c33e971b60ebfa42b0bbbda4b8a83a

9. Click 'Save'. You will be taken back to credentials.

10. Click on 'create credentials' drop down and select 'OAuth client ID'. 

image.php?hash=1822087a6b1242b85c124891eda482b2f7450901

11. Add credentials for a new OAuth Client ID:

image.php?hash=4799137023418182189a8d7dc1c12390acb463d3

image.php?hash=68aa5d4bbee67fd48783120a7889f08f80d1fe75

12. Click 'Create'. This will generate your client ID and client secret. Copy these details, we recommending labelling them carefully with 'client ID' and 'client secret'. These will be needed later.

image.php?hash=046ccb53b3a10fff9be78cd7439523e4f9725d1c

13. Click 'OK'.

14. You will now need to create a new API Key. Select 'Browser Key'. 

image.php?hash=edf0b9c13cc91eda84db998ffeba854e9e93b0ef

15. Fill in the details to create browser API key:

  • Name: Schoolbox Key
  • Accept request from these HTTP referrers (web sites): Fill in HTTP Referrers with: *.{school domain}* (E.g. *.school.edu.au/* ).

image.php?hash=612946a94d31791b2a64f7b164427f5712d5e7be

16. Click 'Create'. Your API key will then appear. Record your API key. 

image.php?hash=fa44b3f0b3bae6006fd13956cd4bd222dacab4fc

17. Click 'OK'.

18. Navigate to API Manager > Library > Google APIs.

image.php?hash=4dff82509119855015ca38718c435a67a301a2f1

19. Search 'Drive API'.

image.php?hash=705a8ed535cb04e2a1664e0ea2d0b8f4aacd695a

20. Select 'Google Drive API' by clicking on the name.

image.php?hash=bc8f127f86f66e13d045a33efba8b6310f804d6c

21. Click 'Enable'.

image.php?hash=fbc1c35b269f2eee702baed60b7b245a2025df96

22. Naviagte back to API Manager > Library > Google APIs, as in Step 18.

23. Search 'Picker API'.

image.php?hash=fc0312457e497fec772eff935d19cee9cd615b18

24. Select 'Google Picker API' by clicking on the name.

image.php?hash=ab908048c805ee5c4938f106a998dcacc045dace

25. Click 'Enable'.

image.php?hash=80bd1cd1bb2372a370d643dec394838a9ecef464

26. Navigate to API Manager > Dashboard > Enabled APIs.

image.php?hash=c1c56754a4d7f3a8fae703070b468b6cbf7b60c0

27. Click the cog icon next to Google Drive API to configure it. 

image.php?hash=64230d975b32ff3abad5f0606663ef8463ad31bb

28. Fill in the form. All non-mandatory fields can be left blank:

  • Icons: Upload your equivalent of https://canary.schoolbox.com.au/images/logo.php?logo=skin_logo_square&size=apple120 (from earlier) into every size of Application Icon and Document Icon.
  • Drive Integration: Check the box for Authentication → Automatically show OAuth 2.0 consent screen when users open my application from Google Drive.
  • Client ID: Copy the Client ID from Step 12 into the Client ID field, excluding the .apps.googleusercontent.com suffix.
  • Open URL: Enter {schoolbox domain}.

29. Click 'Save'.

30. In a new tab or window, go to your school's Schoolbox instance and navigate to Admin > Settings >  3rd Party Services.

image.php?hash=9da475f81212873e85ec029c18501be06aa173df

31. Enter the Google Apps API Key Google Apps Client ID into the relevant fields. 

image.php?hash=d93f9cbfb90fe00f8103ebb3ed0e897024843e9f

NOTE: Do not include the .apps.googleusercontent.com suffix in the Client ID.

NOTE: You can find these again by navigating back to: APIs & Auth > Credentials.

Known Issues

Are you sure you want to remove this component?

  1. If you are accessing Schoolbox via a single word domain (E.g. http://schoolbox/) instead of the full domain (E.g. http://schoolbox.school.edu.au/), the Google Drive integration will fail to display. This is due to restrictions provided by the Google Drive API.
  2. If there is a reverse proxy sitting between users and Schoolbox, you may need to enable an extra header (Authorization) to be forwarded through to Schoolbox instead of being stripped out. The symptom of this is after selecting the file in Google Drive, it gets permanently stuck on the message "Collecting files from Google".

Testing the Integration

Are you sure you want to remove this component?

You should now be able to test the Google Drive integration by clicking on a file drop zone or file upload area, selecting “Google Drive” from the available options and following the prompts to connect.

image.php?hash=064c7e94cb21915de0b8864bab09f61c357e432e