Classroom 團隊已建立一組一致性測試,有興趣的學生資訊系統合作夥伴可藉此瞭解 Google 的需求。您可以先執行一致性測試,再與 Classroom 團隊聯絡,瞭解產品是否符合 Google 的要求。
取得開發人員示範網域
您可能需要存取即時 Google Classroom 執行個體,才能建構及驗證整合功能。符合資格的測試使用者必須具備Google Workspace for Education Plus 版本。如果您沒有這些授權的 Google Workspace for Education 網域管理員存取權,請完成相關步驟,取得開發人員測試網域,並要求升級示範網域。系統會為您的網域佈建 10 個 Google Workspace for Education Plus 授權。
[null,null,["上次更新時間:2025-08-29 (世界標準時間)。"],[],[],null,["# OneRoster for Student Information Systems\n\nGoogle Classroom supports gradebook sync and roster import for a number of\nOneRoster-compliant Student Information Systems (SIS). Google partners with SIS\nplatforms that meet Google-specified OneRoster requirements.\n| **Note:** This guide is for SIS platforms that want to integrate with Google Classroom. If you're a teacher or administrator that *uses* a SIS, you can check your [Student Information System's partnership status](//support.google.com/edu/classroom/answer/9356588?sjid=5722900537949084202-NA#partnerships&zippy=%2Ccheck-sis-partnership-status).\n\nPartnering with Classroom provides administrators the ability to\nconnect their Classroom classes with your SIS.\n\n**Figure 1.** When Student Information Systems (SIS) partner with\nClassroom, administrators can choose the SIS in the drop-down.\n\nSIS partner development journey\n-------------------------------\n\nIf you are interested in partnering with Classroom, fill out\nthe [interest form](https://docs.google.com/forms/d/e/1FAIpQLSfHEy9dkwuDpvWghYWaVmgrPS58CL5YXO5f6jB_5dOO-_eotg/viewform).\n\nThe Classroom team has created a set of [conformance tests](//github.com/googleworkspace/oneroster-integration-conformance-tests) that\ninterested SIS partners can use to familiarize themselves with Google's\nrequirements. You have the option of running the conformance tests before\nreaching out to the Classroom team to determine how closely your\nproduct meets Google's requirements.\n\n### Obtain a developer demo domain\n\nYou may want access to a live Google Classroom instance to build and validate\nan integration. Eligible test users need the\n[Plus edition of Google Workspace for Education](//edu.google.com/intl/ALL_us/workspace-for-education/editions/compare-editions/). If you don't have administrator\naccess to a Google Workspace for Education domain with these licenses, complete the steps to [get a\ndeveloper test domain](/workspace/classroom/guides/onboarding/prerequisites#get-developer) and\n[request a demo domain upgrade](/workspace/classroom/guides/onboarding/prerequisites#request-demo). Your domain will\nbe provisioned with 10 Google Workspace for Education Plus licenses.\n\n### Access and run the tests\n\nIn order to run the tests, you need the following:\n\n- Token URL to retrieve OAuth 2.0 credentials\n- One Roster URL ending in `/ims/oneroster/v1p1`\n- Client ID\n- Client secret\n- A teacher email address\n\nYou can run the tests by using [Google Colab](//colab.research.google.com/) or [Jupyter notebook](//docs.jupyter.org/en/latest/running.html). Both Colab\nand Jupyter notebook let you run all tests at once. This helps you generate the\ntest results to [share with the Google Classroom team](#share-test-results).\n| **Important:** Running the conformance tests successfully is not a guarantee that your product will be approved to partner with Google Classroom.\n\nSIS requirements and expected behavior\n--------------------------------------\n\nThe Google-defined tests exist to provide interested SIS partners a way to\ndetermine whether their product meets Google's OneRoster consumption\nrequirements and to minimize errors that users might experience when utilizing\nSIS integrations in Classroom. Read through the following\npointers on the tests. In GitHub, each test has a title that is referenced in\nthe pointers. Keep in mind that the pointers can help clarify questions, but\nit's not a comprehensive list of the tests. Ensure you have run all the tests\nprovided in GitHub.\n| **Important:** The following table includes a few pointers to help you integrate with Classroom. Use the conformance test results to ensure the requirements have been met.\n\n| Test | Pointers |\n|-----------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| Teachers: GetAllTeachers | The `GET /teachers` endpoint is called with a `limit` query parameter. In subsequent tests, this parameter is used to ensure that your product can support a page size of 10,000. |\n| Teachers: GetAllTeachers with email filter | The `GET /teachers` endpoint is called with a `filter` query parameter used to filter based on a teacher email address. This will use the teacher email address you provided in the Credentials section of the tests. |\n| Classes: GetClassesForTeacher | The `/teachers/{teacher_sourced_id}/classes` endpoint is called with a `filter` query parameter used to filter based on active classes. |\n| Students: GetStudentsForClass | The `GET /classes/{class_sourced_id}/students` endpoint is called. The student email must be returned in the response. |\n| GetGradingPeriodsForTerm | Grading periods support is tested using the `term_sourced_id`. This `term_sourced_id` is used to retrieve the grading periods in the term by calling the `GET terms/{term_sourced_id}/gradingPeriods` endpoint. |\n| LineItem: Create | Grading periods aren't required when calling `PUT /lineItems/{line_item_sourced_id}`. |\n| LineItem: Edit | The API call shouldn't return an error if a long assignment title length is included. The test includes an assignment title length of 100+ characters. |\n| Result: Edit | It should be possible to set the `score` to a value greater than the `resultValueMax` to represent extra credit. |\n| Result: Delete | The `DELETE /results/{result_sourced_id}` endpoint is required. |\n| LineItem (Optional / Cleanup): Delete and Get | The `DELETE /lineItems/{line_item_sourced_id}` endpoint is not required. It is optional and used for data clean-up. The subsquent `GET /classes/{class_sourced_id}/lineItems` endpoint is also optional, and tests that the line item was deleted. |\n\nShare the test results with the Google Classroom team\n-----------------------------------------------------\n\nAfter you run the tests, a full report with the results of each test is\ngenerated. These tests are used to determine whether your product meets Google's\nOneRoster 1.2 consumption requirements. Download or take a screenshot of the\ngenerated report to share with the Google Classroom team.\n\nGet support\n-----------\n\nEmail [classroom-sis-external@google.com](mailto:classroom-sis-external@google.com) with any questions.\n\nLinks\n-----\n\n- [Conformance tests on GitHub](//github.com/googleworkspace/oneroster-integration-conformance-tests)"]]