0

我知道这是连续两个,但它们是不同的问题,所以我认为最好将它们分开。我在代表学生接受邀请时遇到问题。我是域中的超级管理员,它通过 API 资源管理器工作,但不能通过 Google Apps Script 的课堂高级服务工作。在你问之前,是的,我确实在高级服务菜单和开发者控制台中启用了课堂。

这是代码块:

function invitations() {
  var classList = Classroom.Courses.list().courses;
  for (i in classList) {
    var classId = classList[i].id;
    var teacher = Classroom.Courses.Teachers.get(classId, classList[i].ownerId).profile.name.fullName;
    if (teacher == 'FULL_NAME_GOES_HERE') { // I had entered my full name here as a string. If testing, you can replace with your own
      var title = Classroom.Courses.get(classId).name;
      Logger.log('Teacher: %s, Title: %ss',teacher,title);
      var list = Classroom.Invitations.list({'courseId':classId}).invitations;
      if (list) {
        Logger.log('list');
        for (k in list) {
          var invitation = list[k];
          var student = invitation.userId;
          var id = invitation.id;
          var response = Classroom.Invitations.accept({id:id});
          Logger.log('ID: %s',id);
        }
      }
    }
  }
}

传递给 Classroom.Invitations.accept 的 id 返回错误“未找到请求的实体”。但是当我在 API 资源管理器中输入相同的 ID 时,它返回 200 - OK。这是授权范围的问题吗?我有权管理课堂花名册,我认为这属于我的范围。

4

0 回答 0