Google api 代码:403消息:调用方没有权限
我正在使用Google教室API将我的业务系统集成到Google教室中。我可以使用服务帐户创建和列出课程。但始终使用OwnerId=“我”。我正在创建的所有课程都使用我的服务帐户的客户id。 如果我尝试使用其他ownerID创建,则会出现以下错误: 代码:403 消息:调用方没有权限 域名:全球 理由:禁止 状态:权限被拒绝 关于如何解决这个问题有什么建议吗Google api 代码:403消息:调用方没有权限,google-api,google-classroom,Google Api,Google Classroom,我正在使用Google教室API将我的业务系统集成到Google教室中。我可以使用服务帐户创建和列出课程。但始终使用OwnerId=“我”。我正在创建的所有课程都使用我的服务帐户的客户id。 如果我尝试使用其他ownerID创建,则会出现以下错误: 代码:403 消息:调用方没有权限 域名:全球 理由:禁止 状态:权限被拒绝 关于如何解决这个问题有什么建议吗 谢谢。在为课堂创建实例之前,您必须在创建凭据时使用电子邮件模拟用户 .setServiceAccountUser("UserEmail")
谢谢。在为课堂创建实例之前,您必须在创建凭据时使用电子邮件模拟用户
.setServiceAccountUser("UserEmail")
样本代码附在下面
final NetHttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId("class-room-service-account-id")
.setServiceAccountPrivateKeyFromP12File(new File("/Credentials/MyProject.p12"))
.setServiceAccountScopes(SCOPES)
.setServiceAccountUser("UserEmail") //There should be the Email for the user you are creating course
.build();
final NetHttpTransport HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport();
ClassRoom service = new Classroom.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME)
.build();
在此之后,使用OwnerId“me”将为被模拟的用户创建课程。您可以参考此。确保您尝试添加的帐户与课程位于同一域中。此外,如上所述,您需要再次检查您的当前活动帐户,并确保您的当前活动帐户具有该权限。或者,您需要转到您的谷歌云控制台为您当前的活动帐户分配权限,或者您需要切换您的帐户。谢谢。帐户与课程位于同一域中。我试图使用谷歌管理控制台设置权限。仍在获取错误代码:403消息:调用方没有权限域:全局原因:禁止状态:权限\u DENIEDI我收到的错误与我试图从课程中删除教师的错误相同