Add-on requirements

Version 0.3. Nov 22, 2022

The criteria on this page apply to all Classroom add-ons. Your add-on must meet all applicable required items to be approved for listing in the Google Workspace Marketplace (GWM) and an add-on that "Works with Classroom".

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

Requirements

ID Type
1.0 End-user License (if applicable)
  1.1 A user-friendly message MUST be shown to the user when the user doesn't have a license. REQUIRED
  1.2 The message MUST clearly state the reason the add-on can't be used and suggest a course of action for the user to remedy the situation. REQUIRED
  1.3 The add-on's GWM listing MUST specify details about the licensing requirements that may be required to use the add-on. If the add-on has a paid tier, the GWM listing MUST provide a link to a webpage that provides more information about pricing or how to contact a salesperson. REQUIRED
2.0 End-user sign-in
  2.1 For teacher sign-in, the add-on MUST use Google sign-in. REQUIRED
  2.2 The add-on MUST use Google SSO to automatically sign the teacher in on subsequent visits without showing a login prompt. REQUIRED
  2.3 When the login hint doesn't produce a match with the currently signed-in user, the add-on MUST prompt the user with a sign-in button and pass the login_hint to the auth library to filter out invalid accounts. REQUIRED
  2.4 When hd is provided, the add-on MUST prompt the user with a sign-in button and pass the hd parameter to the auth library to filter out invalid accounts. REQUIRED
  2.5 If a student is asked to sign-in, the add-on MUST use Google sign-in and Google SSO on subsequent visits without showing a login prompt. REQUIRED
  2.6 A student SHOULD sign-in when the attachment supports student work so that a submissionId can be requested and used to associate the student with the work. RECOMMENDED
  2.7 When the Classroom user is not already signed into the add-on (as determined by looking at the login hint) the add-on MUST present a 'Sign-in with Google' button for explicit user action to trigger the sign-in process. Note: This is necessary to meet Google branding guidelines but it also helps avoid pop-up blockers. REQUIRED
  2.8 The add-on SHOULD display who the currently signed-in user is. RECOMMENDED
3.0 General
  3.1 The add-on MUST adhere to the general GWM approval guidelines. REQUIRED
  3.2 If a task is launched into a new tab or window from any of the iframe journeys, it MUST provide a user-friendly message to return to Classroom. REQUIRED
  3.3 The user MUST only complete the journey using an add-on workflow and not switch over to a courseWork flow or use the Classroom Share Button. REQUIRED
  3.4 Localization choice: language SHOULD be based on local preference set by the browser when available. RECOMMENDED
  3.5 If an add-on defines maxPoints, it MUST implement grade passback. REQUIRED
  3.6 If an add-on implements grade passback, the add-on SHOULD do so at the completion of an activity by the student using stored teacher credentials. RECOMMENDED
  3.7 If an add-on implements grade passback, the add-on MAY do so using the teacher's credentials at the time the teacher views the student work. OPTIONAL
  3.8 The add-on MUST NOT have horizontal scrolling within the iframe. REQUIRED
  3.9 Add-ons SHOULD conform to the WCAG 2.1 level AA guidelines on accessibility. Add-on developers will self-report that this requirement is met at the time of submission and that the add-on continues to stay in conformance with future changes to the add-on. RECOMMENDED
4.0 Attachment Discovery
  4.1 An attachment MUST include a studentWorkReviewUri when the attachment supports student work so that the attachment is treated as an activity type and not content type. REQUIRED
  4.2 The teacher MUST be able to access all content/activities available to the teacher REQUIRED
  4.3 The teacher MUST be able to preview the content/activity prior to making a commitment to attach it to the assignment. REQUIRED
  4.4 If work is necessary by the teacher to create content/activity before it's able to be attached, that work SHOULD be completed in the iframe. RECOMMENDED
  4.5 The teacher SHOULD be able to search or browse for content/activities using a variety of ways such as: text search, recents, my content, categories or filters. RECOMMENDED
