任何開發人員都可以向 Google Classroom API 發出要求,但部分 Google Classroom 功能僅供特定使用者使用。各項功能可能會有不同規定,例如必須具備特定類型的 Google Workspace for Education 授權。如要詳細瞭解各個 Google Workspace for Education 授權層級的功能,請參閱版本比較頁面。
[null,null,["上次更新時間:2025-08-01 (世界標準時間)。"],[],[],null,["# User eligibility\n\nWhile any developer can make requests to the Google Classroom API, some\nGoogle Classroom features are only available to certain users. Each feature\ncan have different requirements, such as having a certain Google Workspace for Education license type.\nFor a detailed breakdown of features at each Google Workspace for Education license level, see the\n[editions comparison page](//edu.google.com/intl/ALL_us/workspace-for-education/editions/compare-editions/).\n| **Key Term:** An **eligible** user has the **capability** to use a certain Classroom feature if they meet the feature requirements.\n| **Key Point:** Capability is determined separately for each user and can change over time. Capability eligibility for some features of the Classroom API might differ from the corresponding features in the Google Classroom app. For example, certain [license requirements](/workspace/classroom/rubrics/limitations#license-requirements) apply when creating, modifying, or deleting rubrics with the API.\n\nFeatures with eligibility requirements\n--------------------------------------\n\n\u003cbr /\u003e\n\nThe following Classroom API features are only available to eligible\nusers:\n\n- Creating and modifying [Classroom add-on](/workspace/classroom/add-ons) attachments.\n- Modifying [grading period settings](/workspace/classroom/grading-periods/manage-grading-periods#licensing_requirements).\n- Creating, modifying, and deleting [rubrics](/workspace/classroom/rubrics/limitations#license-requirements).\n\nDetermine user capabilities\n---------------------------\n\nRequests to Classroom API are made on behalf of individual users.\nTherefore, you should check whether a user has the appropriate capabilities\nbefore issuing API requests with eligibility requirements.\n| **Key Point:** Consider checking user capabilities proactively so you can tailor your product's appearance or behavior to match the Classroom features that they can access.\n\nTo determine whether a user has a particular capability, make an API request to\nthe [`checkUserCapability`](/workspace/classroom/reference/rest/v1/userProfiles/checkUserCapability) method. Include the appropriate [`Capability`](/workspace/classroom/reference/rest/v1/userProfiles/checkUserCapability#capability) type\nfor the Classroom feature you intend to use. Specify the\nappropriate `Capability` for each feature:\n\n| To see if the user... | `Capability` |\n|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------|\n| Can [create](/workspace/classroom/reference/rest/v1/courses.courseWork.addOnAttachments/create) or [modify](/workspace/classroom/reference/rest/v1/courses.courseWork.addOnAttachments/patch) a Classroom add-on attachment associated with the Google Cloud project of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to make the request | `CREATE_ADD_ON_ATTACHMENT` |\n| Can [modify](/workspace/classroom/reference/rest/v1/courses/updateGradingPeriodSettings) grading period settings | `UPDATE_GRADING_PERIOD_SETTINGS` |\n| Can [create](/workspace/classroom/reference/rest/v1/courses.courseWork.rubrics/create), [modify](/workspace/classroom/reference/rest/v1/courses.courseWork.rubrics/patch), or [delete](/workspace/classroom/reference/rest/v1/courses.courseWork.rubrics/delete) a rubric | `CREATE_RUBRIC` |\n\nNext, check the `allowed` field in the response. If `allowed` is `true`, then\nthe user has access to the chosen `Capability`. You can then make API requests\nrelated the `Capability` on behalf of the user.\n| **Important:** Even when a user is eligible, it's still possible for API requests that depend on the eligibility to fail. Eligibility implies that a user can make use of a Classroom feature, not that a specific request will succeed."]]