5.0 studentViewUri
  5.1 If the studentViewUri is launched, the add-on SHOULD NOT pop the user out of the iframe to complete a task. RECOMMENDED
  5.2 If an activity requires a student to take an action in order to mark the work finished, the button MUST NOT be labeled 'Turn-in' to avoid confusion with the Classroom Turn-in button. REQUIRED
  5.3 If the add-on activity pops out of the iframe, there MUST be a preview about the task in the iframe. REQUIRED
  5.4 If the add-on activity pops out of the iframe, there SHOULD be a prompt for students to return to Classroom. RECOMMENDED
  5.5 If the studentViewUri is launched from a copied assignment or copied course, the add-on MUST NOT display an error page in the iframe. REQUIRED
  5.6 If the studentViewUri is launched from a copied assignment or copied course, the add-on SHOULD display a new attachment for the student to complete and SHOULD NOT display a student's responses from previous assignments or courses in the iframe. RECOMMENDED
6.0 teacherViewUri
  6.1 The teacher MUST be able to see what the student will see when they do the assignment. REQUIRED
  6.2 The teacher MAY see additional information relevant to the assignment (e.g. notes, annotations, an answer key, etc.). OPTIONAL
  6.3 If the teacherViewUri is launched from a copied assignment or copied course, the add-on MUST NOT display an error page in the iframe. REQUIRED
  6.4 If the teacherViewUri is launched from a copied assignment or copied course, the teacher SHOULD be able to preview the add-on attachment in the iframe. RECOMMENDED
7.0 studentWorkReviewUri
  7.1 If the studentWorkReviewUri is launched, the add-on MUST render that student's work for teacher review within the iframe. Supplemental material may link outside of the iframe. REQUIRED
  7.2 The add-on MUST NOT enable navigation between students in this view. Navigation between students MUST take place in the Classroom UI only. REQUIRED
  7.3 The add-on MAY show additional information relevant to the assignment (e.g. notes, annotations, an answer key, etc.). OPTIONAL
  7.4 The add-on MAY show assignment-level insights (e.g. class averages, common wrong answers, etc.). OPTIONAL
  7.5 If the studentWorkReviewUri is launched from a copied assignment or copied course, the add-on MUST NOT display an error page in the iframe. REQUIRED
  7.6 If the studentWorkReviewUri is launched from a copied assignment or copied course, the add-on SHOULD display the correct student's responses and SHOULD NOT display a student's responses from previous assignments or courses in the iframe. RECOMMENDED
8.0 Classroom mobile support
  8.1 When the Classroom mobile app launches a teacherViewUri, studentViewUri or studentWorkReviewUri, the URL MUST either open the partner's mobile native app or partner's mobile web app, and in either case deep-link to the correct view. If the device is unsupported, a message MUST be displayed to the user to let them know it's an unsupported device and ideally, what devices are supported. REQUIRED
  8.2 Student work SHOULD be able to be completed on a mobile device. RECOMMENDED

Changelog

Version 0.3 Updated Nov 22, 2022
2.3 Correction to the login hint guidance.
2.4 Incorporated a scenario where implementing hd is required.
3.2 Reworded "provide path".
5.5, 5.6, 6.3, 6.4, 7.5, 7.6 Added course copy required and recommended guidance for the studentViewUri, teacherViewUri, and studentWorkReviewUri.
Version 0.2 Updated Oct 29, 2021
1.3 Tweaked the text to be more clear of intent.
3.1 Added "The add-on MUST adhere to the general GWM approval guidelines found on their website."
3.9 WCAG changed REQUIRED to RECOMMENDED.
5.1 Changed REQUIRED to RECOMMENDED.
5.3 Added "If the add-ons pops out of the iframe, there MUST have a preview about the task in the iframe."
5.4 Added "If the add-on pops out of the iframe, there SHOULD be a prompt for students to return to Classroom."
8.1 Added "If the device is unsupported, a message MUST be displayed to the user to let them know it's an unsupported device and ideally, what devices are supported."
8.2 Mobile student work changed from REQUIRED to RECOMMENDED.
Version 0.1 Updated Sept 22, 2021
  Initial release.